@getflip/swirl-components 0.14.1 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (357) hide show
  1. package/components.json +682 -52
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/{swirl-action-list-item.cjs.entry.js → swirl-action-list_3.cjs.entry.js} +74 -1
  4. package/dist/cjs/swirl-app-layout_5.cjs.entry.js +4 -4
  5. package/dist/cjs/swirl-autocomplete.cjs.entry.js +1 -1
  6. package/dist/cjs/swirl-banner.cjs.entry.js +1 -1
  7. package/dist/cjs/swirl-button.cjs.entry.js +4 -1
  8. package/dist/cjs/swirl-chip.cjs.entry.js +1 -1
  9. package/dist/cjs/swirl-components.cjs.js +1 -1
  10. package/dist/cjs/swirl-console-layout.cjs.entry.js +1 -1
  11. package/dist/cjs/swirl-date-input.cjs.entry.js +1 -1
  12. package/dist/cjs/swirl-file-viewer_7.cjs.entry.js +2 -1
  13. package/dist/cjs/{swirl-icon-arrow-left_3.cjs.entry.js → swirl-icon-arrow-left_4.cjs.entry.js} +22 -4
  14. package/dist/cjs/swirl-icon-bookmark.cjs.entry.js +24 -0
  15. package/dist/cjs/swirl-icon-check-small_4.cjs.entry.js +1 -1
  16. package/dist/cjs/swirl-icon-double-arrow-left.cjs.entry.js +24 -0
  17. package/dist/cjs/swirl-icon-double-arrow-right.cjs.entry.js +24 -0
  18. package/dist/cjs/swirl-icon-download.cjs.entry.js +24 -0
  19. package/dist/cjs/swirl-icon-error_3.cjs.entry.js +2 -2
  20. package/dist/cjs/swirl-icon-folder.cjs.entry.js +24 -0
  21. package/dist/cjs/swirl-lightbox.cjs.entry.js +25 -5
  22. package/dist/cjs/swirl-pdf-reader.cjs.entry.js +9 -4
  23. package/dist/cjs/swirl-popover.cjs.entry.js +10 -4
  24. package/dist/cjs/swirl-resource-list-file-item.cjs.entry.js +1 -1
  25. package/dist/cjs/swirl-search.cjs.entry.js +1 -1
  26. package/dist/cjs/swirl-select.cjs.entry.js +1 -1
  27. package/dist/cjs/swirl-shell-layout.cjs.entry.js +106 -0
  28. package/dist/cjs/swirl-shell-navigation-item.cjs.entry.js +45 -0
  29. package/dist/cjs/swirl-table.cjs.entry.js +1 -1
  30. package/dist/cjs/swirl-text-input.cjs.entry.js +1 -1
  31. package/dist/cjs/swirl-toast.cjs.entry.js +1 -1
  32. package/dist/cjs/{utils-a07ee0db.js → utils-f1b4e064.js} +13 -0
  33. package/dist/collection/collection-manifest.json +6 -0
  34. package/dist/collection/components/swirl-action-list/swirl-action-list.css +1 -0
  35. package/dist/collection/components/swirl-action-list/swirl-action-list.js +20 -8
  36. package/dist/collection/components/swirl-action-list-item/swirl-action-list-item.js +3 -0
  37. package/dist/collection/components/swirl-app-layout/swirl-app-layout.css +35 -12
  38. package/dist/collection/components/swirl-app-layout/swirl-app-layout.js +2 -2
  39. package/dist/collection/components/swirl-app-layout/swirl-app-layout.stories.js +1 -1
  40. package/dist/collection/components/swirl-button/swirl-button.js +3 -0
  41. package/dist/collection/components/swirl-file-viewer/swirl-file-viewer.js +18 -0
  42. package/dist/collection/components/swirl-icon/icons/swirl-icon-bookmark.js +52 -0
  43. package/dist/collection/components/swirl-icon/icons/swirl-icon-double-arrow-left.js +52 -0
  44. package/dist/collection/components/swirl-icon/icons/swirl-icon-double-arrow-right.js +52 -0
  45. package/dist/collection/components/swirl-icon/icons/swirl-icon-folder.js +52 -0
  46. package/dist/collection/components/swirl-lightbox/swirl-lightbox.css +31 -2
  47. package/dist/collection/components/swirl-lightbox/swirl-lightbox.js +60 -4
  48. package/dist/collection/components/swirl-lightbox/swirl-lightbox.stories.js +14 -3
  49. package/dist/collection/components/swirl-pdf-reader/swirl-pdf-reader.css +30 -0
  50. package/dist/collection/components/swirl-pdf-reader/swirl-pdf-reader.js +61 -2
  51. package/dist/collection/components/swirl-pdf-reader/swirl-pdf-reader.stories.js +8 -1
  52. package/dist/collection/components/swirl-popover/swirl-popover.js +27 -4
  53. package/dist/collection/components/swirl-popover/swirl-popover.stories.js +3 -0
  54. package/dist/collection/components/swirl-separator/swirl-separator.css +1 -0
  55. package/dist/collection/components/swirl-shell-layout/swirl-shell-layout.css +233 -0
  56. package/dist/collection/components/swirl-shell-layout/swirl-shell-layout.js +196 -0
  57. package/dist/collection/components/swirl-shell-layout/swirl-shell-layout.stories.js +88 -0
  58. package/dist/collection/components/swirl-shell-navigation-item/swirl-shell-navigation-item.css +71 -0
  59. package/dist/collection/components/swirl-shell-navigation-item/swirl-shell-navigation-item.js +100 -0
  60. package/dist/collection/components/swirl-shell-navigation-item/swirl-shell-navigation-item.stories.js +30 -0
  61. package/dist/collection/components/swirl-spinner/swirl-spinner.css +13 -2
  62. package/dist/collection/components/swirl-spinner/swirl-spinner.js +2 -2
  63. package/dist/collection/prototypes/file-manager/file-manager.stories.js +1 -1
  64. package/dist/collection/utils.js +31 -15
  65. package/dist/components/file-manager.js +1 -0
  66. package/dist/components/swirl-action-list-item.js +1 -67
  67. package/dist/{esm/swirl-action-list-item.entry.js → components/swirl-action-list-item2.js} +36 -10
  68. package/dist/components/swirl-action-list-section.js +1 -0
  69. package/dist/components/swirl-action-list.js +1 -61
  70. package/dist/components/swirl-action-list2.js +76 -0
  71. package/dist/components/swirl-app-layout2.js +4 -3
  72. package/dist/components/swirl-autocomplete.js +1 -0
  73. package/dist/components/swirl-avatar-group.js +1 -0
  74. package/dist/components/swirl-avatar.js +1 -0
  75. package/dist/components/swirl-badge.js +1 -0
  76. package/dist/components/swirl-banner.js +1 -0
  77. package/dist/components/swirl-box2.js +1 -0
  78. package/dist/components/swirl-button-group2.js +1 -0
  79. package/dist/components/swirl-button2.js +4 -0
  80. package/dist/components/swirl-card.js +1 -0
  81. package/dist/components/swirl-checkbox.js +1 -0
  82. package/dist/components/swirl-chip.js +1 -0
  83. package/dist/components/swirl-console-layout.js +1 -0
  84. package/dist/components/swirl-date-input.js +1 -0
  85. package/dist/components/swirl-date-picker2.js +1 -0
  86. package/dist/components/swirl-description-list-item.js +1 -0
  87. package/dist/components/swirl-description-list.js +1 -0
  88. package/dist/components/swirl-dialog.js +1 -0
  89. package/dist/components/swirl-empty-state2.js +1 -0
  90. package/dist/components/swirl-file-uploader.js +1 -0
  91. package/dist/components/swirl-file-viewer-audio2.js +1 -0
  92. package/dist/components/swirl-file-viewer-csv2.js +1 -0
  93. package/dist/components/swirl-file-viewer-image2.js +1 -0
  94. package/dist/components/swirl-file-viewer-pdf2.js +1 -0
  95. package/dist/components/swirl-file-viewer-text2.js +1 -0
  96. package/dist/components/swirl-file-viewer-video2.js +1 -0
  97. package/dist/components/swirl-file-viewer2.js +3 -0
  98. package/dist/components/swirl-form-control.js +1 -0
  99. package/dist/components/swirl-form-group.js +1 -0
  100. package/dist/components/swirl-heading2.js +1 -0
  101. package/dist/components/swirl-icon-add-photo.js +1 -0
  102. package/dist/components/swirl-icon-add2.js +1 -0
  103. package/dist/components/swirl-icon-admin-panel-settings.js +1 -0
  104. package/dist/components/swirl-icon-arrow-back.js +1 -0
  105. package/dist/components/swirl-icon-arrow-downward2.js +1 -0
  106. package/dist/components/swirl-icon-arrow-forward.js +1 -0
  107. package/dist/components/swirl-icon-arrow-left2.js +1 -0
  108. package/dist/components/swirl-icon-arrow-right-small.js +1 -0
  109. package/dist/components/swirl-icon-arrow-right2.js +1 -0
  110. package/dist/components/swirl-icon-arrow-upward2.js +1 -0
  111. package/dist/components/swirl-icon-attachment.js +1 -0
  112. package/dist/components/swirl-icon-block.js +1 -0
  113. package/dist/components/swirl-icon-bookmark.d.ts +11 -0
  114. package/dist/components/swirl-icon-bookmark.js +40 -0
  115. package/dist/components/swirl-icon-cancel2.js +1 -0
  116. package/dist/components/swirl-icon-chat-bubble.js +1 -0
  117. package/dist/components/swirl-icon-chats-filled.js +1 -0
  118. package/dist/components/swirl-icon-chats-outlined.js +1 -0
  119. package/dist/components/swirl-icon-check-circle.js +1 -0
  120. package/dist/components/swirl-icon-check-small2.js +1 -0
  121. package/dist/components/swirl-icon-check-strong2.js +1 -0
  122. package/dist/components/swirl-icon-check.js +1 -0
  123. package/dist/components/swirl-icon-chevron-left.js +1 -0
  124. package/dist/components/swirl-icon-chevron-right.js +1 -0
  125. package/dist/components/swirl-icon-close-small.js +1 -0
  126. package/dist/components/swirl-icon-close2.js +1 -0
  127. package/dist/components/swirl-icon-cloud-upload2.js +1 -0
  128. package/dist/components/swirl-icon-column.js +1 -0
  129. package/dist/components/swirl-icon-comment.js +1 -0
  130. package/dist/components/swirl-icon-copy.js +1 -0
  131. package/dist/components/swirl-icon-date-range.js +1 -0
  132. package/dist/components/swirl-icon-delete.js +1 -0
  133. package/dist/components/swirl-icon-description.js +1 -0
  134. package/dist/components/swirl-icon-double-arrow-left.d.ts +11 -0
  135. package/dist/components/swirl-icon-double-arrow-left.js +40 -0
  136. package/dist/components/swirl-icon-double-arrow-right.d.ts +11 -0
  137. package/dist/components/swirl-icon-double-arrow-right.js +40 -0
  138. package/dist/components/swirl-icon-download.js +35 -1
  139. package/dist/components/swirl-icon-drag-handle2.js +1 -0
  140. package/dist/components/swirl-icon-edit.js +1 -0
  141. package/dist/components/swirl-icon-emoji-mood.js +1 -0
  142. package/dist/components/swirl-icon-emoji-satisfied.js +1 -0
  143. package/dist/components/swirl-icon-error2.js +1 -0
  144. package/dist/components/swirl-icon-expand-less2.js +1 -0
  145. package/dist/components/swirl-icon-expand-more2.js +1 -0
  146. package/dist/components/swirl-icon-file.js +1 -0
  147. package/dist/components/swirl-icon-filter.js +1 -0
  148. package/dist/components/swirl-icon-folder-shared.js +1 -0
  149. package/dist/components/swirl-icon-folder.d.ts +11 -0
  150. package/dist/components/swirl-icon-folder.js +40 -0
  151. package/dist/components/swirl-icon-fullscreen-exit2.js +1 -0
  152. package/dist/components/swirl-icon-fullscreen2.js +1 -0
  153. package/dist/components/swirl-icon-group-assign.js +1 -0
  154. package/dist/components/swirl-icon-groups-custom.js +1 -0
  155. package/dist/components/swirl-icon-groups-filled.js +1 -0
  156. package/dist/components/swirl-icon-groups-outlined.js +1 -0
  157. package/dist/components/swirl-icon-groups.js +1 -0
  158. package/dist/components/swirl-icon-help.js +1 -0
  159. package/dist/components/swirl-icon-image.js +1 -0
  160. package/dist/components/swirl-icon-info.js +1 -0
  161. package/dist/components/swirl-icon-inventory.js +1 -0
  162. package/dist/components/swirl-icon-like.js +1 -0
  163. package/dist/components/swirl-icon-link.js +1 -0
  164. package/dist/components/swirl-icon-lock.js +1 -0
  165. package/dist/components/swirl-icon-logout.js +1 -0
  166. package/dist/components/swirl-icon-mail.js +1 -0
  167. package/dist/components/swirl-icon-manage-accounts.js +1 -0
  168. package/dist/components/swirl-icon-mention.js +1 -0
  169. package/dist/components/swirl-icon-menu-filled.js +1 -0
  170. package/dist/components/swirl-icon-menu-outlined.js +1 -0
  171. package/dist/components/swirl-icon-menu.js +1 -0
  172. package/dist/components/swirl-icon-message.js +1 -0
  173. package/dist/components/swirl-icon-more-horizontal.js +1 -0
  174. package/dist/components/swirl-icon-more-vertikal.js +1 -34
  175. package/dist/{esm/swirl-icon-more-vertikal.entry.js → components/swirl-icon-more-vertikal2.js} +26 -9
  176. package/dist/components/swirl-icon-news-filled.js +1 -0
  177. package/dist/components/swirl-icon-news-outlined.js +1 -0
  178. package/dist/components/swirl-icon-notifications-active.js +1 -0
  179. package/dist/components/swirl-icon-notifications-off.js +1 -0
  180. package/dist/components/swirl-icon-notifications.js +1 -0
  181. package/dist/components/swirl-icon-open-in-new.js +1 -0
  182. package/dist/components/swirl-icon-people-alt.js +1 -0
  183. package/dist/components/swirl-icon-person-off.js +1 -0
  184. package/dist/components/swirl-icon-person2.js +1 -0
  185. package/dist/components/swirl-icon-phone.js +1 -0
  186. package/dist/components/swirl-icon-poll.js +1 -0
  187. package/dist/components/swirl-icon-print.js +1 -0
  188. package/dist/components/swirl-icon-recieved.js +1 -0
  189. package/dist/components/swirl-icon-remove2.js +1 -0
  190. package/dist/components/swirl-icon-search-strong.js +1 -0
  191. package/dist/components/swirl-icon-search2.js +1 -0
  192. package/dist/components/swirl-icon-send.js +1 -0
  193. package/dist/components/swirl-icon-settings.js +1 -0
  194. package/dist/components/swirl-icon-sync.js +1 -0
  195. package/dist/components/swirl-icon-tasks-filled.js +1 -0
  196. package/dist/components/swirl-icon-tasks-outlined.js +1 -0
  197. package/dist/components/swirl-icon-time-filled.js +1 -0
  198. package/dist/components/swirl-icon-time-outlined.js +1 -0
  199. package/dist/components/swirl-icon-today2.js +1 -0
  200. package/dist/components/swirl-icon-user-assign.js +1 -0
  201. package/dist/components/swirl-icon-video-camera.js +1 -0
  202. package/dist/components/swirl-icon-visibility-off2.js +1 -0
  203. package/dist/components/swirl-icon-visibility2.js +1 -0
  204. package/dist/components/swirl-icon-warning.js +1 -0
  205. package/dist/components/swirl-inline-error2.js +1 -0
  206. package/dist/components/swirl-lightbox.js +77 -12
  207. package/dist/components/swirl-link.js +1 -0
  208. package/dist/components/swirl-list.js +1 -0
  209. package/dist/components/swirl-modal.js +1 -0
  210. package/dist/components/swirl-option-list-item2.js +1 -0
  211. package/dist/components/swirl-option-list-section.js +1 -0
  212. package/dist/components/swirl-option-list2.js +1 -0
  213. package/dist/components/swirl-pagination.js +1 -0
  214. package/dist/components/swirl-pdf-reader.js +80 -35
  215. package/dist/components/swirl-popover2.js +13 -5
  216. package/dist/components/swirl-progress-indicator.js +1 -0
  217. package/dist/components/swirl-radio-group.js +1 -0
  218. package/dist/components/swirl-radio.js +1 -0
  219. package/dist/components/swirl-resource-list-file-item.js +1 -0
  220. package/dist/components/swirl-resource-list-item2.js +1 -0
  221. package/dist/components/swirl-resource-list2.js +1 -0
  222. package/dist/components/swirl-search.js +1 -0
  223. package/dist/components/swirl-select.js +1 -0
  224. package/dist/components/swirl-separator.js +1 -28
  225. package/dist/components/swirl-separator2.js +31 -0
  226. package/dist/components/swirl-shell-layout.d.ts +11 -0
  227. package/dist/components/swirl-shell-layout.js +134 -0
  228. package/dist/components/swirl-shell-navigation-item.d.ts +11 -0
  229. package/dist/components/swirl-shell-navigation-item.js +63 -0
  230. package/dist/components/swirl-skeleton-box.js +1 -0
  231. package/dist/components/swirl-skeleton-text.js +1 -0
  232. package/dist/components/swirl-spinner2.js +3 -2
  233. package/dist/components/swirl-stack2.js +1 -0
  234. package/dist/components/swirl-switch.js +1 -0
  235. package/dist/components/swirl-tab.js +1 -0
  236. package/dist/components/swirl-table-cell.js +1 -0
  237. package/dist/components/swirl-table-column.js +1 -0
  238. package/dist/components/swirl-table-row-group.js +1 -0
  239. package/dist/components/swirl-table-row.js +1 -0
  240. package/dist/components/swirl-table.js +1 -0
  241. package/dist/components/swirl-tabs.js +1 -0
  242. package/dist/components/swirl-tag.js +1 -0
  243. package/dist/components/swirl-text-input2.js +1 -0
  244. package/dist/components/swirl-text2.js +1 -0
  245. package/dist/components/swirl-theme-provider.js +1 -0
  246. package/dist/components/swirl-thumbnail.js +1 -39
  247. package/dist/{esm/swirl-thumbnail.entry.js → components/swirl-thumbnail2.js} +29 -9
  248. package/dist/components/swirl-toast-provider.js +1 -0
  249. package/dist/components/swirl-toast2.js +1 -0
  250. package/dist/components/swirl-tooltip.js +1 -0
  251. package/dist/components/swirl-tree-navigation-item.js +1 -0
  252. package/dist/components/swirl-video-thumbnail.js +1 -0
  253. package/dist/components/swirl-visually-hidden2.js +1 -0
  254. package/dist/components/utils.js +13 -1
  255. package/dist/components/wc-datepicker2.js +1 -0
  256. package/dist/esm/loader.js +1 -1
  257. package/dist/esm/swirl-action-list_3.entry.js +118 -0
  258. package/dist/esm/swirl-app-layout_5.entry.js +4 -4
  259. package/dist/esm/swirl-autocomplete.entry.js +1 -1
  260. package/dist/esm/swirl-banner.entry.js +1 -1
  261. package/dist/esm/swirl-button.entry.js +4 -1
  262. package/dist/esm/swirl-chip.entry.js +1 -1
  263. package/dist/esm/swirl-components.js +1 -1
  264. package/dist/esm/swirl-console-layout.entry.js +1 -1
  265. package/dist/esm/swirl-date-input.entry.js +1 -1
  266. package/dist/esm/swirl-file-viewer_7.entry.js +2 -1
  267. package/dist/esm/{swirl-icon-arrow-left_3.entry.js → swirl-icon-arrow-left_4.entry.js} +22 -5
  268. package/dist/esm/swirl-icon-bookmark.entry.js +20 -0
  269. package/dist/esm/swirl-icon-check-small_4.entry.js +1 -1
  270. package/dist/esm/swirl-icon-double-arrow-left.entry.js +20 -0
  271. package/dist/esm/swirl-icon-double-arrow-right.entry.js +20 -0
  272. package/dist/{components/swirl-icon-download2.js → esm/swirl-icon-download.entry.js} +9 -25
  273. package/dist/esm/swirl-icon-error_3.entry.js +2 -2
  274. package/dist/esm/swirl-icon-folder.entry.js +20 -0
  275. package/dist/esm/swirl-lightbox.entry.js +25 -5
  276. package/dist/esm/swirl-pdf-reader.entry.js +9 -4
  277. package/dist/esm/swirl-popover.entry.js +11 -5
  278. package/dist/esm/swirl-resource-list-file-item.entry.js +1 -1
  279. package/dist/esm/swirl-search.entry.js +1 -1
  280. package/dist/esm/swirl-select.entry.js +1 -1
  281. package/dist/esm/swirl-shell-layout.entry.js +102 -0
  282. package/dist/esm/swirl-shell-navigation-item.entry.js +41 -0
  283. package/dist/esm/swirl-table.entry.js +1 -1
  284. package/dist/esm/swirl-text-input.entry.js +1 -1
  285. package/dist/esm/swirl-toast.entry.js +1 -1
  286. package/dist/esm/{utils-33d31b58.js → utils-61f188cc.js} +13 -1
  287. package/dist/swirl-components/{p-905e3f32.entry.js → p-03c7be43.entry.js} +1 -1
  288. package/dist/swirl-components/{p-33e4b66d.entry.js → p-05550659.entry.js} +1 -1
  289. package/dist/swirl-components/p-097f02b9.entry.js +1 -0
  290. package/dist/swirl-components/p-2fce527a.entry.js +1 -0
  291. package/dist/swirl-components/p-2fd243cf.entry.js +1 -0
  292. package/dist/swirl-components/{p-67e86a11.entry.js → p-3060f78f.entry.js} +1 -1
  293. package/dist/swirl-components/{p-1a6ca33d.entry.js → p-3275cac1.entry.js} +1 -1
  294. package/dist/swirl-components/{p-87ce453b.entry.js → p-357509d4.entry.js} +1 -1
  295. package/dist/swirl-components/{p-d51a5f4f.entry.js → p-3c7eb982.entry.js} +1 -1
  296. package/dist/swirl-components/p-41466a58.entry.js +1 -0
  297. package/dist/swirl-components/p-438b3941.js +1 -0
  298. package/dist/swirl-components/p-4607e131.entry.js +1 -0
  299. package/dist/swirl-components/p-48145eb1.entry.js +1 -0
  300. package/dist/swirl-components/p-4acd4270.entry.js +1 -0
  301. package/dist/swirl-components/{p-0dcc2cbc.entry.js → p-5341bbe1.entry.js} +1 -1
  302. package/dist/swirl-components/p-5568862a.entry.js +1 -0
  303. package/dist/swirl-components/{p-fbd4380b.entry.js → p-55e7fa1b.entry.js} +1 -1
  304. package/dist/swirl-components/p-711cc9ed.entry.js +1 -0
  305. package/dist/swirl-components/p-74340004.entry.js +1 -0
  306. package/dist/swirl-components/{p-61b7f41b.entry.js → p-99778781.entry.js} +1 -1
  307. package/dist/swirl-components/{p-148b7b70.entry.js → p-a76e3488.entry.js} +1 -1
  308. package/dist/swirl-components/p-a7d93c6a.entry.js +1 -0
  309. package/dist/swirl-components/p-b0b07705.entry.js +1 -0
  310. package/dist/swirl-components/p-b12586c9.entry.js +1 -0
  311. package/dist/swirl-components/{p-2e733839.entry.js → p-c0f87c48.entry.js} +1 -1
  312. package/dist/swirl-components/{p-2c941975.entry.js → p-ca2d3b9f.entry.js} +1 -1
  313. package/dist/swirl-components/{p-8342ee34.entry.js → p-d4eb2174.entry.js} +1 -1
  314. package/dist/swirl-components/{p-19caf328.entry.js → p-f2989961.entry.js} +1 -1
  315. package/dist/swirl-components/p-f8dc7e92.entry.js +1 -0
  316. package/dist/swirl-components/swirl-components.esm.js +1 -1
  317. package/dist/types/components/swirl-action-list/swirl-action-list.d.ts +4 -0
  318. package/dist/types/components/swirl-action-list-item/swirl-action-list-item.d.ts +1 -0
  319. package/dist/types/components/swirl-app-layout/swirl-app-layout.stories.d.ts +1 -2
  320. package/dist/types/components/swirl-button/swirl-button.d.ts +1 -0
  321. package/dist/types/components/swirl-file-viewer/swirl-file-viewer.d.ts +1 -0
  322. package/dist/types/components/swirl-icon/icons/swirl-icon-bookmark.d.ts +5 -0
  323. package/dist/types/components/swirl-icon/icons/swirl-icon-double-arrow-left.d.ts +5 -0
  324. package/dist/types/components/swirl-icon/icons/swirl-icon-double-arrow-right.d.ts +5 -0
  325. package/dist/types/components/swirl-icon/icons/swirl-icon-folder.d.ts +5 -0
  326. package/dist/types/components/swirl-lightbox/swirl-lightbox.d.ts +6 -0
  327. package/dist/types/components/swirl-pdf-reader/swirl-pdf-reader.d.ts +4 -0
  328. package/dist/types/components/swirl-popover/swirl-popover.d.ts +1 -0
  329. package/dist/types/components/swirl-popover/swirl-popover.stories.d.ts +3 -0
  330. package/dist/types/components/swirl-shell-layout/swirl-shell-layout.d.ts +33 -0
  331. package/dist/types/components/swirl-shell-layout/swirl-shell-layout.stories.d.ts +15 -0
  332. package/dist/types/components/swirl-shell-navigation-item/swirl-shell-navigation-item.d.ts +11 -0
  333. package/dist/types/components/swirl-shell-navigation-item/swirl-shell-navigation-item.stories.d.ts +23 -0
  334. package/dist/types/components/swirl-spinner/swirl-spinner.d.ts +1 -1
  335. package/dist/types/components.d.ts +118 -0
  336. package/dist/types/prototypes/file-manager/file-manager.stories.d.ts +1 -2
  337. package/dist/types/utils.d.ts +2 -1
  338. package/package.json +2 -2
  339. package/vscode-data.json +121 -0
  340. package/dist/cjs/swirl-action-list.cjs.entry.js +0 -52
  341. package/dist/cjs/swirl-icon-more-vertikal.cjs.entry.js +0 -24
  342. package/dist/cjs/swirl-separator.cjs.entry.js +0 -19
  343. package/dist/cjs/swirl-thumbnail.cjs.entry.js +0 -26
  344. package/dist/esm/swirl-action-list.entry.js +0 -48
  345. package/dist/esm/swirl-separator.entry.js +0 -15
  346. package/dist/swirl-components/p-027680e2.entry.js +0 -1
  347. package/dist/swirl-components/p-2edc08f0.entry.js +0 -1
  348. package/dist/swirl-components/p-4a847ce0.entry.js +0 -1
  349. package/dist/swirl-components/p-5540b8cf.entry.js +0 -1
  350. package/dist/swirl-components/p-8ea0a318.entry.js +0 -1
  351. package/dist/swirl-components/p-9142e03b.js +0 -1
  352. package/dist/swirl-components/p-a0e0322a.entry.js +0 -1
  353. package/dist/swirl-components/p-c7326b88.entry.js +0 -1
  354. package/dist/swirl-components/p-cef24ae4.entry.js +0 -1
  355. package/dist/swirl-components/p-d20dbf47.entry.js +0 -1
  356. package/dist/swirl-components/p-e1abf6d5.entry.js +0 -1
  357. package/dist/swirl-components/p-ff161795.entry.js +0 -1
@@ -3,12 +3,19 @@ import { A as A11yDialog } from './a11y-dialog.esm.js';
3
3
  import { d as disableBodyScroll, e as enableBodyScroll } from './bodyScrollLock.esm.js';
4
4
  import { c as classnames } from './index2.js';
5
5
  import { q as querySelectorAllDeep } from './utils.js';
6
- import { d as defineCustomElement$5 } from './swirl-icon-arrow-left2.js';
7
- import { d as defineCustomElement$4 } from './swirl-icon-arrow-right2.js';
8
- import { d as defineCustomElement$3 } from './swirl-icon-close2.js';
9
- import { d as defineCustomElement$2 } from './swirl-icon-download2.js';
6
+ import { d as defineCustomElement$c } from './swirl-action-list2.js';
7
+ import { d as defineCustomElement$b } from './swirl-action-list-item2.js';
8
+ import { d as defineCustomElement$a } from './swirl-icon-arrow-left2.js';
9
+ import { d as defineCustomElement$9 } from './swirl-icon-arrow-right2.js';
10
+ import { d as defineCustomElement$8 } from './swirl-icon-close2.js';
11
+ import { d as defineCustomElement$7 } from './swirl-icon-more-vertikal2.js';
12
+ import { d as defineCustomElement$6 } from './swirl-popover2.js';
13
+ import { d as defineCustomElement$5 } from './swirl-separator2.js';
14
+ import { d as defineCustomElement$4 } from './swirl-stack2.js';
15
+ import { d as defineCustomElement$3 } from './swirl-text2.js';
16
+ import { d as defineCustomElement$2 } from './swirl-thumbnail2.js';
10
17
 
11
- const swirlLightboxCss = ":host{display:block}:host *{box-sizing:border-box}.lightbox{position:fixed;z-index:var(--s-z-40);background-color:rgba(0, 0, 0, 1);inset:0}.lightbox[aria-hidden=\"true\"]{display:none}@media (min-width: 768px){.lightbox{background-color:rgba(0, 0, 0, 0.6)}}.lightbox:not(.lightbox--closing) .lightbox__body{-webkit-animation:0.15s lightbox-fade-in;animation:0.15s lightbox-fade-in}@media (prefers-reduced-motion){.lightbox:not(.lightbox--closing) .lightbox__body{-webkit-animation:none;animation:none}}.lightbox--closing{-webkit-animation:0.15s lightbox-fade-out;animation:0.15s lightbox-fade-out;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion){.lightbox--closing{-webkit-animation:none;animation:none}}.lightbox__body{position:relative;width:100%;height:100%}.lightbox__header{position:absolute;z-index:1;top:0;right:0;left:0;display:flex;padding:var(--s-space-12) var(--s-space-16);justify-content:space-between;align-items:flex-start;pointer-events:none}.lightbox__controls{position:absolute;z-index:1;top:50%;right:0;left:0;display:none;padding-right:var(--s-space-16);padding-left:var(--s-space-16);justify-content:space-between;align-items:flex-start;pointer-events:none}@media (min-width: 768px){.lightbox__controls{display:flex}}.lightbox__close-button,.lightbox__download-button,.lightbox__previous-slide-button,.lightbox__next-slide-button{display:inline-flex;width:2.5rem;height:2.5rem;justify-content:center;align-items:center;border:none;border-radius:50%;color:var(--s-icon-on-image);background-color:rgba(0, 0, 0, 0.6);cursor:pointer;transition:opacity 0.15s;pointer-events:auto}.lightbox__close-button:disabled,.lightbox__download-button:disabled,.lightbox__previous-slide-button:disabled,.lightbox__next-slide-button:disabled{pointer-events:none;opacity:0}.lightbox__content{overflow:hidden;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lightbox__slides{display:flex;width:100%;height:100%}.lightbox__slides ::slotted(*){flex-basis:100%;flex-shrink:0;transition:transform 0.3s}@media (min-width: 768px){.lightbox__slides ::slotted(*){padding:4rem 5rem}}@media (prefers-reduced-motion){.lightbox__slides ::slotted(*){transition:none}}.lightbox__pagination{position:absolute;bottom:var(--s-space-32);left:50%;padding:var(--s-space-4) var(--s-space-12);border-radius:var(--s-border-radius-base);color:var(--s-text-on-image);background-color:rgba(0, 0, 0, 0.6);font-weight:var(--s-font-weight-medium);line-height:var(--s-line-height-base);transform:translateX(-50%);pointer-events:none}@media (min-width: 768px){.lightbox__pagination{display:none}}@-webkit-keyframes lightbox-fade-in{from{opacity:0}to{opacity:1}}@keyframes lightbox-fade-in{from{opacity:0}to{opacity:1}}@-webkit-keyframes lightbox-fade-out{from{opacity:1}to{opacity:0}}@keyframes lightbox-fade-out{from{opacity:1}to{opacity:0}}";
18
+ const swirlLightboxCss = ":host{display:block}:host *{box-sizing:border-box}.lightbox{position:fixed;z-index:var(--s-z-40);background-color:rgba(0, 0, 0, 1);inset:0}.lightbox[aria-hidden=\"true\"]{display:none}@media (min-width: 768px){.lightbox{background-color:rgba(0, 0, 0, 0.6)}}.lightbox:not(.lightbox--closing) .lightbox__body{-webkit-animation:0.15s lightbox-fade-in;animation:0.15s lightbox-fade-in}@media (prefers-reduced-motion){.lightbox:not(.lightbox--closing) .lightbox__body{-webkit-animation:none;animation:none}}.lightbox--closing{-webkit-animation:0.15s lightbox-fade-out;animation:0.15s lightbox-fade-out;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion){.lightbox--closing{-webkit-animation:none;animation:none}}.lightbox__body{position:relative;width:100%;height:100%}.lightbox__header{position:absolute;z-index:1;top:0;right:0;left:0;display:flex;padding:var(--s-space-12) var(--s-space-16);justify-content:space-between;align-items:flex-start;pointer-events:none}.lightbox__controls{position:absolute;z-index:1;top:50%;right:0;left:0;display:none;padding-right:var(--s-space-16);padding-left:var(--s-space-16);justify-content:space-between;align-items:flex-start;pointer-events:none}@media (min-width: 768px){.lightbox__controls{display:flex}}.lightbox__close-button,.lightbox__menu-button,.lightbox__previous-slide-button,.lightbox__next-slide-button{display:inline-flex;width:2.5rem;height:2.5rem;justify-content:center;align-items:center;border:none;border-radius:50%;color:var(--s-icon-on-image);background-color:rgba(0, 0, 0, 0.6);cursor:pointer;transition:opacity 0.15s;pointer-events:auto}.lightbox__close-button:disabled,.lightbox__menu-button:disabled,.lightbox__previous-slide-button:disabled,.lightbox__next-slide-button:disabled{pointer-events:none;opacity:0}.lightbox__content{overflow:hidden;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lightbox__slides{display:flex;width:100%;height:100%}.lightbox__slides ::slotted(*){flex-basis:100%;flex-shrink:0;transition:transform 0.3s}@media (min-width: 768px){.lightbox__slides ::slotted(*){padding:4rem 5rem}}@media (prefers-reduced-motion){.lightbox__slides ::slotted(*){transition:none}}.lightbox__pagination{position:absolute;bottom:var(--s-space-32);left:50%;padding:var(--s-space-4) var(--s-space-12);border-radius:var(--s-border-radius-base);color:var(--s-text-on-image);background-color:rgba(0, 0, 0, 0.6);font-weight:var(--s-font-weight-medium);line-height:var(--s-line-height-base);transform:translateX(-50%);pointer-events:none}@media (min-width: 768px){.lightbox__pagination{display:none}}.lightbox__meta{display:flex;padding-top:var(--s-space-4);padding-right:var(--s-space-16);padding-bottom:var(--s-space-4);padding-left:var(--s-space-16);align-items:center;gap:var(--s-space-12)}@media (min-width: 768px){.lightbox__meta{max-width:18rem}}.lightbox__thumbnail{display:inline-flex;flex-shrink:0}.lightbox__file-info{display:flex;min-width:0;flex-grow:1;flex-direction:column}@-webkit-keyframes lightbox-fade-in{from{opacity:0}to{opacity:1}}@keyframes lightbox-fade-in{from{opacity:0}to{opacity:1}}@-webkit-keyframes lightbox-fade-out{from{opacity:1}to{opacity:0}}@keyframes lightbox-fade-out{from{opacity:1}to{opacity:0}}";
12
19
 
13
20
  const SwirlLightbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
14
21
  constructor() {
@@ -23,6 +30,7 @@ const SwirlLightbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
23
30
  this.onDownloadButtonClick = () => {
24
31
  var _a;
25
32
  (_a = this.slides[this.activeSlideIndex]) === null || _a === void 0 ? void 0 : _a.download();
33
+ this.menu.close();
26
34
  };
27
35
  this.onKeyDown = (event) => {
28
36
  if (event.code === "Escape") {
@@ -42,7 +50,7 @@ const SwirlLightbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
42
50
  this.activateSlide(Math.max(0, this.activeSlideIndex - 1));
43
51
  };
44
52
  this.registerSlides = () => {
45
- this.slides = Array.from(this.el.children);
53
+ this.slides = Array.from(this.el.children).filter((el) => el.tagName === "SWIRL-FILE-VIEWER");
46
54
  this.setSlideAttributes();
47
55
  this.updateMediaPlayers();
48
56
  };
@@ -98,8 +106,10 @@ const SwirlLightbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
98
106
  }
99
107
  };
100
108
  this.closeButtonLabel = "Close modal";
101
- this.downloadButtonLabel = "Download active slide content";
109
+ this.downloadButtonLabel = "Download";
102
110
  this.label = undefined;
111
+ this.menuLabel = "Slide options";
112
+ this.menuTriggerLabel = "Open slide menu";
103
113
  this.nextSlideButtonLabel = "Next slide";
104
114
  this.previousSlideButtonLabel = "Previous slide";
105
115
  this.activeSlideIndex = 0;
@@ -145,6 +155,8 @@ const SwirlLightbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
145
155
  * @param newActiveSlideIndex
146
156
  */
147
157
  async activateSlide(newActiveSlideIndex) {
158
+ var _a, _b;
159
+ (_b = (_a = this.menu) === null || _a === void 0 ? void 0 : _a.close) === null || _b === void 0 ? void 0 : _b.call(_a);
148
160
  this.dragging = false;
149
161
  this.activeSlideIndex = newActiveSlideIndex;
150
162
  this.slides.forEach((slide, index) => {
@@ -189,6 +201,18 @@ const SwirlLightbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
189
201
  slide.style.transform = `translate3d(-${100 * this.activeSlideIndex}%, 0, 0)`;
190
202
  });
191
203
  }
204
+ getCurrentFileName() {
205
+ var _a, _b;
206
+ return (_b = (_a = this.slides[this.activeSlideIndex]) === null || _a === void 0 ? void 0 : _a.file) === null || _b === void 0 ? void 0 : _b.split("/").pop();
207
+ }
208
+ getCurrentFileType() {
209
+ var _a;
210
+ return (_a = this.slides[this.activeSlideIndex]) === null || _a === void 0 ? void 0 : _a.type;
211
+ }
212
+ getCurrentThumbnailUrl() {
213
+ var _a;
214
+ return (_a = this.slides[this.activeSlideIndex]) === null || _a === void 0 ? void 0 : _a.thumbnailUrl;
215
+ }
192
216
  lockBodyScroll() {
193
217
  disableBodyScroll(this.el);
194
218
  }
@@ -213,10 +237,13 @@ const SwirlLightbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
213
237
  }
214
238
  render() {
215
239
  const showPagination = this.slides.length > 1;
240
+ const currentFileName = this.getCurrentFileName();
241
+ const currentFileType = this.getCurrentFileType();
242
+ const currentThumbnailUrl = this.getCurrentThumbnailUrl();
216
243
  const className = classnames("lightbox", {
217
244
  "lightbox--closing": this.closing,
218
245
  });
219
- return (h(Host, null, h("section", { "aria-hidden": "true", "aria-label": this.label, class: className, id: "lightbox", onMouseDown: this.onPointerDown, onMouseMove: this.onPointerMove, onMouseOut: this.onPointerUp, onMouseUp: this.onPointerUp, onKeyDown: this.onKeyDown, onTouchEnd: this.onPointerUp, onTouchMove: this.onPointerMove, onTouchStart: this.onPointerDown, ref: (el) => (this.modalEl = el) }, h("div", { class: "lightbox__body", role: "document" }, h("header", { class: "lightbox__header" }, h("button", { "aria-label": this.closeButtonLabel, class: "lightbox__close-button", onClick: this.onCloseButtonClick }, h("swirl-icon-close", null)), h("button", { "aria-label": this.downloadButtonLabel, class: "lightbox__download-button", onClick: this.onDownloadButtonClick }, h("swirl-icon-download", null))), h("div", { "aria-roledescription": "carousel", class: "lightbox__content", role: "group" }, h("div", { "aria-atomic": "false", "aria-live": "polite", class: "lightbox__slides" }, h("slot", { onSlotchange: this.registerSlides }))), h("div", { class: "lightbox__controls" }, h("button", { "aria-label": this.previousSlideButtonLabel, class: "lightbox__previous-slide-button", disabled: this.activeSlideIndex === 0, onClick: this.onPreviousSlideClick }, h("swirl-icon-arrow-left", null)), h("button", { "aria-label": this.nextSlideButtonLabel, class: "lightbox__next-slide-button", disabled: this.activeSlideIndex === this.slides.length - 1, onClick: this.onNextSlideClick }, h("swirl-icon-arrow-right", null))), showPagination && (h("span", { class: "lightbox__pagination" }, h("span", { "aria-current": "page" }, this.activeSlideIndex + 1), " /", " ", this.slides.length))))));
246
+ return (h(Host, null, h("section", { "aria-hidden": "true", "aria-label": this.label, class: className, id: "lightbox", onMouseDown: this.onPointerDown, onMouseMove: this.onPointerMove, onMouseOut: this.onPointerUp, onMouseUp: this.onPointerUp, onKeyDown: this.onKeyDown, onTouchEnd: this.onPointerUp, onTouchMove: this.onPointerMove, onTouchStart: this.onPointerDown, ref: (el) => (this.modalEl = el) }, h("div", { class: "lightbox__body", role: "document" }, h("header", { class: "lightbox__header" }, h("button", { "aria-label": this.closeButtonLabel, class: "lightbox__close-button", onClick: this.onCloseButtonClick }, h("swirl-icon-close", null)), h("button", { "aria-label": this.menuTriggerLabel, class: "lightbox__menu-button", id: "slide-menu-trigger" }, h("swirl-icon-more-vertikal", null))), h("div", { "aria-roledescription": "carousel", class: "lightbox__content", role: "group" }, h("div", { "aria-atomic": "false", "aria-live": "polite", class: "lightbox__slides" }, h("slot", { onSlotchange: this.registerSlides }))), h("div", { class: "lightbox__controls" }, h("button", { "aria-label": this.previousSlideButtonLabel, class: "lightbox__previous-slide-button", disabled: this.activeSlideIndex === 0, onClick: this.onPreviousSlideClick }, h("swirl-icon-arrow-left", null)), h("button", { "aria-label": this.nextSlideButtonLabel, class: "lightbox__next-slide-button", disabled: this.activeSlideIndex === this.slides.length - 1, onClick: this.onNextSlideClick }, h("swirl-icon-arrow-right", null))), showPagination && (h("span", { class: "lightbox__pagination" }, h("span", { "aria-current": "page" }, this.activeSlideIndex + 1), " /", " ", this.slides.length))), h("swirl-popover", { animation: "scale-in-y", disableScrollLock: true, label: this.menuLabel, placement: "bottom-end", popoverId: "slide-menu", ref: (el) => (this.menu = el), trigger: "slide-menu-trigger" }, h("swirl-stack", null, h("div", { class: "lightbox__meta" }, currentThumbnailUrl && (h("div", { class: "lightbox__thumbnail" }, h("swirl-thumbnail", { alt: "", src: currentThumbnailUrl }))), h("div", { class: "lightbox__file-info" }, h("swirl-text", { truncate: true, weight: "semibold" }, currentFileName), h("swirl-text", { color: "subdued", size: "sm", truncate: true }, currentFileType))), h("swirl-separator", null), h("swirl-action-list", null, h("swirl-action-list-item", { icon: "<swirl-icon-download></swirl-icon-download>", label: this.downloadButtonLabel, onClick: this.onDownloadButtonClick }), h("slot", { name: "menu-items" })))))));
220
247
  }
221
248
  get el() { return this; }
222
249
  static get style() { return swirlLightboxCss; }
@@ -224,6 +251,8 @@ const SwirlLightbox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
224
251
  "closeButtonLabel": [1, "close-button-label"],
225
252
  "downloadButtonLabel": [1, "download-button-label"],
226
253
  "label": [1],
254
+ "menuLabel": [1, "menu-label"],
255
+ "menuTriggerLabel": [1, "menu-trigger-label"],
227
256
  "nextSlideButtonLabel": [1, "next-slide-button-label"],
228
257
  "previousSlideButtonLabel": [1, "previous-slide-button-label"],
229
258
  "activeSlideIndex": [32],
@@ -237,35 +266,71 @@ function defineCustomElement$1() {
237
266
  if (typeof customElements === "undefined") {
238
267
  return;
239
268
  }
240
- const components = ["swirl-lightbox", "swirl-icon-arrow-left", "swirl-icon-arrow-right", "swirl-icon-close", "swirl-icon-download"];
269
+ const components = ["swirl-lightbox", "swirl-action-list", "swirl-action-list-item", "swirl-icon-arrow-left", "swirl-icon-arrow-right", "swirl-icon-close", "swirl-icon-more-vertikal", "swirl-popover", "swirl-separator", "swirl-stack", "swirl-text", "swirl-thumbnail"];
241
270
  components.forEach(tagName => { switch (tagName) {
242
271
  case "swirl-lightbox":
243
272
  if (!customElements.get(tagName)) {
244
273
  customElements.define(tagName, SwirlLightbox$1);
245
274
  }
246
275
  break;
276
+ case "swirl-action-list":
277
+ if (!customElements.get(tagName)) {
278
+ defineCustomElement$c();
279
+ }
280
+ break;
281
+ case "swirl-action-list-item":
282
+ if (!customElements.get(tagName)) {
283
+ defineCustomElement$b();
284
+ }
285
+ break;
247
286
  case "swirl-icon-arrow-left":
248
287
  if (!customElements.get(tagName)) {
249
- defineCustomElement$5();
288
+ defineCustomElement$a();
250
289
  }
251
290
  break;
252
291
  case "swirl-icon-arrow-right":
253
292
  if (!customElements.get(tagName)) {
254
- defineCustomElement$4();
293
+ defineCustomElement$9();
255
294
  }
256
295
  break;
257
296
  case "swirl-icon-close":
297
+ if (!customElements.get(tagName)) {
298
+ defineCustomElement$8();
299
+ }
300
+ break;
301
+ case "swirl-icon-more-vertikal":
302
+ if (!customElements.get(tagName)) {
303
+ defineCustomElement$7();
304
+ }
305
+ break;
306
+ case "swirl-popover":
307
+ if (!customElements.get(tagName)) {
308
+ defineCustomElement$6();
309
+ }
310
+ break;
311
+ case "swirl-separator":
312
+ if (!customElements.get(tagName)) {
313
+ defineCustomElement$5();
314
+ }
315
+ break;
316
+ case "swirl-stack":
317
+ if (!customElements.get(tagName)) {
318
+ defineCustomElement$4();
319
+ }
320
+ break;
321
+ case "swirl-text":
258
322
  if (!customElements.get(tagName)) {
259
323
  defineCustomElement$3();
260
324
  }
261
325
  break;
262
- case "swirl-icon-download":
326
+ case "swirl-thumbnail":
263
327
  if (!customElements.get(tagName)) {
264
328
  defineCustomElement$2();
265
329
  }
266
330
  break;
267
331
  } });
268
332
  }
333
+ defineCustomElement$1();
269
334
 
270
335
  const SwirlLightbox = SwirlLightbox$1;
271
336
  const defineCustomElement = defineCustomElement$1;
@@ -33,6 +33,7 @@ function defineCustomElement$1() {
33
33
  break;
34
34
  } });
35
35
  }
36
+ defineCustomElement$1();
36
37
 
37
38
  const SwirlLink = SwirlLink$1;
38
39
  const defineCustomElement = defineCustomElement$1;
@@ -31,6 +31,7 @@ function defineCustomElement$1() {
31
31
  break;
32
32
  } });
33
33
  }
34
+ defineCustomElement$1();
34
35
 
35
36
  const SwirlList = SwirlList$1;
36
37
  const defineCustomElement = defineCustomElement$1;
@@ -156,6 +156,7 @@ function defineCustomElement$1() {
156
156
  break;
157
157
  } });
158
158
  }
159
+ defineCustomElement$1();
159
160
 
160
161
  const SwirlModal = SwirlModal$1;
161
162
  const defineCustomElement = defineCustomElement$1;
@@ -110,5 +110,6 @@ function defineCustomElement() {
110
110
  break;
111
111
  } });
112
112
  }
113
+ defineCustomElement();
113
114
 
114
115
  export { SwirlOptionListItem as S, defineCustomElement as d };
@@ -29,6 +29,7 @@ function defineCustomElement$1() {
29
29
  break;
30
30
  } });
31
31
  }
32
+ defineCustomElement$1();
32
33
 
33
34
  const SwirlOptionListSection = SwirlOptionListSection$1;
34
35
  const defineCustomElement = defineCustomElement$1;
@@ -3375,5 +3375,6 @@ function defineCustomElement() {
3375
3375
  break;
3376
3376
  } });
3377
3377
  }
3378
+ defineCustomElement();
3378
3379
 
3379
3380
  export { SwirlOptionList as S, defineCustomElement as d };
@@ -96,6 +96,7 @@ function defineCustomElement$1() {
96
96
  break;
97
97
  } });
98
98
  }
99
+ defineCustomElement$1();
99
100
 
100
101
  const SwirlPagination = SwirlPagination$1;
101
102
  const defineCustomElement = defineCustomElement$1;
@@ -3,25 +3,31 @@ import { A as A11yDialog } from './a11y-dialog.esm.js';
3
3
  import { d as disableBodyScroll, e as enableBodyScroll } from './bodyScrollLock.esm.js';
4
4
  import { c as classnames } from './index2.js';
5
5
  import { i as isMobileViewport } from './utils.js';
6
- import { d as defineCustomElement$i } from './swirl-button2.js';
7
- import { d as defineCustomElement$h } from './swirl-file-viewer2.js';
8
- import { d as defineCustomElement$g } from './swirl-file-viewer-audio2.js';
9
- import { d as defineCustomElement$f } from './swirl-file-viewer-csv2.js';
10
- import { d as defineCustomElement$e } from './swirl-file-viewer-image2.js';
11
- import { d as defineCustomElement$d } from './swirl-file-viewer-pdf2.js';
12
- import { d as defineCustomElement$c } from './swirl-file-viewer-text2.js';
13
- import { d as defineCustomElement$b } from './swirl-file-viewer-video2.js';
14
- import { d as defineCustomElement$a } from './swirl-icon-add2.js';
15
- import { d as defineCustomElement$9 } from './swirl-icon-error2.js';
16
- import { d as defineCustomElement$8 } from './swirl-icon-expand-more2.js';
17
- import { d as defineCustomElement$7 } from './swirl-icon-fullscreen2.js';
18
- import { d as defineCustomElement$6 } from './swirl-icon-fullscreen-exit2.js';
19
- import { d as defineCustomElement$5 } from './swirl-icon-remove2.js';
20
- import { d as defineCustomElement$4 } from './swirl-inline-error2.js';
21
- import { d as defineCustomElement$3 } from './swirl-spinner2.js';
6
+ import { d as defineCustomElement$o } from './swirl-action-list2.js';
7
+ import { d as defineCustomElement$n } from './swirl-action-list-item2.js';
8
+ import { d as defineCustomElement$m } from './swirl-button2.js';
9
+ import { d as defineCustomElement$l } from './swirl-file-viewer2.js';
10
+ import { d as defineCustomElement$k } from './swirl-file-viewer-audio2.js';
11
+ import { d as defineCustomElement$j } from './swirl-file-viewer-csv2.js';
12
+ import { d as defineCustomElement$i } from './swirl-file-viewer-image2.js';
13
+ import { d as defineCustomElement$h } from './swirl-file-viewer-pdf2.js';
14
+ import { d as defineCustomElement$g } from './swirl-file-viewer-text2.js';
15
+ import { d as defineCustomElement$f } from './swirl-file-viewer-video2.js';
16
+ import { d as defineCustomElement$e } from './swirl-icon-add2.js';
17
+ import { d as defineCustomElement$d } from './swirl-icon-error2.js';
18
+ import { d as defineCustomElement$c } from './swirl-icon-expand-more2.js';
19
+ import { d as defineCustomElement$b } from './swirl-icon-fullscreen2.js';
20
+ import { d as defineCustomElement$a } from './swirl-icon-fullscreen-exit2.js';
21
+ import { d as defineCustomElement$9 } from './swirl-icon-remove2.js';
22
+ import { d as defineCustomElement$8 } from './swirl-inline-error2.js';
23
+ import { d as defineCustomElement$7 } from './swirl-popover2.js';
24
+ import { d as defineCustomElement$6 } from './swirl-separator2.js';
25
+ import { d as defineCustomElement$5 } from './swirl-spinner2.js';
26
+ import { d as defineCustomElement$4 } from './swirl-stack2.js';
27
+ import { d as defineCustomElement$3 } from './swirl-text2.js';
22
28
  import { d as defineCustomElement$2 } from './swirl-visually-hidden2.js';
23
29
 
24
- const swirlPdfReaderCss = ":host{display:block}:host *{box-sizing:border-box}.pdf-reader{position:fixed;z-index:var(--s-z-40);background-color:var(--s-surface-raised-default);inset:0;touch-action:pan-x pan-y}.pdf-reader[aria-hidden=\"true\"]{display:none}.pdf-reader:not(.pdf-reader--closing) .pdf-reader__body{-webkit-animation:0.15s pdf-reader-fade-in;animation:0.15s pdf-reader-fade-in}@media (prefers-reduced-motion){.pdf-reader:not(.pdf-reader--closing) .pdf-reader__body{-webkit-animation:none;animation:none}}.pdf-reader--closing{-webkit-animation:0.15s pdf-reader-fade-out;animation:0.15s pdf-reader-fade-out;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion){.pdf-reader--closing{-webkit-animation:none;animation:none}}.pdf-reader__body{position:relative;width:100%;height:100%}.pdf-reader__header{display:flex;height:4rem;padding-right:var(--s-space-16);padding-left:var(--s-space-16);align-items:center;border-bottom:var(--s-border-width-default) solid var(--s-border-default);background-color:var(--s-background-default);gap:var(--s-space-8)}.pdf-reader__header-left,.pdf-reader__header-right{display:flex;flex-grow:1;align-items:center;gap:var(--s-space-8)}@media (min-width: 768px){.pdf-reader__header-left,.pdf-reader__header-right{flex-basis:calc(100 / 3 * 1%);flex-grow:0}}.pdf-reader__header-right{justify-content:flex-end}.pdf-reader__header-center{display:none;flex-grow:1;justify-content:center;align-items:center;gap:var(--s-space-16)}@media (min-width: 768px){.pdf-reader__header-center{display:flex}}.pdf-reader__label{overflow:hidden;flex-grow:1;font-weight:var(--s-font-weight-semibold);white-space:nowrap;text-overflow:ellipsis}.pdf-reader__zoom-button-container{display:flex;align-items:center;gap:var(--s-space-8)}.pdf-reader__zoom-button-container>*:not(:last-child){position:relative}.pdf-reader__zoom-button-container>*:not(:last-child):after{position:absolute;top:50%;right:calc(-1 * var(--s-space-4));width:var(--s-border-width-default);height:1.5rem;background-color:var(--s-border-default);content:\"\";transform:translate3d(50%, -50%, 0)}.pdf-reader__zoom-select-container{position:relative}.pdf-reader__zoom-select{display:inline-flex;height:2.5rem;padding-right:var(--s-space-12);padding-right:calc(var(--s-space-8) + 1.5rem + var(--s-space-12));padding-left:var(--s-space-12);justify-content:flex-start;align-items:center;border:var(--s-border-width-default) solid var(--s-border-default);border-radius:var(--s-border-radius-sm);color:var(--s-interactive-neutral-default);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-medium);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.pdf-reader__zoom-select:focus:not(:focus-visible){outline:none}.pdf-reader__zoom-select:focus-visible{outline-color:var(--s-focus-default)}.pdf-reader__zoom-select-icon{position:absolute;top:50%;right:var(--s-space-8);display:inline-flex;transform:translateY(-50%);pointer-events:none}.pdf-reader__content{width:100%;height:calc(100% - 4rem)}.pdf-reader__mobile-zoom-controls{position:absolute;z-index:1;right:var(--s-space-16);bottom:var(--s-space-32);display:flex;padding-bottom:var(--s-space-4);flex-direction:column;gap:var(--s-space-8)}@media (min-width: 768px){.pdf-reader__mobile-zoom-controls{display:none}}.pdf-reader__mobile-zoom-button{display:inline-flex;width:2.5rem;height:2.5rem;justify-content:center;align-items:center;border:none;border-radius:50%;color:var(--s-icon-on-image);background-color:rgba(0, 0, 0, 0.6);cursor:pointer;transition:opacity 0.15s;pointer-events:auto}.pdf-reader__mobile-zoom-button:disabled{cursor:default}@-webkit-keyframes pdf-reader-fade-in{from{opacity:0}to{opacity:1}}@keyframes pdf-reader-fade-in{from{opacity:0}to{opacity:1}}@-webkit-keyframes pdf-reader-fade-out{from{opacity:1}to{opacity:0}}@keyframes pdf-reader-fade-out{from{opacity:1}to{opacity:0}}";
30
+ const swirlPdfReaderCss = ":host{display:block}:host *{box-sizing:border-box}.pdf-reader{position:fixed;z-index:var(--s-z-40);background-color:var(--s-surface-raised-default);inset:0;touch-action:pan-x pan-y}.pdf-reader[aria-hidden=\"true\"]{display:none}.pdf-reader:not(.pdf-reader--closing) .pdf-reader__body{-webkit-animation:0.15s pdf-reader-fade-in;animation:0.15s pdf-reader-fade-in}@media (prefers-reduced-motion){.pdf-reader:not(.pdf-reader--closing) .pdf-reader__body{-webkit-animation:none;animation:none}}.pdf-reader--closing{-webkit-animation:0.15s pdf-reader-fade-out;animation:0.15s pdf-reader-fade-out;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion){.pdf-reader--closing{-webkit-animation:none;animation:none}}.pdf-reader__body{position:relative;width:100%;height:100%}.pdf-reader__header{display:flex;height:4rem;padding-right:var(--s-space-16);padding-left:var(--s-space-16);align-items:center;border-bottom:var(--s-border-width-default) solid var(--s-border-default);background-color:var(--s-background-default);gap:var(--s-space-8)}.pdf-reader__header-left,.pdf-reader__header-right{display:flex;flex-grow:1;align-items:center;gap:var(--s-space-8)}@media (min-width: 768px){.pdf-reader__header-left,.pdf-reader__header-right{flex-basis:calc(100 / 3 * 1%);flex-grow:0}}.pdf-reader__header-right{justify-content:flex-end}.pdf-reader__header-center{display:none;flex-grow:1;justify-content:center;align-items:center;gap:var(--s-space-16)}@media (min-width: 768px){.pdf-reader__header-center{display:flex}}.pdf-reader__label{overflow:hidden;flex-grow:1;font-weight:var(--s-font-weight-semibold);white-space:nowrap;text-overflow:ellipsis}.pdf-reader__zoom-button-container{display:flex;align-items:center;gap:var(--s-space-8)}.pdf-reader__zoom-button-container>*:not(:last-child){position:relative}.pdf-reader__zoom-button-container>*:not(:last-child):after{position:absolute;top:50%;right:calc(-1 * var(--s-space-4));width:var(--s-border-width-default);height:1.5rem;background-color:var(--s-border-default);content:\"\";transform:translate3d(50%, -50%, 0)}.pdf-reader__zoom-select-container{position:relative}.pdf-reader__zoom-select{display:inline-flex;height:2.5rem;padding-right:var(--s-space-12);padding-right:calc(var(--s-space-8) + 1.5rem + var(--s-space-12));padding-left:var(--s-space-12);justify-content:flex-start;align-items:center;border:var(--s-border-width-default) solid var(--s-border-default);border-radius:var(--s-border-radius-sm);color:var(--s-interactive-neutral-default);background-color:transparent;font:inherit;font-weight:var(--s-font-weight-medium);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.pdf-reader__zoom-select:focus:not(:focus-visible){outline:none}.pdf-reader__zoom-select:focus-visible{outline-color:var(--s-focus-default)}.pdf-reader__zoom-select-icon{position:absolute;top:50%;right:var(--s-space-8);display:inline-flex;transform:translateY(-50%);pointer-events:none}.pdf-reader__content{width:100%;height:calc(100% - 4rem)}.pdf-reader__mobile-zoom-controls{position:absolute;z-index:1;right:var(--s-space-16);bottom:var(--s-space-32);display:flex;padding-bottom:var(--s-space-4);flex-direction:column;gap:var(--s-space-8)}@media (min-width: 768px){.pdf-reader__mobile-zoom-controls{display:none}}.pdf-reader__mobile-zoom-button{display:inline-flex;width:2.5rem;height:2.5rem;justify-content:center;align-items:center;border:none;border-radius:50%;color:var(--s-icon-on-image);background-color:rgba(0, 0, 0, 0.6);cursor:pointer;transition:opacity 0.15s;pointer-events:auto}.pdf-reader__mobile-zoom-button:disabled{cursor:default}.pdf-reader__meta{display:flex;padding-top:var(--s-space-4);padding-right:var(--s-space-16);padding-bottom:var(--s-space-4);padding-left:var(--s-space-8);align-items:center;gap:var(--s-space-12)}@media (min-width: 768px){.pdf-reader__meta{max-width:18rem}}.pdf-reader__thumbnail{display:inline-flex;flex-shrink:0;padding-left:var(--s-space-4)}.pdf-reader__file-info{display:flex;min-width:0;flex-grow:1;flex-direction:column}@-webkit-keyframes pdf-reader-fade-in{from{opacity:0}to{opacity:1}}@keyframes pdf-reader-fade-in{from{opacity:0}to{opacity:1}}@-webkit-keyframes pdf-reader-fade-out{from{opacity:1}to{opacity:0}}@keyframes pdf-reader-fade-out{from{opacity:1}to{opacity:0}}";
25
31
 
26
32
  const SwirlPdfReader$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
27
33
  constructor() {
@@ -44,11 +50,13 @@ const SwirlPdfReader$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
44
50
  };
45
51
  this.onPrintButtonClick = () => {
46
52
  this.pdfViewer.print();
53
+ this.menu.close();
47
54
  };
48
55
  this.onDownloadButtonClick = async () => {
49
56
  this.downloading = true;
50
57
  await this.viewer.download();
51
58
  this.downloading = false;
59
+ this.menu.close();
52
60
  };
53
61
  this.onZoomInButtonClick = () => {
54
62
  const currentZoomStepIndex = this.zoomSteps.indexOf(+this.zoom);
@@ -75,7 +83,10 @@ const SwirlPdfReader$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
75
83
  this.closeButtonLabel = "Close PDF viewer";
76
84
  this.downloadButtonLabel = "Download PDF";
77
85
  this.file = undefined;
86
+ this.fileTypeLabel = "PDF Document";
78
87
  this.label = undefined;
88
+ this.menuLabel = "File menu";
89
+ this.menuTriggerLabel = "Open file menu";
79
90
  this.printButtonLabel = "Print PDF";
80
91
  this.zoomInButtonLabel = "Zoom in";
81
92
  this.zoomOutButtonLabel = "Zoom out";
@@ -148,9 +159,9 @@ const SwirlPdfReader$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
148
159
  const className = classnames("pdf-reader", {
149
160
  "pdf-reader--closing": this.closing,
150
161
  });
151
- return (h(Host, null, h("section", { "aria-hidden": "true", "aria-label": this.label, class: className, id: "pdf-reader", onKeyDown: this.onKeyDown, ref: (el) => (this.modalEl = el) }, h("div", { class: "pdf-reader__body", role: "document" }, h("header", { class: "pdf-reader__header" }, h("span", { class: "pdf-reader__header-left" }, h("swirl-button", { class: "pdf-reader__close-button", hideLabel: true, icon: "<swirl-icon-close></swirl-icon-close>", label: this.closeButtonLabel, onClick: this.onCloseButtonClick }), h("span", { class: "pdf-reader__label" }, this.label)), h("span", { class: "pdf-reader__header-center" }, h("span", { class: "pdf-reader__zoom-button-container" }, h("swirl-button", { class: "pdf-reader__zoom-button", disabled: this.zoom === this.zoomSteps[0], hideLabel: true, icon: "<swirl-icon-remove></swirl-icon-remove>", label: this.zoomOutButtonLabel, onClick: this.onZoomOutButtonClick }), h("swirl-button", { class: "pdf-reader__zoom-button", disabled: this.zoom === this.zoomSteps[this.zoomSteps.length - 1], hideLabel: true, icon: "<swirl-icon-add></swirl-icon-add>", label: this.zoomInButtonLabel, onClick: this.onZoomInButtonClick })), h("span", { class: "pdf-reader__zoom-select-container" }, h("select", { "aria-label": this.zoomSelectLabel, class: "pdf-reader__zoom-select", name: "zoom-select", id: "zoom-select", onChange: this.onZoomChange }, h("option", { selected: this.zoom === "auto", value: "auto" }, this.autoZoomLabel), this.zoomSteps.map((zoom) => (h("option", { key: zoom, selected: this.zoom === zoom, value: zoom }, zoom * 100, "%")))), h("swirl-icon-expand-more", { class: "pdf-reader__zoom-select-icon" }))), h("span", { class: "pdf-reader__header-right" }, h("swirl-button", { class: "pdf-reader__print-button", hideLabel: true, icon: "<swirl-icon-print></swirl-icon-print>", label: this.printButtonLabel, onClick: this.onPrintButtonClick }), h("swirl-button", { class: "pdf-reader__download-button", disabled: this.downloading, hideLabel: true, icon: !this.downloading
162
+ return (h(Host, null, h("section", { "aria-hidden": "true", "aria-label": this.label, class: className, id: "pdf-reader", onKeyDown: this.onKeyDown, ref: (el) => (this.modalEl = el) }, h("div", { class: "pdf-reader__body", role: "document" }, h("header", { class: "pdf-reader__header" }, h("span", { class: "pdf-reader__header-left" }, h("swirl-button", { class: "pdf-reader__close-button", hideLabel: true, icon: "<swirl-icon-close></swirl-icon-close>", label: this.closeButtonLabel, onClick: this.onCloseButtonClick }), h("span", { class: "pdf-reader__label" }, this.label)), h("span", { class: "pdf-reader__header-center" }, h("span", { class: "pdf-reader__zoom-button-container" }, h("swirl-button", { class: "pdf-reader__zoom-button", disabled: this.zoom === this.zoomSteps[0], hideLabel: true, icon: "<swirl-icon-remove></swirl-icon-remove>", label: this.zoomOutButtonLabel, onClick: this.onZoomOutButtonClick }), h("swirl-button", { class: "pdf-reader__zoom-button", disabled: this.zoom === this.zoomSteps[this.zoomSteps.length - 1], hideLabel: true, icon: "<swirl-icon-add></swirl-icon-add>", label: this.zoomInButtonLabel, onClick: this.onZoomInButtonClick })), h("span", { class: "pdf-reader__zoom-select-container" }, h("select", { "aria-label": this.zoomSelectLabel, class: "pdf-reader__zoom-select", name: "zoom-select", id: "zoom-select", onChange: this.onZoomChange }, h("option", { selected: this.zoom === "auto", value: "auto" }, this.autoZoomLabel), this.zoomSteps.map((zoom) => (h("option", { key: zoom, selected: this.zoom === zoom, value: zoom }, zoom * 100, "%")))), h("swirl-icon-expand-more", { class: "pdf-reader__zoom-select-icon" }))), h("span", { class: "pdf-reader__header-right" }, h("swirl-button", { class: "pdf-reader__menu-button", hideLabel: true, icon: "<swirl-icon-more-vertikal></swirl-icon-more-vertikal>", id: "menu-trigger", label: this.menuTriggerLabel }))), h("div", { class: "pdf-reader__content" }, h("swirl-file-viewer", { active: this.active, file: this.file, onActivate: this.onActivate, ref: (el) => (this.viewer = el), type: "application/pdf", zoom: this.zoom }), h("div", { class: "pdf-reader__mobile-zoom-controls" }, h("button", { "aria-label": this.autoZoomLabel, class: "pdf-reader__mobile-zoom-button", onClick: this.onZoomAutoButtonClick, type: "button" }, this.zoom === "auto" ? (h("swirl-icon-fullscreen-exit", null)) : (h("swirl-icon-fullscreen", null))), h("button", { "aria-label": this.zoomInButtonLabel, class: "pdf-reader__mobile-zoom-button", disabled: this.zoom === this.zoomSteps[this.zoomSteps.length - 1], onClick: this.onZoomInButtonClick, type: "button" }, h("swirl-icon-add", null)), h("button", { "aria-label": this.zoomOutButtonLabel, class: "pdf-reader__mobile-zoom-button", disabled: this.zoom === this.zoomSteps[0], onClick: this.onZoomOutButtonClick, type: "button" }, h("swirl-icon-remove", null))))), h("swirl-popover", { animation: "scale-in-y", disableScrollLock: true, label: this.menuLabel, placement: "bottom-end", popoverId: "menu", ref: (el) => (this.menu = el), trigger: "menu-trigger" }, h("swirl-stack", null, h("div", { class: "pdf-reader__meta" }, h("div", { class: "pdf-reader__thumbnail" }, h("svg", { fill: "none", height: "36", viewBox: "0 0 24 36", width: "24" }, h("path", { d: "M7.01755 21.6V15.192H8.39455C8.64655 15.192 8.86855 15.225 9.06055 15.291C9.25255 15.357 9.42655 15.474 9.58255 15.642C9.73855 15.81 9.84655 16.008 9.90655 16.236C9.96655 16.458 9.99655 16.761 9.99655 17.145C9.99655 17.433 9.97855 17.676 9.94255 17.874C9.91255 18.072 9.84355 18.258 9.73555 18.432C9.60955 18.642 9.44155 18.807 9.23155 18.927C9.02155 19.041 8.74555 19.098 8.40355 19.098H7.93555V21.6H7.01755ZM7.93555 16.056V18.234H8.37655C8.56255 18.234 8.70655 18.207 8.80855 18.153C8.91055 18.099 8.98555 18.024 9.03355 17.928C9.08155 17.838 9.10855 17.727 9.11455 17.595C9.12655 17.463 9.13255 17.316 9.13255 17.154C9.13255 17.004 9.12955 16.863 9.12355 16.731C9.11755 16.593 9.09055 16.473 9.04255 16.371C8.99455 16.269 8.92255 16.191 8.82655 16.137C8.73055 16.083 8.59255 16.056 8.41255 16.056H7.93555Z", fill: "white" }), h("path", { d: "M10.6826 21.6V15.192H12.0416C12.5696 15.192 12.9686 15.336 13.2386 15.624C13.5146 15.912 13.6526 16.32 13.6526 16.848V19.845C13.6526 20.445 13.5056 20.889 13.2116 21.177C12.9236 21.459 12.5066 21.6 11.9606 21.6H10.6826ZM11.6006 16.056V20.736H12.0236C12.2816 20.736 12.4646 20.673 12.5726 20.547C12.6806 20.415 12.7346 20.211 12.7346 19.935V16.848C12.7346 16.596 12.6836 16.401 12.5816 16.263C12.4796 16.125 12.2936 16.056 12.0236 16.056H11.6006Z", fill: "white" }), h("path", { d: "M14.5146 21.6V15.192H17.2506V16.056H15.4326V18H17.0166V18.864H15.4326V21.6H14.5146Z", fill: "white" }), h("path", { d: "M3.59961 9.00001C3.59961 8.0059 4.4055 7.20001 5.39961 7.20001H14.854C15.3314 7.20001 15.7893 7.38965 16.1268 7.72722L19.8724 11.4728C20.21 11.8104 20.3996 12.2682 20.3996 12.7456V27C20.3996 27.9941 19.5937 28.8 18.5996 28.8H5.39961C4.4055 28.8 3.59961 27.9941 3.59961 27V9.00001Z", fill: "#FF574D" }), h("path", { d: "M15.5996 7.36166V10.2C15.5996 11.1941 16.4055 12 17.3996 12H20.2379C20.3237 12.1884 20.3768 12.3913 20.3937 12.6H17.3996C16.0785 12.6 15.0067 11.5325 14.9996 10.213L14.9996 7.20587C15.2083 7.2228 15.4112 7.27593 15.5996 7.36166Z", fill: "white" }), h("path", { d: "M7.01755 21.6V15.192H8.39455C8.64655 15.192 8.86855 15.225 9.06055 15.291C9.25255 15.357 9.42655 15.474 9.58255 15.642C9.73855 15.81 9.84655 16.008 9.90655 16.236C9.96655 16.458 9.99655 16.761 9.99655 17.145C9.99655 17.433 9.97855 17.676 9.94255 17.874C9.91255 18.072 9.84355 18.258 9.73555 18.432C9.60955 18.642 9.44155 18.807 9.23155 18.927C9.02155 19.041 8.74555 19.098 8.40355 19.098H7.93555V21.6H7.01755ZM7.93555 16.056V18.234H8.37655C8.56255 18.234 8.70655 18.207 8.80855 18.153C8.91055 18.099 8.98555 18.024 9.03355 17.928C9.08155 17.838 9.10855 17.727 9.11455 17.595C9.12655 17.463 9.13255 17.316 9.13255 17.154C9.13255 17.004 9.12955 16.863 9.12355 16.731C9.11755 16.593 9.09055 16.473 9.04255 16.371C8.99455 16.269 8.92255 16.191 8.82655 16.137C8.73055 16.083 8.59255 16.056 8.41255 16.056H7.93555Z", fill: "white" }), h("path", { d: "M10.6826 21.6V15.192H12.0416C12.5696 15.192 12.9686 15.336 13.2386 15.624C13.5146 15.912 13.6526 16.32 13.6526 16.848V19.845C13.6526 20.445 13.5056 20.889 13.2116 21.177C12.9236 21.459 12.5066 21.6 11.9606 21.6H10.6826ZM11.6006 16.056V20.736H12.0236C12.2816 20.736 12.4646 20.673 12.5726 20.547C12.6806 20.415 12.7346 20.211 12.7346 19.935V16.848C12.7346 16.596 12.6836 16.401 12.5816 16.263C12.4796 16.125 12.2936 16.056 12.0236 16.056H11.6006Z", fill: "white" }), h("path", { d: "M14.5146 21.6V15.192H17.2506V16.056H15.4326V18H17.0166V18.864H15.4326V21.6H14.5146Z", fill: "white" }))), h("div", { class: "pdf-reader__file-info" }, h("swirl-text", { truncate: true, weight: "semibold" }, this.label), h("swirl-text", { color: "subdued", size: "sm", truncate: true }, this.fileTypeLabel))), h("swirl-separator", null), h("swirl-action-list", null, h("swirl-action-list-item", { class: "pdf-reader__print-button", icon: "<swirl-icon-print></swirl-icon-print>", label: this.printButtonLabel, onClick: this.onPrintButtonClick }), h("swirl-action-list-item", { class: "pdf-reader__download-button", disabled: this.downloading, icon: !this.downloading
152
163
  ? "<swirl-icon-download></swirl-icon-download>"
153
- : '<swirl-spinner size="s"></swirl-spinner>', label: this.downloadButtonLabel, onClick: this.onDownloadButtonClick }))), h("div", { class: "pdf-reader__content" }, h("swirl-file-viewer", { active: this.active, file: this.file, onActivate: this.onActivate, ref: (el) => (this.viewer = el), type: "application/pdf", zoom: this.zoom }), h("div", { class: "pdf-reader__mobile-zoom-controls" }, h("button", { "aria-label": this.autoZoomLabel, class: "pdf-reader__mobile-zoom-button", onClick: this.onZoomAutoButtonClick, type: "button" }, this.zoom === "auto" ? (h("swirl-icon-fullscreen-exit", null)) : (h("swirl-icon-fullscreen", null))), h("button", { "aria-label": this.zoomInButtonLabel, class: "pdf-reader__mobile-zoom-button", disabled: this.zoom === this.zoomSteps[this.zoomSteps.length - 1], onClick: this.onZoomInButtonClick, type: "button" }, h("swirl-icon-add", null)), h("button", { "aria-label": this.zoomOutButtonLabel, class: "pdf-reader__mobile-zoom-button", disabled: this.zoom === this.zoomSteps[0], onClick: this.onZoomOutButtonClick, type: "button" }, h("swirl-icon-remove", null))))))));
164
+ : '<swirl-spinner size="xs"></swirl-spinner>', label: this.downloadButtonLabel, onClick: this.onDownloadButtonClick }), h("slot", { name: "menu-items" })))))));
154
165
  }
155
166
  get el() { return this; }
156
167
  static get style() { return swirlPdfReaderCss; }
@@ -159,7 +170,10 @@ const SwirlPdfReader$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
159
170
  "closeButtonLabel": [1, "close-button-label"],
160
171
  "downloadButtonLabel": [1, "download-button-label"],
161
172
  "file": [1],
173
+ "fileTypeLabel": [1, "file-type-label"],
162
174
  "label": [1],
175
+ "menuLabel": [1, "menu-label"],
176
+ "menuTriggerLabel": [1, "menu-trigger-label"],
163
177
  "printButtonLabel": [1, "print-button-label"],
164
178
  "zoomInButtonLabel": [1, "zoom-in-button-label"],
165
179
  "zoomOutButtonLabel": [1, "zoom-out-button-label"],
@@ -176,89 +190,119 @@ function defineCustomElement$1() {
176
190
  if (typeof customElements === "undefined") {
177
191
  return;
178
192
  }
179
- const components = ["swirl-pdf-reader", "swirl-button", "swirl-file-viewer", "swirl-file-viewer-audio", "swirl-file-viewer-csv", "swirl-file-viewer-image", "swirl-file-viewer-pdf", "swirl-file-viewer-text", "swirl-file-viewer-video", "swirl-icon-add", "swirl-icon-error", "swirl-icon-expand-more", "swirl-icon-fullscreen", "swirl-icon-fullscreen-exit", "swirl-icon-remove", "swirl-inline-error", "swirl-spinner", "swirl-visually-hidden"];
193
+ const components = ["swirl-pdf-reader", "swirl-action-list", "swirl-action-list-item", "swirl-button", "swirl-file-viewer", "swirl-file-viewer-audio", "swirl-file-viewer-csv", "swirl-file-viewer-image", "swirl-file-viewer-pdf", "swirl-file-viewer-text", "swirl-file-viewer-video", "swirl-icon-add", "swirl-icon-error", "swirl-icon-expand-more", "swirl-icon-fullscreen", "swirl-icon-fullscreen-exit", "swirl-icon-remove", "swirl-inline-error", "swirl-popover", "swirl-separator", "swirl-spinner", "swirl-stack", "swirl-text", "swirl-visually-hidden"];
180
194
  components.forEach(tagName => { switch (tagName) {
181
195
  case "swirl-pdf-reader":
182
196
  if (!customElements.get(tagName)) {
183
197
  customElements.define(tagName, SwirlPdfReader$1);
184
198
  }
185
199
  break;
200
+ case "swirl-action-list":
201
+ if (!customElements.get(tagName)) {
202
+ defineCustomElement$o();
203
+ }
204
+ break;
205
+ case "swirl-action-list-item":
206
+ if (!customElements.get(tagName)) {
207
+ defineCustomElement$n();
208
+ }
209
+ break;
186
210
  case "swirl-button":
187
211
  if (!customElements.get(tagName)) {
188
- defineCustomElement$i();
212
+ defineCustomElement$m();
189
213
  }
190
214
  break;
191
215
  case "swirl-file-viewer":
192
216
  if (!customElements.get(tagName)) {
193
- defineCustomElement$h();
217
+ defineCustomElement$l();
194
218
  }
195
219
  break;
196
220
  case "swirl-file-viewer-audio":
197
221
  if (!customElements.get(tagName)) {
198
- defineCustomElement$g();
222
+ defineCustomElement$k();
199
223
  }
200
224
  break;
201
225
  case "swirl-file-viewer-csv":
202
226
  if (!customElements.get(tagName)) {
203
- defineCustomElement$f();
227
+ defineCustomElement$j();
204
228
  }
205
229
  break;
206
230
  case "swirl-file-viewer-image":
207
231
  if (!customElements.get(tagName)) {
208
- defineCustomElement$e();
232
+ defineCustomElement$i();
209
233
  }
210
234
  break;
211
235
  case "swirl-file-viewer-pdf":
212
236
  if (!customElements.get(tagName)) {
213
- defineCustomElement$d();
237
+ defineCustomElement$h();
214
238
  }
215
239
  break;
216
240
  case "swirl-file-viewer-text":
217
241
  if (!customElements.get(tagName)) {
218
- defineCustomElement$c();
242
+ defineCustomElement$g();
219
243
  }
220
244
  break;
221
245
  case "swirl-file-viewer-video":
222
246
  if (!customElements.get(tagName)) {
223
- defineCustomElement$b();
247
+ defineCustomElement$f();
224
248
  }
225
249
  break;
226
250
  case "swirl-icon-add":
227
251
  if (!customElements.get(tagName)) {
228
- defineCustomElement$a();
252
+ defineCustomElement$e();
229
253
  }
230
254
  break;
231
255
  case "swirl-icon-error":
232
256
  if (!customElements.get(tagName)) {
233
- defineCustomElement$9();
257
+ defineCustomElement$d();
234
258
  }
235
259
  break;
236
260
  case "swirl-icon-expand-more":
237
261
  if (!customElements.get(tagName)) {
238
- defineCustomElement$8();
262
+ defineCustomElement$c();
239
263
  }
240
264
  break;
241
265
  case "swirl-icon-fullscreen":
242
266
  if (!customElements.get(tagName)) {
243
- defineCustomElement$7();
267
+ defineCustomElement$b();
244
268
  }
245
269
  break;
246
270
  case "swirl-icon-fullscreen-exit":
247
271
  if (!customElements.get(tagName)) {
248
- defineCustomElement$6();
272
+ defineCustomElement$a();
249
273
  }
250
274
  break;
251
275
  case "swirl-icon-remove":
252
276
  if (!customElements.get(tagName)) {
253
- defineCustomElement$5();
277
+ defineCustomElement$9();
254
278
  }
255
279
  break;
256
280
  case "swirl-inline-error":
257
281
  if (!customElements.get(tagName)) {
258
- defineCustomElement$4();
282
+ defineCustomElement$8();
283
+ }
284
+ break;
285
+ case "swirl-popover":
286
+ if (!customElements.get(tagName)) {
287
+ defineCustomElement$7();
288
+ }
289
+ break;
290
+ case "swirl-separator":
291
+ if (!customElements.get(tagName)) {
292
+ defineCustomElement$6();
259
293
  }
260
294
  break;
261
295
  case "swirl-spinner":
296
+ if (!customElements.get(tagName)) {
297
+ defineCustomElement$5();
298
+ }
299
+ break;
300
+ case "swirl-stack":
301
+ if (!customElements.get(tagName)) {
302
+ defineCustomElement$4();
303
+ }
304
+ break;
305
+ case "swirl-text":
262
306
  if (!customElements.get(tagName)) {
263
307
  defineCustomElement$3();
264
308
  }
@@ -270,6 +314,7 @@ function defineCustomElement$1() {
270
314
  break;
271
315
  } });
272
316
  }
317
+ defineCustomElement$1();
273
318
 
274
319
  const SwirlPdfReader = SwirlPdfReader$1;
275
320
  const defineCustomElement = defineCustomElement$1;
@@ -1,8 +1,8 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { c as computePosition, a as autoUpdate, o as offset, s as shift, f as flip } from './floating-ui.dom.esm.js';
3
- import { e as enableBodyScroll, d as disableBodyScroll } from './bodyScrollLock.esm.js';
3
+ import { d as disableBodyScroll, e as enableBodyScroll } from './bodyScrollLock.esm.js';
4
4
  import { c as classnames } from './index2.js';
5
- import { i as isMobileViewport, q as querySelectorAllDeep } from './utils.js';
5
+ import { i as isMobileViewport, q as querySelectorAllDeep, b as getActiveElement } from './utils.js';
6
6
 
7
7
  const swirlPopoverCss = ":host{position:relative;z-index:var(--s-z-40);display:inline-flex}:host *{box-sizing:border-box}.popover--active:not(.popover--closing) .popover__backdrop{-webkit-animation:0.15s popover-fade-in;animation:0.15s popover-fade-in}@media (prefers-reduced-motion){.popover--active:not(.popover--closing) .popover__backdrop{-webkit-animation:none;animation:none}}.popover--active:not(.popover--closing) .popover__content{-webkit-animation:0.15s popover-slide-in;animation:0.15s popover-slide-in}@media (min-width: 768px){.popover--active:not(.popover--closing) .popover__content{transform-origin:top left;-webkit-animation:0.15s popover-fade-scale-in-xy;animation:0.15s popover-fade-scale-in-xy}}@media (prefers-reduced-motion){.popover--active:not(.popover--closing) .popover__content{-webkit-animation:none;animation:none}}.popover--closing .popover__backdrop{-webkit-animation:0.15s popover-fade-out;animation:0.15s popover-fade-out;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion){.popover--closing .popover__backdrop{-webkit-animation:none;animation:none}}.popover--closing .popover__content{-webkit-animation:0.15s popover-slide-out;animation:0.15s popover-slide-out;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (min-width: 768px){.popover--closing .popover__content{-webkit-animation:0.15s popover-fade-out;animation:0.15s popover-fade-out}}@media (prefers-reduced-motion){.popover--closing .popover__content{-webkit-animation:none;animation:none}}.popover--inactive .popover__content{display:none}@media (min-width: 768px){.popover--animation-scale-in-y.popover--active:not(.popover--closing) .popover__content{-webkit-animation:0.15s popover-fade-scale-in-y;animation:0.15s popover-fade-scale-in-y}}@media (prefers-reduced-motion){.popover--animation-scale-in-y.popover--active:not(.popover--closing) .popover__content{-webkit-animation:none;animation:none}}.popover__backdrop{position:fixed;z-index:0;background-color:rgba(0, 0, 0, 0.2);-webkit-animation:0.15s popover-backdrop-fade-in;animation:0.15s popover-backdrop-fade-in;inset:0}@media (prefers-reduced-motion){.popover__backdrop{-webkit-animation:none;animation:none}}@media (min-width: 768px){.popover__backdrop{display:none}}.popover__content{position:fixed;z-index:2;right:0;bottom:0;left:0;overflow:hidden;border-top-left-radius:var(--s-border-radius-xl);border-top-right-radius:var(--s-border-radius-xl);background-color:var(--s-surface-overlay-default)}@media (min-width: 768px){.popover__content{right:unset;bottom:unset;left:unset;max-width:22.5rem;border-radius:var(--s-border-radius-sm);-webkit-animation:none;animation:none;box-shadow:var(--s-shadow-level-1)}}.popover__scroll-container{overflow-x:hidden;overflow-y:auto;width:100%;max-height:90vh;padding-top:var(--s-space-24);padding-bottom:var(--s-space-24);overscroll-behavior:contain}@media (min-width: 768px){.popover__scroll-container{max-height:22rem;padding-top:var(--s-space-8);padding-bottom:var(--s-space-8)}}.popover__handle{position:absolute;top:var(--s-space-8);left:50%;width:2.5rem;height:0.375rem;border-radius:0.1875rem;background-color:var(--s-border-default);transform:translatex(-50%)}@media (min-width: 768px){.popover__handle{display:none}}@-webkit-keyframes popover-slide-in{from{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes popover-slide-in{from{transform:translateY(100%)}to{transform:translateY(0)}}@-webkit-keyframes popover-slide-out{from{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes popover-slide-out{from{transform:translateY(0)}to{transform:translateY(100%)}}@-webkit-keyframes popover-fade-in{from{opacity:0}to{opacity:1}}@keyframes popover-fade-in{from{opacity:0}to{opacity:1}}@-webkit-keyframes popover-fade-out{from{opacity:1}to{opacity:0}}@keyframes popover-fade-out{from{opacity:1}to{opacity:0}}@-webkit-keyframes popover-fade-scale-in-xy{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes popover-fade-scale-in-xy{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@-webkit-keyframes popover-fade-scale-in-y{from{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}@keyframes popover-fade-scale-in-y{from{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}";
8
8
 
@@ -53,6 +53,7 @@ const SwirlPopover = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
53
53
  this.close();
54
54
  };
55
55
  this.animation = "scale-in-xy";
56
+ this.disableScrollLock = undefined;
56
57
  this.enableFlip = true;
57
58
  this.label = undefined;
58
59
  this.offset = 8;
@@ -70,14 +71,15 @@ const SwirlPopover = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
70
71
  this.updateTriggerAttributes();
71
72
  }
72
73
  disconnectedCallback() {
73
- enableBodyScroll(this.scrollContainer);
74
+ this.unlockBodyScroll();
74
75
  }
75
76
  onWindowFocusIn(event) {
76
77
  if (!this.active) {
77
78
  return;
78
79
  }
79
80
  const target = event.target;
80
- const popoverLostFocus = !this.el.contains(target);
81
+ const activeElement = getActiveElement();
82
+ const popoverLostFocus = !this.el.contains(target) && !this.el.contains(activeElement);
81
83
  if (popoverLostFocus) {
82
84
  this.close();
83
85
  }
@@ -202,12 +204,16 @@ const SwirlPopover = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
202
204
  }
203
205
  lockBodyScroll() {
204
206
  const mobile = isMobileViewport();
205
- if (!mobile) {
207
+ if (!mobile || this.disableScrollLock) {
206
208
  return;
207
209
  }
208
210
  disableBodyScroll(this.scrollContainer);
209
211
  }
210
212
  unlockBodyScroll() {
213
+ const mobile = isMobileViewport();
214
+ if (!mobile || this.disableScrollLock) {
215
+ return;
216
+ }
211
217
  enableBodyScroll(this.scrollContainer);
212
218
  }
213
219
  render() {
@@ -226,6 +232,7 @@ const SwirlPopover = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
226
232
  static get style() { return swirlPopoverCss; }
227
233
  }, [1, "swirl-popover", {
228
234
  "animation": [1],
235
+ "disableScrollLock": [4, "disable-scroll-lock"],
229
236
  "enableFlip": [4, "enable-flip"],
230
237
  "label": [1],
231
238
  "offset": [2],
@@ -252,5 +259,6 @@ function defineCustomElement() {
252
259
  break;
253
260
  } });
254
261
  }
262
+ defineCustomElement();
255
263
 
256
264
  export { SwirlPopover as S, defineCustomElement as d };
@@ -41,6 +41,7 @@ function defineCustomElement$1() {
41
41
  break;
42
42
  } });
43
43
  }
44
+ defineCustomElement$1();
44
45
 
45
46
  const SwirlProgressIndicator = SwirlProgressIndicator$1;
46
47
  const defineCustomElement = defineCustomElement$1;
@@ -63,6 +63,7 @@ function defineCustomElement$1() {
63
63
  break;
64
64
  } });
65
65
  }
66
+ defineCustomElement$1();
66
67
 
67
68
  const SwirlRadioGroup = SwirlRadioGroup$1;
68
69
  const defineCustomElement = defineCustomElement$1;