@cds/core 6.2.2 → 6.2.4

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 (671) hide show
  1. package/accordion/accordion-content.element.js.map +1 -1
  2. package/accordion/accordion-header.element.js.map +1 -1
  3. package/accordion/accordion-panel.element.js.map +1 -1
  4. package/accordion/accordion.element.js.map +1 -1
  5. package/accordion/register.js.map +1 -1
  6. package/alert/alert-actions.element.js.map +1 -1
  7. package/alert/alert-group.element.js.map +1 -1
  8. package/alert/alert.element.js.map +1 -1
  9. package/alert/register.js.map +1 -1
  10. package/badge/badge.element.js.map +1 -1
  11. package/badge/register.js.map +1 -1
  12. package/breadcrumb/breadcrumb.element.js.map +1 -1
  13. package/breadcrumb/register.js.map +1 -1
  14. package/button/button.element.js.map +1 -1
  15. package/button/icon-button.element.js.map +1 -1
  16. package/button/register.js.map +1 -1
  17. package/button-action/button-action.element.js.map +1 -1
  18. package/button-action/register.js.map +1 -1
  19. package/button-expand/button-expand.element.js.map +1 -1
  20. package/button-expand/register.js.map +1 -1
  21. package/button-handle/button-handle.element.js.map +1 -1
  22. package/button-handle/register.js.map +1 -1
  23. package/button-inline/button-inline.element.js.map +1 -1
  24. package/button-inline/register.js.map +1 -1
  25. package/button-sort/button-sort.element.js.map +1 -1
  26. package/button-sort/register.js.map +1 -1
  27. package/button-sort/utils.js.map +1 -1
  28. package/card/card.element.js.map +1 -1
  29. package/card/register.js.map +1 -1
  30. package/checkbox/checkbox-group.element.js.map +1 -1
  31. package/checkbox/checkbox.element.js.map +1 -1
  32. package/checkbox/register.js.map +1 -1
  33. package/datalist/datalist.element.js.map +1 -1
  34. package/datalist/register.js.map +1 -1
  35. package/date/date.element.js.map +1 -1
  36. package/date/register.js.map +1 -1
  37. package/demo/data/demo.service.js.map +1 -1
  38. package/demo/data/food.data.js.map +1 -1
  39. package/demo/data/infrastructure.data.js.map +1 -1
  40. package/demo/data/system.data.js.map +1 -1
  41. package/demo/index.js.map +1 -1
  42. package/demo/utils.js.map +1 -1
  43. package/divider/divider.element.js.map +1 -1
  44. package/divider/register.js.map +1 -1
  45. package/dropdown/dropdown.element.js.map +1 -1
  46. package/dropdown/register.js.map +1 -1
  47. package/file/file.element.js.map +1 -1
  48. package/file/register.js.map +1 -1
  49. package/forms/control/control.element.js.map +1 -1
  50. package/forms/control-action/control-action.element.js.map +1 -1
  51. package/forms/control-group/control-group.element.js.map +1 -1
  52. package/forms/control-inline/control-inline.element.js +1 -1
  53. package/forms/control-inline/control-inline.element.js.map +1 -1
  54. package/forms/control-label/control-label.element.js.map +1 -1
  55. package/forms/control-message/control-message.element.js.map +1 -1
  56. package/forms/form-group/form-group.element.js.map +1 -1
  57. package/forms/register.js.map +1 -1
  58. package/forms/utils/utils.js.map +1 -1
  59. package/forms/utils/validate.js.map +1 -1
  60. package/global.css +18 -18
  61. package/grid/cell/grid-cell.element.js.map +1 -1
  62. package/grid/column/grid-column-position.controller.js.map +1 -1
  63. package/grid/column/grid-column-size.controller.js.map +1 -1
  64. package/grid/column/grid-column.element.js.map +1 -1
  65. package/grid/detail/grid-detail.element.js.map +1 -1
  66. package/grid/footer/grid-footer.element.js.map +1 -1
  67. package/grid/grid/grid-layout.controller.js.map +1 -1
  68. package/grid/grid/grid.element.js.map +1 -1
  69. package/grid/pagination/grid-pagination.element.js.map +1 -1
  70. package/grid/placeholder/grid-placeholder.element.js.map +1 -1
  71. package/grid/register.js.map +1 -1
  72. package/grid/row/grid-row-position.controller.js.map +1 -1
  73. package/grid/row/grid-row.element.js.map +1 -1
  74. package/icon/collections/chart.js.map +1 -1
  75. package/icon/collections/commerce.js.map +1 -1
  76. package/icon/collections/core.js.map +1 -1
  77. package/icon/collections/essential.js.map +1 -1
  78. package/icon/collections/media.js.map +1 -1
  79. package/icon/collections/mini.js.map +1 -1
  80. package/icon/collections/social.js.map +1 -1
  81. package/icon/collections/technology.js.map +1 -1
  82. package/icon/collections/text-edit.js.map +1 -1
  83. package/icon/collections/travel.js.map +1 -1
  84. package/icon/icon.element.js.map +1 -1
  85. package/icon/icon.renderer.js.map +1 -1
  86. package/icon/icon.service.js.map +1 -1
  87. package/icon/register.js.map +1 -1
  88. package/icon/shapes/accessibility-1.js.map +1 -1
  89. package/icon/shapes/accessibility-2.js.map +1 -1
  90. package/icon/shapes/add-text.js.map +1 -1
  91. package/icon/shapes/administrator.js.map +1 -1
  92. package/icon/shapes/airplane.js.map +1 -1
  93. package/icon/shapes/alarm-clock.js.map +1 -1
  94. package/icon/shapes/alarm-off.js.map +1 -1
  95. package/icon/shapes/align-bottom.js.map +1 -1
  96. package/icon/shapes/align-center.js.map +1 -1
  97. package/icon/shapes/align-left-text.js.map +1 -1
  98. package/icon/shapes/align-left.js.map +1 -1
  99. package/icon/shapes/align-middle.js.map +1 -1
  100. package/icon/shapes/align-right-text.js.map +1 -1
  101. package/icon/shapes/align-right.js.map +1 -1
  102. package/icon/shapes/align-top.js.map +1 -1
  103. package/icon/shapes/angle-double.js.map +1 -1
  104. package/icon/shapes/angle.js.map +1 -1
  105. package/icon/shapes/animation.js.map +1 -1
  106. package/icon/shapes/announcement.js.map +1 -1
  107. package/icon/shapes/application.js.map +1 -1
  108. package/icon/shapes/applications.js.map +1 -1
  109. package/icon/shapes/archive.js.map +1 -1
  110. package/icon/shapes/arrow-mini.js.map +1 -1
  111. package/icon/shapes/arrow.js.map +1 -1
  112. package/icon/shapes/assign-user.js.map +1 -1
  113. package/icon/shapes/asterisk.js.map +1 -1
  114. package/icon/shapes/atom.js.map +1 -1
  115. package/icon/shapes/axis-chart.js.map +1 -1
  116. package/icon/shapes/backup-restore.js.map +1 -1
  117. package/icon/shapes/backup.js.map +1 -1
  118. package/icon/shapes/ban.js.map +1 -1
  119. package/icon/shapes/bank.js.map +1 -1
  120. package/icon/shapes/bar-chart.js.map +1 -1
  121. package/icon/shapes/bar-code.js.map +1 -1
  122. package/icon/shapes/bars.js.map +1 -1
  123. package/icon/shapes/battery.js.map +1 -1
  124. package/icon/shapes/bell-curve.js.map +1 -1
  125. package/icon/shapes/bell.js.map +1 -1
  126. package/icon/shapes/beta.js.map +1 -1
  127. package/icon/shapes/bicycle.js.map +1 -1
  128. package/icon/shapes/birthday-cake.js.map +1 -1
  129. package/icon/shapes/bitcoin.js.map +1 -1
  130. package/icon/shapes/block-quote.js.map +1 -1
  131. package/icon/shapes/block.js.map +1 -1
  132. package/icon/shapes/blocks-group.js.map +1 -1
  133. package/icon/shapes/bluetooth-off.js.map +1 -1
  134. package/icon/shapes/bluetooth.js.map +1 -1
  135. package/icon/shapes/boat.js.map +1 -1
  136. package/icon/shapes/bold.js.map +1 -1
  137. package/icon/shapes/bolt.js.map +1 -1
  138. package/icon/shapes/book.js.map +1 -1
  139. package/icon/shapes/bookmark.js.map +1 -1
  140. package/icon/shapes/box-plot.js.map +1 -1
  141. package/icon/shapes/briefcase.js.map +1 -1
  142. package/icon/shapes/bubble-chart.js.map +1 -1
  143. package/icon/shapes/bubble-exclamation.js.map +1 -1
  144. package/icon/shapes/bug.js.map +1 -1
  145. package/icon/shapes/building.js.map +1 -1
  146. package/icon/shapes/bullet-list.js.map +1 -1
  147. package/icon/shapes/bullseye.js.map +1 -1
  148. package/icon/shapes/bundle.js.map +1 -1
  149. package/icon/shapes/calculator.js.map +1 -1
  150. package/icon/shapes/calendar-mini.js.map +1 -1
  151. package/icon/shapes/calendar.js.map +1 -1
  152. package/icon/shapes/camera.js.map +1 -1
  153. package/icon/shapes/campervan.js.map +1 -1
  154. package/icon/shapes/capacitor.js.map +1 -1
  155. package/icon/shapes/car.js.map +1 -1
  156. package/icon/shapes/caravan.js.map +1 -1
  157. package/icon/shapes/cd-dvd.js.map +1 -1
  158. package/icon/shapes/center-text.js.map +1 -1
  159. package/icon/shapes/certificate.js.map +1 -1
  160. package/icon/shapes/chat-bubble.js.map +1 -1
  161. package/icon/shapes/check-circle-mini.js.map +1 -1
  162. package/icon/shapes/check-circle.js.map +1 -1
  163. package/icon/shapes/check-mini.js.map +1 -1
  164. package/icon/shapes/check.js.map +1 -1
  165. package/icon/shapes/checkbox-list.js.map +1 -1
  166. package/icon/shapes/child-arrow.js.map +1 -1
  167. package/icon/shapes/ci-cd.js.map +1 -1
  168. package/icon/shapes/circle-arrow.js.map +1 -1
  169. package/icon/shapes/circle.js.map +1 -1
  170. package/icon/shapes/clipboard.js.map +1 -1
  171. package/icon/shapes/clock.js.map +1 -1
  172. package/icon/shapes/clone.js.map +1 -1
  173. package/icon/shapes/cloud-chart.js.map +1 -1
  174. package/icon/shapes/cloud-network.js.map +1 -1
  175. package/icon/shapes/cloud-scale.js.map +1 -1
  176. package/icon/shapes/cloud-traffic.js.map +1 -1
  177. package/icon/shapes/cloud.js.map +1 -1
  178. package/icon/shapes/cluster.js.map +1 -1
  179. package/icon/shapes/code.js.map +1 -1
  180. package/icon/shapes/cog.js.map +1 -1
  181. package/icon/shapes/coin-bag.js.map +1 -1
  182. package/icon/shapes/collapse-card.js.map +1 -1
  183. package/icon/shapes/color-palette.js.map +1 -1
  184. package/icon/shapes/color-picker.js.map +1 -1
  185. package/icon/shapes/compass.js.map +1 -1
  186. package/icon/shapes/computer.js.map +1 -1
  187. package/icon/shapes/connect.js.map +1 -1
  188. package/icon/shapes/container-volume.js.map +1 -1
  189. package/icon/shapes/container.js.map +1 -1
  190. package/icon/shapes/contract.js.map +1 -1
  191. package/icon/shapes/control-lun.js.map +1 -1
  192. package/icon/shapes/copy-to-clipboard.js.map +1 -1
  193. package/icon/shapes/copy.js.map +1 -1
  194. package/icon/shapes/cpu.js.map +1 -1
  195. package/icon/shapes/credit-card.js.map +1 -1
  196. package/icon/shapes/crosshairs.js.map +1 -1
  197. package/icon/shapes/crown.js.map +1 -1
  198. package/icon/shapes/cursor-arrow.js.map +1 -1
  199. package/icon/shapes/cursor-hand-click.js.map +1 -1
  200. package/icon/shapes/cursor-hand-grab.js.map +1 -1
  201. package/icon/shapes/cursor-hand-open.js.map +1 -1
  202. package/icon/shapes/cursor-hand.js.map +1 -1
  203. package/icon/shapes/cursor-move.js.map +1 -1
  204. package/icon/shapes/curve-chart.js.map +1 -1
  205. package/icon/shapes/dashboard.js.map +1 -1
  206. package/icon/shapes/data-cluster.js.map +1 -1
  207. package/icon/shapes/deploy.js.map +1 -1
  208. package/icon/shapes/detail-collapse.js.map +1 -1
  209. package/icon/shapes/detail-expand.js.map +1 -1
  210. package/icon/shapes/details.js.map +1 -1
  211. package/icon/shapes/devices.js.map +1 -1
  212. package/icon/shapes/digital-signature.js.map +1 -1
  213. package/icon/shapes/disconnect.js.map +1 -1
  214. package/icon/shapes/display.js.map +1 -1
  215. package/icon/shapes/dollar-bill.js.map +1 -1
  216. package/icon/shapes/dollar.js.map +1 -1
  217. package/icon/shapes/dot-circle.js.map +1 -1
  218. package/icon/shapes/download-cloud.js.map +1 -1
  219. package/icon/shapes/download.js.map +1 -1
  220. package/icon/shapes/drag-handle-corner.js.map +1 -1
  221. package/icon/shapes/drag-handle.js.map +1 -1
  222. package/icon/shapes/e-check.js.map +1 -1
  223. package/icon/shapes/ellipsis-horizontal.js.map +1 -1
  224. package/icon/shapes/ellipsis-vertical.js.map +1 -1
  225. package/icon/shapes/employee-group.js.map +1 -1
  226. package/icon/shapes/employee.js.map +1 -1
  227. package/icon/shapes/envelope.js.map +1 -1
  228. package/icon/shapes/eraser.js.map +1 -1
  229. package/icon/shapes/error-mini.js.map +1 -1
  230. package/icon/shapes/error-standard.js.map +1 -1
  231. package/icon/shapes/euro.js.map +1 -1
  232. package/icon/shapes/event-mini.js.map +1 -1
  233. package/icon/shapes/event.js.map +1 -1
  234. package/icon/shapes/exclamation-circle.js.map +1 -1
  235. package/icon/shapes/exclamation-triangle.js.map +1 -1
  236. package/icon/shapes/expand-card.js.map +1 -1
  237. package/icon/shapes/export.js.map +1 -1
  238. package/icon/shapes/eye-hide.js.map +1 -1
  239. package/icon/shapes/eye.js.map +1 -1
  240. package/icon/shapes/factory.js.map +1 -1
  241. package/icon/shapes/fast-forward.js.map +1 -1
  242. package/icon/shapes/ferry.js.map +1 -1
  243. package/icon/shapes/file-group.js.map +1 -1
  244. package/icon/shapes/file-settings.js.map +1 -1
  245. package/icon/shapes/file-share-2.js.map +1 -1
  246. package/icon/shapes/file-share.js.map +1 -1
  247. package/icon/shapes/file-zip.js.map +1 -1
  248. package/icon/shapes/file.js.map +1 -1
  249. package/icon/shapes/film-strip.js.map +1 -1
  250. package/icon/shapes/filter-2.js.map +1 -1
  251. package/icon/shapes/filter-grid-circle-mini.js.map +1 -1
  252. package/icon/shapes/filter-grid-circle.js.map +1 -1
  253. package/icon/shapes/filter-grid-mini.js.map +1 -1
  254. package/icon/shapes/filter-grid.js.map +1 -1
  255. package/icon/shapes/filter-off.js.map +1 -1
  256. package/icon/shapes/filter.js.map +1 -1
  257. package/icon/shapes/firewall.js.map +1 -1
  258. package/icon/shapes/first-aid.js.map +1 -1
  259. package/icon/shapes/fish.js.map +1 -1
  260. package/icon/shapes/flag.js.map +1 -1
  261. package/icon/shapes/flame.js.map +1 -1
  262. package/icon/shapes/flask.js.map +1 -1
  263. package/icon/shapes/floppy.js.map +1 -1
  264. package/icon/shapes/folder-open.js.map +1 -1
  265. package/icon/shapes/folder.js.map +1 -1
  266. package/icon/shapes/font-size.js.map +1 -1
  267. package/icon/shapes/forking.js.map +1 -1
  268. package/icon/shapes/form.js.map +1 -1
  269. package/icon/shapes/fuel.js.map +1 -1
  270. package/icon/shapes/gavel.js.map +1 -1
  271. package/icon/shapes/grid-chart.js.map +1 -1
  272. package/icon/shapes/grid-view.js.map +1 -1
  273. package/icon/shapes/half-star.js.map +1 -1
  274. package/icon/shapes/happy-face.js.map +1 -1
  275. package/icon/shapes/hard-disk.js.map +1 -1
  276. package/icon/shapes/hard-drive-disks.js.map +1 -1
  277. package/icon/shapes/hard-drive.js.map +1 -1
  278. package/icon/shapes/hashtag.js.map +1 -1
  279. package/icon/shapes/headphones.js.map +1 -1
  280. package/icon/shapes/heart-broken.js.map +1 -1
  281. package/icon/shapes/heart.js.map +1 -1
  282. package/icon/shapes/heat-map.js.map +1 -1
  283. package/icon/shapes/helix.js.map +1 -1
  284. package/icon/shapes/help-info.js.map +1 -1
  285. package/icon/shapes/help.js.map +1 -1
  286. package/icon/shapes/highlighter.js.map +1 -1
  287. package/icon/shapes/history.js.map +1 -1
  288. package/icon/shapes/home.js.map +1 -1
  289. package/icon/shapes/host-group.js.map +1 -1
  290. package/icon/shapes/host.js.map +1 -1
  291. package/icon/shapes/hourglass.js.map +1 -1
  292. package/icon/shapes/id-badge.js.map +1 -1
  293. package/icon/shapes/image-gallery.js.map +1 -1
  294. package/icon/shapes/image.js.map +1 -1
  295. package/icon/shapes/import.js.map +1 -1
  296. package/icon/shapes/inbox.js.map +1 -1
  297. package/icon/shapes/indent.js.map +1 -1
  298. package/icon/shapes/inductor.js.map +1 -1
  299. package/icon/shapes/info-circle-mini.js.map +1 -1
  300. package/icon/shapes/info-circle.js.map +1 -1
  301. package/icon/shapes/info-standard.js.map +1 -1
  302. package/icon/shapes/install.js.map +1 -1
  303. package/icon/shapes/internet-of-things.js.map +1 -1
  304. package/icon/shapes/italic.js.map +1 -1
  305. package/icon/shapes/justify-text.js.map +1 -1
  306. package/icon/shapes/key.js.map +1 -1
  307. package/icon/shapes/keyboard.js.map +1 -1
  308. package/icon/shapes/landscape.js.map +1 -1
  309. package/icon/shapes/language.js.map +1 -1
  310. package/icon/shapes/launchpad.js.map +1 -1
  311. package/icon/shapes/layers.js.map +1 -1
  312. package/icon/shapes/library.js.map +1 -1
  313. package/icon/shapes/lightbulb.js.map +1 -1
  314. package/icon/shapes/line-chart.js.map +1 -1
  315. package/icon/shapes/link.js.map +1 -1
  316. package/icon/shapes/list.js.map +1 -1
  317. package/icon/shapes/lock.js.map +1 -1
  318. package/icon/shapes/login.js.map +1 -1
  319. package/icon/shapes/logout.js.map +1 -1
  320. package/icon/shapes/map-marker.js.map +1 -1
  321. package/icon/shapes/map.js.map +1 -1
  322. package/icon/shapes/media-changer.js.map +1 -1
  323. package/icon/shapes/memory.js.map +1 -1
  324. package/icon/shapes/microphone-mute.js.map +1 -1
  325. package/icon/shapes/microphone.js.map +1 -1
  326. package/icon/shapes/minus-circle.js.map +1 -1
  327. package/icon/shapes/minus.js.map +1 -1
  328. package/icon/shapes/mobile.js.map +1 -1
  329. package/icon/shapes/moon.js.map +1 -1
  330. package/icon/shapes/mouse.js.map +1 -1
  331. package/icon/shapes/music-note.js.map +1 -1
  332. package/icon/shapes/namespace.js.map +1 -1
  333. package/icon/shapes/network-globe.js.map +1 -1
  334. package/icon/shapes/network-settings.js.map +1 -1
  335. package/icon/shapes/network-switch.js.map +1 -1
  336. package/icon/shapes/neutral-face.js.map +1 -1
  337. package/icon/shapes/new.js.map +1 -1
  338. package/icon/shapes/no-access.js.map +1 -1
  339. package/icon/shapes/no-wifi.js.map +1 -1
  340. package/icon/shapes/node-group.js.map +1 -1
  341. package/icon/shapes/node.js.map +1 -1
  342. package/icon/shapes/nodes.js.map +1 -1
  343. package/icon/shapes/note.js.map +1 -1
  344. package/icon/shapes/number-list.js.map +1 -1
  345. package/icon/shapes/nvme.js.map +1 -1
  346. package/icon/shapes/objects.js.map +1 -1
  347. package/icon/shapes/on-holiday.js.map +1 -1
  348. package/icon/shapes/organization.js.map +1 -1
  349. package/icon/shapes/outdent.js.map +1 -1
  350. package/icon/shapes/paint-roller.js.map +1 -1
  351. package/icon/shapes/paperclip.js.map +1 -1
  352. package/icon/shapes/paste.js.map +1 -1
  353. package/icon/shapes/pause.js.map +1 -1
  354. package/icon/shapes/pdf-file.js.map +1 -1
  355. package/icon/shapes/pencil.js.map +1 -1
  356. package/icon/shapes/peso.js.map +1 -1
  357. package/icon/shapes/phone-handset.js.map +1 -1
  358. package/icon/shapes/picture.js.map +1 -1
  359. package/icon/shapes/pie-chart.js.map +1 -1
  360. package/icon/shapes/piggy-bank.js.map +1 -1
  361. package/icon/shapes/pin.js.map +1 -1
  362. package/icon/shapes/pinboard.js.map +1 -1
  363. package/icon/shapes/play.js.map +1 -1
  364. package/icon/shapes/plugin.js.map +1 -1
  365. package/icon/shapes/plus-circle.js.map +1 -1
  366. package/icon/shapes/plus.js.map +1 -1
  367. package/icon/shapes/pod.js.map +1 -1
  368. package/icon/shapes/pop-out.js.map +1 -1
  369. package/icon/shapes/portrait.js.map +1 -1
  370. package/icon/shapes/pound.js.map +1 -1
  371. package/icon/shapes/power.js.map +1 -1
  372. package/icon/shapes/printer.js.map +1 -1
  373. package/icon/shapes/process-on-vm.js.map +1 -1
  374. package/icon/shapes/qr-code.js.map +1 -1
  375. package/icon/shapes/rack-server.js.map +1 -1
  376. package/icon/shapes/radar.js.map +1 -1
  377. package/icon/shapes/recycle.js.map +1 -1
  378. package/icon/shapes/redo.js.map +1 -1
  379. package/icon/shapes/refresh.js.map +1 -1
  380. package/icon/shapes/repeat.js.map +1 -1
  381. package/icon/shapes/replay-all.js.map +1 -1
  382. package/icon/shapes/replay-one.js.map +1 -1
  383. package/icon/shapes/resistor.js.map +1 -1
  384. package/icon/shapes/resize.js.map +1 -1
  385. package/icon/shapes/resource-pool.js.map +1 -1
  386. package/icon/shapes/rewind.js.map +1 -1
  387. package/icon/shapes/router.js.map +1 -1
  388. package/icon/shapes/ruble.js.map +1 -1
  389. package/icon/shapes/ruler-pencil.js.map +1 -1
  390. package/icon/shapes/rupee.js.map +1 -1
  391. package/icon/shapes/sad-face.js.map +1 -1
  392. package/icon/shapes/scatter-plot.js.map +1 -1
  393. package/icon/shapes/scissors.js.map +1 -1
  394. package/icon/shapes/script-execute.js.map +1 -1
  395. package/icon/shapes/script-schedule.js.map +1 -1
  396. package/icon/shapes/scroll.js.map +1 -1
  397. package/icon/shapes/search.js.map +1 -1
  398. package/icon/shapes/share.js.map +1 -1
  399. package/icon/shapes/shield-check.js.map +1 -1
  400. package/icon/shapes/shield-x.js.map +1 -1
  401. package/icon/shapes/shield.js.map +1 -1
  402. package/icon/shapes/shopping-bag.js.map +1 -1
  403. package/icon/shapes/shopping-cart.js.map +1 -1
  404. package/icon/shapes/shrink.js.map +1 -1
  405. package/icon/shapes/shuffle.js.map +1 -1
  406. package/icon/shapes/slider.js.map +1 -1
  407. package/icon/shapes/snowflake.js.map +1 -1
  408. package/icon/shapes/sort-by.js.map +1 -1
  409. package/icon/shapes/squid.js.map +1 -1
  410. package/icon/shapes/ssd.js.map +1 -1
  411. package/icon/shapes/star.js.map +1 -1
  412. package/icon/shapes/step-forward-2.js.map +1 -1
  413. package/icon/shapes/step-forward.js.map +1 -1
  414. package/icon/shapes/stop.js.map +1 -1
  415. package/icon/shapes/storage-adapter.js.map +1 -1
  416. package/icon/shapes/storage.js.map +1 -1
  417. package/icon/shapes/store.js.map +1 -1
  418. package/icon/shapes/strikethrough.js.map +1 -1
  419. package/icon/shapes/subscript.js.map +1 -1
  420. package/icon/shapes/success-standard.js.map +1 -1
  421. package/icon/shapes/sun.js.map +1 -1
  422. package/icon/shapes/superscript.js.map +1 -1
  423. package/icon/shapes/switch.js.map +1 -1
  424. package/icon/shapes/sync.js.map +1 -1
  425. package/icon/shapes/table.js.map +1 -1
  426. package/icon/shapes/tablet.js.map +1 -1
  427. package/icon/shapes/tag.js.map +1 -1
  428. package/icon/shapes/tags.js.map +1 -1
  429. package/icon/shapes/talk-bubbles.js.map +1 -1
  430. package/icon/shapes/tape-drive.js.map +1 -1
  431. package/icon/shapes/target.js.map +1 -1
  432. package/icon/shapes/tasks.js.map +1 -1
  433. package/icon/shapes/terminal.js.map +1 -1
  434. package/icon/shapes/text-color.js.map +1 -1
  435. package/icon/shapes/text.js.map +1 -1
  436. package/icon/shapes/thermometer.js.map +1 -1
  437. package/icon/shapes/thin-client.js.map +1 -1
  438. package/icon/shapes/thumbs-down.js.map +1 -1
  439. package/icon/shapes/thumbs-up.js.map +1 -1
  440. package/icon/shapes/tick-chart.js.map +1 -1
  441. package/icon/shapes/timeline.js.map +1 -1
  442. package/icon/shapes/times-circle.js.map +1 -1
  443. package/icon/shapes/times-mini.js.map +1 -1
  444. package/icon/shapes/times.js.map +1 -1
  445. package/icon/shapes/tools.js.map +1 -1
  446. package/icon/shapes/trailer.js.map +1 -1
  447. package/icon/shapes/trash.js.map +1 -1
  448. package/icon/shapes/tree-view.js.map +1 -1
  449. package/icon/shapes/tree.js.map +1 -1
  450. package/icon/shapes/truck.js.map +1 -1
  451. package/icon/shapes/two-way-arrows.js.map +1 -1
  452. package/icon/shapes/unarchive.js.map +1 -1
  453. package/icon/shapes/underline.js.map +1 -1
  454. package/icon/shapes/undo.js.map +1 -1
  455. package/icon/shapes/uninstall.js.map +1 -1
  456. package/icon/shapes/unknown-status.js.map +1 -1
  457. package/icon/shapes/unknown.js.map +1 -1
  458. package/icon/shapes/unlink.js.map +1 -1
  459. package/icon/shapes/unlock.js.map +1 -1
  460. package/icon/shapes/unpin.js.map +1 -1
  461. package/icon/shapes/update.js.map +1 -1
  462. package/icon/shapes/upload-cloud.js.map +1 -1
  463. package/icon/shapes/upload.js.map +1 -1
  464. package/icon/shapes/usb.js.map +1 -1
  465. package/icon/shapes/user.js.map +1 -1
  466. package/icon/shapes/users.js.map +1 -1
  467. package/icon/shapes/video-camera.js.map +1 -1
  468. package/icon/shapes/video-gallery.js.map +1 -1
  469. package/icon/shapes/view-cards.js.map +1 -1
  470. package/icon/shapes/view-columns.js.map +1 -1
  471. package/icon/shapes/view-list.js.map +1 -1
  472. package/icon/shapes/vm-bug-inverse.js.map +1 -1
  473. package/icon/shapes/vm-bug.js.map +1 -1
  474. package/icon/shapes/vm.js.map +1 -1
  475. package/icon/shapes/vmw-app.js.map +1 -1
  476. package/icon/shapes/volume-down.js.map +1 -1
  477. package/icon/shapes/volume-mute.js.map +1 -1
  478. package/icon/shapes/volume-up.js.map +1 -1
  479. package/icon/shapes/volume.js.map +1 -1
  480. package/icon/shapes/wallet.js.map +1 -1
  481. package/icon/shapes/wand.js.map +1 -1
  482. package/icon/shapes/warning-mini.js.map +1 -1
  483. package/icon/shapes/warning-standard.js.map +1 -1
  484. package/icon/shapes/wifi.js.map +1 -1
  485. package/icon/shapes/window-close.js.map +1 -1
  486. package/icon/shapes/window-max.js.map +1 -1
  487. package/icon/shapes/window-min.js.map +1 -1
  488. package/icon/shapes/window-restore.js.map +1 -1
  489. package/icon/shapes/won.js.map +1 -1
  490. package/icon/shapes/world.js.map +1 -1
  491. package/icon/shapes/wrench.js.map +1 -1
  492. package/icon/shapes/xls-file.js.map +1 -1
  493. package/icon/shapes/yen.js.map +1 -1
  494. package/icon/shapes/zoom-in.js.map +1 -1
  495. package/icon/shapes/zoom-out.js.map +1 -1
  496. package/icon/utils/icon.classnames.js.map +1 -1
  497. package/icon/utils/icon.svg-helpers.js.map +1 -1
  498. package/input/index.js.map +1 -1
  499. package/input/input-group.element.js.map +1 -1
  500. package/input/input.element.js.map +1 -1
  501. package/input/register.js.map +1 -1
  502. package/internal/base/button.base.js.map +1 -1
  503. package/internal/base/focus-trap.base.js.map +1 -1
  504. package/internal/controllers/active.controller.js.map +1 -1
  505. package/internal/controllers/aria-button.controller.js.map +1 -1
  506. package/internal/controllers/aria-disabled.controller.js.map +1 -1
  507. package/internal/controllers/aria-expanded.controller.js.map +1 -1
  508. package/internal/controllers/aria-grid.controller.js.map +1 -1
  509. package/internal/controllers/aria-modal.controller.js.map +1 -1
  510. package/internal/controllers/aria-multiselectable.controller.js.map +1 -1
  511. package/internal/controllers/aria-popup-trigger.controller.js.map +1 -1
  512. package/internal/controllers/aria-popup.controller.js.map +1 -1
  513. package/internal/controllers/aria-pressed.controller.js.map +1 -1
  514. package/internal/controllers/aria-selected.controller.js.map +1 -1
  515. package/internal/controllers/button-anchor.controller.js.map +1 -1
  516. package/internal/controllers/button-submit.controller.js.map +1 -1
  517. package/internal/controllers/closable.controller.js.map +1 -1
  518. package/internal/controllers/draggable-list.controller.js.map +1 -1
  519. package/internal/controllers/first-focus.controller.js.map +1 -1
  520. package/internal/controllers/grid-range-selection.controller.js.map +1 -1
  521. package/internal/controllers/inline-focus-trap.controller.js.map +1 -1
  522. package/internal/controllers/key-navigation-grid.controller.js.map +1 -1
  523. package/internal/controllers/key-navigation-list.controller.js.map +1 -1
  524. package/internal/controllers/key-navigation.utils.js.map +1 -1
  525. package/internal/controllers/layer.controller.js.map +1 -1
  526. package/internal/controllers/responsive.controller.js.map +1 -1
  527. package/internal/controllers/scrollable-list-visibility.controller.js.map +1 -1
  528. package/internal/controllers/touch.controller.js.map +1 -1
  529. package/internal/controllers/trigger.controller.js.map +1 -1
  530. package/internal/decorators/animate.js.map +1 -1
  531. package/internal/decorators/element.js.map +1 -1
  532. package/internal/decorators/event.js.map +1 -1
  533. package/internal/decorators/global-style.js.map +1 -1
  534. package/internal/decorators/i18n.js.map +1 -1
  535. package/internal/decorators/id.js.map +1 -1
  536. package/internal/decorators/property.js.map +1 -1
  537. package/internal/decorators/query-slot.js.map +1 -1
  538. package/internal/decorators/utils.js.map +1 -1
  539. package/internal/directives/spread-props.js.map +1 -1
  540. package/internal/i18n/utils.js.map +1 -1
  541. package/internal/index.js.map +1 -1
  542. package/internal/motion/animations/cds-accordion-panel-open.js.map +1 -1
  543. package/internal/motion/animations/cds-component-shake.js.map +1 -1
  544. package/internal/motion/animations/cds-dropdown-open.js.map +1 -1
  545. package/internal/motion/animations/cds-modal-enter.js.map +1 -1
  546. package/internal/motion/animations/cds-navigation-group-open.js.map +1 -1
  547. package/internal/motion/animations/cds-navigation-open.js.map +1 -1
  548. package/internal/motion/animations/cds-overlay-hinge-example.js.map +1 -1
  549. package/internal/motion/animations/cds-tree-item-expand.js.map +1 -1
  550. package/internal/motion/animations/keyframes/fade-in-and-slide-down.js.map +1 -1
  551. package/internal/motion/animations/keyframes/fade-in.js.map +1 -1
  552. package/internal/motion/animations/keyframes/hinge.js.map +1 -1
  553. package/internal/motion/animations/keyframes/shake.js.map +1 -1
  554. package/internal/motion/interfaces.js.map +1 -1
  555. package/internal/motion/motion.service.js.map +1 -1
  556. package/internal/motion/utils.js.map +1 -1
  557. package/internal/positioning/interfaces.js.map +1 -1
  558. package/internal/positioning/utils.js.map +1 -1
  559. package/internal/services/focus-trap-tracker.service.js.map +1 -1
  560. package/internal/services/global.service.js.map +1 -1
  561. package/internal/services/i18n.service.js.map +1 -1
  562. package/internal/services/keycodes.service.js.map +1 -1
  563. package/internal/services/log.service.js.map +1 -1
  564. package/internal/utils/__.js.map +1 -1
  565. package/internal/utils/a11y.js.map +1 -1
  566. package/internal/utils/array.js.map +1 -1
  567. package/internal/utils/async.js.map +1 -1
  568. package/internal/utils/browser.js.map +1 -1
  569. package/internal/utils/color.js.map +1 -1
  570. package/internal/utils/conditional.js.map +1 -1
  571. package/internal/utils/css.js.map +1 -1
  572. package/internal/utils/dom.js.map +1 -1
  573. package/internal/utils/enum.js.map +1 -1
  574. package/internal/utils/environment.js.map +1 -1
  575. package/internal/utils/event-subject.js.map +1 -1
  576. package/internal/utils/events.js.map +1 -1
  577. package/internal/utils/exists.js.map +1 -1
  578. package/internal/utils/focus.js.map +1 -1
  579. package/internal/utils/framework.js.map +1 -1
  580. package/internal/utils/global.js +1 -1
  581. package/internal/utils/global.js.map +1 -1
  582. package/internal/utils/identity.js.map +1 -1
  583. package/internal/utils/keycodes.js.map +1 -1
  584. package/internal/utils/lit.js.map +1 -1
  585. package/internal/utils/math.js.map +1 -1
  586. package/internal/utils/metadata.js.map +1 -1
  587. package/internal/utils/registration.js.map +1 -1
  588. package/internal/utils/responsive.js.map +1 -1
  589. package/internal/utils/size.js.map +1 -1
  590. package/internal/utils/string.js.map +1 -1
  591. package/internal/utils/supports.js.map +1 -1
  592. package/internal/utils/traversal.js.map +1 -1
  593. package/internal-components/close-button/close-button.element.js.map +1 -1
  594. package/internal-components/close-button/register.js.map +1 -1
  595. package/internal-components/overlay/overlay.element.js.map +1 -1
  596. package/internal-components/overlay/register.js.map +1 -1
  597. package/internal-components/panel/panel.element.js.map +1 -1
  598. package/internal-components/panel/register.js.map +1 -1
  599. package/internal-components/popup/pointer.element.js.map +1 -1
  600. package/internal-components/popup/popup.element.js.map +1 -1
  601. package/internal-components/popup/register.js.map +1 -1
  602. package/internal-components/popup/utils/pointer.utils.js.map +1 -1
  603. package/internal-components/split-handle/register.js.map +1 -1
  604. package/internal-components/split-handle/split-handle.element.js.map +1 -1
  605. package/internal-components/visual-checkbox/register.js.map +1 -1
  606. package/internal-components/visual-checkbox/visual-checkbox.element.js.map +1 -1
  607. package/list/list.css +2 -2
  608. package/modal/modal-actions.element.js.map +1 -1
  609. package/modal/modal-content.element.js.map +1 -1
  610. package/modal/modal-header-actions.element.js.map +1 -1
  611. package/modal/modal-header.element.js.map +1 -1
  612. package/modal/modal.element.js.map +1 -1
  613. package/modal/register.js.map +1 -1
  614. package/navigation/navigation-group.element.js.map +1 -1
  615. package/navigation/navigation-item.element.js.map +1 -1
  616. package/navigation/navigation-start.element.js.map +1 -1
  617. package/navigation/navigation.element.js.map +1 -1
  618. package/navigation/register.js.map +1 -1
  619. package/navigation/utils/utils.js.map +1 -1
  620. package/package.json +1 -1
  621. package/pagination/pagination-button.element.js.map +1 -1
  622. package/pagination/pagination.element.js.map +1 -1
  623. package/pagination/register.js.map +1 -1
  624. package/pagination/utils.js.map +1 -1
  625. package/password/password.element.js.map +1 -1
  626. package/password/register.js.map +1 -1
  627. package/polyfills/aria-reflect.js.map +1 -1
  628. package/polyfills/at.js.map +1 -1
  629. package/progress-circle/progress-circle.element.js.map +1 -1
  630. package/progress-circle/progress-circle.utils.js.map +1 -1
  631. package/progress-circle/register.js.map +1 -1
  632. package/radio/radio-group.element.js.map +1 -1
  633. package/radio/radio.element.js.map +1 -1
  634. package/radio/register.js.map +1 -1
  635. package/range/range.element.js.map +1 -1
  636. package/range/register.js.map +1 -1
  637. package/search/register.js.map +1 -1
  638. package/search/search.element.js.map +1 -1
  639. package/select/register.js.map +1 -1
  640. package/select/select.element.js.map +1 -1
  641. package/selection-panels/checkbox/checkbox-panel.element.js.map +1 -1
  642. package/selection-panels/checkbox/register.js.map +1 -1
  643. package/selection-panels/radio/radio-panel.element.js.map +1 -1
  644. package/selection-panels/radio/register.js.map +1 -1
  645. package/signpost/register.js.map +1 -1
  646. package/signpost/signpost.element.js.map +1 -1
  647. package/styles/module.layout.css +11 -11
  648. package/styles/module.reset.css +1 -1
  649. package/styles/module.typography.css +5 -5
  650. package/styles/shim.clr-ui.css +17 -2
  651. package/styles/shim.clr-ui.min.css +6 -2
  652. package/styles/theme.dark.css +1 -1
  653. package/styles/theme.high-contrast.css +2 -2
  654. package/styles/theme.low-motion.css +2 -2
  655. package/table/table.css +2 -2
  656. package/tag/register.js.map +1 -1
  657. package/tag/tag.element.js.map +1 -1
  658. package/test/utils.js.map +1 -1
  659. package/test/web-test-server.js.map +1 -1
  660. package/test-dropdown/register.js.map +1 -1
  661. package/test-dropdown/test-dropdown.element.js.map +1 -1
  662. package/textarea/register.js.map +1 -1
  663. package/textarea/textarea.element.js.map +1 -1
  664. package/time/register.js.map +1 -1
  665. package/time/time.element.js.map +1 -1
  666. package/toggle/register.js.map +1 -1
  667. package/toggle/toggle-group.element.js.map +1 -1
  668. package/toggle/toggle.element.js.map +1 -1
  669. package/tree-view/register.js.map +1 -1
  670. package/tree-view/tree-item.element.js.map +1 -1
  671. package/tree-view/tree.element.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-start.element.js","sources":["../../../src/navigation/navigation-start.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { baseStyles, createId, i18n, I18nService, property, querySlot, querySlotAll, spanWrapper, state, } from '@cds/core/internal';\nimport itemStyles from './navigation-item.element.scss';\nimport { getToggleIconDirection, manageScreenReaderElements, NAVIGATION_TEXT_WRAPPER } from './utils/utils.js';\nexport const CdsNavigationStartTagName = 'cds-navigation-start';\n/**\n * Web component navigation.\n *\n * ```typescript\n * import '@cds/core/navigation/register.js';\n * ```\n *\n * ```html\n * <cds-navigation-start>Start text</cds-navigation-start>\n * ```\n *\n * @element cds-navigation-start\n * @cssprop --color: inherit\n * @cssprop --line-height: inherit\n * @cssprop --font-size: inherit\n * @cssprop --font-weight: inherit\n * @slot\n * @slot cds-navigation-start-icon - customize the default start toggle icon\n */\nexport class CdsNavigationStart extends LitElement {\n constructor() {\n super(...arguments);\n this.i18n = I18nService.keys.navigation;\n /**\n * @desc\n * Synced down from the root navigation element. Determines if the vertical navigation is wide or narrow.\n */\n this.expandedRoot = false;\n /**\n * @desc\n * Is set to true by the root cds-navigation element when the instance is focused.\n */\n this.hasFocus = false;\n /**\n * @desc\n * The value is synced down from the root cds-navigation element.\n */\n this.isGroupStart = false;\n /**\n * @desc info synced down from group element and used in css to set proper bg color if a group has an active item and is not expanded\n *\n * @private\n */\n this.active = false;\n /**\n * @desc\n * Describes the groups expanded state\n *\n * @private\n */\n this.expanded = false;\n }\n connectedCallback() {\n super.connectedCallback();\n this.role = 'listitem';\n if (!this.id) {\n this.id = createId();\n }\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n const button = this.shadowRoot?.querySelector('button');\n if (button) {\n this.focusElement = button;\n }\n this.handleStartButtonText();\n }\n handleStartButtonText() {\n spanWrapper(this.childNodes);\n // get the projected text now wrapped in a span and add the sr attribute.\n this.querySelector('span')?.setAttribute(NAVIGATION_TEXT_WRAPPER, '');\n }\n renderRootStart() {\n return html `\n <slot @slotchange=${this.handleStartButtonText}></slot>\n <button\n aria-pressed=\"${this.expandedRoot}\"\n aria-label=\"${this.expandedRoot ? this.i18n.navigationUnabridgedText : this.i18n.navigationAbridgedText}\"\n id=\"${this.isGroupStart ? this.navigationGroupId : ''}\"\n type=\"button\"\n >\n <div cds-layout=\"horizontal align:vertical-center\">\n <span class=\"icon-slot\" cds-layout=\"${this.expandedRoot ? 'align:right' : 'align:left'}\">\n <slot name=\"cds-icon-slot\">\n ${this.startIcon\n ? ''\n : html ` <cds-icon\n size=\"${!this.expandedRoot && this.isGroupStart ? 'xs' : 'sm'}\"\n shape=\"${this.isGroupStart ? 'angle' : 'angle-double'}\"\n direction=\"${this.toggleIconDirection}\"\n >\n </cds-icon>`}\n </slot>\n </span>\n </div>\n </button>\n `;\n }\n renderGroupStart() {\n return html `\n <button aria-expanded=\"${this.expanded}\" id=\"${this.isGroupStart ? this.navigationGroupId : ''}\" type=\"button\">\n <div cds-layout=\"horizontal wrap:none align:vertical-center gap:sm\">\n <slot @slotchange=${this.handleStartButtonText}></slot>\n <span class=\"icon-slot\" cds-layout=\"${this.expandedRoot ? 'align:right' : 'align:left'}\">\n <slot name=\"cds-icon-slot\">\n ${this.startIcon\n ? ''\n : html ` <cds-icon\n size=\"${!this.expandedRoot && this.isGroupStart ? 'xs' : 'sm'}\"\n shape=\"${this.isGroupStart ? 'angle' : 'angle-double'}\"\n direction=\"${this.toggleIconDirection}\"\n >\n </cds-icon>`}\n </slot>\n </span>\n </div>\n </button>\n `;\n }\n render() {\n return html `\n <div class=\"private-host\" cds-layout=\"horizontal align:vertical-center align:horizontal-stretch\">\n ${this.isGroupStart ? this.renderGroupStart() : this.renderRootStart()}\n </div>\n `;\n }\n static get styles() {\n return [baseStyles, itemStyles];\n }\n get toggleIconDirection() {\n return getToggleIconDirection(this);\n }\n updated(props) {\n super.updated(props);\n manageScreenReaderElements(this, this.expandedRoot);\n }\n}\n__decorate([\n i18n()\n], CdsNavigationStart.prototype, \"i18n\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsNavigationStart.prototype, \"expandedRoot\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsNavigationStart.prototype, \"hasFocus\", void 0);\n__decorate([\n property({ type: Boolean, reflect: true })\n], CdsNavigationStart.prototype, \"isGroupStart\", void 0);\n__decorate([\n property({ type: String })\n], CdsNavigationStart.prototype, \"navigationGroupId\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsNavigationStart.prototype, \"active\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsNavigationStart.prototype, \"expanded\", void 0);\n__decorate([\n querySlot('[cds-navigation-start-icon]', { assign: 'cds-icon-slot' })\n], CdsNavigationStart.prototype, \"startIcon\", void 0);\n__decorate([\n querySlotAll('[cds-navigation-sr-text]')\n], CdsNavigationStart.prototype, \"itemText\", void 0);\n"],"names":["CdsNavigationStartTagName","CdsNavigationStart","LitElement","constructor","super","this","i18n","I18nService","keys","navigation","expandedRoot","hasFocus","isGroupStart","active","expanded","connectedCallback","role","id","createId","firstUpdated","props","button","shadowRoot","querySelector","focusElement","handleStartButtonText","spanWrapper","childNodes","setAttribute","NAVIGATION_TEXT_WRAPPER","renderRootStart","html","navigationUnabridgedText","navigationAbridgedText","navigationGroupId","startIcon","toggleIconDirection","renderGroupStart","render","styles","baseStyles","itemStyles","getToggleIconDirection","updated","manageScreenReaderElements","__decorate","prototype","property","type","Boolean","state","reflect","String","querySlot","assign","querySlotAll"],"mappings":"0ZAUY,MAACA,EAA4B,uBAoBlC,MAAMC,UAA2BC,EACpCC,cACIC,oBACAC,KAAKC,KAAOC,EAAYC,KAAKC,WAK7BJ,KAAKK,cAAe,EAKpBL,KAAKM,UAAW,EAKhBN,KAAKO,cAAe,EAMpBP,KAAKQ,QAAS,EAOdR,KAAKS,UAAW,EAEpBC,oBACIX,MAAMW,oBACNV,KAAKW,KAAO,WACPX,KAAKY,KACNZ,KAAKY,GAAKC,KAGlBC,aAAaC,GACThB,MAAMe,aAAaC,GACnB,MAAMC,EAAShB,KAAKiB,YAAYC,cAAc,UAC1CF,IACAhB,KAAKmB,aAAeH,GAExBhB,KAAKoB,wBAETA,wBACIC,EAAYrB,KAAKsB,YAEjBtB,KAAKkB,cAAc,SAASK,aAAaC,EAAyB,IAEtEC,kBACI,OAAOC,CAAK,sBACM1B,KAAKoB,uDAEPpB,KAAKK,6BACPL,KAAKK,aAAeL,KAAKC,KAAK0B,yBAA2B3B,KAAKC,KAAK2B,+BAC3E5B,KAAKO,aAAeP,KAAK6B,kBAAoB,4GAIX7B,KAAKK,aAAe,cAAgB,4CAEpEL,KAAK8B,UACP,GACAJ,CAAK,oBACU1B,KAAKK,cAAgBL,KAAKO,aAAe,KAAO,gBAChDP,KAAKO,aAAe,QAAU,8BAC1BP,KAAK+B,kEASlCC,mBACI,OAAON,CAAK,0BACW1B,KAAKS,iBAAiBT,KAAKO,aAAeP,KAAK6B,kBAAoB,4GAEpE7B,KAAKoB,qEACapB,KAAKK,aAAe,cAAgB,4CAEpEL,KAAK8B,UACP,GACAJ,CAAK,oBACU1B,KAAKK,cAAgBL,KAAKO,aAAe,KAAO,gBAChDP,KAAKO,aAAe,QAAU,8BAC1BP,KAAK+B,kEASlCE,SACI,OAAOP,CAAK,oGAEV1B,KAAKO,aAAeP,KAAKgC,mBAAqBhC,KAAKyB,0BAI9CS,oBACP,MAAO,CAACC,EAAYC,GAEpBL,0BACA,OAAOM,EAAuBrC,MAElCsC,QAAQvB,GACJhB,MAAMuC,QAAQvB,GACdwB,EAA2BvC,KAAMA,KAAKK,eAG9CmC,EAAW,CACPvC,KACDL,EAAmB6C,UAAW,YAAQ,GACzCD,EAAW,CACPE,EAAS,CAAEC,KAAMC,WAClBhD,EAAmB6C,UAAW,oBAAgB,GACjDD,EAAW,CACPK,EAAM,CAAEF,KAAMC,QAASE,SAAS,KACjClD,EAAmB6C,UAAW,gBAAY,GAC7CD,EAAW,CACPE,EAAS,CAAEC,KAAMC,QAASE,SAAS,KACpClD,EAAmB6C,UAAW,oBAAgB,GACjDD,EAAW,CACPE,EAAS,CAAEC,KAAMI,UAClBnD,EAAmB6C,UAAW,yBAAqB,GACtDD,EAAW,CACPK,EAAM,CAAEF,KAAMC,QAASE,SAAS,KACjClD,EAAmB6C,UAAW,cAAU,GAC3CD,EAAW,CACPK,EAAM,CAAEF,KAAMC,QAASE,SAAS,KACjClD,EAAmB6C,UAAW,gBAAY,GAC7CD,EAAW,CACPQ,EAAU,8BAA+B,CAAEC,OAAQ,mBACpDrD,EAAmB6C,UAAW,iBAAa,GAC9CD,EAAW,CACPU,EAAa,6BACdtD,EAAmB6C,UAAW,gBAAY"}
1
+ {"version":3,"file":"navigation-start.element.js","sources":["../../../src/navigation/navigation-start.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { baseStyles, createId, i18n, I18nService, property, querySlot, querySlotAll, spanWrapper, state, } from '@cds/core/internal';\nimport itemStyles from './navigation-item.element.scss';\nimport { getToggleIconDirection, manageScreenReaderElements, NAVIGATION_TEXT_WRAPPER } from './utils/utils.js';\nexport const CdsNavigationStartTagName = 'cds-navigation-start';\n/**\n * Web component navigation.\n *\n * ```typescript\n * import '@cds/core/navigation/register.js';\n * ```\n *\n * ```html\n * <cds-navigation-start>Start text</cds-navigation-start>\n * ```\n *\n * @element cds-navigation-start\n * @cssprop --color: inherit\n * @cssprop --line-height: inherit\n * @cssprop --font-size: inherit\n * @cssprop --font-weight: inherit\n * @slot\n * @slot cds-navigation-start-icon - customize the default start toggle icon\n */\nexport class CdsNavigationStart extends LitElement {\n constructor() {\n super(...arguments);\n this.i18n = I18nService.keys.navigation;\n /**\n * @desc\n * Synced down from the root navigation element. Determines if the vertical navigation is wide or narrow.\n */\n this.expandedRoot = false;\n /**\n * @desc\n * Is set to true by the root cds-navigation element when the instance is focused.\n */\n this.hasFocus = false;\n /**\n * @desc\n * The value is synced down from the root cds-navigation element.\n */\n this.isGroupStart = false;\n /**\n * @desc info synced down from group element and used in css to set proper bg color if a group has an active item and is not expanded\n *\n * @private\n */\n this.active = false;\n /**\n * @desc\n * Describes the groups expanded state\n *\n * @private\n */\n this.expanded = false;\n }\n connectedCallback() {\n super.connectedCallback();\n this.role = 'listitem';\n if (!this.id) {\n this.id = createId();\n }\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n const button = this.shadowRoot?.querySelector('button');\n if (button) {\n this.focusElement = button;\n }\n this.handleStartButtonText();\n }\n handleStartButtonText() {\n spanWrapper(this.childNodes);\n // get the projected text now wrapped in a span and add the sr attribute.\n this.querySelector('span')?.setAttribute(NAVIGATION_TEXT_WRAPPER, '');\n }\n renderRootStart() {\n return html `\n <slot @slotchange=${this.handleStartButtonText}></slot>\n <button\n aria-pressed=\"${this.expandedRoot}\"\n aria-label=\"${this.expandedRoot ? this.i18n.navigationUnabridgedText : this.i18n.navigationAbridgedText}\"\n id=\"${this.isGroupStart ? this.navigationGroupId : ''}\"\n type=\"button\"\n >\n <div cds-layout=\"horizontal align:vertical-center\">\n <span class=\"icon-slot\" cds-layout=\"${this.expandedRoot ? 'align:right' : 'align:left'}\">\n <slot name=\"cds-icon-slot\">\n ${this.startIcon\n ? ''\n : html ` <cds-icon\n size=\"${!this.expandedRoot && this.isGroupStart ? 'xs' : 'sm'}\"\n shape=\"${this.isGroupStart ? 'angle' : 'angle-double'}\"\n direction=\"${this.toggleIconDirection}\"\n >\n </cds-icon>`}\n </slot>\n </span>\n </div>\n </button>\n `;\n }\n renderGroupStart() {\n return html `\n <button aria-expanded=\"${this.expanded}\" id=\"${this.isGroupStart ? this.navigationGroupId : ''}\" type=\"button\">\n <div cds-layout=\"horizontal wrap:none align:vertical-center gap:sm\">\n <slot @slotchange=${this.handleStartButtonText}></slot>\n <span class=\"icon-slot\" cds-layout=\"${this.expandedRoot ? 'align:right' : 'align:left'}\">\n <slot name=\"cds-icon-slot\">\n ${this.startIcon\n ? ''\n : html ` <cds-icon\n size=\"${!this.expandedRoot && this.isGroupStart ? 'xs' : 'sm'}\"\n shape=\"${this.isGroupStart ? 'angle' : 'angle-double'}\"\n direction=\"${this.toggleIconDirection}\"\n >\n </cds-icon>`}\n </slot>\n </span>\n </div>\n </button>\n `;\n }\n render() {\n return html `\n <div class=\"private-host\" cds-layout=\"horizontal align:vertical-center align:horizontal-stretch\">\n ${this.isGroupStart ? this.renderGroupStart() : this.renderRootStart()}\n </div>\n `;\n }\n static get styles() {\n return [baseStyles, itemStyles];\n }\n get toggleIconDirection() {\n return getToggleIconDirection(this);\n }\n updated(props) {\n super.updated(props);\n manageScreenReaderElements(this, this.expandedRoot);\n }\n}\n__decorate([\n i18n()\n], CdsNavigationStart.prototype, \"i18n\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsNavigationStart.prototype, \"expandedRoot\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsNavigationStart.prototype, \"hasFocus\", void 0);\n__decorate([\n property({ type: Boolean, reflect: true })\n], CdsNavigationStart.prototype, \"isGroupStart\", void 0);\n__decorate([\n property({ type: String })\n], CdsNavigationStart.prototype, \"navigationGroupId\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsNavigationStart.prototype, \"active\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsNavigationStart.prototype, \"expanded\", void 0);\n__decorate([\n querySlot('[cds-navigation-start-icon]', { assign: 'cds-icon-slot' })\n], CdsNavigationStart.prototype, \"startIcon\", void 0);\n__decorate([\n querySlotAll('[cds-navigation-sr-text]')\n], CdsNavigationStart.prototype, \"itemText\", void 0);\n"],"names":["CdsNavigationStartTagName","CdsNavigationStart","LitElement","constructor","super","this","i18n","I18nService","keys","navigation","expandedRoot","hasFocus","isGroupStart","active","expanded","connectedCallback","role","id","createId","firstUpdated","props","button","shadowRoot","querySelector","focusElement","handleStartButtonText","spanWrapper","childNodes","setAttribute","NAVIGATION_TEXT_WRAPPER","renderRootStart","html","navigationUnabridgedText","navigationAbridgedText","navigationGroupId","startIcon","toggleIconDirection","renderGroupStart","render","styles","baseStyles","itemStyles","getToggleIconDirection","updated","manageScreenReaderElements","__decorate","prototype","property","type","Boolean","state","reflect","String","querySlot","assign","querySlotAll"],"mappings":"0ZAUY,MAACA,EAA4B,uBAoBlC,MAAMC,UAA2BC,EACpCC,cACIC,oBACAC,KAAKC,KAAOC,EAAYC,KAAKC,WAK7BJ,KAAKK,cAAe,EAKpBL,KAAKM,UAAW,EAKhBN,KAAKO,cAAe,EAMpBP,KAAKQ,QAAS,EAOdR,KAAKS,UAAW,EAEpBC,oBACIX,MAAMW,oBACNV,KAAKW,KAAO,WACPX,KAAKY,KACNZ,KAAKY,GAAKC,KAGlBC,aAAaC,GACThB,MAAMe,aAAaC,GACnB,MAAMC,EAAShB,KAAKiB,YAAYC,cAAc,UAC1CF,IACAhB,KAAKmB,aAAeH,GAExBhB,KAAKoB,wBAETA,wBACIC,EAAYrB,KAAKsB,YAEjBtB,KAAKkB,cAAc,SAASK,aAAaC,EAAyB,IAEtEC,kBACI,OAAOC,CAAK,sBACM1B,KAAKoB,uDAEPpB,KAAKK,6BACPL,KAAKK,aAAeL,KAAKC,KAAK0B,yBAA2B3B,KAAKC,KAAK2B,+BAC3E5B,KAAKO,aAAeP,KAAK6B,kBAAoB,4GAIX7B,KAAKK,aAAe,cAAgB,4CAEpEL,KAAK8B,UACP,GACAJ,CAAK,oBACU1B,KAAKK,cAAgBL,KAAKO,aAAe,KAAO,gBAChDP,KAAKO,aAAe,QAAU,8BAC1BP,KAAK+B,kEASlCC,mBACI,OAAON,CAAK,0BACW1B,KAAKS,iBAAiBT,KAAKO,aAAeP,KAAK6B,kBAAoB,4GAEpE7B,KAAKoB,qEACapB,KAAKK,aAAe,cAAgB,4CAEpEL,KAAK8B,UACP,GACAJ,CAAK,oBACU1B,KAAKK,cAAgBL,KAAKO,aAAe,KAAO,gBAChDP,KAAKO,aAAe,QAAU,8BAC1BP,KAAK+B,kEASlCE,SACI,OAAOP,CAAK,oGAEV1B,KAAKO,aAAeP,KAAKgC,mBAAqBhC,KAAKyB,0BAI9CS,oBACP,MAAO,CAACC,EAAYC,GAEpBL,0BACA,OAAOM,EAAuBrC,MAElCsC,QAAQvB,GACJhB,MAAMuC,QAAQvB,GACdwB,EAA2BvC,KAAMA,KAAKK,eAG9CmC,EAAW,CACPvC,KACDL,EAAmB6C,UAAW,YAAQ,GACzCD,EAAW,CACPE,EAAS,CAAEC,KAAMC,WAClBhD,EAAmB6C,UAAW,oBAAgB,GACjDD,EAAW,CACPK,EAAM,CAAEF,KAAMC,QAASE,SAAS,KACjClD,EAAmB6C,UAAW,gBAAY,GAC7CD,EAAW,CACPE,EAAS,CAAEC,KAAMC,QAASE,SAAS,KACpClD,EAAmB6C,UAAW,oBAAgB,GACjDD,EAAW,CACPE,EAAS,CAAEC,KAAMI,UAClBnD,EAAmB6C,UAAW,yBAAqB,GACtDD,EAAW,CACPK,EAAM,CAAEF,KAAMC,QAASE,SAAS,KACjClD,EAAmB6C,UAAW,cAAU,GAC3CD,EAAW,CACPK,EAAM,CAAEF,KAAMC,QAASE,SAAS,KACjClD,EAAmB6C,UAAW,gBAAY,GAC7CD,EAAW,CACPQ,EAAU,8BAA+B,CAAEC,OAAQ,mBACpDrD,EAAmB6C,UAAW,iBAAa,GAC9CD,EAAW,CACPU,EAAa,6BACdtD,EAAmB6C,UAAW,gBAAY"}
@@ -1 +1 @@
1
- {"version":3,"file":"navigation.element.js","sources":["../../../src/navigation/navigation.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { animate, baseStyles, event, i18n, I18nService, state, isVisible, onKey, property, querySlot, querySlotAll, reverseAnimation, setAttributes, syncProps, syncPropsForAllItems, } from '@cds/core/internal';\nimport styles from './navigation.element.scss';\nimport { getNextFocusElement, getPreviousFocusElement, removeFocus, setFocus, visibleElement, } from './utils/utils.js';\nimport { AnimationNavigationOpenName } from '../internal/motion/animations/cds-navigation-open.js';\nexport const CdsNavigationTagName = 'cds-navigation';\n/**\n * ```typescript\n * import '@cds/core/navigation/register.js';\n * ```\n *\n * ```html\n * <cds-navigation>\n * <cds-navigation-item><a href=\"/home\">Home</cds-navigation-item>\n * <cds-navigation-item><a href=\"/account\">Account</cds-navigation-item>\n * </cds-navigation>\n * ```\n *\n * @beta\n * @element cds-navigation\n * @event expandedChange - notify when the user has clicked the navigation expand/collapse button\n * @cssprop --animation-duration\n * @cssprop --animation-easing\n * @cssprop --background\n * @cssprop --collapsed-width\n * @cssprop --expanded-width\n * @cssprop --font-size\n * @cssprop --font-weight\n * @cssprop --letter-spacing\n * @cssprop --line-height\n * @cssprop --nested-padding\n * @cssprop --padding\n * @slot\n * @slot cds-navigation-substart - project content below the navigation toggle button\n * @slot cds-navigation-end - project content below the scrollable section\n */\nlet CdsNavigation = class CdsNavigation extends LitElement {\n constructor() {\n super(...arguments);\n this.expandedRoot = false;\n this.cdsMotion = 'on';\n /**\n * This is used to sync down the information to this.navigationGroupItems\n *\n * @type { boolean }\n * @protected\n */\n this.groupItem = true;\n /**\n *\n * Vertical navigation elements can be either wide or narrow. Expanded indicates it should be wide.\n * When navigation is wide cds-navigation-start button elements and cds-navigation-item a elements display\n * text. When it is narrow they do not (consumer should provide an icon that stays visible).\n \n * @type {boolean}\n */\n this.expanded = false;\n this.i18n = I18nService.keys.navigation;\n }\n static get styles() {\n return [baseStyles, styles];\n }\n get endTemplate() {\n return this.navigationEnd\n ? html `\n <div class=\"navigation-end\" cds-layout=\"vertical align:horizontal-stretch\">\n <slot name=\"cds-navigation-end\" @slotchange=${this.onItemSlotChange}></slot>\n </div>\n `\n : '';\n }\n get startTemplate() {\n let returnHTML;\n this.rootNavigationStart\n ? (returnHTML = html `\n <div class=\"navigation-start\" cds-layout=\"vertical align:horizontal-stretch\">\n <slot @slotchange=\"${() => this.onStartItemSlotChange()}\" name=\"navigation-start\"></slot>\n <cds-divider class=\"start-divider\"></cds-divider>\n </div>\n `)\n : (returnHTML = '');\n return returnHTML;\n }\n render() {\n return html `<div class=\"private-host\" aria-label=\"${this.i18n.navigationLabel}\" cds-layout=\"vertical wrap:none\">\n ${this.startTemplate}\n <slot name=\"cds-navigation-substart\"></slot>\n <nav class=\"navigation-body-wrapper\">\n <div .ariaActiveDescendant=${this.ariaActiveDescendant} tabindex=\"0\" id=\"item-container\">\n <div class=\"navigation-body\" cds-layout=\"vertical wrap:none align:horizontal-stretch\">\n <slot @slotchange=${this.onItemSlotChange}></slot>\n </div>\n </div>\n </nav>\n ${this.endTemplate}\n </div>`;\n }\n connectedCallback() {\n super.connectedCallback();\n this.role = 'list';\n this.rootNavigationStart?.addEventListener('focus', this.focusRootStart.bind(this));\n this.rootNavigationStart?.addEventListener('blur', this.blurRootStart.bind(this));\n this.rootNavigationStart?.addEventListener('keydown', this.handleRootStartKeys.bind(this));\n }\n disconnectedCallback() {\n super.disconnectedCallback();\n if (this.rootNavigationStart) {\n this.rootNavigationStart.removeEventListener('click', this.toggle.bind(this));\n }\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n const itemWrapper = this.shadowRoot?.querySelector('#item-container');\n itemWrapper?.addEventListener('focus', this.initItemKeys.bind(this));\n itemWrapper?.addEventListener('keydown', this.handleItemKeys.bind(this));\n itemWrapper?.addEventListener('blur', this.blurItemKeys.bind(this));\n }\n updated(props) {\n super.updated(props);\n if (props.has('expanded')) {\n this.expandedRoot = this.expanded;\n }\n this.updateChildrenProps();\n }\n onStartItemSlotChange() {\n this.onItemSlotChange();\n // This is controlled by the slotchange event on the navigation-start slot\n // Make sure we reattach the click handler for toggle if consumer changes the start element (e.g *ngIf)\n if (this.rootNavigationStart) {\n this.rootNavigationStart.addEventListener('click', this.toggle.bind(this));\n }\n }\n onItemSlotChange() {\n this.updateChildrenProps();\n // set all visible navigation elements to tabindex = -1\n this.allNavigationElements.forEach(item => {\n setAttributes(item, ['tabindex', '-1']);\n });\n }\n updateChildrenProps() {\n if (this.navigationGroupItems) {\n syncPropsForAllItems(Array.from(this.navigationGroupItems), this, { groupItem: true });\n }\n if (this.navigationItemRefs) {\n syncPropsForAllItems(Array.from(this.navigationItemRefs), this, {\n expanded: true,\n });\n }\n if (this.navigationStartRefs) {\n syncPropsForAllItems(Array.from(this.navigationStartRefs), this, {\n expandedRoot: true,\n });\n }\n if (this.rootNavigationStart) {\n syncProps(this.rootNavigationStart, this, {\n expanded: this.expanded,\n });\n }\n if (this.rootNavigationItems.length > 0) {\n syncPropsForAllItems(Array.from(this.rootNavigationItems), this, {\n expanded: this.expanded,\n });\n }\n if (this.navigationGroupRefs.length > 0) {\n syncPropsForAllItems(Array.from(this.navigationGroupRefs), this, {\n layout: true,\n });\n }\n }\n get visibleChildren() {\n return Array.from(this.allNavigationElements).filter(n => isVisible(n));\n }\n toggle() {\n this.expandedChange.emit(!this.expanded);\n }\n get currentActiveItem() {\n return this.visibleChildren.find(c => c.id === this.ariaActiveDescendant);\n }\n blurItemKeys() {\n if (this.currentActiveItem) {\n removeFocus(this.currentActiveItem);\n }\n }\n focusRootStart() {\n if (this.rootNavigationStart) {\n setFocus(this.rootNavigationStart);\n }\n }\n blurRootStart() {\n if (this.rootNavigationStart) {\n removeFocus(this.rootNavigationStart);\n }\n }\n initItemKeys() {\n if (!this.currentActiveItem) {\n setFocus(this.focusableElements[0]);\n this.ariaActiveDescendant = this.focusableElements[0].id;\n }\n else {\n const focusElement = this.currentActiveItem ? this.currentActiveItem : this.allNavigationElements[0];\n setFocus(focusElement);\n this.ariaActiveDescendant = focusElement.id;\n }\n }\n get focusableElements() {\n return Array.from(this.allNavigationElements).filter(visibleElement);\n }\n handleItemKeys(event) {\n onKey('arrow-down', event, () => {\n if (this.currentActiveItem) {\n removeFocus(this.currentActiveItem);\n const next = getNextFocusElement(this.currentActiveItem, this.focusableElements);\n this.ariaActiveDescendant = next.id;\n setFocus(next);\n event.preventDefault();\n }\n });\n onKey('arrow-up', event, () => {\n if (this.currentActiveItem) {\n removeFocus(this.currentActiveItem);\n const previous = getPreviousFocusElement(this.currentActiveItem, this.focusableElements);\n this.ariaActiveDescendant = previous.id;\n setFocus(previous);\n event.preventDefault();\n }\n });\n onKey('arrow-right', event, () => {\n const groupParent = this.currentActiveItem?.closest('cds-navigation-group');\n if (groupParent && !groupParent.expanded) {\n groupParent.expandedChange.emit(!groupParent.expanded);\n return;\n }\n });\n onKey('arrow-left', event, () => {\n const groupParent = this.currentActiveItem?.closest('cds-navigation-group');\n if (this.currentActiveItem?.tagName === 'CDS-NAVIGATION-ITEM' && !!groupParent) {\n const groupStartElement = groupParent?.querySelector('cds-navigation-start');\n removeFocus(this.currentActiveItem);\n this.ariaActiveDescendant = groupStartElement?.id ?? null;\n setFocus(groupStartElement);\n return;\n }\n if (groupParent && groupParent.expanded) {\n groupParent.expandedChange.emit(!groupParent.expanded);\n return;\n }\n });\n onKey('home', event, () => {\n if (this.currentActiveItem) {\n removeFocus(this.currentActiveItem);\n const home = this.focusableElements[0];\n this.ariaActiveDescendant = home.id;\n setFocus(home);\n }\n });\n onKey('end', event, () => {\n if (this.currentActiveItem) {\n removeFocus(this.currentActiveItem);\n const end = this.focusableElements[this.focusableElements.length - 1];\n this.ariaActiveDescendant = end.id;\n setFocus(end);\n }\n });\n onKey('enter', event, () => {\n // focusElement is either an Anchor or a button and we want to click it here\n if (this.currentActiveItem?.focusElement) {\n this.currentActiveItem?.focusElement.click();\n }\n });\n onKey('space', event, () => {\n // focusElement is either an Anchor or a button and we want to click it here\n if (this.currentActiveItem?.focusElement) {\n this.currentActiveItem?.focusElement.click();\n }\n });\n }\n handleRootStartKeys(event) {\n onKey('arrow-right', event, () => {\n if (!this.expanded) {\n this.toggle();\n return;\n }\n });\n onKey('arrow-left', event, () => {\n if (this.expanded) {\n this.toggle();\n return;\n }\n });\n }\n};\n__decorate([\n property({ type: String })\n], CdsNavigation.prototype, \"cdsMotion\", void 0);\n__decorate([\n event()\n], CdsNavigation.prototype, \"expandedChange\", void 0);\n__decorate([\n event()\n], CdsNavigation.prototype, \"cdsMotionChange\", void 0);\n__decorate([\n state({ type: Boolean })\n], CdsNavigation.prototype, \"groupItem\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsNavigation.prototype, \"expanded\", void 0);\n__decorate([\n i18n()\n], CdsNavigation.prototype, \"i18n\", void 0);\n__decorate([\n querySlot('[slot=\"cds-navigation-end\"]', { assign: 'cds-navigation-end' })\n], CdsNavigation.prototype, \"navigationEnd\", void 0);\n__decorate([\n querySlotAll('cds-navigation-group > cds-navigation-start, cds-navigation-item:not([disabled])')\n], CdsNavigation.prototype, \"allNavigationElements\", void 0);\n__decorate([\n querySlotAll('cds-navigation-start')\n], CdsNavigation.prototype, \"navigationStartRefs\", void 0);\n__decorate([\n querySlotAll(':scope > cds-divider')\n], CdsNavigation.prototype, \"rootDividers\", void 0);\n__decorate([\n querySlotAll(':scope > cds-navigation-group')\n], CdsNavigation.prototype, \"rootNavigationGroups\", void 0);\n__decorate([\n querySlotAll(':scope > cds-navigation-item')\n], CdsNavigation.prototype, \"rootNavigationItems\", void 0);\n__decorate([\n querySlot(':scope > cds-navigation-start', { assign: 'navigation-start' })\n], CdsNavigation.prototype, \"rootNavigationStart\", void 0);\n__decorate([\n querySlotAll(':scope > cds-navigation-group > cds-navigation-item')\n], CdsNavigation.prototype, \"navigationGroupItems\", void 0);\n__decorate([\n querySlotAll('cds-navigation-item')\n], CdsNavigation.prototype, \"navigationItemRefs\", void 0);\n__decorate([\n querySlotAll('cds-navigation-group')\n], CdsNavigation.prototype, \"navigationGroupRefs\", void 0);\nCdsNavigation = __decorate([\n animate({\n expanded: {\n true: AnimationNavigationOpenName,\n false: reverseAnimation(AnimationNavigationOpenName),\n },\n })\n], CdsNavigation);\nexport { CdsNavigation };\n"],"names":["CdsNavigationTagName","CdsNavigation","LitElement","constructor","super","this","expandedRoot","cdsMotion","groupItem","expanded","i18n","I18nService","keys","navigation","styles","baseStyles","endTemplate","navigationEnd","html","onItemSlotChange","startTemplate","returnHTML","rootNavigationStart","onStartItemSlotChange","render","navigationLabel","ariaActiveDescendant","connectedCallback","role","addEventListener","focusRootStart","bind","blurRootStart","handleRootStartKeys","disconnectedCallback","removeEventListener","toggle","firstUpdated","props","itemWrapper","shadowRoot","querySelector","initItemKeys","handleItemKeys","blurItemKeys","updated","has","updateChildrenProps","allNavigationElements","forEach","item","setAttributes","navigationGroupItems","syncPropsForAllItems","Array","from","navigationItemRefs","navigationStartRefs","syncProps","rootNavigationItems","length","navigationGroupRefs","layout","visibleChildren","filter","n","isVisible","expandedChange","emit","currentActiveItem","find","c","id","removeFocus","setFocus","focusElement","focusableElements","visibleElement","event","onKey","next","getNextFocusElement","preventDefault","previous","getPreviousFocusElement","groupParent","closest","tagName","groupStartElement","home","end","click","__decorate","property","type","String","prototype","state","Boolean","querySlot","assign","querySlotAll","animate","true","AnimationNavigationOpenName","false","reverseAnimation"],"mappings":"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"}
1
+ {"version":3,"file":"navigation.element.js","sources":["../../../src/navigation/navigation.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { animate, baseStyles, event, i18n, I18nService, state, isVisible, onKey, property, querySlot, querySlotAll, reverseAnimation, setAttributes, syncProps, syncPropsForAllItems, } from '@cds/core/internal';\nimport styles from './navigation.element.scss';\nimport { getNextFocusElement, getPreviousFocusElement, removeFocus, setFocus, visibleElement, } from './utils/utils.js';\nimport { AnimationNavigationOpenName } from '../internal/motion/animations/cds-navigation-open.js';\nexport const CdsNavigationTagName = 'cds-navigation';\n/**\n * ```typescript\n * import '@cds/core/navigation/register.js';\n * ```\n *\n * ```html\n * <cds-navigation>\n * <cds-navigation-item><a href=\"/home\">Home</cds-navigation-item>\n * <cds-navigation-item><a href=\"/account\">Account</cds-navigation-item>\n * </cds-navigation>\n * ```\n *\n * @beta\n * @element cds-navigation\n * @event expandedChange - notify when the user has clicked the navigation expand/collapse button\n * @cssprop --animation-duration\n * @cssprop --animation-easing\n * @cssprop --background\n * @cssprop --collapsed-width\n * @cssprop --expanded-width\n * @cssprop --font-size\n * @cssprop --font-weight\n * @cssprop --letter-spacing\n * @cssprop --line-height\n * @cssprop --nested-padding\n * @cssprop --padding\n * @slot\n * @slot cds-navigation-substart - project content below the navigation toggle button\n * @slot cds-navigation-end - project content below the scrollable section\n */\nlet CdsNavigation = class CdsNavigation extends LitElement {\n constructor() {\n super(...arguments);\n this.expandedRoot = false;\n this.cdsMotion = 'on';\n /**\n * This is used to sync down the information to this.navigationGroupItems\n *\n * @type { boolean }\n * @protected\n */\n this.groupItem = true;\n /**\n *\n * Vertical navigation elements can be either wide or narrow. Expanded indicates it should be wide.\n * When navigation is wide cds-navigation-start button elements and cds-navigation-item a elements display\n * text. When it is narrow they do not (consumer should provide an icon that stays visible).\n \n * @type {boolean}\n */\n this.expanded = false;\n this.i18n = I18nService.keys.navigation;\n }\n static get styles() {\n return [baseStyles, styles];\n }\n get endTemplate() {\n return this.navigationEnd\n ? html `\n <div class=\"navigation-end\" cds-layout=\"vertical align:horizontal-stretch\">\n <slot name=\"cds-navigation-end\" @slotchange=${this.onItemSlotChange}></slot>\n </div>\n `\n : '';\n }\n get startTemplate() {\n let returnHTML;\n this.rootNavigationStart\n ? (returnHTML = html `\n <div class=\"navigation-start\" cds-layout=\"vertical align:horizontal-stretch\">\n <slot @slotchange=\"${() => this.onStartItemSlotChange()}\" name=\"navigation-start\"></slot>\n <cds-divider class=\"start-divider\"></cds-divider>\n </div>\n `)\n : (returnHTML = '');\n return returnHTML;\n }\n render() {\n return html `<div class=\"private-host\" aria-label=\"${this.i18n.navigationLabel}\" cds-layout=\"vertical wrap:none\">\n ${this.startTemplate}\n <slot name=\"cds-navigation-substart\"></slot>\n <nav class=\"navigation-body-wrapper\">\n <div .ariaActiveDescendant=${this.ariaActiveDescendant} tabindex=\"0\" id=\"item-container\">\n <div class=\"navigation-body\" cds-layout=\"vertical wrap:none align:horizontal-stretch\">\n <slot @slotchange=${this.onItemSlotChange}></slot>\n </div>\n </div>\n </nav>\n ${this.endTemplate}\n </div>`;\n }\n connectedCallback() {\n super.connectedCallback();\n this.role = 'list';\n this.rootNavigationStart?.addEventListener('focus', this.focusRootStart.bind(this));\n this.rootNavigationStart?.addEventListener('blur', this.blurRootStart.bind(this));\n this.rootNavigationStart?.addEventListener('keydown', this.handleRootStartKeys.bind(this));\n }\n disconnectedCallback() {\n super.disconnectedCallback();\n if (this.rootNavigationStart) {\n this.rootNavigationStart.removeEventListener('click', this.toggle.bind(this));\n }\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n const itemWrapper = this.shadowRoot?.querySelector('#item-container');\n itemWrapper?.addEventListener('focus', this.initItemKeys.bind(this));\n itemWrapper?.addEventListener('keydown', this.handleItemKeys.bind(this));\n itemWrapper?.addEventListener('blur', this.blurItemKeys.bind(this));\n }\n updated(props) {\n super.updated(props);\n if (props.has('expanded')) {\n this.expandedRoot = this.expanded;\n }\n this.updateChildrenProps();\n }\n onStartItemSlotChange() {\n this.onItemSlotChange();\n // This is controlled by the slotchange event on the navigation-start slot\n // Make sure we reattach the click handler for toggle if consumer changes the start element (e.g *ngIf)\n if (this.rootNavigationStart) {\n this.rootNavigationStart.addEventListener('click', this.toggle.bind(this));\n }\n }\n onItemSlotChange() {\n this.updateChildrenProps();\n // set all visible navigation elements to tabindex = -1\n this.allNavigationElements.forEach(item => {\n setAttributes(item, ['tabindex', '-1']);\n });\n }\n updateChildrenProps() {\n if (this.navigationGroupItems) {\n syncPropsForAllItems(Array.from(this.navigationGroupItems), this, { groupItem: true });\n }\n if (this.navigationItemRefs) {\n syncPropsForAllItems(Array.from(this.navigationItemRefs), this, {\n expanded: true,\n });\n }\n if (this.navigationStartRefs) {\n syncPropsForAllItems(Array.from(this.navigationStartRefs), this, {\n expandedRoot: true,\n });\n }\n if (this.rootNavigationStart) {\n syncProps(this.rootNavigationStart, this, {\n expanded: this.expanded,\n });\n }\n if (this.rootNavigationItems.length > 0) {\n syncPropsForAllItems(Array.from(this.rootNavigationItems), this, {\n expanded: this.expanded,\n });\n }\n if (this.navigationGroupRefs.length > 0) {\n syncPropsForAllItems(Array.from(this.navigationGroupRefs), this, {\n layout: true,\n });\n }\n }\n get visibleChildren() {\n return Array.from(this.allNavigationElements).filter(n => isVisible(n));\n }\n toggle() {\n this.expandedChange.emit(!this.expanded);\n }\n get currentActiveItem() {\n return this.visibleChildren.find(c => c.id === this.ariaActiveDescendant);\n }\n blurItemKeys() {\n if (this.currentActiveItem) {\n removeFocus(this.currentActiveItem);\n }\n }\n focusRootStart() {\n if (this.rootNavigationStart) {\n setFocus(this.rootNavigationStart);\n }\n }\n blurRootStart() {\n if (this.rootNavigationStart) {\n removeFocus(this.rootNavigationStart);\n }\n }\n initItemKeys() {\n if (!this.currentActiveItem) {\n setFocus(this.focusableElements[0]);\n this.ariaActiveDescendant = this.focusableElements[0].id;\n }\n else {\n const focusElement = this.currentActiveItem ? this.currentActiveItem : this.allNavigationElements[0];\n setFocus(focusElement);\n this.ariaActiveDescendant = focusElement.id;\n }\n }\n get focusableElements() {\n return Array.from(this.allNavigationElements).filter(visibleElement);\n }\n handleItemKeys(event) {\n onKey('arrow-down', event, () => {\n if (this.currentActiveItem) {\n removeFocus(this.currentActiveItem);\n const next = getNextFocusElement(this.currentActiveItem, this.focusableElements);\n this.ariaActiveDescendant = next.id;\n setFocus(next);\n event.preventDefault();\n }\n });\n onKey('arrow-up', event, () => {\n if (this.currentActiveItem) {\n removeFocus(this.currentActiveItem);\n const previous = getPreviousFocusElement(this.currentActiveItem, this.focusableElements);\n this.ariaActiveDescendant = previous.id;\n setFocus(previous);\n event.preventDefault();\n }\n });\n onKey('arrow-right', event, () => {\n const groupParent = this.currentActiveItem?.closest('cds-navigation-group');\n if (groupParent && !groupParent.expanded) {\n groupParent.expandedChange.emit(!groupParent.expanded);\n return;\n }\n });\n onKey('arrow-left', event, () => {\n const groupParent = this.currentActiveItem?.closest('cds-navigation-group');\n if (this.currentActiveItem?.tagName === 'CDS-NAVIGATION-ITEM' && !!groupParent) {\n const groupStartElement = groupParent?.querySelector('cds-navigation-start');\n removeFocus(this.currentActiveItem);\n this.ariaActiveDescendant = groupStartElement?.id ?? null;\n setFocus(groupStartElement);\n return;\n }\n if (groupParent && groupParent.expanded) {\n groupParent.expandedChange.emit(!groupParent.expanded);\n return;\n }\n });\n onKey('home', event, () => {\n if (this.currentActiveItem) {\n removeFocus(this.currentActiveItem);\n const home = this.focusableElements[0];\n this.ariaActiveDescendant = home.id;\n setFocus(home);\n }\n });\n onKey('end', event, () => {\n if (this.currentActiveItem) {\n removeFocus(this.currentActiveItem);\n const end = this.focusableElements[this.focusableElements.length - 1];\n this.ariaActiveDescendant = end.id;\n setFocus(end);\n }\n });\n onKey('enter', event, () => {\n // focusElement is either an Anchor or a button and we want to click it here\n if (this.currentActiveItem?.focusElement) {\n this.currentActiveItem?.focusElement.click();\n }\n });\n onKey('space', event, () => {\n // focusElement is either an Anchor or a button and we want to click it here\n if (this.currentActiveItem?.focusElement) {\n this.currentActiveItem?.focusElement.click();\n }\n });\n }\n handleRootStartKeys(event) {\n onKey('arrow-right', event, () => {\n if (!this.expanded) {\n this.toggle();\n return;\n }\n });\n onKey('arrow-left', event, () => {\n if (this.expanded) {\n this.toggle();\n return;\n }\n });\n }\n};\n__decorate([\n property({ type: String })\n], CdsNavigation.prototype, \"cdsMotion\", void 0);\n__decorate([\n event()\n], CdsNavigation.prototype, \"expandedChange\", void 0);\n__decorate([\n event()\n], CdsNavigation.prototype, \"cdsMotionChange\", void 0);\n__decorate([\n state({ type: Boolean })\n], CdsNavigation.prototype, \"groupItem\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsNavigation.prototype, \"expanded\", void 0);\n__decorate([\n i18n()\n], CdsNavigation.prototype, \"i18n\", void 0);\n__decorate([\n querySlot('[slot=\"cds-navigation-end\"]', { assign: 'cds-navigation-end' })\n], CdsNavigation.prototype, \"navigationEnd\", void 0);\n__decorate([\n querySlotAll('cds-navigation-group > cds-navigation-start, cds-navigation-item:not([disabled])')\n], CdsNavigation.prototype, \"allNavigationElements\", void 0);\n__decorate([\n querySlotAll('cds-navigation-start')\n], CdsNavigation.prototype, \"navigationStartRefs\", void 0);\n__decorate([\n querySlotAll(':scope > cds-divider')\n], CdsNavigation.prototype, \"rootDividers\", void 0);\n__decorate([\n querySlotAll(':scope > cds-navigation-group')\n], CdsNavigation.prototype, \"rootNavigationGroups\", void 0);\n__decorate([\n querySlotAll(':scope > cds-navigation-item')\n], CdsNavigation.prototype, \"rootNavigationItems\", void 0);\n__decorate([\n querySlot(':scope > cds-navigation-start', { assign: 'navigation-start' })\n], CdsNavigation.prototype, \"rootNavigationStart\", void 0);\n__decorate([\n querySlotAll(':scope > cds-navigation-group > cds-navigation-item')\n], CdsNavigation.prototype, \"navigationGroupItems\", void 0);\n__decorate([\n querySlotAll('cds-navigation-item')\n], CdsNavigation.prototype, \"navigationItemRefs\", void 0);\n__decorate([\n querySlotAll('cds-navigation-group')\n], CdsNavigation.prototype, \"navigationGroupRefs\", void 0);\nCdsNavigation = __decorate([\n animate({\n expanded: {\n true: AnimationNavigationOpenName,\n false: reverseAnimation(AnimationNavigationOpenName),\n },\n })\n], CdsNavigation);\nexport { CdsNavigation };\n"],"names":["CdsNavigationTagName","CdsNavigation","LitElement","constructor","super","this","expandedRoot","cdsMotion","groupItem","expanded","i18n","I18nService","keys","navigation","styles","baseStyles","endTemplate","navigationEnd","html","onItemSlotChange","startTemplate","returnHTML","rootNavigationStart","onStartItemSlotChange","render","navigationLabel","ariaActiveDescendant","connectedCallback","role","addEventListener","focusRootStart","bind","blurRootStart","handleRootStartKeys","disconnectedCallback","removeEventListener","toggle","firstUpdated","props","itemWrapper","shadowRoot","querySelector","initItemKeys","handleItemKeys","blurItemKeys","updated","has","updateChildrenProps","allNavigationElements","forEach","item","setAttributes","navigationGroupItems","syncPropsForAllItems","Array","from","navigationItemRefs","navigationStartRefs","syncProps","rootNavigationItems","length","navigationGroupRefs","layout","visibleChildren","filter","n","isVisible","expandedChange","emit","currentActiveItem","find","c","id","removeFocus","setFocus","focusElement","focusableElements","visibleElement","event","onKey","next","getNextFocusElement","preventDefault","previous","getPreviousFocusElement","groupParent","closest","tagName","groupStartElement","home","end","click","__decorate","property","type","String","prototype","state","Boolean","querySlot","assign","querySlotAll","animate","true","AnimationNavigationOpenName","false","reverseAnimation"],"mappings":"6mBAWY,MAACA,EAAuB,iBA+BjC,IAACC,EAAgB,cAA4BC,EAC5CC,cACIC,oBACAC,KAAKC,cAAe,EACpBD,KAAKE,UAAY,KAOjBF,KAAKG,WAAY,EASjBH,KAAKI,UAAW,EAChBJ,KAAKK,KAAOC,EAAYC,KAAKC,WAEtBC,oBACP,MAAO,CAACC,EAAYD,GAEpBE,kBACA,OAAOX,KAAKY,cACNC,CAAK,2HAEuCb,KAAKc,kCAGjD,GAENC,oBACA,IAAIC,EASJ,OAPOA,EADPhB,KAAKiB,oBACeJ,CAAK,mGAEA,IAAMb,KAAKkB,kHAIhB,GACbF,EAEXG,SACI,OAAON,CAAK,yCAAyCb,KAAKK,KAAKe,oDAC/DpB,KAAKe,6HAGwBf,KAAKqB,mKAEVrB,KAAKc,8CAI7Bd,KAAKW,oBAGTW,oBACIvB,MAAMuB,oBACNtB,KAAKuB,KAAO,OACZvB,KAAKiB,qBAAqBO,iBAAiB,QAASxB,KAAKyB,eAAeC,KAAK1B,OAC7EA,KAAKiB,qBAAqBO,iBAAiB,OAAQxB,KAAK2B,cAAcD,KAAK1B,OAC3EA,KAAKiB,qBAAqBO,iBAAiB,UAAWxB,KAAK4B,oBAAoBF,KAAK1B,OAExF6B,uBACI9B,MAAM8B,uBACF7B,KAAKiB,qBACLjB,KAAKiB,oBAAoBa,oBAAoB,QAAS9B,KAAK+B,OAAOL,KAAK1B,OAG/EgC,aAAaC,GACTlC,MAAMiC,aAAaC,GACnB,MAAMC,EAAclC,KAAKmC,YAAYC,cAAc,mBACnDF,GAAaV,iBAAiB,QAASxB,KAAKqC,aAAaX,KAAK1B,OAC9DkC,GAAaV,iBAAiB,UAAWxB,KAAKsC,eAAeZ,KAAK1B,OAClEkC,GAAaV,iBAAiB,OAAQxB,KAAKuC,aAAab,KAAK1B,OAEjEwC,QAAQP,GACJlC,MAAMyC,QAAQP,GACVA,EAAMQ,IAAI,cACVzC,KAAKC,aAAeD,KAAKI,UAE7BJ,KAAK0C,sBAETxB,wBACIlB,KAAKc,mBAGDd,KAAKiB,qBACLjB,KAAKiB,oBAAoBO,iBAAiB,QAASxB,KAAK+B,OAAOL,KAAK1B,OAG5Ec,mBACId,KAAK0C,sBAEL1C,KAAK2C,sBAAsBC,SAAQC,IAC/BC,EAAcD,EAAM,CAAC,WAAY,UAGzCH,sBACQ1C,KAAK+C,sBACLC,EAAqBC,MAAMC,KAAKlD,KAAK+C,sBAAuB/C,KAAM,CAAEG,WAAW,IAE/EH,KAAKmD,oBACLH,EAAqBC,MAAMC,KAAKlD,KAAKmD,oBAAqBnD,KAAM,CAC5DI,UAAU,IAGdJ,KAAKoD,qBACLJ,EAAqBC,MAAMC,KAAKlD,KAAKoD,qBAAsBpD,KAAM,CAC7DC,cAAc,IAGlBD,KAAKiB,qBACLoC,EAAUrD,KAAKiB,oBAAqBjB,KAAM,CACtCI,SAAUJ,KAAKI,WAGnBJ,KAAKsD,oBAAoBC,OAAS,GAClCP,EAAqBC,MAAMC,KAAKlD,KAAKsD,qBAAsBtD,KAAM,CAC7DI,SAAUJ,KAAKI,WAGnBJ,KAAKwD,oBAAoBD,OAAS,GAClCP,EAAqBC,MAAMC,KAAKlD,KAAKwD,qBAAsBxD,KAAM,CAC7DyD,QAAQ,IAIhBC,sBACA,OAAOT,MAAMC,KAAKlD,KAAK2C,uBAAuBgB,QAAOC,GAAKC,EAAUD,KAExE7B,SACI/B,KAAK8D,eAAeC,MAAM/D,KAAKI,UAE/B4D,wBACA,OAAOhE,KAAK0D,gBAAgBO,MAAKC,GAAKA,EAAEC,KAAOnE,KAAKqB,uBAExDkB,eACQvC,KAAKgE,mBACLI,EAAYpE,KAAKgE,mBAGzBvC,iBACQzB,KAAKiB,qBACLoD,EAASrE,KAAKiB,qBAGtBU,gBACQ3B,KAAKiB,qBACLmD,EAAYpE,KAAKiB,qBAGzBoB,eACI,GAAKrC,KAAKgE,kBAIL,CACD,MAAMM,EAAetE,KAAKgE,kBAAoBhE,KAAKgE,kBAAoBhE,KAAK2C,sBAAsB,GAClG0B,EAASC,GACTtE,KAAKqB,qBAAuBiD,EAAaH,QANzCE,EAASrE,KAAKuE,kBAAkB,IAChCvE,KAAKqB,qBAAuBrB,KAAKuE,kBAAkB,GAAGJ,GAQ1DI,wBACA,OAAOtB,MAAMC,KAAKlD,KAAK2C,uBAAuBgB,OAAOa,GAEzDlC,eAAemC,GACXC,EAAM,aAAcD,GAAO,KACvB,GAAIzE,KAAKgE,kBAAmB,CACxBI,EAAYpE,KAAKgE,mBACjB,MAAMW,EAAOC,EAAoB5E,KAAKgE,kBAAmBhE,KAAKuE,mBAC9DvE,KAAKqB,qBAAuBsD,EAAKR,GACjCE,EAASM,GACTF,EAAMI,qBAGdH,EAAM,WAAYD,GAAO,KACrB,GAAIzE,KAAKgE,kBAAmB,CACxBI,EAAYpE,KAAKgE,mBACjB,MAAMc,EAAWC,EAAwB/E,KAAKgE,kBAAmBhE,KAAKuE,mBACtEvE,KAAKqB,qBAAuByD,EAASX,GACrCE,EAASS,GACTL,EAAMI,qBAGdH,EAAM,cAAeD,GAAO,KACxB,MAAMO,EAAchF,KAAKgE,mBAAmBiB,QAAQ,yBAChDD,GAAgBA,EAAY5E,UAC5B4E,EAAYlB,eAAeC,MAAMiB,EAAY5E,aAIrDsE,EAAM,aAAcD,GAAO,KACvB,MAAMO,EAAchF,KAAKgE,mBAAmBiB,QAAQ,wBACpD,GAAwC,wBAApCjF,KAAKgE,mBAAmBkB,SAAuCF,EAAa,CAC5E,MAAMG,EAAoBH,GAAa5C,cAAc,wBAIrD,OAHAgC,EAAYpE,KAAKgE,mBACjBhE,KAAKqB,qBAAuB8D,GAAmBhB,IAAM,UACrDE,EAASc,GAGTH,GAAeA,EAAY5E,UAC3B4E,EAAYlB,eAAeC,MAAMiB,EAAY5E,aAIrDsE,EAAM,OAAQD,GAAO,KACjB,GAAIzE,KAAKgE,kBAAmB,CACxBI,EAAYpE,KAAKgE,mBACjB,MAAMoB,EAAOpF,KAAKuE,kBAAkB,GACpCvE,KAAKqB,qBAAuB+D,EAAKjB,GACjCE,EAASe,OAGjBV,EAAM,MAAOD,GAAO,KAChB,GAAIzE,KAAKgE,kBAAmB,CACxBI,EAAYpE,KAAKgE,mBACjB,MAAMqB,EAAMrF,KAAKuE,kBAAkBvE,KAAKuE,kBAAkBhB,OAAS,GACnEvD,KAAKqB,qBAAuBgE,EAAIlB,GAChCE,EAASgB,OAGjBX,EAAM,QAASD,GAAO,KAEdzE,KAAKgE,mBAAmBM,cACxBtE,KAAKgE,mBAAmBM,aAAagB,WAG7CZ,EAAM,QAASD,GAAO,KAEdzE,KAAKgE,mBAAmBM,cACxBtE,KAAKgE,mBAAmBM,aAAagB,WAIjD1D,oBAAoB6C,GAChBC,EAAM,cAAeD,GAAO,KACnBzE,KAAKI,UACNJ,KAAK+B,YAIb2C,EAAM,aAAcD,GAAO,KACnBzE,KAAKI,UACLJ,KAAK+B,cAMrBwD,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClB9F,EAAc+F,UAAW,iBAAa,GACzCJ,EAAW,CACPd,KACD7E,EAAc+F,UAAW,sBAAkB,GAC9CJ,EAAW,CACPd,KACD7E,EAAc+F,UAAW,uBAAmB,GAC/CJ,EAAW,CACPK,EAAM,CAAEH,KAAMI,WACfjG,EAAc+F,UAAW,iBAAa,GACzCJ,EAAW,CACPC,EAAS,CAAEC,KAAMI,WAClBjG,EAAc+F,UAAW,gBAAY,GACxCJ,EAAW,CACPlF,KACDT,EAAc+F,UAAW,YAAQ,GACpCJ,EAAW,CACPO,EAAU,8BAA+B,CAAEC,OAAQ,wBACpDnG,EAAc+F,UAAW,qBAAiB,GAC7CJ,EAAW,CACPS,EAAa,qFACdpG,EAAc+F,UAAW,6BAAyB,GACrDJ,EAAW,CACPS,EAAa,yBACdpG,EAAc+F,UAAW,2BAAuB,GACnDJ,EAAW,CACPS,EAAa,yBACdpG,EAAc+F,UAAW,oBAAgB,GAC5CJ,EAAW,CACPS,EAAa,kCACdpG,EAAc+F,UAAW,4BAAwB,GACpDJ,EAAW,CACPS,EAAa,iCACdpG,EAAc+F,UAAW,2BAAuB,GACnDJ,EAAW,CACPO,EAAU,gCAAiC,CAAEC,OAAQ,sBACtDnG,EAAc+F,UAAW,2BAAuB,GACnDJ,EAAW,CACPS,EAAa,wDACdpG,EAAc+F,UAAW,4BAAwB,GACpDJ,EAAW,CACPS,EAAa,wBACdpG,EAAc+F,UAAW,0BAAsB,GAClDJ,EAAW,CACPS,EAAa,yBACdpG,EAAc+F,UAAW,2BAAuB,GACnD/F,EAAgB2F,EAAW,CACvBU,EAAQ,CACJ7F,SAAU,CACN8F,KAAMC,EACNC,MAAOC,EAAiBF,OAGjCvG"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../../src/navigation/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport '@cds/core/button/register.js';\nimport '@cds/core/icon/register.js';\nimport '@cds/core/divider/register.js';\nimport { AnimationNavigationGroupOpenConfig, AnimationNavigationGroupOpenName, AnimationNavigationOpenConfig, AnimationNavigationOpenName, ClarityMotion, registerElementSafely, } from '@cds/core/internal';\nimport { CdsNavigation, CdsNavigationTagName } from './navigation.element.js';\nimport { CdsNavigationGroup, CdsNavigationGroupTagName } from './navigation-group.element.js';\nimport { CdsNavigationStart, CdsNavigationStartTagName } from './navigation-start.element.js';\nimport { CdsNavigationItem, CdsNavigationItemTagName } from './navigation-item.element.js';\nimport { ClarityIcons } from '@cds/core/icon/icon.service.js';\nimport { angleIcon } from '@cds/core/icon/shapes/angle.js';\nimport { angleDoubleIcon } from '@cds/core/icon/shapes/angle-double.js';\nClarityIcons.addIcons(angleIcon);\nClarityIcons.addIcons(angleDoubleIcon);\nClarityMotion.add(AnimationNavigationGroupOpenName, AnimationNavigationGroupOpenConfig);\nClarityMotion.add(AnimationNavigationOpenName, AnimationNavigationOpenConfig);\nregisterElementSafely(CdsNavigationTagName, CdsNavigation);\nregisterElementSafely(CdsNavigationGroupTagName, CdsNavigationGroup);\nregisterElementSafely(CdsNavigationStartTagName, CdsNavigationStart);\nregisterElementSafely(CdsNavigationItemTagName, CdsNavigationItem);\n"],"names":["ClarityIcons","addIcons","angleIcon","angleDoubleIcon","ClarityMotion","add","AnimationNavigationGroupOpenName","AnimationNavigationGroupOpenConfig","AnimationNavigationOpenName","AnimationNavigationOpenConfig","registerElementSafely","CdsNavigationTagName","CdsNavigation","CdsNavigationGroupTagName","CdsNavigationGroup","CdsNavigationStartTagName","CdsNavigationStart","CdsNavigationItemTagName","CdsNavigationItem"],"mappings":"o4BAgBAA,EAAaC,SAASC,GACtBF,EAAaC,SAASE,GACtBC,EAAcC,IAAIC,EAAkCC,GACpDH,EAAcC,IAAIG,EAA6BC,GAC/CC,EAAsBC,EAAsBC,GAC5CF,EAAsBG,EAA2BC,GACjDJ,EAAsBK,EAA2BC,GACjDN,EAAsBO,EAA0BC"}
1
+ {"version":3,"file":"register.js","sources":["../../../src/navigation/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport '@cds/core/button/register.js';\nimport '@cds/core/icon/register.js';\nimport '@cds/core/divider/register.js';\nimport { AnimationNavigationGroupOpenConfig, AnimationNavigationGroupOpenName, AnimationNavigationOpenConfig, AnimationNavigationOpenName, ClarityMotion, registerElementSafely, } from '@cds/core/internal';\nimport { CdsNavigation, CdsNavigationTagName } from './navigation.element.js';\nimport { CdsNavigationGroup, CdsNavigationGroupTagName } from './navigation-group.element.js';\nimport { CdsNavigationStart, CdsNavigationStartTagName } from './navigation-start.element.js';\nimport { CdsNavigationItem, CdsNavigationItemTagName } from './navigation-item.element.js';\nimport { ClarityIcons } from '@cds/core/icon/icon.service.js';\nimport { angleIcon } from '@cds/core/icon/shapes/angle.js';\nimport { angleDoubleIcon } from '@cds/core/icon/shapes/angle-double.js';\nClarityIcons.addIcons(angleIcon);\nClarityIcons.addIcons(angleDoubleIcon);\nClarityMotion.add(AnimationNavigationGroupOpenName, AnimationNavigationGroupOpenConfig);\nClarityMotion.add(AnimationNavigationOpenName, AnimationNavigationOpenConfig);\nregisterElementSafely(CdsNavigationTagName, CdsNavigation);\nregisterElementSafely(CdsNavigationGroupTagName, CdsNavigationGroup);\nregisterElementSafely(CdsNavigationStartTagName, CdsNavigationStart);\nregisterElementSafely(CdsNavigationItemTagName, CdsNavigationItem);\n"],"names":["ClarityIcons","addIcons","angleIcon","angleDoubleIcon","ClarityMotion","add","AnimationNavigationGroupOpenName","AnimationNavigationGroupOpenConfig","AnimationNavigationOpenName","AnimationNavigationOpenConfig","registerElementSafely","CdsNavigationTagName","CdsNavigation","CdsNavigationGroupTagName","CdsNavigationGroup","CdsNavigationStartTagName","CdsNavigationStart","CdsNavigationItemTagName","CdsNavigationItem"],"mappings":"o4BAgBAA,EAAaC,SAASC,GACtBF,EAAaC,SAASE,GACtBC,EAAcC,IAAIC,EAAkCC,GACpDH,EAAcC,IAAIG,EAA6BC,GAC/CC,EAAsBC,EAAsBC,GAC5CF,EAAsBG,EAA2BC,GACjDJ,EAAsBK,EAA2BC,GACjDN,EAAsBO,EAA0BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/navigation/utils/utils.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { setOrRemoveAttribute } from '@cds/core/internal';\nexport const NAVIGATION_TEXT_WRAPPER = 'cds-navigation-sr-text';\nexport const DEFAULT_NAVIGATION_LAYOUT = 'vertical';\nexport function getNextFocusElement(current, elements) {\n const idx = elements.indexOf(current);\n return elements[idx + 1] ? elements[idx + 1] : elements[0];\n}\nexport function getPreviousFocusElement(current, elements) {\n const idx = elements.indexOf(current);\n return elements[idx - 1] ? elements[idx - 1] : elements[elements.length - 1];\n}\nexport function getToggleIconDirection(element) {\n if (element.isGroupStart) {\n return element.expanded ? 'down' : 'right';\n }\n else {\n return element.expandedRoot ? 'left' : 'right';\n }\n}\nexport function manageScreenReaderElements(element, expandedRoot) {\n const span = element.querySelector('span');\n if (span) {\n setOrRemoveAttribute(span, ['cds-layout', 'display:screen-reader-only'], () => {\n return !expandedRoot;\n });\n }\n}\nexport function removeFocus(element) {\n element.hasFocus = false;\n}\nexport function setFocus(element) {\n element.hasFocus = true;\n element.scrollIntoView(); // Bring elements that are hidden by overflow into viewport\n}\nexport function visibleElement(element) {\n const elementType = element?.tagName;\n const grandparent = element?.parentElement?.parentElement;\n switch (elementType) {\n case 'CDS-NAVIGATION-ITEM':\n return element.hasAttribute('_expanded-group');\n case 'CDS-NAVIGATION-START':\n return !(grandparent?.tagName === 'CDS-NAVIGATION-GROUP' && !grandparent?.hasAttribute('expanded'));\n default:\n return false;\n }\n}\n"],"names":["NAVIGATION_TEXT_WRAPPER","DEFAULT_NAVIGATION_LAYOUT","getNextFocusElement","current","elements","idx","indexOf","getPreviousFocusElement","length","getToggleIconDirection","element","isGroupStart","expanded","expandedRoot","manageScreenReaderElements","span","querySelector","setOrRemoveAttribute","removeFocus","hasFocus","setFocus","scrollIntoView","visibleElement","elementType","tagName","grandparent","parentElement","hasAttribute"],"mappings":"0DAMY,MAACA,EAA0B,yBAC1BC,EAA4B,WAClC,SAASC,EAAoBC,EAASC,GACzC,MAAMC,EAAMD,EAASE,QAAQH,GAC7B,OAAOC,EAASC,EAAM,GAAKD,EAASC,EAAM,GAAKD,EAAS,GAErD,SAASG,EAAwBJ,EAASC,GAC7C,MAAMC,EAAMD,EAASE,QAAQH,GAC7B,OAAOC,EAASC,EAAM,GAAKD,EAASC,EAAM,GAAKD,EAASA,EAASI,OAAS,GAEvE,SAASC,EAAuBC,GACnC,OAAIA,EAAQC,aACDD,EAAQE,SAAW,OAAS,QAG5BF,EAAQG,aAAe,OAAS,QAGxC,SAASC,EAA2BJ,EAASG,GAChD,MAAME,EAAOL,EAAQM,cAAc,QAC/BD,GACAE,EAAqBF,EAAM,CAAC,aAAc,+BAA+B,KAC7DF,IAIb,SAASK,EAAYR,GACxBA,EAAQS,UAAW,EAEhB,SAASC,EAASV,GACrBA,EAAQS,UAAW,EACnBT,EAAQW,iBAEL,SAASC,EAAeZ,GAC3B,MAAMa,EAAcb,GAASc,QACvBC,EAAcf,GAASgB,eAAeA,cAC5C,OAAQH,GACJ,IAAK,sBACD,OAAOb,EAAQiB,aAAa,mBAChC,IAAK,uBACD,QAAkC,yBAAzBF,GAAaD,UAAuCC,GAAaE,aAAa,aAC3F,QACI,OAAO"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../src/navigation/utils/utils.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { setOrRemoveAttribute } from '@cds/core/internal';\nexport const NAVIGATION_TEXT_WRAPPER = 'cds-navigation-sr-text';\nexport const DEFAULT_NAVIGATION_LAYOUT = 'vertical';\nexport function getNextFocusElement(current, elements) {\n const idx = elements.indexOf(current);\n return elements[idx + 1] ? elements[idx + 1] : elements[0];\n}\nexport function getPreviousFocusElement(current, elements) {\n const idx = elements.indexOf(current);\n return elements[idx - 1] ? elements[idx - 1] : elements[elements.length - 1];\n}\nexport function getToggleIconDirection(element) {\n if (element.isGroupStart) {\n return element.expanded ? 'down' : 'right';\n }\n else {\n return element.expandedRoot ? 'left' : 'right';\n }\n}\nexport function manageScreenReaderElements(element, expandedRoot) {\n const span = element.querySelector('span');\n if (span) {\n setOrRemoveAttribute(span, ['cds-layout', 'display:screen-reader-only'], () => {\n return !expandedRoot;\n });\n }\n}\nexport function removeFocus(element) {\n element.hasFocus = false;\n}\nexport function setFocus(element) {\n element.hasFocus = true;\n element.scrollIntoView(); // Bring elements that are hidden by overflow into viewport\n}\nexport function visibleElement(element) {\n const elementType = element?.tagName;\n const grandparent = element?.parentElement?.parentElement;\n switch (elementType) {\n case 'CDS-NAVIGATION-ITEM':\n return element.hasAttribute('_expanded-group');\n case 'CDS-NAVIGATION-START':\n return !(grandparent?.tagName === 'CDS-NAVIGATION-GROUP' && !grandparent?.hasAttribute('expanded'));\n default:\n return false;\n }\n}\n"],"names":["NAVIGATION_TEXT_WRAPPER","DEFAULT_NAVIGATION_LAYOUT","getNextFocusElement","current","elements","idx","indexOf","getPreviousFocusElement","length","getToggleIconDirection","element","isGroupStart","expanded","expandedRoot","manageScreenReaderElements","span","querySelector","setOrRemoveAttribute","removeFocus","hasFocus","setFocus","scrollIntoView","visibleElement","elementType","tagName","grandparent","parentElement","hasAttribute"],"mappings":"0DAMY,MAACA,EAA0B,yBAC1BC,EAA4B,WAClC,SAASC,EAAoBC,EAASC,GACzC,MAAMC,EAAMD,EAASE,QAAQH,GAC7B,OAAOC,EAASC,EAAM,GAAKD,EAASC,EAAM,GAAKD,EAAS,GAErD,SAASG,EAAwBJ,EAASC,GAC7C,MAAMC,EAAMD,EAASE,QAAQH,GAC7B,OAAOC,EAASC,EAAM,GAAKD,EAASC,EAAM,GAAKD,EAASA,EAASI,OAAS,GAEvE,SAASC,EAAuBC,GACnC,OAAIA,EAAQC,aACDD,EAAQE,SAAW,OAAS,QAG5BF,EAAQG,aAAe,OAAS,QAGxC,SAASC,EAA2BJ,EAASG,GAChD,MAAME,EAAOL,EAAQM,cAAc,QAC/BD,GACAE,EAAqBF,EAAM,CAAC,aAAc,+BAA+B,KAC7DF,IAIb,SAASK,EAAYR,GACxBA,EAAQS,UAAW,EAEhB,SAASC,EAASV,GACrBA,EAAQS,UAAW,EACnBT,EAAQW,iBAEL,SAASC,EAAeZ,GAC3B,MAAMa,EAAcb,GAASc,QACvBC,EAAcf,GAASgB,eAAeA,cAC5C,OAAQH,GACJ,IAAK,sBACD,OAAOb,EAAQiB,aAAa,mBAChC,IAAK,uBACD,QAAkC,yBAAzBF,GAAaD,UAAuCC,GAAaE,aAAa,aAC3F,QACI,OAAO"}
package/package.json CHANGED
@@ -256,5 +256,5 @@
256
256
  "./tokens/tokens.ios.swift": "./tokens/tokens.ios.swift",
257
257
  "./tokens/tokens.android.xml": "./tokens/tokens.android.xml"
258
258
  },
259
- "version": "6.2.2"
259
+ "version": "6.2.4"
260
260
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pagination-button.element.js","sources":["../../../src/pagination/pagination-button.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { property } from '@cds/core/internal';\nimport { state } from 'lit/decorators/state.js';\nimport { query } from 'lit/decorators/query.js';\nimport { CdsButtonAction } from '@cds/core/button-action';\nimport { getPaginationIconConfig } from './utils.js';\n/**\n * Web component pagination button to be used inside pagination.\n *\n * ```typescript\n * import '@cds/core/pagination/register.js';\n * ```\n *\n * ```html\n * <cds-pagination>\n * <cds-pagination-button action=\"first\" disabled></cds-pagination-button>\n * <cds-pagination-button action=\"prev\" disabled></cds-pagination-button>\n * <span aria-label=\"current page\">1 / 3</span>\n * <cds-pagination-button action=\"next\"></cds-pagination-button>\n * <cds-pagination-button action=\"last\"></cds-pagination-button>\n * </cds-pagination>\n * ```\n *\n * @beta\n * @element cds-pagination-button\n * @slot\n * @slot cds-icon\n * @cssprop --background\n * @cssprop --padding\n * @cssprop --border-color\n * @cssprop --border-width\n * @cssprop --border-radius\n * @cssprop --box-shadow\n * @cssprop --min-height\n * @cssprop --min-width\n * @property disabled\n */\nexport class CdsPaginationButton extends CdsButtonAction {\n updated(props) {\n super.updated(props);\n const { shape, direction } = getPaginationIconConfig(this.action);\n this.shape = shape;\n this.direction = direction;\n if (this.cdsIcon) {\n this.cdsIcon.direction = this.direction;\n }\n }\n}\n__decorate([\n property({ type: String })\n], CdsPaginationButton.prototype, \"action\", void 0);\n__decorate([\n state()\n], CdsPaginationButton.prototype, \"direction\", void 0);\n__decorate([\n query('cds-icon')\n], CdsPaginationButton.prototype, \"cdsIcon\", void 0);\n"],"names":["CdsPaginationButton","CdsButtonAction","updated","props","super","shape","direction","getPaginationIconConfig","this","action","cdsIcon","__decorate","property","type","String","prototype","state","query"],"mappings":"gSA0CO,MAAMA,UAA4BC,EACrCC,QAAQC,GACJC,MAAMF,QAAQC,GACd,MAAME,MAAEA,EAAKC,UAAEA,GAAcC,EAAwBC,KAAKC,QAC1DD,KAAKH,MAAQA,EACbG,KAAKF,UAAYA,EACbE,KAAKE,UACLF,KAAKE,QAAQJ,UAAYE,KAAKF,YAI1CK,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClBd,EAAoBe,UAAW,cAAU,GAC5CJ,EAAW,CACPK,KACDhB,EAAoBe,UAAW,iBAAa,GAC/CJ,EAAW,CACPM,EAAM,aACPjB,EAAoBe,UAAW,eAAW"}
1
+ {"version":3,"file":"pagination-button.element.js","sources":["../../../src/pagination/pagination-button.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { property } from '@cds/core/internal';\nimport { state } from 'lit/decorators/state.js';\nimport { query } from 'lit/decorators/query.js';\nimport { CdsButtonAction } from '@cds/core/button-action';\nimport { getPaginationIconConfig } from './utils.js';\n/**\n * Web component pagination button to be used inside pagination.\n *\n * ```typescript\n * import '@cds/core/pagination/register.js';\n * ```\n *\n * ```html\n * <cds-pagination>\n * <cds-pagination-button action=\"first\" disabled></cds-pagination-button>\n * <cds-pagination-button action=\"prev\" disabled></cds-pagination-button>\n * <span aria-label=\"current page\">1 / 3</span>\n * <cds-pagination-button action=\"next\"></cds-pagination-button>\n * <cds-pagination-button action=\"last\"></cds-pagination-button>\n * </cds-pagination>\n * ```\n *\n * @beta\n * @element cds-pagination-button\n * @slot\n * @slot cds-icon\n * @cssprop --background\n * @cssprop --padding\n * @cssprop --border-color\n * @cssprop --border-width\n * @cssprop --border-radius\n * @cssprop --box-shadow\n * @cssprop --min-height\n * @cssprop --min-width\n * @property disabled\n */\nexport class CdsPaginationButton extends CdsButtonAction {\n updated(props) {\n super.updated(props);\n const { shape, direction } = getPaginationIconConfig(this.action);\n this.shape = shape;\n this.direction = direction;\n if (this.cdsIcon) {\n this.cdsIcon.direction = this.direction;\n }\n }\n}\n__decorate([\n property({ type: String })\n], CdsPaginationButton.prototype, \"action\", void 0);\n__decorate([\n state()\n], CdsPaginationButton.prototype, \"direction\", void 0);\n__decorate([\n query('cds-icon')\n], CdsPaginationButton.prototype, \"cdsIcon\", void 0);\n"],"names":["CdsPaginationButton","CdsButtonAction","updated","props","super","shape","direction","getPaginationIconConfig","this","action","cdsIcon","__decorate","property","type","String","prototype","state","query"],"mappings":"gSA0CO,MAAMA,UAA4BC,EACrCC,QAAQC,GACJC,MAAMF,QAAQC,GACd,MAAME,MAAEA,EAAKC,UAAEA,GAAcC,EAAwBC,KAAKC,QAC1DD,KAAKH,MAAQA,EACbG,KAAKF,UAAYA,EACbE,KAAKE,UACLF,KAAKE,QAAQJ,UAAYE,KAAKF,YAI1CK,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClBd,EAAoBe,UAAW,cAAU,GAC5CJ,EAAW,CACPK,KACDhB,EAAoBe,UAAW,iBAAa,GAC/CJ,EAAW,CACPM,EAAM,aACPjB,EAAoBe,UAAW,eAAW"}
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.element.js","sources":["../../../src/pagination/pagination.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { css, html, LitElement } from 'lit';\nimport { cache } from 'lit/directives/cache.js';\nimport { baseStyles, globalStyle, LogService, notProductionEnvironment, querySlot } from '@cds/core/internal';\nimport styles from './pagination.element.scss';\n/**\n * Web component pagination.\n *\n * ```typescript\n * import '@cds/core/pagination/register.js';\n * ```\n *\n * ```html\n * <cds-pagination>\n * <cds-pagination-button action=\"first\" disabled></cds-pagination-button>\n * <cds-pagination-button action=\"prev\" disabled></cds-pagination-button>\n * <span aria-label=\"current page\">1 / 3</span>\n * <cds-pagination-button action=\"next\"></cds-pagination-button>\n * <cds-pagination-button action=\"last\"></cds-pagination-button>\n * </cds-pagination>\n * ```\n *\n * @beta\n * @element cds-pagination\n * @slot\n * @slot cds-pagination-button\n * @cssprop --color\n * @cssprop --font-size\n */\nexport class CdsPagination extends LitElement {\n constructor() {\n super(...arguments);\n this.globalStyles = css `\n [cds-pagination-number] > cds-control-message {\n --min-width: initial;\n }\n `;\n }\n render() {\n const userLayout = html `<slot></slot>`;\n const defaultLayout = html `<div cds-layout=\"horizontal gap:sm align:center wrap:none\"><slot></slot></div>`;\n return html `${cache(this.hasAttribute('cds-layout') ? userLayout : defaultLayout)}`;\n }\n static get styles() {\n return [baseStyles, styles];\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.setupNumberInput();\n this.validateAriaLabel();\n }\n setupNumberInput() {\n if (this.numberInput) {\n this.numberInput.controlWidth = 'shrink';\n this.numberInput.layout = 'compact';\n }\n }\n validateAriaLabel() {\n if (notProductionEnvironment() && !this.getAttribute('aria-label')?.length) {\n LogService.warn('An aria-label is missing', this);\n }\n }\n}\n__decorate([\n globalStyle()\n], CdsPagination.prototype, \"globalStyles\", void 0);\n__decorate([\n querySlot('cds-input[cds-pagination-number]')\n], CdsPagination.prototype, \"numberInput\", void 0);\n"],"names":["CdsPagination","LitElement","constructor","super","this","globalStyles","css","render","userLayout","html","defaultLayout","cache","hasAttribute","styles","baseStyles","firstUpdated","props","setupNumberInput","validateAriaLabel","numberInput","controlWidth","layout","notProductionEnvironment","getAttribute","length","LogService","warn","__decorate","globalStyle","prototype","querySlot"],"mappings":"iTAkCO,MAAMA,UAAsBC,EAC/BC,cACIC,oBACAC,KAAKC,aAAeC,CAAI,mEAM5BC,SACI,MAAMC,EAAaC,CAAK,gBAClBC,EAAgBD,CAAK,iFAC3B,OAAOA,CAAK,GAAGE,EAAMP,KAAKQ,aAAa,cAAgBJ,EAAaE,KAE7DG,oBACP,MAAO,CAACC,EAAYD,GAExBE,aAAaC,GACTb,MAAMY,aAAaC,GACnBZ,KAAKa,mBACLb,KAAKc,oBAETD,mBACQb,KAAKe,cACLf,KAAKe,YAAYC,aAAe,SAChChB,KAAKe,YAAYE,OAAS,WAGlCH,oBACQI,MAA+BlB,KAAKmB,aAAa,eAAeC,QAChEC,EAAWC,KAAK,2BAA4BtB,OAIxDuB,EAAW,CACPC,KACD5B,EAAc6B,UAAW,oBAAgB,GAC5CF,EAAW,CACPG,EAAU,qCACX9B,EAAc6B,UAAW,mBAAe"}
1
+ {"version":3,"file":"pagination.element.js","sources":["../../../src/pagination/pagination.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { css, html, LitElement } from 'lit';\nimport { cache } from 'lit/directives/cache.js';\nimport { baseStyles, globalStyle, LogService, notProductionEnvironment, querySlot } from '@cds/core/internal';\nimport styles from './pagination.element.scss';\n/**\n * Web component pagination.\n *\n * ```typescript\n * import '@cds/core/pagination/register.js';\n * ```\n *\n * ```html\n * <cds-pagination>\n * <cds-pagination-button action=\"first\" disabled></cds-pagination-button>\n * <cds-pagination-button action=\"prev\" disabled></cds-pagination-button>\n * <span aria-label=\"current page\">1 / 3</span>\n * <cds-pagination-button action=\"next\"></cds-pagination-button>\n * <cds-pagination-button action=\"last\"></cds-pagination-button>\n * </cds-pagination>\n * ```\n *\n * @beta\n * @element cds-pagination\n * @slot\n * @slot cds-pagination-button\n * @cssprop --color\n * @cssprop --font-size\n */\nexport class CdsPagination extends LitElement {\n constructor() {\n super(...arguments);\n this.globalStyles = css `\n [cds-pagination-number] > cds-control-message {\n --min-width: initial;\n }\n `;\n }\n render() {\n const userLayout = html `<slot></slot>`;\n const defaultLayout = html `<div cds-layout=\"horizontal gap:sm align:center wrap:none\"><slot></slot></div>`;\n return html `${cache(this.hasAttribute('cds-layout') ? userLayout : defaultLayout)}`;\n }\n static get styles() {\n return [baseStyles, styles];\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.setupNumberInput();\n this.validateAriaLabel();\n }\n setupNumberInput() {\n if (this.numberInput) {\n this.numberInput.controlWidth = 'shrink';\n this.numberInput.layout = 'compact';\n }\n }\n validateAriaLabel() {\n if (notProductionEnvironment() && !this.getAttribute('aria-label')?.length) {\n LogService.warn('An aria-label is missing', this);\n }\n }\n}\n__decorate([\n globalStyle()\n], CdsPagination.prototype, \"globalStyles\", void 0);\n__decorate([\n querySlot('cds-input[cds-pagination-number]')\n], CdsPagination.prototype, \"numberInput\", void 0);\n"],"names":["CdsPagination","LitElement","constructor","super","this","globalStyles","css","render","userLayout","html","defaultLayout","cache","hasAttribute","styles","baseStyles","firstUpdated","props","setupNumberInput","validateAriaLabel","numberInput","controlWidth","layout","notProductionEnvironment","getAttribute","length","LogService","warn","__decorate","globalStyle","prototype","querySlot"],"mappings":"iTAkCO,MAAMA,UAAsBC,EAC/BC,cACIC,oBACAC,KAAKC,aAAeC,CAAI,mEAM5BC,SACI,MAAMC,EAAaC,CAAK,gBAClBC,EAAgBD,CAAK,iFAC3B,OAAOA,CAAK,GAAGE,EAAMP,KAAKQ,aAAa,cAAgBJ,EAAaE,KAE7DG,oBACP,MAAO,CAACC,EAAYD,GAExBE,aAAaC,GACTb,MAAMY,aAAaC,GACnBZ,KAAKa,mBACLb,KAAKc,oBAETD,mBACQb,KAAKe,cACLf,KAAKe,YAAYC,aAAe,SAChChB,KAAKe,YAAYE,OAAS,WAGlCH,oBACQI,MAA+BlB,KAAKmB,aAAa,eAAeC,QAChEC,EAAWC,KAAK,2BAA4BtB,OAIxDuB,EAAW,CACPC,KACD5B,EAAc6B,UAAW,oBAAgB,GAC5CF,EAAW,CACPG,EAAU,qCACX9B,EAAc6B,UAAW,mBAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../../src/pagination/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport '@cds/core/button/register.js';\nimport '@cds/core/icon/register.js';\nimport '@cds/core/input/register.js';\nimport '@cds/core/select/register.js';\nimport { registerElementSafely } from '@cds/core/internal';\nimport { ClarityIcons } from '@cds/core/icon/icon.service.js';\nimport { angleIcon } from '@cds/core/icon/shapes/angle.js';\nimport { stepForward2Icon } from '@cds/core/icon/shapes/step-forward-2.js';\nimport { CdsPaginationButton } from './pagination-button.element.js';\nimport { CdsPagination } from './pagination.element.js';\nregisterElementSafely('cds-pagination', CdsPagination);\nregisterElementSafely('cds-pagination-button', CdsPaginationButton);\nClarityIcons.addIcons(angleIcon);\nClarityIcons.addIcons(stepForward2Icon);\n"],"names":["registerElementSafely","CdsPagination","CdsPaginationButton","ClarityIcons","addIcons","angleIcon","stepForward2Icon"],"mappings":"6gBAeAA,EAAsB,iBAAkBC,GACxCD,EAAsB,wBAAyBE,GAC/CC,EAAaC,SAASC,GACtBF,EAAaC,SAASE"}
1
+ {"version":3,"file":"register.js","sources":["../../../src/pagination/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport '@cds/core/button/register.js';\nimport '@cds/core/icon/register.js';\nimport '@cds/core/input/register.js';\nimport '@cds/core/select/register.js';\nimport { registerElementSafely } from '@cds/core/internal';\nimport { ClarityIcons } from '@cds/core/icon/icon.service.js';\nimport { angleIcon } from '@cds/core/icon/shapes/angle.js';\nimport { stepForward2Icon } from '@cds/core/icon/shapes/step-forward-2.js';\nimport { CdsPaginationButton } from './pagination-button.element.js';\nimport { CdsPagination } from './pagination.element.js';\nregisterElementSafely('cds-pagination', CdsPagination);\nregisterElementSafely('cds-pagination-button', CdsPaginationButton);\nClarityIcons.addIcons(angleIcon);\nClarityIcons.addIcons(stepForward2Icon);\n"],"names":["registerElementSafely","CdsPagination","CdsPaginationButton","ClarityIcons","addIcons","angleIcon","stepForward2Icon"],"mappings":"6gBAeAA,EAAsB,iBAAkBC,GACxCD,EAAsB,wBAAyBE,GAC/CC,EAAaC,SAASC,GACtBF,EAAaC,SAASE"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../src/pagination/utils.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nexport function getPaginationIconConfig(action) {\n const config = {\n next: { shape: 'angle', direction: 'right' },\n last: { shape: 'step-forward-2', direction: 'up' },\n prev: { shape: 'angle', direction: 'left' },\n first: { shape: 'step-forward-2', direction: 'down' },\n };\n return config[action] ?? { shape: 'ellipsis-vertical', direction: 'up' };\n}\n"],"names":["getPaginationIconConfig","action","next","shape","direction","last","prev","first"],"mappings":"AAKO,SAASA,EAAwBC,GAOpC,MANe,CACXC,KAAM,CAAEC,MAAO,QAASC,UAAW,SACnCC,KAAM,CAAEF,MAAO,iBAAkBC,UAAW,MAC5CE,KAAM,CAAEH,MAAO,QAASC,UAAW,QACnCG,MAAO,CAAEJ,MAAO,iBAAkBC,UAAW,SAEnCH,IAAW,CAAEE,MAAO,oBAAqBC,UAAW"}
1
+ {"version":3,"file":"utils.js","sources":["../../../src/pagination/utils.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nexport function getPaginationIconConfig(action) {\n const config = {\n next: { shape: 'angle', direction: 'right' },\n last: { shape: 'step-forward-2', direction: 'up' },\n prev: { shape: 'angle', direction: 'left' },\n first: { shape: 'step-forward-2', direction: 'down' },\n };\n return config[action] ?? { shape: 'ellipsis-vertical', direction: 'up' };\n}\n"],"names":["getPaginationIconConfig","action","next","shape","direction","last","prev","first"],"mappings":"AAKO,SAASA,EAAwBC,GAOpC,MANe,CACXC,KAAM,CAAEC,MAAO,QAASC,UAAW,SACnCC,KAAM,CAAEF,MAAO,iBAAkBC,UAAW,MAC5CE,KAAM,CAAEH,MAAO,QAASC,UAAW,QACnCG,MAAO,CAAEJ,MAAO,iBAAkBC,UAAW,SAEnCH,IAAW,CAAEE,MAAO,oBAAqBC,UAAW"}
@@ -1 +1 @@
1
- {"version":3,"file":"password.element.js","sources":["../../../src/password/password.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { state, i18n, I18nService } from '@cds/core/internal';\nimport { CdsControl } from '@cds/core/forms';\nimport { inputStyles } from '@cds/core/input';\nimport { ClarityIcons } from '@cds/core/icon/icon.service.js';\nimport { eyeIcon } from '@cds/core/icon/shapes/eye.js';\nimport { eyeHideIcon } from '@cds/core/icon/shapes/eye-hide.js';\n/**\n * Password\n *\n * ```typescript\n * import '@cds/core/password/register.js';\n * ```\n *\n * ```html\n * <cds-password>\n * <label>Password</label>\n * <input type=\"password\" />\n * <cds-control-message>message text</cds-control-message>\n * </cds-password>\n * ```\n *\n * @element cds-password\n * @slot - For projecting password input and label\n * @cssprop --background\n * @cssprop --background-size\n * @cssprop --border\n * @cssprop --border-bottom\n * @cssprop --outline\n * @cssprop --padding\n * @cssprop --font-size\n * @cssprop --color\n * @cssprop --line-height\n * @cssprop --transition\n */\nexport class CdsPassword extends CdsControl {\n constructor() {\n super();\n this.showPassword = false;\n this.i18n = I18nService.keys.password;\n ClarityIcons.addIcons(eyeIcon, eyeHideIcon);\n }\n get suffixDefaultTemplate() {\n return html `\n <cds-button-action\n @click=${() => this.togglePasswordVisibility()}\n .pressed=${this.showPassword}\n .ariaLabel=${this.showPassword ? this.i18n.hideButtonAriaLabel : this.i18n.showButtonAriaLabel}\n >\n <cds-icon shape=\"${this.showPassword ? 'eye-hide' : 'eye'}\"></cds-icon>\n </cds-button-action>\n `;\n }\n static get styles() {\n return [...super.styles, inputStyles];\n }\n togglePasswordVisibility() {\n this.showPassword = !this.showPassword;\n this.inputControl.type = this.showPassword ? 'text' : 'password';\n this.inputControl.focus();\n }\n}\n__decorate([\n state()\n], CdsPassword.prototype, \"showPassword\", void 0);\n__decorate([\n i18n()\n], CdsPassword.prototype, \"i18n\", void 0);\n"],"names":["CdsPassword","CdsControl","constructor","super","this","showPassword","i18n","I18nService","keys","password","ClarityIcons","addIcons","eyeIcon","eyeHideIcon","suffixDefaultTemplate","html","togglePasswordVisibility","hideButtonAriaLabel","showButtonAriaLabel","styles","inputStyles","inputControl","type","focus","__decorate","state","prototype"],"mappings":"oZAyCO,MAAMA,UAAoBC,EAC7BC,cACIC,QACAC,KAAKC,cAAe,EACpBD,KAAKE,KAAOC,EAAYC,KAAKC,SAC7BC,EAAaC,SAASC,EAASC,GAE/BC,4BACA,OAAOC,CAAK,8BAEH,IAAMX,KAAKY,yCACTZ,KAAKC,6BACHD,KAAKC,aAAeD,KAAKE,KAAKW,oBAAsBb,KAAKE,KAAKY,yCAExDd,KAAKC,aAAe,WAAa,yCAI7Cc,oBACP,MAAO,IAAIhB,MAAMgB,OAAQC,GAE7BJ,2BACIZ,KAAKC,cAAgBD,KAAKC,aAC1BD,KAAKiB,aAAaC,KAAOlB,KAAKC,aAAe,OAAS,WACtDD,KAAKiB,aAAaE,SAG1BC,EAAW,CACPC,KACDzB,EAAY0B,UAAW,oBAAgB,GAC1CF,EAAW,CACPlB,KACDN,EAAY0B,UAAW,YAAQ"}
1
+ {"version":3,"file":"password.element.js","sources":["../../../src/password/password.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { state, i18n, I18nService } from '@cds/core/internal';\nimport { CdsControl } from '@cds/core/forms';\nimport { inputStyles } from '@cds/core/input';\nimport { ClarityIcons } from '@cds/core/icon/icon.service.js';\nimport { eyeIcon } from '@cds/core/icon/shapes/eye.js';\nimport { eyeHideIcon } from '@cds/core/icon/shapes/eye-hide.js';\n/**\n * Password\n *\n * ```typescript\n * import '@cds/core/password/register.js';\n * ```\n *\n * ```html\n * <cds-password>\n * <label>Password</label>\n * <input type=\"password\" />\n * <cds-control-message>message text</cds-control-message>\n * </cds-password>\n * ```\n *\n * @element cds-password\n * @slot - For projecting password input and label\n * @cssprop --background\n * @cssprop --background-size\n * @cssprop --border\n * @cssprop --border-bottom\n * @cssprop --outline\n * @cssprop --padding\n * @cssprop --font-size\n * @cssprop --color\n * @cssprop --line-height\n * @cssprop --transition\n */\nexport class CdsPassword extends CdsControl {\n constructor() {\n super();\n this.showPassword = false;\n this.i18n = I18nService.keys.password;\n ClarityIcons.addIcons(eyeIcon, eyeHideIcon);\n }\n get suffixDefaultTemplate() {\n return html `\n <cds-button-action\n @click=${() => this.togglePasswordVisibility()}\n .pressed=${this.showPassword}\n .ariaLabel=${this.showPassword ? this.i18n.hideButtonAriaLabel : this.i18n.showButtonAriaLabel}\n >\n <cds-icon shape=\"${this.showPassword ? 'eye-hide' : 'eye'}\"></cds-icon>\n </cds-button-action>\n `;\n }\n static get styles() {\n return [...super.styles, inputStyles];\n }\n togglePasswordVisibility() {\n this.showPassword = !this.showPassword;\n this.inputControl.type = this.showPassword ? 'text' : 'password';\n this.inputControl.focus();\n }\n}\n__decorate([\n state()\n], CdsPassword.prototype, \"showPassword\", void 0);\n__decorate([\n i18n()\n], CdsPassword.prototype, \"i18n\", void 0);\n"],"names":["CdsPassword","CdsControl","constructor","super","this","showPassword","i18n","I18nService","keys","password","ClarityIcons","addIcons","eyeIcon","eyeHideIcon","suffixDefaultTemplate","html","togglePasswordVisibility","hideButtonAriaLabel","showButtonAriaLabel","styles","inputStyles","inputControl","type","focus","__decorate","state","prototype"],"mappings":"oZAyCO,MAAMA,UAAoBC,EAC7BC,cACIC,QACAC,KAAKC,cAAe,EACpBD,KAAKE,KAAOC,EAAYC,KAAKC,SAC7BC,EAAaC,SAASC,EAASC,GAE/BC,4BACA,OAAOC,CAAK,8BAEH,IAAMX,KAAKY,yCACTZ,KAAKC,6BACHD,KAAKC,aAAeD,KAAKE,KAAKW,oBAAsBb,KAAKE,KAAKY,yCAExDd,KAAKC,aAAe,WAAa,yCAI7Cc,oBACP,MAAO,IAAIhB,MAAMgB,OAAQC,GAE7BJ,2BACIZ,KAAKC,cAAgBD,KAAKC,aAC1BD,KAAKiB,aAAaC,KAAOlB,KAAKC,aAAe,OAAS,WACtDD,KAAKiB,aAAaE,SAG1BC,EAAW,CACPC,KACDzB,EAAY0B,UAAW,oBAAgB,GAC1CF,EAAW,CACPlB,KACDN,EAAY0B,UAAW,YAAQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../../src/password/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsPassword } from './password.element.js';\nimport '@cds/core/forms/register.js';\nimport '@cds/core/button-action/register.js';\nimport '@cds/core/icon/register.js';\nregisterElementSafely('cds-password', CdsPassword);\n"],"names":["registerElementSafely","CdsPassword"],"mappings":"kOAUAA,EAAsB,eAAgBC"}
1
+ {"version":3,"file":"register.js","sources":["../../../src/password/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsPassword } from './password.element.js';\nimport '@cds/core/forms/register.js';\nimport '@cds/core/button-action/register.js';\nimport '@cds/core/icon/register.js';\nregisterElementSafely('cds-password', CdsPassword);\n"],"names":["registerElementSafely","CdsPassword"],"mappings":"kOAUAA,EAAsB,eAAgBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"aria-reflect.js","sources":["../../../src/polyfills/aria-reflect.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nlet roleRegistered = false;\nlet ariaRegistered = false;\n// eslint-disable-next-line\nif (!roleRegistered && !Element.prototype.hasOwnProperty('role')) {\n reflect(Element.prototype, 'role', 'role');\n roleRegistered = true;\n}\n// https://www.w3.org/TR/wai-aria-1.0/states_and_properties\n// eslint-disable-next-line\nif (!ariaRegistered && !Element.prototype.hasOwnProperty('ariaLabel')) {\n ariaRegistered = true;\n [\n 'ActiveDescendant',\n 'Atomic',\n 'AutoComplete',\n 'Busy',\n 'Checked',\n 'ColCount',\n 'ColIndex',\n 'ColSpan',\n 'Controls',\n 'Current',\n 'DescribedBy',\n 'Details',\n 'Disabled',\n 'ErrorMessage',\n 'Expanded',\n 'FlowTo',\n 'HasPopup',\n 'Hidden',\n 'Invalid',\n 'KeyShortcuts',\n 'Label',\n 'LabelledBy',\n 'Level',\n 'Live',\n 'Modal',\n 'MultiLine',\n 'MultiSelectable',\n 'Orientation',\n 'Owns',\n 'Placeholder',\n 'PosInSet',\n 'Pressed',\n 'ReadOnly',\n 'Relevant',\n 'Required',\n 'RoleDescription',\n 'RowCount',\n 'RowIndex',\n 'RowSpan',\n 'Selected',\n 'SetSize',\n 'Sort',\n 'ValueMax',\n 'ValueMin',\n 'ValueNow',\n 'ValueText',\n ].forEach(name => reflect(Element.prototype, `aria-${name.toLowerCase()}`, `aria${name}`));\n}\nexport function reflect(element, attributeName, propertyName) {\n Object.defineProperty(element, propertyName, {\n configurable: true,\n enumerable: true,\n get: function () {\n return this.hasAttribute(attributeName) ? this.getAttribute(attributeName) : null;\n },\n set: function (value) {\n if (value !== null) {\n this.setAttribute(attributeName, value);\n }\n else {\n this.removeAttribute(attributeName);\n }\n },\n });\n}\n"],"names":["roleRegistered","ariaRegistered","reflect","element","attributeName","propertyName","Object","defineProperty","configurable","enumerable","get","this","hasAttribute","getAttribute","set","value","setAttribute","removeAttribute","Element","prototype","hasOwnProperty","forEach","name","toLowerCase"],"mappings":"AAKA,IAAIA,GAAiB,EACjBC,GAAiB,EA2Dd,SAASC,EAAQC,EAASC,EAAeC,GAC5CC,OAAOC,eAAeJ,EAASE,EAAc,CACzCG,cAAc,EACdC,YAAY,EACZC,IAAK,WACD,OAAOC,KAAKC,aAAaR,GAAiBO,KAAKE,aAAaT,GAAiB,MAEjFU,IAAK,SAAUC,GACG,OAAVA,EACAJ,KAAKK,aAAaZ,EAAeW,GAGjCJ,KAAKM,gBAAgBb,MArEhCJ,GAAmBkB,QAAQC,UAAUC,eAAe,UACrDlB,EAAQgB,QAAQC,UAAW,OAAQ,QACnCnB,GAAiB,GAIhBC,GAAmBiB,QAAQC,UAAUC,eAAe,eACrDnB,GAAiB,EACjB,CACI,mBACA,SACA,eACA,OACA,UACA,WACA,WACA,UACA,WACA,UACA,cACA,UACA,WACA,eACA,WACA,SACA,WACA,SACA,UACA,eACA,QACA,aACA,QACA,OACA,QACA,YACA,kBACA,cACA,OACA,cACA,WACA,UACA,WACA,WACA,WACA,kBACA,WACA,WACA,UACA,WACA,UACA,OACA,WACA,WACA,WACA,aACFoB,SAAQC,GAAQpB,EAAQgB,QAAQC,UAAW,QAAQG,EAAKC,cAAiB,OAAOD"}
1
+ {"version":3,"file":"aria-reflect.js","sources":["../../../src/polyfills/aria-reflect.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nlet roleRegistered = false;\nlet ariaRegistered = false;\n// eslint-disable-next-line\nif (!roleRegistered && !Element.prototype.hasOwnProperty('role')) {\n reflect(Element.prototype, 'role', 'role');\n roleRegistered = true;\n}\n// https://www.w3.org/TR/wai-aria-1.0/states_and_properties\n// eslint-disable-next-line\nif (!ariaRegistered && !Element.prototype.hasOwnProperty('ariaLabel')) {\n ariaRegistered = true;\n [\n 'ActiveDescendant',\n 'Atomic',\n 'AutoComplete',\n 'Busy',\n 'Checked',\n 'ColCount',\n 'ColIndex',\n 'ColSpan',\n 'Controls',\n 'Current',\n 'DescribedBy',\n 'Details',\n 'Disabled',\n 'ErrorMessage',\n 'Expanded',\n 'FlowTo',\n 'HasPopup',\n 'Hidden',\n 'Invalid',\n 'KeyShortcuts',\n 'Label',\n 'LabelledBy',\n 'Level',\n 'Live',\n 'Modal',\n 'MultiLine',\n 'MultiSelectable',\n 'Orientation',\n 'Owns',\n 'Placeholder',\n 'PosInSet',\n 'Pressed',\n 'ReadOnly',\n 'Relevant',\n 'Required',\n 'RoleDescription',\n 'RowCount',\n 'RowIndex',\n 'RowSpan',\n 'Selected',\n 'SetSize',\n 'Sort',\n 'ValueMax',\n 'ValueMin',\n 'ValueNow',\n 'ValueText',\n ].forEach(name => reflect(Element.prototype, `aria-${name.toLowerCase()}`, `aria${name}`));\n}\nexport function reflect(element, attributeName, propertyName) {\n Object.defineProperty(element, propertyName, {\n configurable: true,\n enumerable: true,\n get: function () {\n return this.hasAttribute(attributeName) ? this.getAttribute(attributeName) : null;\n },\n set: function (value) {\n if (value !== null) {\n this.setAttribute(attributeName, value);\n }\n else {\n this.removeAttribute(attributeName);\n }\n },\n });\n}\n"],"names":["roleRegistered","ariaRegistered","reflect","element","attributeName","propertyName","Object","defineProperty","configurable","enumerable","get","this","hasAttribute","getAttribute","set","value","setAttribute","removeAttribute","Element","prototype","hasOwnProperty","forEach","name","toLowerCase"],"mappings":"AAKA,IAAIA,GAAiB,EACjBC,GAAiB,EA2Dd,SAASC,EAAQC,EAASC,EAAeC,GAC5CC,OAAOC,eAAeJ,EAASE,EAAc,CACzCG,cAAc,EACdC,YAAY,EACZC,IAAK,WACD,OAAOC,KAAKC,aAAaR,GAAiBO,KAAKE,aAAaT,GAAiB,MAEjFU,IAAK,SAAUC,GACG,OAAVA,EACAJ,KAAKK,aAAaZ,EAAeW,GAGjCJ,KAAKM,gBAAgBb,MArEhCJ,GAAmBkB,QAAQC,UAAUC,eAAe,UACrDlB,EAAQgB,QAAQC,UAAW,OAAQ,QACnCnB,GAAiB,GAIhBC,GAAmBiB,QAAQC,UAAUC,eAAe,eACrDnB,GAAiB,EACjB,CACI,mBACA,SACA,eACA,OACA,UACA,WACA,WACA,UACA,WACA,UACA,cACA,UACA,WACA,eACA,WACA,SACA,WACA,SACA,UACA,eACA,QACA,aACA,QACA,OACA,QACA,YACA,kBACA,cACA,OACA,cACA,WACA,UACA,WACA,WACA,WACA,kBACA,WACA,WACA,UACA,WACA,UACA,OACA,WACA,WACA,WACA,aACFoB,SAAQC,GAAQpB,EAAQgB,QAAQC,UAAW,QAAQG,EAAKC,cAAiB,OAAOD"}
@@ -1 +1 @@
1
- {"version":3,"file":"at.js","sources":["../../../src/polyfills/at.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nlet registered = false;\n/**\n * Polyfill for Safari\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at\n */\nexport function at(n) {\n n = Math.trunc(n) || 0;\n if (n < 0) {\n n += this.length;\n }\n if (n < 0 || n >= this.length) {\n return undefined;\n }\n return this[n];\n}\nif (!registered) {\n registered = true;\n const TypedArray = Reflect.getPrototypeOf(Int8Array);\n for (const C of [Array, String, TypedArray]) {\n Object.defineProperty(C.prototype, 'at', {\n value: at,\n writable: true,\n enumerable: false,\n configurable: true,\n });\n }\n}\n"],"names":["registered","at","n","Math","trunc","this","length","TypedArray","Reflect","getPrototypeOf","Int8Array","C","Array","String","Object","defineProperty","prototype","value","writable","enumerable","configurable"],"mappings":"AAKA,IAAIA,GAAa,EAKV,SAASC,EAAGC,GAKf,IAJAA,EAAIC,KAAKC,MAAMF,IAAM,GACb,IACJA,GAAKG,KAAKC,UAEVJ,EAAI,GAAKA,GAAKG,KAAKC,QAGvB,OAAOD,KAAKH,GAEhB,IAAKF,EAAY,CACbA,GAAa,EACb,MAAMO,EAAaC,QAAQC,eAAeC,WAC1C,IAAK,MAAMC,IAAK,CAACC,MAAOC,OAAQN,GAC5BO,OAAOC,eAAeJ,EAAEK,UAAW,KAAM,CACrCC,MAAOhB,EACPiB,UAAU,EACVC,YAAY,EACZC,cAAc"}
1
+ {"version":3,"file":"at.js","sources":["../../../src/polyfills/at.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nlet registered = false;\n/**\n * Polyfill for Safari\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at\n */\nexport function at(n) {\n n = Math.trunc(n) || 0;\n if (n < 0) {\n n += this.length;\n }\n if (n < 0 || n >= this.length) {\n return undefined;\n }\n return this[n];\n}\nif (!registered) {\n registered = true;\n const TypedArray = Reflect.getPrototypeOf(Int8Array);\n for (const C of [Array, String, TypedArray]) {\n Object.defineProperty(C.prototype, 'at', {\n value: at,\n writable: true,\n enumerable: false,\n configurable: true,\n });\n }\n}\n"],"names":["registered","at","n","Math","trunc","this","length","TypedArray","Reflect","getPrototypeOf","Int8Array","C","Array","String","Object","defineProperty","prototype","value","writable","enumerable","configurable"],"mappings":"AAKA,IAAIA,GAAa,EAKV,SAASC,EAAGC,GAKf,IAJAA,EAAIC,KAAKC,MAAMF,IAAM,GACb,IACJA,GAAKG,KAAKC,UAEVJ,EAAI,GAAKA,GAAKG,KAAKC,QAGvB,OAAOD,KAAKH,GAEhB,IAAKF,EAAY,CACbA,GAAa,EACb,MAAMO,EAAaC,QAAQC,eAAeC,WAC1C,IAAK,MAAMC,IAAK,CAACC,MAAOC,OAAQN,GAC5BO,OAAOC,eAAeJ,EAAEK,UAAW,KAAM,CACrCC,MAAOhB,EACPiB,UAAU,EACVC,YAAY,EACZC,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"progress-circle.element.js","sources":["../../../src/progress-circle/progress-circle.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { baseStyles, hasStringPropertyChanged, property, updateEquilateralSizeStyles, I18nService, i18n, isNilOrEmpty, } from '@cds/core/internal';\nimport { getProgressCircleRadius } from './progress-circle.utils.js';\nimport styles from './progress-circle.element.scss';\n/**\n * Circular progress indicators provide a method to track how close long-running tasks are to\n * completion. Circular progress offer a compact way to track progress in a variety of situations.\n *\n * ```typescript\n * import '@cds/core/progress-circle/register.js';\n * ```\n *\n * ```html\n * <cds-progress-circle status=\"info\" value=\"25\"></cds-progress-circle>\n * ```\n *\n * @element cds-progress-circle\n * @cssprop --ring-color\n * @cssprop --ring-opacity\n * @cssprop --fill-color\n * @cssprop --fill-speed\n */\nexport class CdsProgressCircle extends LitElement {\n constructor() {\n super(...arguments);\n /**\n * Sets the color of the badge\n * @type {neutral | info | success | warning | danger}\n */\n this.status = 'neutral';\n /**\n * Inverts color of circular progress bar if `true`.\n * Useful for displaying icons on a dark background.\n */\n this.inverse = false;\n /**\n * Represents the thickness of the stroke of the circular progress.\n *\n * If undefined, it defaults to 3.\n */\n this.line = 3;\n this.i18n = I18nService.keys.progress;\n }\n get radius() {\n // 36 is the default viewbox dimensions\n return getProgressCircleRadius(this.line);\n }\n get circumference() {\n return 2 * Math.PI * this.radius;\n }\n /** @private */\n get progress() {\n const defaultProgress = 30;\n return this.value ?? defaultProgress;\n }\n // Manages the progress fill.\n get progressOffset() {\n const progressMax = 100;\n return ((progressMax - this.progress) / progressMax) * this.circumference;\n }\n get size() {\n return this._size;\n }\n /**\n * Apply numerical width-height or a t-shirt-sized CSS classname\n * @type {string | sm | md | lg | xl | xxl}\n */\n set size(val) {\n if (hasStringPropertyChanged(val, this._size)) {\n const oldVal = this._size;\n this._size = val;\n updateEquilateralSizeStyles(this, val);\n this.requestUpdate('size', oldVal);\n }\n }\n connectedCallback() {\n super.connectedCallback();\n this._ariaLabel = this.ariaLabel;\n this.updateAria();\n }\n updated(props) {\n super.updated(props);\n if (props.has('value') || props.has('i18n')) {\n this.updateAria();\n }\n }\n updateAria() {\n if (this._ariaLabel === this.ariaLabel) {\n this._ariaLabel = isNilOrEmpty(this.value) ? this.i18n.looping : `${this.i18n.loading} ${this.value}%`;\n this.ariaLabel = this._ariaLabel;\n }\n if (isNilOrEmpty(this.value)) {\n // no value so return aria attrs of the looping progress circle\n this.role = 'img';\n this.ariaValueMin = null;\n this.ariaValueMax = null;\n this.ariaValueNow = null;\n }\n else {\n // if the progress has a value, then we return as if we expect it to be incrementing\n this.role = 'progressbar';\n this.ariaValueMin = 0;\n this.ariaValueMax = 100;\n this.ariaValueNow = this.value;\n }\n }\n render() {\n return html `\n <div class=\"private-host\" aria-hidden=\"true\">\n <div class=\"progress-wrapper\">\n <svg\n version=\"1.1\"\n viewBox=\"0 0 36 36\"\n preserveAspectRatio=\"xMidYMid meet\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n focusable=\"false\"\n >\n <circle\n stroke-width=\"${this.line}\"\n fill=\"none\"\n cx=\"18\"\n cy=\"18\"\n r=\"${this.radius}\"\n class=\"${this.progress > 99 ? 'arcstroke' : 'backstroke'}\"\n />\n <path\n d=\"M 18 18 m 0,-${this.radius} a ${this.radius},${this.radius} 0 1 1 0,${2 * this.radius} a ${this\n .radius},${this.radius} 0 1 1 0,-${2 * this.radius}\"\n class=\"fillstroke arcstroke\"\n stroke-width=\"${this.line}\"\n stroke-dasharray=\"${this.circumference}\"\n stroke-dashoffset=\"${this.progressOffset}\"\n fill=\"none\"\n />\n </svg>\n </div>\n </div>\n `;\n }\n static get styles() {\n return [baseStyles, styles];\n }\n}\n__decorate([\n property({ type: String })\n], CdsProgressCircle.prototype, \"status\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsProgressCircle.prototype, \"inverse\", void 0);\n__decorate([\n property({ type: Number })\n], CdsProgressCircle.prototype, \"value\", void 0);\n__decorate([\n property({ type: Number })\n], CdsProgressCircle.prototype, \"line\", void 0);\n__decorate([\n property({ type: String })\n], CdsProgressCircle.prototype, \"size\", null);\n__decorate([\n i18n()\n], CdsProgressCircle.prototype, \"i18n\", void 0);\n"],"names":["CdsProgressCircle","LitElement","constructor","super","this","status","inverse","line","i18n","I18nService","keys","progress","radius","getProgressCircleRadius","circumference","Math","PI","value","progressOffset","size","_size","val","hasStringPropertyChanged","oldVal","updateEquilateralSizeStyles","requestUpdate","connectedCallback","_ariaLabel","ariaLabel","updateAria","updated","props","has","isNilOrEmpty","looping","loading","role","ariaValueMin","ariaValueMax","ariaValueNow","render","html","styles","baseStyles","__decorate","property","type","String","prototype","Boolean","Number"],"mappings":"8WA4BO,MAAMA,UAA0BC,EACnCC,cACIC,oBAKAC,KAAKC,OAAS,UAKdD,KAAKE,SAAU,EAMfF,KAAKG,KAAO,EACZH,KAAKI,KAAOC,EAAYC,KAAKC,SAE7BC,aAEA,OAAOC,EAAwBT,KAAKG,MAEpCO,oBACA,OAAO,EAAIC,KAAKC,GAAKZ,KAAKQ,OAG1BD,eAEA,OAAOP,KAAKa,OADY,GAIxBC,qBAEA,OADoB,IACGd,KAAKO,UADR,IACmCP,KAAKU,cAE5DK,WACA,OAAOf,KAAKgB,MAMZD,SAAKE,GACL,GAAIC,EAAyBD,EAAKjB,KAAKgB,OAAQ,CAC3C,MAAMG,EAASnB,KAAKgB,MACpBhB,KAAKgB,MAAQC,EACbG,EAA4BpB,KAAMiB,GAClCjB,KAAKqB,cAAc,OAAQF,IAGnCG,oBACIvB,MAAMuB,oBACNtB,KAAKuB,WAAavB,KAAKwB,UACvBxB,KAAKyB,aAETC,QAAQC,GACJ5B,MAAM2B,QAAQC,IACVA,EAAMC,IAAI,UAAYD,EAAMC,IAAI,UAChC5B,KAAKyB,aAGbA,aACQzB,KAAKuB,aAAevB,KAAKwB,YACzBxB,KAAKuB,WAAaM,EAAa7B,KAAKa,OAASb,KAAKI,KAAK0B,QAAU,GAAG9B,KAAKI,KAAK2B,WAAW/B,KAAKa,SAC9Fb,KAAKwB,UAAYxB,KAAKuB,YAEtBM,EAAa7B,KAAKa,QAElBb,KAAKgC,KAAO,MACZhC,KAAKiC,aAAe,KACpBjC,KAAKkC,aAAe,KACpBlC,KAAKmC,aAAe,OAIpBnC,KAAKgC,KAAO,cACZhC,KAAKiC,aAAe,EACpBjC,KAAKkC,aAAe,IACpBlC,KAAKmC,aAAenC,KAAKa,OAGjCuB,SACI,OAAOC,CAAK,+QAYUrC,KAAKG,wCAIhBH,KAAKQ,kBACDR,KAAKO,SAAW,GAAK,YAAc,wCAG1BP,KAAKQ,YAAYR,KAAKQ,UAAUR,KAAKQ,kBAAkB,EAAIR,KAAKQ,YAAYR,KAC/FQ,UAAUR,KAAKQ,mBAAmB,EAAIR,KAAKQ,sDAE1BR,KAAKG,2BACDH,KAAKU,qCACJV,KAAKc,kDAQzBwB,oBACP,MAAO,CAACC,EAAYD,IAG5BE,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClB/C,EAAkBgD,UAAW,cAAU,GAC1CJ,EAAW,CACPC,EAAS,CAAEC,KAAMG,WAClBjD,EAAkBgD,UAAW,eAAW,GAC3CJ,EAAW,CACPC,EAAS,CAAEC,KAAMI,UAClBlD,EAAkBgD,UAAW,aAAS,GACzCJ,EAAW,CACPC,EAAS,CAAEC,KAAMI,UAClBlD,EAAkBgD,UAAW,YAAQ,GACxCJ,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClB/C,EAAkBgD,UAAW,OAAQ,MACxCJ,EAAW,CACPpC,KACDR,EAAkBgD,UAAW,YAAQ"}
1
+ {"version":3,"file":"progress-circle.element.js","sources":["../../../src/progress-circle/progress-circle.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { baseStyles, hasStringPropertyChanged, property, updateEquilateralSizeStyles, I18nService, i18n, isNilOrEmpty, } from '@cds/core/internal';\nimport { getProgressCircleRadius } from './progress-circle.utils.js';\nimport styles from './progress-circle.element.scss';\n/**\n * Circular progress indicators provide a method to track how close long-running tasks are to\n * completion. Circular progress offer a compact way to track progress in a variety of situations.\n *\n * ```typescript\n * import '@cds/core/progress-circle/register.js';\n * ```\n *\n * ```html\n * <cds-progress-circle status=\"info\" value=\"25\"></cds-progress-circle>\n * ```\n *\n * @element cds-progress-circle\n * @cssprop --ring-color\n * @cssprop --ring-opacity\n * @cssprop --fill-color\n * @cssprop --fill-speed\n */\nexport class CdsProgressCircle extends LitElement {\n constructor() {\n super(...arguments);\n /**\n * Sets the color of the badge\n * @type {neutral | info | success | warning | danger}\n */\n this.status = 'neutral';\n /**\n * Inverts color of circular progress bar if `true`.\n * Useful for displaying icons on a dark background.\n */\n this.inverse = false;\n /**\n * Represents the thickness of the stroke of the circular progress.\n *\n * If undefined, it defaults to 3.\n */\n this.line = 3;\n this.i18n = I18nService.keys.progress;\n }\n get radius() {\n // 36 is the default viewbox dimensions\n return getProgressCircleRadius(this.line);\n }\n get circumference() {\n return 2 * Math.PI * this.radius;\n }\n /** @private */\n get progress() {\n const defaultProgress = 30;\n return this.value ?? defaultProgress;\n }\n // Manages the progress fill.\n get progressOffset() {\n const progressMax = 100;\n return ((progressMax - this.progress) / progressMax) * this.circumference;\n }\n get size() {\n return this._size;\n }\n /**\n * Apply numerical width-height or a t-shirt-sized CSS classname\n * @type {string | sm | md | lg | xl | xxl}\n */\n set size(val) {\n if (hasStringPropertyChanged(val, this._size)) {\n const oldVal = this._size;\n this._size = val;\n updateEquilateralSizeStyles(this, val);\n this.requestUpdate('size', oldVal);\n }\n }\n connectedCallback() {\n super.connectedCallback();\n this._ariaLabel = this.ariaLabel;\n this.updateAria();\n }\n updated(props) {\n super.updated(props);\n if (props.has('value') || props.has('i18n')) {\n this.updateAria();\n }\n }\n updateAria() {\n if (this._ariaLabel === this.ariaLabel) {\n this._ariaLabel = isNilOrEmpty(this.value) ? this.i18n.looping : `${this.i18n.loading} ${this.value}%`;\n this.ariaLabel = this._ariaLabel;\n }\n if (isNilOrEmpty(this.value)) {\n // no value so return aria attrs of the looping progress circle\n this.role = 'img';\n this.ariaValueMin = null;\n this.ariaValueMax = null;\n this.ariaValueNow = null;\n }\n else {\n // if the progress has a value, then we return as if we expect it to be incrementing\n this.role = 'progressbar';\n this.ariaValueMin = 0;\n this.ariaValueMax = 100;\n this.ariaValueNow = this.value;\n }\n }\n render() {\n return html `\n <div class=\"private-host\" aria-hidden=\"true\">\n <div class=\"progress-wrapper\">\n <svg\n version=\"1.1\"\n viewBox=\"0 0 36 36\"\n preserveAspectRatio=\"xMidYMid meet\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n focusable=\"false\"\n >\n <circle\n stroke-width=\"${this.line}\"\n fill=\"none\"\n cx=\"18\"\n cy=\"18\"\n r=\"${this.radius}\"\n class=\"${this.progress > 99 ? 'arcstroke' : 'backstroke'}\"\n />\n <path\n d=\"M 18 18 m 0,-${this.radius} a ${this.radius},${this.radius} 0 1 1 0,${2 * this.radius} a ${this\n .radius},${this.radius} 0 1 1 0,-${2 * this.radius}\"\n class=\"fillstroke arcstroke\"\n stroke-width=\"${this.line}\"\n stroke-dasharray=\"${this.circumference}\"\n stroke-dashoffset=\"${this.progressOffset}\"\n fill=\"none\"\n />\n </svg>\n </div>\n </div>\n `;\n }\n static get styles() {\n return [baseStyles, styles];\n }\n}\n__decorate([\n property({ type: String })\n], CdsProgressCircle.prototype, \"status\", void 0);\n__decorate([\n property({ type: Boolean })\n], CdsProgressCircle.prototype, \"inverse\", void 0);\n__decorate([\n property({ type: Number })\n], CdsProgressCircle.prototype, \"value\", void 0);\n__decorate([\n property({ type: Number })\n], CdsProgressCircle.prototype, \"line\", void 0);\n__decorate([\n property({ type: String })\n], CdsProgressCircle.prototype, \"size\", null);\n__decorate([\n i18n()\n], CdsProgressCircle.prototype, \"i18n\", void 0);\n"],"names":["CdsProgressCircle","LitElement","constructor","super","this","status","inverse","line","i18n","I18nService","keys","progress","radius","getProgressCircleRadius","circumference","Math","PI","value","progressOffset","size","_size","val","hasStringPropertyChanged","oldVal","updateEquilateralSizeStyles","requestUpdate","connectedCallback","_ariaLabel","ariaLabel","updateAria","updated","props","has","isNilOrEmpty","looping","loading","role","ariaValueMin","ariaValueMax","ariaValueNow","render","html","styles","baseStyles","__decorate","property","type","String","prototype","Boolean","Number"],"mappings":"8WA4BO,MAAMA,UAA0BC,EACnCC,cACIC,oBAKAC,KAAKC,OAAS,UAKdD,KAAKE,SAAU,EAMfF,KAAKG,KAAO,EACZH,KAAKI,KAAOC,EAAYC,KAAKC,SAE7BC,aAEA,OAAOC,EAAwBT,KAAKG,MAEpCO,oBACA,OAAO,EAAIC,KAAKC,GAAKZ,KAAKQ,OAG1BD,eAEA,OAAOP,KAAKa,OADY,GAIxBC,qBAEA,OADoB,IACGd,KAAKO,UADR,IACmCP,KAAKU,cAE5DK,WACA,OAAOf,KAAKgB,MAMZD,SAAKE,GACL,GAAIC,EAAyBD,EAAKjB,KAAKgB,OAAQ,CAC3C,MAAMG,EAASnB,KAAKgB,MACpBhB,KAAKgB,MAAQC,EACbG,EAA4BpB,KAAMiB,GAClCjB,KAAKqB,cAAc,OAAQF,IAGnCG,oBACIvB,MAAMuB,oBACNtB,KAAKuB,WAAavB,KAAKwB,UACvBxB,KAAKyB,aAETC,QAAQC,GACJ5B,MAAM2B,QAAQC,IACVA,EAAMC,IAAI,UAAYD,EAAMC,IAAI,UAChC5B,KAAKyB,aAGbA,aACQzB,KAAKuB,aAAevB,KAAKwB,YACzBxB,KAAKuB,WAAaM,EAAa7B,KAAKa,OAASb,KAAKI,KAAK0B,QAAU,GAAG9B,KAAKI,KAAK2B,WAAW/B,KAAKa,SAC9Fb,KAAKwB,UAAYxB,KAAKuB,YAEtBM,EAAa7B,KAAKa,QAElBb,KAAKgC,KAAO,MACZhC,KAAKiC,aAAe,KACpBjC,KAAKkC,aAAe,KACpBlC,KAAKmC,aAAe,OAIpBnC,KAAKgC,KAAO,cACZhC,KAAKiC,aAAe,EACpBjC,KAAKkC,aAAe,IACpBlC,KAAKmC,aAAenC,KAAKa,OAGjCuB,SACI,OAAOC,CAAK,+QAYUrC,KAAKG,wCAIhBH,KAAKQ,kBACDR,KAAKO,SAAW,GAAK,YAAc,wCAG1BP,KAAKQ,YAAYR,KAAKQ,UAAUR,KAAKQ,kBAAkB,EAAIR,KAAKQ,YAAYR,KAC/FQ,UAAUR,KAAKQ,mBAAmB,EAAIR,KAAKQ,sDAE1BR,KAAKG,2BACDH,KAAKU,qCACJV,KAAKc,kDAQzBwB,oBACP,MAAO,CAACC,EAAYD,IAG5BE,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClB/C,EAAkBgD,UAAW,cAAU,GAC1CJ,EAAW,CACPC,EAAS,CAAEC,KAAMG,WAClBjD,EAAkBgD,UAAW,eAAW,GAC3CJ,EAAW,CACPC,EAAS,CAAEC,KAAMI,UAClBlD,EAAkBgD,UAAW,aAAS,GACzCJ,EAAW,CACPC,EAAS,CAAEC,KAAMI,UAClBlD,EAAkBgD,UAAW,YAAQ,GACxCJ,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClB/C,EAAkBgD,UAAW,OAAQ,MACxCJ,EAAW,CACPpC,KACDR,EAAkBgD,UAAW,YAAQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"progress-circle.utils.js","sources":["../../../src/progress-circle/progress-circle.utils.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n// note: these may be of more general use with progress bars in general; perhaps promote them at some point???\n// 36 is the default viewbox dimensions\nexport function getProgressCircleRadius(lineThickness, viewboxDimension = 36) {\n // we need to keep this so that circular-progress remains aligned with our icons\n // we shouldn't change it unless we change the default viewbox of the icons!\n const halfOfViewbox = viewboxDimension / 2;\n // line offset takes the width/thickness of the progress circle into account\n const lineOffset = Math.ceil(lineThickness / 2);\n return halfOfViewbox - lineOffset;\n}\n"],"names":["getProgressCircleRadius","lineThickness","viewboxDimension","Math","ceil"],"mappings":"AAOO,SAASA,EAAwBC,EAAeC,EAAmB,IAMtE,OAHsBA,EAAmB,EAEtBC,KAAKC,KAAKH,EAAgB"}
1
+ {"version":3,"file":"progress-circle.utils.js","sources":["../../../src/progress-circle/progress-circle.utils.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n// note: these may be of more general use with progress bars in general; perhaps promote them at some point???\n// 36 is the default viewbox dimensions\nexport function getProgressCircleRadius(lineThickness, viewboxDimension = 36) {\n // we need to keep this so that circular-progress remains aligned with our icons\n // we shouldn't change it unless we change the default viewbox of the icons!\n const halfOfViewbox = viewboxDimension / 2;\n // line offset takes the width/thickness of the progress circle into account\n const lineOffset = Math.ceil(lineThickness / 2);\n return halfOfViewbox - lineOffset;\n}\n"],"names":["getProgressCircleRadius","lineThickness","viewboxDimension","Math","ceil"],"mappings":"AAOO,SAASA,EAAwBC,EAAeC,EAAmB,IAMtE,OAHsBA,EAAmB,EAEtBC,KAAKC,KAAKH,EAAgB"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../../src/progress-circle/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsProgressCircle } from './progress-circle.element.js';\nregisterElementSafely('cds-progress-circle', CdsProgressCircle);\n"],"names":["registerElementSafely","CdsProgressCircle"],"mappings":"4HAOAA,EAAsB,sBAAuBC"}
1
+ {"version":3,"file":"register.js","sources":["../../../src/progress-circle/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsProgressCircle } from './progress-circle.element.js';\nregisterElementSafely('cds-progress-circle', CdsProgressCircle);\n"],"names":["registerElementSafely","CdsProgressCircle"],"mappings":"4HAOAA,EAAsB,sBAAuBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group.element.js","sources":["../../../src/radio/radio-group.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { querySlotAll, id } from '@cds/core/internal';\nimport { CdsInternalControlGroup } from '@cds/core/forms';\n/**\n * Radio Group\n *\n * ```typescript\n * import '@cds/core/radio/register.js';\n * ```\n *\n * ```html\n * <cds-radio-group>\n * <label>radio group</label>\n * <cds-radio>\n * <label>item 1</label>\n * <input type=\"radio\" />\n * </cds-radio>\n *\n * <cds-radio>\n * <label>item 2</label>\n * <input type=\"radio\" />\n * </cds-radio>\n * </cds-radio-group>\n * ```\n *\n * @element cds-radio-group\n * @slot - For projecting cds-radio controls\n */\nexport class CdsRadioGroup extends CdsInternalControlGroup {\n static get styles() {\n return [...super.styles];\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.associateRadioControls();\n this.syncRadioControls();\n }\n associateRadioControls() {\n this.controls.forEach(radio => {\n if (radio && !radio.inputControl.getAttribute('name')) {\n radio.inputControl.setAttribute('name', this.radioName);\n }\n });\n }\n syncRadioControls() {\n this.controls.forEach(c => c.addEventListener('checkedChange', (e) => {\n if (e.detail) {\n Array.from(this.controls).forEach(c => (c.inputControl.checked = false));\n e.target.inputControl.checked = true;\n }\n }));\n }\n}\n__decorate([\n querySlotAll('cds-radio, cds-radio-panel')\n], CdsRadioGroup.prototype, \"controls\", void 0);\n__decorate([\n id()\n], CdsRadioGroup.prototype, \"radioName\", void 0);\n"],"names":["CdsRadioGroup","CdsInternalControlGroup","styles","super","firstUpdated","props","this","associateRadioControls","syncRadioControls","controls","forEach","radio","inputControl","getAttribute","setAttribute","radioName","c","addEventListener","e","detail","Array","from","checked","target","__decorate","querySlotAll","prototype","id"],"mappings":"uJAiCO,MAAMA,UAAsBC,EACpBC,oBACP,MAAO,IAAIC,MAAMD,QAErBE,aAAaC,GACTF,MAAMC,aAAaC,GACnBC,KAAKC,yBACLD,KAAKE,oBAETD,yBACID,KAAKG,SAASC,SAAQC,IACdA,IAAUA,EAAMC,aAAaC,aAAa,SAC1CF,EAAMC,aAAaE,aAAa,OAAQR,KAAKS,cAIzDP,oBACIF,KAAKG,SAASC,SAAQM,GAAKA,EAAEC,iBAAiB,iBAAkBC,IACxDA,EAAEC,SACFC,MAAMC,KAAKf,KAAKG,UAAUC,SAAQM,GAAMA,EAAEJ,aAAaU,SAAU,IACjEJ,EAAEK,OAAOX,aAAaU,SAAU,SAKhDE,EAAW,CACPC,EAAa,+BACdzB,EAAc0B,UAAW,gBAAY,GACxCF,EAAW,CACPG,KACD3B,EAAc0B,UAAW,iBAAa"}
1
+ {"version":3,"file":"radio-group.element.js","sources":["../../../src/radio/radio-group.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { querySlotAll, id } from '@cds/core/internal';\nimport { CdsInternalControlGroup } from '@cds/core/forms';\n/**\n * Radio Group\n *\n * ```typescript\n * import '@cds/core/radio/register.js';\n * ```\n *\n * ```html\n * <cds-radio-group>\n * <label>radio group</label>\n * <cds-radio>\n * <label>item 1</label>\n * <input type=\"radio\" />\n * </cds-radio>\n *\n * <cds-radio>\n * <label>item 2</label>\n * <input type=\"radio\" />\n * </cds-radio>\n * </cds-radio-group>\n * ```\n *\n * @element cds-radio-group\n * @slot - For projecting cds-radio controls\n */\nexport class CdsRadioGroup extends CdsInternalControlGroup {\n static get styles() {\n return [...super.styles];\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.associateRadioControls();\n this.syncRadioControls();\n }\n associateRadioControls() {\n this.controls.forEach(radio => {\n if (radio && !radio.inputControl.getAttribute('name')) {\n radio.inputControl.setAttribute('name', this.radioName);\n }\n });\n }\n syncRadioControls() {\n this.controls.forEach(c => c.addEventListener('checkedChange', (e) => {\n if (e.detail) {\n Array.from(this.controls).forEach(c => (c.inputControl.checked = false));\n e.target.inputControl.checked = true;\n }\n }));\n }\n}\n__decorate([\n querySlotAll('cds-radio, cds-radio-panel')\n], CdsRadioGroup.prototype, \"controls\", void 0);\n__decorate([\n id()\n], CdsRadioGroup.prototype, \"radioName\", void 0);\n"],"names":["CdsRadioGroup","CdsInternalControlGroup","styles","super","firstUpdated","props","this","associateRadioControls","syncRadioControls","controls","forEach","radio","inputControl","getAttribute","setAttribute","radioName","c","addEventListener","e","detail","Array","from","checked","target","__decorate","querySlotAll","prototype","id"],"mappings":"uJAiCO,MAAMA,UAAsBC,EACpBC,oBACP,MAAO,IAAIC,MAAMD,QAErBE,aAAaC,GACTF,MAAMC,aAAaC,GACnBC,KAAKC,yBACLD,KAAKE,oBAETD,yBACID,KAAKG,SAASC,SAAQC,IACdA,IAAUA,EAAMC,aAAaC,aAAa,SAC1CF,EAAMC,aAAaE,aAAa,OAAQR,KAAKS,cAIzDP,oBACIF,KAAKG,SAASC,SAAQM,GAAKA,EAAEC,iBAAiB,iBAAkBC,IACxDA,EAAEC,SACFC,MAAMC,KAAKf,KAAKG,UAAUC,SAAQM,GAAMA,EAAEJ,aAAaU,SAAU,IACjEJ,EAAEK,OAAOX,aAAaU,SAAU,SAKhDE,EAAW,CACPC,EAAa,+BACdzB,EAAc0B,UAAW,gBAAY,GACxCF,EAAW,CACPG,KACD3B,EAAc0B,UAAW,iBAAa"}
@@ -1 +1 @@
1
- {"version":3,"file":"radio.element.js","sources":["../../../src/radio/radio.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { CdsInternalControlInline } from '@cds/core/forms';\nimport styles from './radio.element.scss';\n/**\n * Radio\n *\n * ```typescript\n * import '@cds/core/radio/register.js';\n * ```\n *\n * ```html\n * <cds-radio>\n * <label>Test</label>\n * <input type=\"radio\" />\n * </cds-radio>\n * ```\n *\n * @element cds-radio\n * @slot - For projecting radio input\n * @cssprop --width\n * @cssprop --height\n * @cssprop --border\n * @cssprop --fill-box-shadow\n */\nexport class CdsRadio extends CdsInternalControlInline {\n static get styles() {\n return [...super.styles, styles];\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n if (!this.isControlGroup) {\n this.associateNonGroupRadios();\n }\n }\n /**\n * Native radio inputs have no concept of an un-checked event. This means for\n * our radios to update/rerender we need to listen for the other radios in the\n * group when the are checked. If the Radio is within a cds-control-group or\n * cds-radio-group then the group handles this. Radios can be used outside of\n * groups in cases of using aria-labelledby like a selectable grid row/cell.\n */\n associateNonGroupRadios() {\n const root = this.getRootNode();\n root.addEventListener('checkedChange', (e) => {\n if (e.target.tagName === 'CDS-RADIO' && e.target.inputControl.name === this.inputControl.name) {\n root\n .querySelectorAll(`cds-radio input[type=radio][name=${this.inputControl.name}]`)\n .forEach(c => (c.checked = false));\n e.target.inputControl.checked = true;\n }\n });\n }\n}\n"],"names":["CdsRadio","CdsInternalControlInline","styles","super","firstUpdated","props","this","isControlGroup","associateNonGroupRadios","root","getRootNode","addEventListener","e","target","tagName","inputControl","name","querySelectorAll","forEach","c","checked"],"mappings":"kGA4BO,MAAMA,UAAiBC,EACfC,oBACP,MAAO,IAAIC,MAAMD,OAAQA,GAE7BE,aAAaC,GACTF,MAAMC,aAAaC,GACdC,KAAKC,gBACND,KAAKE,0BAUbA,0BACI,MAAMC,EAAOH,KAAKI,cAClBD,EAAKE,iBAAiB,iBAAkBC,IACX,cAArBA,EAAEC,OAAOC,SAA2BF,EAAEC,OAAOE,aAAaC,OAASV,KAAKS,aAAaC,OACrFP,EACKQ,iBAAiB,oCAAoCX,KAAKS,aAAaC,SACvEE,SAAQC,GAAMA,EAAEC,SAAU,IAC/BR,EAAEC,OAAOE,aAAaK,SAAU"}
1
+ {"version":3,"file":"radio.element.js","sources":["../../../src/radio/radio.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { CdsInternalControlInline } from '@cds/core/forms';\nimport styles from './radio.element.scss';\n/**\n * Radio\n *\n * ```typescript\n * import '@cds/core/radio/register.js';\n * ```\n *\n * ```html\n * <cds-radio>\n * <label>Test</label>\n * <input type=\"radio\" />\n * </cds-radio>\n * ```\n *\n * @element cds-radio\n * @slot - For projecting radio input\n * @cssprop --width\n * @cssprop --height\n * @cssprop --border\n * @cssprop --fill-box-shadow\n */\nexport class CdsRadio extends CdsInternalControlInline {\n static get styles() {\n return [...super.styles, styles];\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n if (!this.isControlGroup) {\n this.associateNonGroupRadios();\n }\n }\n /**\n * Native radio inputs have no concept of an un-checked event. This means for\n * our radios to update/rerender we need to listen for the other radios in the\n * group when the are checked. If the Radio is within a cds-control-group or\n * cds-radio-group then the group handles this. Radios can be used outside of\n * groups in cases of using aria-labelledby like a selectable grid row/cell.\n */\n associateNonGroupRadios() {\n const root = this.getRootNode();\n root.addEventListener('checkedChange', (e) => {\n if (e.target.tagName === 'CDS-RADIO' && e.target.inputControl.name === this.inputControl.name) {\n root\n .querySelectorAll(`cds-radio input[type=radio][name=${this.inputControl.name}]`)\n .forEach(c => (c.checked = false));\n e.target.inputControl.checked = true;\n }\n });\n }\n}\n"],"names":["CdsRadio","CdsInternalControlInline","styles","super","firstUpdated","props","this","isControlGroup","associateNonGroupRadios","root","getRootNode","addEventListener","e","target","tagName","inputControl","name","querySelectorAll","forEach","c","checked"],"mappings":"kGA4BO,MAAMA,UAAiBC,EACfC,oBACP,MAAO,IAAIC,MAAMD,OAAQA,GAE7BE,aAAaC,GACTF,MAAMC,aAAaC,GACdC,KAAKC,gBACND,KAAKE,0BAUbA,0BACI,MAAMC,EAAOH,KAAKI,cAClBD,EAAKE,iBAAiB,iBAAkBC,IACX,cAArBA,EAAEC,OAAOC,SAA2BF,EAAEC,OAAOE,aAAaC,OAASV,KAAKS,aAAaC,OACrFP,EACKQ,iBAAiB,oCAAoCX,KAAKS,aAAaC,SACvEE,SAAQC,GAAMA,EAAEC,SAAU,IAC/BR,EAAEC,OAAOE,aAAaK,SAAU"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../../src/radio/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsRadioGroup } from './radio-group.element.js';\nimport { CdsRadio } from './radio.element.js';\nimport '@cds/core/forms/register.js';\nregisterElementSafely('cds-radio-group', CdsRadioGroup);\nregisterElementSafely('cds-radio', CdsRadio);\n"],"names":["registerElementSafely","CdsRadioGroup","CdsRadio"],"mappings":"sMASAA,EAAsB,kBAAmBC,GACzCD,EAAsB,YAAaE"}
1
+ {"version":3,"file":"register.js","sources":["../../../src/radio/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsRadioGroup } from './radio-group.element.js';\nimport { CdsRadio } from './radio.element.js';\nimport '@cds/core/forms/register.js';\nregisterElementSafely('cds-radio-group', CdsRadioGroup);\nregisterElementSafely('cds-radio', CdsRadio);\n"],"names":["registerElementSafely","CdsRadioGroup","CdsRadio"],"mappings":"sMASAA,EAAsB,kBAAmBC,GACzCD,EAAsB,YAAaE"}
@@ -1 +1 @@
1
- {"version":3,"file":"range.element.js","sources":["../../../src/range/range.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { getElementUpdates, globalStyle } from '@cds/core/internal';\nimport { CdsControl } from '@cds/core/forms';\nimport globalStyles from './range.global.scss';\nimport styles from './range.element.scss';\n/**\n * Range\n *\n * ```typescript\n * import '@cds/core/range/register.js';\n * ```\n *\n * ```html\n * <cds-range>\n * <label>range</label>\n * <input type=\"range\" />\n * <cds-control-message>message text</cds-control-message>\n * </cds-range>\n * ```\n *\n * @element cds-range\n * @slot - For projecting range input\n * @cssprop --background\n * @cssprop --border-radius\n * @cssprop --track-background\n * @cssprop --track-fill-background\n * @cssprop --track-height\n * @cssprop --thumb-background\n * @cssprop --thumb-width\n * @cssprop --thumb-height\n */\nexport class CdsRange extends CdsControl {\n constructor() {\n super(...arguments);\n this.globalStyles = globalStyles;\n }\n static get styles() {\n return [...super.styles, styles];\n }\n get inputTemplate() {\n return html `<div class=\"input-track\"></div>`;\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.setTrackWidth();\n this.inputControl.addEventListener('input', () => this.setTrackWidth());\n // `input` event doesnt fire when the value is changed programmatically\n // at this point, inputControl.valueAsNumber is still the old value\n // https://github.com/vmware-clarity/core/issues/157\n this.observers.push(getElementUpdates(this.inputControl, 'value', (value) => {\n this.setTrackWidth(value);\n }));\n }\n setTrackWidth(val) {\n const value = val ?? this.inputControl.valueAsNumber;\n const min = this.inputControl.min ? parseInt(this.inputControl.min) : 0;\n const max = this.inputControl.max ? parseInt(this.inputControl.max) : 100;\n this.style.setProperty('--track-width', `${Math.floor(((value - min) / (max - min)) * 100)}%`);\n }\n}\n__decorate([\n globalStyle()\n], CdsRange.prototype, \"globalStyles\", void 0);\n"],"names":["CdsRange","CdsControl","constructor","super","this","globalStyles","styles","inputTemplate","html","firstUpdated","props","setTrackWidth","inputControl","addEventListener","observers","push","getElementUpdates","value","val","valueAsNumber","min","parseInt","max","style","setProperty","Math","floor","__decorate","globalStyle","prototype"],"mappings":"gQAqCO,MAAMA,UAAiBC,EAC1BC,cACIC,oBACAC,KAAKC,aAAeA,EAEbC,oBACP,MAAO,IAAIH,MAAMG,OAAQA,GAEzBC,oBACA,OAAOC,CAAK,kCAEhBC,aAAaC,GACTP,MAAMM,aAAaC,GACnBN,KAAKO,gBACLP,KAAKQ,aAAaC,iBAAiB,SAAS,IAAMT,KAAKO,kBAIvDP,KAAKU,UAAUC,KAAKC,EAAkBZ,KAAKQ,aAAc,SAAUK,IAC/Db,KAAKO,cAAcM,OAG3BN,cAAcO,GACV,MAAMD,EAAQC,GAAOd,KAAKQ,aAAaO,cACjCC,EAAMhB,KAAKQ,aAAaQ,IAAMC,SAASjB,KAAKQ,aAAaQ,KAAO,EAChEE,EAAMlB,KAAKQ,aAAaU,IAAMD,SAASjB,KAAKQ,aAAaU,KAAO,IACtElB,KAAKmB,MAAMC,YAAY,gBAAoBC,KAAKC,OAAQT,EAAQG,IAAQE,EAAMF,GAAQ,KAA9C,MAGhDO,EAAW,CACPC,KACD5B,EAAS6B,UAAW,oBAAgB"}
1
+ {"version":3,"file":"range.element.js","sources":["../../../src/range/range.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { getElementUpdates, globalStyle } from '@cds/core/internal';\nimport { CdsControl } from '@cds/core/forms';\nimport globalStyles from './range.global.scss';\nimport styles from './range.element.scss';\n/**\n * Range\n *\n * ```typescript\n * import '@cds/core/range/register.js';\n * ```\n *\n * ```html\n * <cds-range>\n * <label>range</label>\n * <input type=\"range\" />\n * <cds-control-message>message text</cds-control-message>\n * </cds-range>\n * ```\n *\n * @element cds-range\n * @slot - For projecting range input\n * @cssprop --background\n * @cssprop --border-radius\n * @cssprop --track-background\n * @cssprop --track-fill-background\n * @cssprop --track-height\n * @cssprop --thumb-background\n * @cssprop --thumb-width\n * @cssprop --thumb-height\n */\nexport class CdsRange extends CdsControl {\n constructor() {\n super(...arguments);\n this.globalStyles = globalStyles;\n }\n static get styles() {\n return [...super.styles, styles];\n }\n get inputTemplate() {\n return html `<div class=\"input-track\"></div>`;\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.setTrackWidth();\n this.inputControl.addEventListener('input', () => this.setTrackWidth());\n // `input` event doesnt fire when the value is changed programmatically\n // at this point, inputControl.valueAsNumber is still the old value\n // https://github.com/vmware-clarity/core/issues/157\n this.observers.push(getElementUpdates(this.inputControl, 'value', (value) => {\n this.setTrackWidth(value);\n }));\n }\n setTrackWidth(val) {\n const value = val ?? this.inputControl.valueAsNumber;\n const min = this.inputControl.min ? parseInt(this.inputControl.min) : 0;\n const max = this.inputControl.max ? parseInt(this.inputControl.max) : 100;\n this.style.setProperty('--track-width', `${Math.floor(((value - min) / (max - min)) * 100)}%`);\n }\n}\n__decorate([\n globalStyle()\n], CdsRange.prototype, \"globalStyles\", void 0);\n"],"names":["CdsRange","CdsControl","constructor","super","this","globalStyles","styles","inputTemplate","html","firstUpdated","props","setTrackWidth","inputControl","addEventListener","observers","push","getElementUpdates","value","val","valueAsNumber","min","parseInt","max","style","setProperty","Math","floor","__decorate","globalStyle","prototype"],"mappings":"gQAqCO,MAAMA,UAAiBC,EAC1BC,cACIC,oBACAC,KAAKC,aAAeA,EAEbC,oBACP,MAAO,IAAIH,MAAMG,OAAQA,GAEzBC,oBACA,OAAOC,CAAK,kCAEhBC,aAAaC,GACTP,MAAMM,aAAaC,GACnBN,KAAKO,gBACLP,KAAKQ,aAAaC,iBAAiB,SAAS,IAAMT,KAAKO,kBAIvDP,KAAKU,UAAUC,KAAKC,EAAkBZ,KAAKQ,aAAc,SAAUK,IAC/Db,KAAKO,cAAcM,OAG3BN,cAAcO,GACV,MAAMD,EAAQC,GAAOd,KAAKQ,aAAaO,cACjCC,EAAMhB,KAAKQ,aAAaQ,IAAMC,SAASjB,KAAKQ,aAAaQ,KAAO,EAChEE,EAAMlB,KAAKQ,aAAaU,IAAMD,SAASjB,KAAKQ,aAAaU,KAAO,IACtElB,KAAKmB,MAAMC,YAAY,gBAAoBC,KAAKC,OAAQT,EAAQG,IAAQE,EAAMF,GAAQ,KAA9C,MAGhDO,EAAW,CACPC,KACD5B,EAAS6B,UAAW,oBAAgB"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../../src/range/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsRange } from './range.element.js';\nimport '@cds/core/forms/register.js';\nregisterElementSafely('cds-range', CdsRange);\n"],"names":["registerElementSafely","CdsRange"],"mappings":"6IAQAA,EAAsB,YAAaC"}
1
+ {"version":3,"file":"register.js","sources":["../../../src/range/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsRange } from './range.element.js';\nimport '@cds/core/forms/register.js';\nregisterElementSafely('cds-range', CdsRange);\n"],"names":["registerElementSafely","CdsRange"],"mappings":"6IAQAA,EAAsB,YAAaC"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../../src/search/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsSearch } from './search.element.js';\nimport { ClarityIcons } from '@cds/core/icon/icon.service.js';\nimport { searchIcon } from '@cds/core/icon/shapes/search.js';\nimport '@cds/core/button-action/register.js';\nimport '@cds/core/icon/register.js';\nimport '@cds/core/forms/register.js';\nregisterElementSafely('cds-search', CdsSearch);\nClarityIcons.addIcons(searchIcon);\n"],"names":["registerElementSafely","CdsSearch","ClarityIcons","addIcons","searchIcon"],"mappings":"yVAYAA,EAAsB,aAAcC,GACpCC,EAAaC,SAASC"}
1
+ {"version":3,"file":"register.js","sources":["../../../src/search/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsSearch } from './search.element.js';\nimport { ClarityIcons } from '@cds/core/icon/icon.service.js';\nimport { searchIcon } from '@cds/core/icon/shapes/search.js';\nimport '@cds/core/button-action/register.js';\nimport '@cds/core/icon/register.js';\nimport '@cds/core/forms/register.js';\nregisterElementSafely('cds-search', CdsSearch);\nClarityIcons.addIcons(searchIcon);\n"],"names":["registerElementSafely","CdsSearch","ClarityIcons","addIcons","searchIcon"],"mappings":"yVAYAA,EAAsB,aAAcC,GACpCC,EAAaC,SAASC"}
@@ -1 +1 @@
1
- {"version":3,"file":"search.element.js","sources":["../../../src/search/search.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { globalStyle } from '@cds/core/internal';\nimport { CdsControl } from '@cds/core/forms';\nimport { inputStyles } from '@cds/core/input';\nimport globalStyles from './search.global.scss';\n/**\n * Search\n *\n * ```typescript\n * import '@cds/core/search/register.js';\n * ```\n *\n * ```html\n * <cds-search>\n * <label>Search</label>\n * <input type=\"search\" />\n * <cds-control-message>message text</cds-control-message>\n * </cds-search>\n * ```\n *\n * @element cds-search\n * @slot - For projecting search input and label\n * @cssprop --background\n * @cssprop --background-size\n * @cssprop --border\n * @cssprop --border-bottom\n * @cssprop --outline\n * @cssprop --padding\n * @cssprop --font-size\n * @cssprop --color\n * @cssprop --line-height\n * @cssprop --transition\n */\nexport class CdsSearch extends CdsControl {\n constructor() {\n super(...arguments);\n this.globalStyles = globalStyles;\n }\n get prefixDefaultTemplate() {\n return html `<cds-button-action shape=\"search\" readonly></cds-button-action>`;\n }\n static get styles() {\n return [...super.styles, inputStyles];\n }\n}\n__decorate([\n globalStyle()\n], CdsSearch.prototype, \"globalStyles\", void 0);\n"],"names":["CdsSearch","CdsControl","constructor","super","this","globalStyles","prefixDefaultTemplate","html","styles","inputStyles","__decorate","globalStyle","prototype"],"mappings":"iPAuCO,MAAMA,UAAkBC,EAC3BC,cACIC,oBACAC,KAAKC,aAAeA,EAEpBC,4BACA,OAAOC,CAAK,6EAELC,oBACP,MAAO,IAAIL,MAAMK,OAAQC,IAGjCC,EAAW,CACPC,KACDX,EAAUY,UAAW,oBAAgB"}
1
+ {"version":3,"file":"search.element.js","sources":["../../../src/search/search.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { globalStyle } from '@cds/core/internal';\nimport { CdsControl } from '@cds/core/forms';\nimport { inputStyles } from '@cds/core/input';\nimport globalStyles from './search.global.scss';\n/**\n * Search\n *\n * ```typescript\n * import '@cds/core/search/register.js';\n * ```\n *\n * ```html\n * <cds-search>\n * <label>Search</label>\n * <input type=\"search\" />\n * <cds-control-message>message text</cds-control-message>\n * </cds-search>\n * ```\n *\n * @element cds-search\n * @slot - For projecting search input and label\n * @cssprop --background\n * @cssprop --background-size\n * @cssprop --border\n * @cssprop --border-bottom\n * @cssprop --outline\n * @cssprop --padding\n * @cssprop --font-size\n * @cssprop --color\n * @cssprop --line-height\n * @cssprop --transition\n */\nexport class CdsSearch extends CdsControl {\n constructor() {\n super(...arguments);\n this.globalStyles = globalStyles;\n }\n get prefixDefaultTemplate() {\n return html `<cds-button-action shape=\"search\" readonly></cds-button-action>`;\n }\n static get styles() {\n return [...super.styles, inputStyles];\n }\n}\n__decorate([\n globalStyle()\n], CdsSearch.prototype, \"globalStyles\", void 0);\n"],"names":["CdsSearch","CdsControl","constructor","super","this","globalStyles","prefixDefaultTemplate","html","styles","inputStyles","__decorate","globalStyle","prototype"],"mappings":"iPAuCO,MAAMA,UAAkBC,EAC3BC,cACIC,oBACAC,KAAKC,aAAeA,EAEpBC,4BACA,OAAOC,CAAK,6EAELC,oBACP,MAAO,IAAIL,MAAMK,OAAQC,IAGjCC,EAAW,CACPC,KACDX,EAAUY,UAAW,oBAAgB"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../../src/select/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsSelect } from './select.element.js';\nimport '@cds/core/forms/register.js';\nimport '@cds/core/button-expand/register.js';\nregisterElementSafely('cds-select', CdsSelect);\n"],"names":["registerElementSafely","CdsSelect"],"mappings":"2LASAA,EAAsB,aAAcC"}
1
+ {"version":3,"file":"register.js","sources":["../../../src/select/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsSelect } from './select.element.js';\nimport '@cds/core/forms/register.js';\nimport '@cds/core/button-expand/register.js';\nregisterElementSafely('cds-select', CdsSelect);\n"],"names":["registerElementSafely","CdsSelect"],"mappings":"2LASAA,EAAsB,aAAcC"}
@@ -1 +1 @@
1
- {"version":3,"file":"select.element.js","sources":["../../../src/select/select.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { globalStyle, state, listenForAttributeChange } from '@cds/core/internal';\nimport { CdsControl } from '@cds/core/forms';\nimport { inputStyles } from '@cds/core/input';\nimport globalStyles from './select.global.scss';\nimport styles from './select.element.scss';\n/**\n * Select\n *\n * ```typescript\n * import '@cds/core/select';\n * ```\n *\n * ```html\n * <cds-select>\n * <label>Test</label>\n * <select>\n * <option>Option One</option>\n * <option>Option Two</option>\n * <option>Option Three</option>\n * </select>\n * </cds-select>\n * ```\n *\n * @element cds-select\n * @slot - For projecting select and label\n * @cssprop --background\n * @cssprop --background-size\n * @cssprop --border\n * @cssprop --border-bottom\n * @cssprop --outline\n * @cssprop --padding\n * @cssprop --font-size\n * @cssprop --color\n * @cssprop --line-height\n * @cssprop --transition\n */\nexport class CdsSelect extends CdsControl {\n constructor() {\n super(...arguments);\n this.globalStyles = globalStyles;\n this.multiple = false;\n this.size = false;\n }\n get suffixDefaultTemplate() {\n return html `<cds-button-expand expanded readonly></cds-button-expand>`;\n }\n static get styles() {\n return [...super.styles, inputStyles, styles];\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.multiple = this.inputControl.hasAttribute('multiple');\n this.observers.push(listenForAttributeChange(this.inputControl, 'multiple', val => (this.multiple = val !== null)));\n this.size = this.inputControl.hasAttribute('size');\n this.observers.push(listenForAttributeChange(this.inputControl, 'size', val => (this.size = val !== null)));\n }\n}\n__decorate([\n globalStyle()\n], CdsSelect.prototype, \"globalStyles\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsSelect.prototype, \"multiple\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsSelect.prototype, \"size\", void 0);\n"],"names":["CdsSelect","CdsControl","constructor","super","this","globalStyles","multiple","size","suffixDefaultTemplate","html","styles","inputStyles","firstUpdated","props","inputControl","hasAttribute","observers","push","listenForAttributeChange","val","__decorate","globalStyle","prototype","state","type","Boolean","reflect"],"mappings":"kUA2CO,MAAMA,UAAkBC,EAC3BC,cACIC,oBACAC,KAAKC,aAAeA,EACpBD,KAAKE,UAAW,EAChBF,KAAKG,MAAO,EAEZC,4BACA,OAAOC,CAAK,uEAELC,oBACP,MAAO,IAAIP,MAAMO,OAAQC,EAAaD,GAE1CE,aAAaC,GACTV,MAAMS,aAAaC,GACnBT,KAAKE,SAAWF,KAAKU,aAAaC,aAAa,YAC/CX,KAAKY,UAAUC,KAAKC,EAAyBd,KAAKU,aAAc,YAAYK,GAAQf,KAAKE,SAAmB,OAARa,KACpGf,KAAKG,KAAOH,KAAKU,aAAaC,aAAa,QAC3CX,KAAKY,UAAUC,KAAKC,EAAyBd,KAAKU,aAAc,QAAQK,GAAQf,KAAKG,KAAe,OAARY,MAGpGC,EAAW,CACPC,KACDrB,EAAUsB,UAAW,oBAAgB,GACxCF,EAAW,CACPG,EAAM,CAAEC,KAAMC,QAASC,SAAS,KACjC1B,EAAUsB,UAAW,gBAAY,GACpCF,EAAW,CACPG,EAAM,CAAEC,KAAMC,QAASC,SAAS,KACjC1B,EAAUsB,UAAW,YAAQ"}
1
+ {"version":3,"file":"select.element.js","sources":["../../../src/select/select.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { globalStyle, state, listenForAttributeChange } from '@cds/core/internal';\nimport { CdsControl } from '@cds/core/forms';\nimport { inputStyles } from '@cds/core/input';\nimport globalStyles from './select.global.scss';\nimport styles from './select.element.scss';\n/**\n * Select\n *\n * ```typescript\n * import '@cds/core/select';\n * ```\n *\n * ```html\n * <cds-select>\n * <label>Test</label>\n * <select>\n * <option>Option One</option>\n * <option>Option Two</option>\n * <option>Option Three</option>\n * </select>\n * </cds-select>\n * ```\n *\n * @element cds-select\n * @slot - For projecting select and label\n * @cssprop --background\n * @cssprop --background-size\n * @cssprop --border\n * @cssprop --border-bottom\n * @cssprop --outline\n * @cssprop --padding\n * @cssprop --font-size\n * @cssprop --color\n * @cssprop --line-height\n * @cssprop --transition\n */\nexport class CdsSelect extends CdsControl {\n constructor() {\n super(...arguments);\n this.globalStyles = globalStyles;\n this.multiple = false;\n this.size = false;\n }\n get suffixDefaultTemplate() {\n return html `<cds-button-expand expanded readonly></cds-button-expand>`;\n }\n static get styles() {\n return [...super.styles, inputStyles, styles];\n }\n firstUpdated(props) {\n super.firstUpdated(props);\n this.multiple = this.inputControl.hasAttribute('multiple');\n this.observers.push(listenForAttributeChange(this.inputControl, 'multiple', val => (this.multiple = val !== null)));\n this.size = this.inputControl.hasAttribute('size');\n this.observers.push(listenForAttributeChange(this.inputControl, 'size', val => (this.size = val !== null)));\n }\n}\n__decorate([\n globalStyle()\n], CdsSelect.prototype, \"globalStyles\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsSelect.prototype, \"multiple\", void 0);\n__decorate([\n state({ type: Boolean, reflect: true })\n], CdsSelect.prototype, \"size\", void 0);\n"],"names":["CdsSelect","CdsControl","constructor","super","this","globalStyles","multiple","size","suffixDefaultTemplate","html","styles","inputStyles","firstUpdated","props","inputControl","hasAttribute","observers","push","listenForAttributeChange","val","__decorate","globalStyle","prototype","state","type","Boolean","reflect"],"mappings":"kUA2CO,MAAMA,UAAkBC,EAC3BC,cACIC,oBACAC,KAAKC,aAAeA,EACpBD,KAAKE,UAAW,EAChBF,KAAKG,MAAO,EAEZC,4BACA,OAAOC,CAAK,uEAELC,oBACP,MAAO,IAAIP,MAAMO,OAAQC,EAAaD,GAE1CE,aAAaC,GACTV,MAAMS,aAAaC,GACnBT,KAAKE,SAAWF,KAAKU,aAAaC,aAAa,YAC/CX,KAAKY,UAAUC,KAAKC,EAAyBd,KAAKU,aAAc,YAAYK,GAAQf,KAAKE,SAAmB,OAARa,KACpGf,KAAKG,KAAOH,KAAKU,aAAaC,aAAa,QAC3CX,KAAKY,UAAUC,KAAKC,EAAyBd,KAAKU,aAAc,QAAQK,GAAQf,KAAKG,KAAe,OAARY,MAGpGC,EAAW,CACPC,KACDrB,EAAUsB,UAAW,oBAAgB,GACxCF,EAAW,CACPG,EAAM,CAAEC,KAAMC,QAASC,SAAS,KACjC1B,EAAUsB,UAAW,gBAAY,GACpCF,EAAW,CACPG,EAAM,CAAEC,KAAMC,QAASC,SAAS,KACjC1B,EAAUsB,UAAW,YAAQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-panel.element.js","sources":["../../../../src/selection-panels/checkbox/checkbox-panel.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { CdsCheckbox } from '@cds/core/checkbox';\nimport styles from '../shared/selection-panel.element.scss';\nimport { property } from '@cds/core/internal';\n/**\n * Checkbox Panel\n *\n * ```typescript\n * import '@cds/core/selection-panels/checkbox/register.js';\n * ```\n *\n * ```html\n * <cds-checkbox-panel>\n * <label cds-layout=\"vertical gap:md align:center\">\n * <span cds-text=\"section\">VM One</span>\n * <span cds-text=\"subsection center\">Orchestrate & Automate</p>\n * </label>\n * <input type=\"radio\" value=\"0\" />\n * </cds-checkbox-panel>\n * ```\n *\n * @element cds-checkbox-panel\n * @slot - For projecting checkbox and it's complex label\n * @cssprop --width\n * @cssprop --height\n * @cssprop --border\n * @cssprop --box-shadow\n */\nexport class CdsCheckboxPanel extends CdsCheckbox {\n constructor() {\n super(...arguments);\n this.size = 'default';\n }\n get internalLabelTemplate() {\n return html `<slot name=\"label\" @slotchange=${() => this.associateInputAndLabel()}></slot>`;\n }\n static get styles() {\n return [...super.styles, styles];\n }\n}\n__decorate([\n property({ type: String })\n], CdsCheckboxPanel.prototype, \"size\", void 0);\n"],"names":["CdsCheckboxPanel","CdsCheckbox","constructor","super","this","size","internalLabelTemplate","html","associateInputAndLabel","styles","__decorate","property","type","String","prototype"],"mappings":"sNAkCO,MAAMA,UAAyBC,EAClCC,cACIC,oBACAC,KAAKC,KAAO,UAEZC,4BACA,OAAOC,CAAK,mCAAkC,IAAMH,KAAKI,oCAElDC,oBACP,MAAO,IAAIN,MAAMM,OAAQA,IAGjCC,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClBb,EAAiBc,UAAW,YAAQ"}
1
+ {"version":3,"file":"checkbox-panel.element.js","sources":["../../../../src/selection-panels/checkbox/checkbox-panel.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { CdsCheckbox } from '@cds/core/checkbox';\nimport styles from '../shared/selection-panel.element.scss';\nimport { property } from '@cds/core/internal';\n/**\n * Checkbox Panel\n *\n * ```typescript\n * import '@cds/core/selection-panels/checkbox/register.js';\n * ```\n *\n * ```html\n * <cds-checkbox-panel>\n * <label cds-layout=\"vertical gap:md align:center\">\n * <span cds-text=\"section\">VM One</span>\n * <span cds-text=\"subsection center\">Orchestrate & Automate</p>\n * </label>\n * <input type=\"radio\" value=\"0\" />\n * </cds-checkbox-panel>\n * ```\n *\n * @element cds-checkbox-panel\n * @slot - For projecting checkbox and it's complex label\n * @cssprop --width\n * @cssprop --height\n * @cssprop --border\n * @cssprop --box-shadow\n */\nexport class CdsCheckboxPanel extends CdsCheckbox {\n constructor() {\n super(...arguments);\n this.size = 'default';\n }\n get internalLabelTemplate() {\n return html `<slot name=\"label\" @slotchange=${() => this.associateInputAndLabel()}></slot>`;\n }\n static get styles() {\n return [...super.styles, styles];\n }\n}\n__decorate([\n property({ type: String })\n], CdsCheckboxPanel.prototype, \"size\", void 0);\n"],"names":["CdsCheckboxPanel","CdsCheckbox","constructor","super","this","size","internalLabelTemplate","html","associateInputAndLabel","styles","__decorate","property","type","String","prototype"],"mappings":"sNAkCO,MAAMA,UAAyBC,EAClCC,cACIC,oBACAC,KAAKC,KAAO,UAEZC,4BACA,OAAOC,CAAK,mCAAkC,IAAMH,KAAKI,oCAElDC,oBACP,MAAO,IAAIN,MAAMM,OAAQA,IAGjCC,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClBb,EAAiBc,UAAW,YAAQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sources":["../../../../src/selection-panels/checkbox/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsCheckboxPanel } from './checkbox-panel.element.js';\nregisterElementSafely('cds-checkbox-panel', CdsCheckboxPanel);\n"],"names":["registerElementSafely","CdsCheckboxPanel"],"mappings":"0HAOAA,EAAsB,qBAAsBC"}
1
+ {"version":3,"file":"register.js","sources":["../../../../src/selection-panels/checkbox/register.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { registerElementSafely } from '@cds/core/internal';\nimport { CdsCheckboxPanel } from './checkbox-panel.element.js';\nregisterElementSafely('cds-checkbox-panel', CdsCheckboxPanel);\n"],"names":["registerElementSafely","CdsCheckboxPanel"],"mappings":"0HAOAA,EAAsB,qBAAsBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"radio-panel.element.js","sources":["../../../../src/selection-panels/radio/radio-panel.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { CdsRadio } from '@cds/core/radio';\nimport styles from '../shared/selection-panel.element.scss';\nimport { property } from '@cds/core/internal';\n/**\n * Radio Panel\n *\n * ```typescript\n * import '@cds/core/selection-panels/radio/register.js';\n * ```\n *\n * ```html\n * <cds-radio-group>\n * <cds-radio-panel>\n * <label cds-layout=\"vertical gap:md align:center\">\n * <span cds-text=\"section\">VM One</span>\n * <span cds-text=\"subsection center\">Orchestrate & Automate</p>\n * </label>\n * <input type=\"radio\" value=\"0\" />\n * </cds-radio-panel>\n * <cds-radio-panel>\n * <label cds-layout=\"vertical gap:md align:center\">\n * <span cds-text=\"section\">VM One</span>\n * <span cds-text=\"subsection center\">Orchestrate & Automate</p>\n * </label>\n * <input type=\"radio\" value=\"1\" />\n * </cds-radio-panel>\n * </cds-radio-group>\n * ```\n *\n * @element cds-radio-panel\n * @slot - For projecting radio and it's complex label\n * @cssprop --width\n * @cssprop --height\n * @cssprop --border\n * @cssprop --box-shadow\n */\nexport class CdsRadioPanel extends CdsRadio {\n constructor() {\n super(...arguments);\n this.size = 'default';\n }\n static get styles() {\n return [...super.styles, styles];\n }\n get internalLabelTemplate() {\n return html `<slot name=\"label\" @slotchange=${() => this.associateInputAndLabel()}></slot>`;\n }\n}\n__decorate([\n property({ type: String })\n], CdsRadioPanel.prototype, \"size\", void 0);\n"],"names":["CdsRadioPanel","CdsRadio","constructor","super","this","size","styles","internalLabelTemplate","html","associateInputAndLabel","__decorate","property","type","String","prototype"],"mappings":"gNA2CO,MAAMA,UAAsBC,EAC/BC,cACIC,oBACAC,KAAKC,KAAO,UAELC,oBACP,MAAO,IAAIH,MAAMG,OAAQA,GAEzBC,4BACA,OAAOC,CAAK,mCAAkC,IAAMJ,KAAKK,qCAGjEC,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClBb,EAAcc,UAAW,YAAQ"}
1
+ {"version":3,"file":"radio-panel.element.js","sources":["../../../../src/selection-panels/radio/radio-panel.element.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\nimport { __decorate } from \"tslib\";\nimport { html } from 'lit';\nimport { CdsRadio } from '@cds/core/radio';\nimport styles from '../shared/selection-panel.element.scss';\nimport { property } from '@cds/core/internal';\n/**\n * Radio Panel\n *\n * ```typescript\n * import '@cds/core/selection-panels/radio/register.js';\n * ```\n *\n * ```html\n * <cds-radio-group>\n * <cds-radio-panel>\n * <label cds-layout=\"vertical gap:md align:center\">\n * <span cds-text=\"section\">VM One</span>\n * <span cds-text=\"subsection center\">Orchestrate & Automate</p>\n * </label>\n * <input type=\"radio\" value=\"0\" />\n * </cds-radio-panel>\n * <cds-radio-panel>\n * <label cds-layout=\"vertical gap:md align:center\">\n * <span cds-text=\"section\">VM One</span>\n * <span cds-text=\"subsection center\">Orchestrate & Automate</p>\n * </label>\n * <input type=\"radio\" value=\"1\" />\n * </cds-radio-panel>\n * </cds-radio-group>\n * ```\n *\n * @element cds-radio-panel\n * @slot - For projecting radio and it's complex label\n * @cssprop --width\n * @cssprop --height\n * @cssprop --border\n * @cssprop --box-shadow\n */\nexport class CdsRadioPanel extends CdsRadio {\n constructor() {\n super(...arguments);\n this.size = 'default';\n }\n static get styles() {\n return [...super.styles, styles];\n }\n get internalLabelTemplate() {\n return html `<slot name=\"label\" @slotchange=${() => this.associateInputAndLabel()}></slot>`;\n }\n}\n__decorate([\n property({ type: String })\n], CdsRadioPanel.prototype, \"size\", void 0);\n"],"names":["CdsRadioPanel","CdsRadio","constructor","super","this","size","styles","internalLabelTemplate","html","associateInputAndLabel","__decorate","property","type","String","prototype"],"mappings":"gNA2CO,MAAMA,UAAsBC,EAC/BC,cACIC,oBACAC,KAAKC,KAAO,UAELC,oBACP,MAAO,IAAIH,MAAMG,OAAQA,GAEzBC,4BACA,OAAOC,CAAK,mCAAkC,IAAMJ,KAAKK,qCAGjEC,EAAW,CACPC,EAAS,CAAEC,KAAMC,UAClBb,EAAcc,UAAW,YAAQ"}