@internetarchive/elements 1.1.3-webdev-9240.0 → 1.1.3-webdev-9241.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 (230) hide show
  1. package/README.md +1 -1
  2. package/dist/src/elements/ia-radio-player/ia-radio-player.d.ts +0 -2
  3. package/dist/src/elements/ia-radio-player/ia-radio-player.d.ts.map +1 -1
  4. package/dist/src/elements/ia-radio-player/ia-radio-player.js +1 -6
  5. package/dist/src/elements/ia-radio-player/ia-radio-player.js.map +1 -1
  6. package/dist/src/elements/ia-topnav/assets/img/icon-audio.d.ts +3 -0
  7. package/dist/src/elements/ia-topnav/assets/img/icon-audio.d.ts.map +1 -0
  8. package/dist/src/elements/ia-topnav/assets/img/icon-audio.js +28 -0
  9. package/dist/src/elements/ia-topnav/assets/img/icon-audio.js.map +1 -0
  10. package/dist/src/elements/ia-topnav/assets/img/icon-close.d.ts +3 -0
  11. package/dist/src/elements/ia-topnav/assets/img/icon-close.d.ts.map +1 -0
  12. package/dist/src/elements/ia-topnav/assets/img/icon-close.js +20 -0
  13. package/dist/src/elements/ia-topnav/assets/img/icon-close.js.map +1 -0
  14. package/dist/src/elements/ia-topnav/assets/img/icon-donate-unpadded.d.ts +3 -0
  15. package/dist/src/elements/ia-topnav/assets/img/icon-donate-unpadded.d.ts.map +1 -0
  16. package/dist/src/elements/ia-topnav/assets/img/icon-donate-unpadded.js +19 -0
  17. package/dist/src/elements/ia-topnav/assets/img/icon-donate-unpadded.js.map +1 -0
  18. package/dist/src/elements/ia-topnav/assets/img/icon-donate.d.ts +3 -0
  19. package/dist/src/elements/ia-topnav/assets/img/icon-donate.d.ts.map +1 -0
  20. package/dist/src/elements/ia-topnav/assets/img/icon-donate.js +18 -0
  21. package/dist/src/elements/ia-topnav/assets/img/icon-donate.js.map +1 -0
  22. package/dist/src/elements/ia-topnav/assets/img/icon-ellipses.d.ts +3 -0
  23. package/dist/src/elements/ia-topnav/assets/img/icon-ellipses.d.ts.map +1 -0
  24. package/dist/src/elements/ia-topnav/assets/img/icon-ellipses.js +19 -0
  25. package/dist/src/elements/ia-topnav/assets/img/icon-ellipses.js.map +1 -0
  26. package/dist/src/elements/ia-topnav/assets/img/icon-ia-logo.d.ts +3 -0
  27. package/dist/src/elements/ia-topnav/assets/img/icon-ia-logo.d.ts.map +1 -0
  28. package/dist/src/elements/ia-topnav/assets/img/icon-ia-logo.js +30 -0
  29. package/dist/src/elements/ia-topnav/assets/img/icon-ia-logo.js.map +1 -0
  30. package/dist/src/elements/ia-topnav/assets/img/icon-images.d.ts +3 -0
  31. package/dist/src/elements/ia-topnav/assets/img/icon-images.d.ts.map +1 -0
  32. package/dist/src/elements/ia-topnav/assets/img/icon-images.js +19 -0
  33. package/dist/src/elements/ia-topnav/assets/img/icon-images.js.map +1 -0
  34. package/dist/src/elements/ia-topnav/assets/img/icon-search.d.ts +3 -0
  35. package/dist/src/elements/ia-topnav/assets/img/icon-search.d.ts.map +1 -0
  36. package/dist/src/elements/ia-topnav/assets/img/icon-search.js +19 -0
  37. package/dist/src/elements/ia-topnav/assets/img/icon-search.js.map +1 -0
  38. package/dist/src/elements/ia-topnav/assets/img/icon-software.d.ts +3 -0
  39. package/dist/src/elements/ia-topnav/assets/img/icon-software.d.ts.map +1 -0
  40. package/dist/src/elements/ia-topnav/assets/img/icon-software.js +18 -0
  41. package/dist/src/elements/ia-topnav/assets/img/icon-software.js.map +1 -0
  42. package/dist/src/elements/ia-topnav/assets/img/icon-texts.d.ts +3 -0
  43. package/dist/src/elements/ia-topnav/assets/img/icon-texts.d.ts.map +1 -0
  44. package/dist/src/elements/ia-topnav/assets/img/icon-texts.js +18 -0
  45. package/dist/src/elements/ia-topnav/assets/img/icon-texts.js.map +1 -0
  46. package/dist/src/elements/ia-topnav/assets/img/icon-upload-unpadded.d.ts +3 -0
  47. package/dist/src/elements/ia-topnav/assets/img/icon-upload-unpadded.d.ts.map +1 -0
  48. package/dist/src/elements/ia-topnav/assets/img/icon-upload-unpadded.js +18 -0
  49. package/dist/src/elements/ia-topnav/assets/img/icon-upload-unpadded.js.map +1 -0
  50. package/dist/src/elements/ia-topnav/assets/img/icon-upload.d.ts +3 -0
  51. package/dist/src/elements/ia-topnav/assets/img/icon-upload.d.ts.map +1 -0
  52. package/dist/src/elements/ia-topnav/assets/img/icon-upload.js +21 -0
  53. package/dist/src/elements/ia-topnav/assets/img/icon-upload.js.map +1 -0
  54. package/dist/src/elements/ia-topnav/assets/img/icon-user.d.ts +3 -0
  55. package/dist/src/elements/ia-topnav/assets/img/icon-user.d.ts.map +1 -0
  56. package/dist/src/elements/ia-topnav/assets/img/icon-user.js +19 -0
  57. package/dist/src/elements/ia-topnav/assets/img/icon-user.js.map +1 -0
  58. package/dist/src/elements/ia-topnav/assets/img/icon-video.d.ts +3 -0
  59. package/dist/src/elements/ia-topnav/assets/img/icon-video.d.ts.map +1 -0
  60. package/dist/src/elements/ia-topnav/assets/img/icon-video.js +19 -0
  61. package/dist/src/elements/ia-topnav/assets/img/icon-video.js.map +1 -0
  62. package/dist/src/elements/ia-topnav/assets/img/icon-web.d.ts +3 -0
  63. package/dist/src/elements/ia-topnav/assets/img/icon-web.d.ts.map +1 -0
  64. package/dist/src/elements/ia-topnav/assets/img/icon-web.js +19 -0
  65. package/dist/src/elements/ia-topnav/assets/img/icon-web.js.map +1 -0
  66. package/dist/src/elements/ia-topnav/assets/img/icon.d.ts +6 -0
  67. package/dist/src/elements/ia-topnav/assets/img/icon.d.ts.map +1 -0
  68. package/dist/src/elements/ia-topnav/assets/img/icon.js +17 -0
  69. package/dist/src/elements/ia-topnav/assets/img/icon.js.map +1 -0
  70. package/dist/src/elements/ia-topnav/assets/img/icons.d.ts +19 -0
  71. package/dist/src/elements/ia-topnav/assets/img/icons.d.ts.map +1 -0
  72. package/dist/src/elements/ia-topnav/assets/img/icons.js +33 -0
  73. package/dist/src/elements/ia-topnav/assets/img/icons.js.map +1 -0
  74. package/dist/src/elements/ia-topnav/assets/img/wayback-logo.d.ts +3 -0
  75. package/dist/src/elements/ia-topnav/assets/img/wayback-logo.d.ts.map +1 -0
  76. package/dist/src/elements/ia-topnav/assets/img/wayback-logo.js +21 -0
  77. package/dist/src/elements/ia-topnav/assets/img/wayback-logo.js.map +1 -0
  78. package/dist/src/elements/ia-topnav/assets/img/wordmark-stacked.d.ts +3 -0
  79. package/dist/src/elements/ia-topnav/assets/img/wordmark-stacked.d.ts.map +1 -0
  80. package/dist/src/elements/ia-topnav/assets/img/wordmark-stacked.js +13 -0
  81. package/dist/src/elements/ia-topnav/assets/img/wordmark-stacked.js.map +1 -0
  82. package/dist/src/elements/ia-topnav/data/menus.d.ts +17 -0
  83. package/dist/src/elements/ia-topnav/data/menus.d.ts.map +1 -0
  84. package/dist/src/elements/ia-topnav/data/menus.js +680 -0
  85. package/dist/src/elements/ia-topnav/data/menus.js.map +1 -0
  86. package/dist/src/elements/ia-topnav/dropdown-menu.d.ts +21 -0
  87. package/dist/src/elements/ia-topnav/dropdown-menu.d.ts.map +1 -0
  88. package/dist/src/elements/ia-topnav/dropdown-menu.js +315 -0
  89. package/dist/src/elements/ia-topnav/dropdown-menu.js.map +1 -0
  90. package/dist/src/elements/ia-topnav/ia-topnav-desktop-subnav.d.ts +11 -0
  91. package/dist/src/elements/ia-topnav/ia-topnav-desktop-subnav.d.ts.map +1 -0
  92. package/dist/src/elements/ia-topnav/ia-topnav-desktop-subnav.js +89 -0
  93. package/dist/src/elements/ia-topnav/ia-topnav-desktop-subnav.js.map +1 -0
  94. package/dist/src/elements/ia-topnav/ia-topnav-icon-hamburger.d.ts +6 -0
  95. package/dist/src/elements/ia-topnav/ia-topnav-icon-hamburger.d.ts.map +1 -0
  96. package/dist/src/elements/ia-topnav/ia-topnav-icon-hamburger.js +47 -0
  97. package/dist/src/elements/ia-topnav/ia-topnav-icon-hamburger.js.map +1 -0
  98. package/dist/src/elements/ia-topnav/ia-topnav-login-button.d.ts +20 -0
  99. package/dist/src/elements/ia-topnav/ia-topnav-login-button.d.ts.map +1 -0
  100. package/dist/src/elements/ia-topnav/ia-topnav-login-button.js +183 -0
  101. package/dist/src/elements/ia-topnav/ia-topnav-login-button.js.map +1 -0
  102. package/dist/src/elements/ia-topnav/ia-topnav-media-button.d.ts +31 -0
  103. package/dist/src/elements/ia-topnav/ia-topnav-media-button.d.ts.map +1 -0
  104. package/dist/src/elements/ia-topnav/ia-topnav-media-button.js +287 -0
  105. package/dist/src/elements/ia-topnav/ia-topnav-media-button.js.map +1 -0
  106. package/dist/src/elements/ia-topnav/ia-topnav-media-menu.d.ts +21 -0
  107. package/dist/src/elements/ia-topnav/ia-topnav-media-menu.d.ts.map +1 -0
  108. package/dist/src/elements/ia-topnav/ia-topnav-media-menu.js +222 -0
  109. package/dist/src/elements/ia-topnav/ia-topnav-media-menu.js.map +1 -0
  110. package/dist/src/elements/ia-topnav/ia-topnav-media-slider.d.ts +16 -0
  111. package/dist/src/elements/ia-topnav/ia-topnav-media-slider.d.ts.map +1 -0
  112. package/dist/src/elements/ia-topnav/ia-topnav-media-slider.js +221 -0
  113. package/dist/src/elements/ia-topnav/ia-topnav-media-slider.js.map +1 -0
  114. package/dist/src/elements/ia-topnav/ia-topnav-media-subnav.d.ts +20 -0
  115. package/dist/src/elements/ia-topnav/ia-topnav-media-subnav.d.ts.map +1 -0
  116. package/dist/src/elements/ia-topnav/ia-topnav-media-subnav.js +285 -0
  117. package/dist/src/elements/ia-topnav/ia-topnav-media-subnav.js.map +1 -0
  118. package/dist/src/elements/ia-topnav/ia-topnav-more-slider.d.ts +12 -0
  119. package/dist/src/elements/ia-topnav/ia-topnav-more-slider.d.ts.map +1 -0
  120. package/dist/src/elements/ia-topnav/ia-topnav-more-slider.js +65 -0
  121. package/dist/src/elements/ia-topnav/ia-topnav-more-slider.js.map +1 -0
  122. package/dist/src/elements/ia-topnav/ia-topnav-primary-nav.d.ts +53 -0
  123. package/dist/src/elements/ia-topnav/ia-topnav-primary-nav.d.ts.map +1 -0
  124. package/dist/src/elements/ia-topnav/ia-topnav-primary-nav.js +653 -0
  125. package/dist/src/elements/ia-topnav/ia-topnav-primary-nav.js.map +1 -0
  126. package/dist/src/elements/ia-topnav/ia-topnav-save-page-form.d.ts +12 -0
  127. package/dist/src/elements/ia-topnav/ia-topnav-save-page-form.d.ts.map +1 -0
  128. package/dist/src/elements/ia-topnav/ia-topnav-save-page-form.js +128 -0
  129. package/dist/src/elements/ia-topnav/ia-topnav-save-page-form.js.map +1 -0
  130. package/dist/src/elements/ia-topnav/ia-topnav-signed-out-dropdown.d.ts +4 -0
  131. package/dist/src/elements/ia-topnav/ia-topnav-signed-out-dropdown.d.ts.map +1 -0
  132. package/dist/src/elements/ia-topnav/ia-topnav-signed-out-dropdown.js +10 -0
  133. package/dist/src/elements/ia-topnav/ia-topnav-signed-out-dropdown.js.map +1 -0
  134. package/dist/src/elements/ia-topnav/ia-topnav-user-menu.d.ts +7 -0
  135. package/dist/src/elements/ia-topnav/ia-topnav-user-menu.d.ts.map +1 -0
  136. package/dist/src/elements/ia-topnav/ia-topnav-user-menu.js +39 -0
  137. package/dist/src/elements/ia-topnav/ia-topnav-user-menu.js.map +1 -0
  138. package/dist/src/elements/ia-topnav/ia-topnav-wayback-search.d.ts +10 -0
  139. package/dist/src/elements/ia-topnav/ia-topnav-wayback-search.d.ts.map +1 -0
  140. package/dist/src/elements/ia-topnav/ia-topnav-wayback-search.js +64 -0
  141. package/dist/src/elements/ia-topnav/ia-topnav-wayback-search.js.map +1 -0
  142. package/dist/src/elements/ia-topnav/ia-topnav-wayback-slider.d.ts +20 -0
  143. package/dist/src/elements/ia-topnav/ia-topnav-wayback-slider.d.ts.map +1 -0
  144. package/dist/src/elements/ia-topnav/ia-topnav-wayback-slider.js +131 -0
  145. package/dist/src/elements/ia-topnav/ia-topnav-wayback-slider.js.map +1 -0
  146. package/dist/src/elements/ia-topnav/ia-topnav.d.ts +85 -0
  147. package/dist/src/elements/ia-topnav/ia-topnav.d.ts.map +1 -0
  148. package/dist/src/elements/ia-topnav/ia-topnav.js +434 -0
  149. package/dist/src/elements/ia-topnav/ia-topnav.js.map +1 -0
  150. package/dist/src/elements/ia-topnav/lib/helpers.d.ts +13 -0
  151. package/dist/src/elements/ia-topnav/lib/helpers.d.ts.map +1 -0
  152. package/dist/src/elements/ia-topnav/lib/helpers.js +24 -0
  153. package/dist/src/elements/ia-topnav/lib/helpers.js.map +1 -0
  154. package/dist/src/elements/ia-topnav/lib/keyboard-navigation.d.ts +46 -0
  155. package/dist/src/elements/ia-topnav/lib/keyboard-navigation.d.ts.map +1 -0
  156. package/dist/src/elements/ia-topnav/lib/keyboard-navigation.js +136 -0
  157. package/dist/src/elements/ia-topnav/lib/keyboard-navigation.js.map +1 -0
  158. package/dist/src/elements/ia-topnav/models.d.ts +59 -0
  159. package/dist/src/elements/ia-topnav/models.d.ts.map +1 -0
  160. package/dist/src/elements/ia-topnav/models.js +10 -0
  161. package/dist/src/elements/ia-topnav/models.js.map +1 -0
  162. package/dist/src/elements/ia-topnav/subnav-list-styles.d.ts +2 -0
  163. package/dist/src/elements/ia-topnav/subnav-list-styles.d.ts.map +1 -0
  164. package/dist/src/elements/ia-topnav/subnav-list-styles.js +49 -0
  165. package/dist/src/elements/ia-topnav/subnav-list-styles.js.map +1 -0
  166. package/dist/src/elements/ia-topnav/tracked-element.d.ts +6 -0
  167. package/dist/src/elements/ia-topnav/tracked-element.d.ts.map +1 -0
  168. package/dist/src/elements/ia-topnav/tracked-element.js +29 -0
  169. package/dist/src/elements/ia-topnav/tracked-element.js.map +1 -0
  170. package/dist/src/elements/ia-wayback-search-form/ia-wayback-search-form.d.ts +24 -0
  171. package/dist/src/elements/ia-wayback-search-form/ia-wayback-search-form.d.ts.map +1 -0
  172. package/dist/src/elements/ia-wayback-search-form/ia-wayback-search-form.js +240 -0
  173. package/dist/src/elements/ia-wayback-search-form/ia-wayback-search-form.js.map +1 -0
  174. package/dist/src/elements/index.d.ts +3 -5
  175. package/dist/src/elements/index.d.ts.map +1 -1
  176. package/dist/src/elements/index.js +3 -5
  177. package/dist/src/elements/index.js.map +1 -1
  178. package/package.json +3 -9
  179. package/dist/src/elements/ia-reviews/assets/delete-icon.svg +0 -8
  180. package/dist/src/elements/ia-reviews/assets/star-basic.svg +0 -6
  181. package/dist/src/elements/ia-reviews/assets/star-selected.svg +0 -8
  182. package/dist/src/elements/ia-reviews/assets/star-unselected.svg +0 -8
  183. package/dist/src/elements/ia-reviews/ia-review-form.d.ts +0 -103
  184. package/dist/src/elements/ia-reviews/ia-review-form.d.ts.map +0 -1
  185. package/dist/src/elements/ia-reviews/ia-review-form.js +0 -685
  186. package/dist/src/elements/ia-reviews/ia-review-form.js.map +0 -1
  187. package/dist/src/elements/ia-reviews/ia-review.d.ts +0 -51
  188. package/dist/src/elements/ia-reviews/ia-review.d.ts.map +0 -1
  189. package/dist/src/elements/ia-reviews/ia-review.js +0 -344
  190. package/dist/src/elements/ia-reviews/ia-review.js.map +0 -1
  191. package/dist/src/elements/ia-reviews/ia-reviews.d.ts +0 -68
  192. package/dist/src/elements/ia-reviews/ia-reviews.d.ts.map +0 -1
  193. package/dist/src/elements/ia-reviews/ia-reviews.js +0 -354
  194. package/dist/src/elements/ia-reviews/ia-reviews.js.map +0 -1
  195. package/dist/src/elements/ia-reviews/mocks/mock-fetch-handler.d.ts +0 -23
  196. package/dist/src/elements/ia-reviews/mocks/mock-fetch-handler.d.ts.map +0 -1
  197. package/dist/src/elements/ia-reviews/mocks/mock-fetch-handler.js +0 -37
  198. package/dist/src/elements/ia-reviews/mocks/mock-fetch-handler.js.map +0 -1
  199. package/dist/src/elements/ia-reviews/mocks/mock-review-service.d.ts +0 -12
  200. package/dist/src/elements/ia-reviews/mocks/mock-review-service.d.ts.map +0 -1
  201. package/dist/src/elements/ia-reviews/mocks/mock-review-service.js +0 -19
  202. package/dist/src/elements/ia-reviews/mocks/mock-review-service.js.map +0 -1
  203. package/dist/src/elements/ia-reviews/models.d.ts +0 -38
  204. package/dist/src/elements/ia-reviews/models.d.ts.map +0 -1
  205. package/dist/src/elements/ia-reviews/models.js +0 -2
  206. package/dist/src/elements/ia-reviews/models.js.map +0 -1
  207. package/dist/src/elements/ia-reviews/review-service.d.ts +0 -53
  208. package/dist/src/elements/ia-reviews/review-service.d.ts.map +0 -1
  209. package/dist/src/elements/ia-reviews/review-service.js +0 -97
  210. package/dist/src/elements/ia-reviews/review-service.js.map +0 -1
  211. package/dist/src/elements/ia-reviews/utils/collapse-space.d.ts +0 -13
  212. package/dist/src/elements/ia-reviews/utils/collapse-space.d.ts.map +0 -1
  213. package/dist/src/elements/ia-reviews/utils/collapse-space.js +0 -19
  214. package/dist/src/elements/ia-reviews/utils/collapse-space.js.map +0 -1
  215. package/dist/src/elements/ia-reviews/utils/friendly-truncate.d.ts +0 -14
  216. package/dist/src/elements/ia-reviews/utils/friendly-truncate.d.ts.map +0 -1
  217. package/dist/src/elements/ia-reviews/utils/friendly-truncate.js +0 -65
  218. package/dist/src/elements/ia-reviews/utils/friendly-truncate.js.map +0 -1
  219. package/dist/src/elements/ia-reviews/utils/link-urls-in-text.d.ts +0 -9
  220. package/dist/src/elements/ia-reviews/utils/link-urls-in-text.d.ts.map +0 -1
  221. package/dist/src/elements/ia-reviews/utils/link-urls-in-text.js +0 -40
  222. package/dist/src/elements/ia-reviews/utils/link-urls-in-text.js.map +0 -1
  223. package/dist/src/elements/ia-reviews/utils/sanitize-review-body.d.ts +0 -9
  224. package/dist/src/elements/ia-reviews/utils/sanitize-review-body.d.ts.map +0 -1
  225. package/dist/src/elements/ia-reviews/utils/sanitize-review-body.js +0 -29
  226. package/dist/src/elements/ia-reviews/utils/sanitize-review-body.js.map +0 -1
  227. package/dist/src/elements/ia-reviews/utils/truncate-screenname.d.ts +0 -13
  228. package/dist/src/elements/ia-reviews/utils/truncate-screenname.d.ts.map +0 -1
  229. package/dist/src/elements/ia-reviews/utils/truncate-screenname.js +0 -19
  230. package/dist/src/elements/ia-reviews/utils/truncate-screenname.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menus.js","sourceRoot":"","sources":["../../../../../src/elements/ia-topnav/data/menus.ts"],"names":[],"mappings":"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","sourcesContent":["import { IATopNavConfig, IATopNavMenuConfig } from '../models';\n\nexport const defaultTopNavConfig: IATopNavConfig = {\n // Google Analytics event category\n eventCategory: 'TopNav',\n};\n\n/**\n * Creates archive.org top navigation configuration\n * @param { string } userid archive.org account (immutable) userid\n * @param { string } baseHost prefixed to every archive.org link. Pass '' for\n * links relative to the current host.\n * @param { string } waybackPagesArchived label readable 'how many pages in WayBack machine?'\n * If you don't pass in something, the wayback search falls\n * back to a localized, potentially less accurate figure.\n * @param { string } itemIdentifier The current item being viewed, to populate admin menu items\n * @param { string } uploader email of the item's uploader, for the uploader admin section\n * @param { string } biblio biblio URL for a texts item, for the biblio admin section\n * @returns { object }\n */\nexport function buildTopNavMenus(\n userid: string = '',\n baseHost: string = 'https://archive.org',\n waybackPagesArchived: string = '',\n itemIdentifier: string = '',\n uploader: string = '',\n biblio: string = '',\n): IATopNavMenuConfig {\n if (waybackPagesArchived)\n defaultTopNavConfig.waybackPagesArchived = waybackPagesArchived; // update to more accurate val\n\n return {\n audio: {\n heading: 'Internet Archive Audio',\n iconLinks: [\n {\n icon: `${baseHost}/services/img/etree`,\n title: 'Live Music Archive',\n url: `${baseHost}/details/etree`,\n },\n {\n icon: `${baseHost}/services/img/librivoxaudio`,\n title: 'Librivox Free Audio',\n url: `${baseHost}/details/librivoxaudio`,\n },\n ],\n featuredLinks: [\n {\n title: 'All Audio',\n url: `${baseHost}/details/audio`,\n },\n {\n title: 'Grateful Dead',\n url: `${baseHost}/details/GratefulDead`,\n },\n {\n title: 'Netlabels',\n url: `${baseHost}/details/netlabels`,\n },\n {\n title: 'Old Time Radio',\n url: `${baseHost}/details/oldtimeradio`,\n },\n {\n title: '78 RPMs and Cylinder Recordings',\n url: `${baseHost}/details/78rpm`,\n },\n ],\n links: [\n {\n title: 'Audio Books & Poetry',\n url: `${baseHost}/details/audio_bookspoetry`,\n },\n {\n title: 'Computers, Technology and Science',\n url: `${baseHost}/details/audio_tech`,\n },\n {\n title: 'Music, Arts & Culture',\n url: `${baseHost}/details/audio_music`,\n },\n {\n title: 'News & Public Affairs',\n url: `${baseHost}/details/audio_news`,\n },\n {\n title: 'Spirituality & Religion',\n url: `${baseHost}/details/audio_religion`,\n },\n {\n title: 'Podcasts',\n url: `${baseHost}/details/podcasts`,\n },\n {\n title: 'Radio News Archive',\n url: `${baseHost}/details/radio`,\n },\n ],\n mobileAppsLinks: [],\n browserExtensionsLinks: [],\n archiveItLinks: [],\n },\n images: {\n heading: 'Images',\n iconLinks: [\n {\n icon: `${baseHost}/services/img/metropolitanmuseumofart-gallery`,\n title: 'Metropolitan Museum',\n url: `${baseHost}/details/metropolitanmuseumofart-gallery`,\n },\n {\n icon: `${baseHost}/services/img/clevelandart`,\n title: 'Cleveland Museum of Art',\n url: `${baseHost}/details/clevelandart`,\n },\n ],\n featuredLinks: [\n {\n title: 'All Images',\n url: `${baseHost}/details/image`,\n },\n {\n title: 'Flickr Commons',\n url: `${baseHost}/details/flickrcommons`,\n },\n {\n title: 'Occupy Wall Street Flickr',\n url: `${baseHost}/details/flickr-ows`,\n },\n {\n title: 'Cover Art',\n url: `${baseHost}/details/coverartarchive`,\n },\n {\n title: 'USGS Maps',\n url: `${baseHost}/details/maps_usgs`,\n },\n ],\n links: [\n {\n title: 'NASA Images',\n url: `${baseHost}/details/nasa`,\n },\n {\n title: 'Solar System Collection',\n url: `${baseHost}/details/solarsystemcollection`,\n },\n {\n title: 'Ames Research Center',\n url: `${baseHost}/details/amesresearchcenterimagelibrary`,\n },\n ],\n mobileAppsLinks: [],\n browserExtensionsLinks: [],\n archiveItLinks: [],\n },\n more: {\n links: [\n {\n title: 'About',\n url: `${baseHost}/about/`,\n },\n {\n title: 'Blog',\n url: 'https://blog.archive.org',\n },\n {\n title: 'Events',\n url: `${baseHost}/events`,\n },\n {\n title: 'Projects',\n url: `${baseHost}/projects/`,\n },\n {\n title: 'Help',\n url: `${baseHost}/about/faqs.php`,\n },\n {\n title: 'Donate',\n url: `${baseHost}/donate?origin=iawww-TopNavDonateButton`,\n },\n {\n title: 'Contact',\n url: `${baseHost}/about/contact`,\n },\n {\n title: 'Jobs',\n url: `${baseHost}/about/jobs`,\n },\n {\n title: 'Volunteer',\n url: `${baseHost}/about/volunteer-positions`,\n },\n ],\n heading: '',\n iconLinks: [],\n featuredLinks: [],\n mobileAppsLinks: [],\n browserExtensionsLinks: [],\n archiveItLinks: [],\n },\n software: {\n heading: 'Software',\n iconLinks: [\n {\n icon: `${baseHost}/services/img/internetarcade`,\n title: 'Internet Arcade',\n url: `${baseHost}/details/internetarcade`,\n },\n {\n icon: `${baseHost}/services/img/consolelivingroom`,\n title: 'Console Living Room',\n url: `${baseHost}/details/consolelivingroom`,\n },\n ],\n featuredLinks: [\n {\n title: 'All Software',\n url: `${baseHost}/details/software`,\n },\n {\n title: 'Old School Emulation',\n url: `${baseHost}/details/tosec`,\n },\n {\n title: 'MS-DOS Games',\n url: `${baseHost}/details/softwarelibrary_msdos_games`,\n },\n {\n title: 'Historical Software',\n url: `${baseHost}/details/historicalsoftware`,\n },\n {\n title: 'Classic PC Games',\n url: `${baseHost}/details/classicpcgames`,\n },\n {\n title: 'Software Library',\n url: `${baseHost}/details/softwarelibrary`,\n },\n ],\n links: [\n {\n title: 'Kodi Archive and Support File',\n url: `${baseHost}/details/kodi_archive`,\n },\n {\n title: 'Vintage Software',\n url: `${baseHost}/details/vintagesoftware`,\n },\n {\n title: 'APK',\n url: `${baseHost}/details/apkarchive`,\n },\n {\n title: 'MS-DOS',\n url: `${baseHost}/details/softwarelibrary_msdos`,\n },\n {\n title: 'CD-ROM Software',\n url: `${baseHost}/details/cd-roms`,\n },\n {\n title: 'CD-ROM Software Library',\n url: `${baseHost}/details/cdromsoftware`,\n },\n {\n title: 'Software Sites',\n url: `${baseHost}/details/softwaresites`,\n },\n {\n title: 'Tucows Software Library',\n url: `${baseHost}/details/tucows`,\n },\n {\n title: 'Shareware CD-ROMs',\n url: `${baseHost}/details/cdbbsarchive`,\n },\n {\n title: 'Software Capsules Compilation',\n url: `${baseHost}/details/softwarecapsules`,\n },\n {\n title: 'CD-ROM Images',\n url: `${baseHost}/details/cdromimages`,\n },\n {\n title: 'ZX Spectrum',\n url: `${baseHost}/details/softwarelibrary_zx_spectrum`,\n },\n {\n title: 'DOOM Level CD',\n url: `${baseHost}/details/doom-cds`,\n },\n ],\n mobileAppsLinks: [],\n browserExtensionsLinks: [],\n archiveItLinks: [],\n },\n texts: {\n heading: 'Texts',\n iconLinks: [\n {\n title: 'Open Library',\n icon: `${baseHost}/images/widgetOL.png`,\n url: 'https://openlibrary.org/',\n },\n {\n title: 'American Libraries',\n icon: `${baseHost}/services/img/americana`,\n url: `${baseHost}/details/americana`,\n },\n ],\n featuredLinks: [\n {\n title: 'All Texts',\n url: `${baseHost}/details/texts`,\n },\n {\n title: 'Smithsonian Libraries',\n url: `${baseHost}/details/smithsonian`,\n },\n {\n title: 'FEDLINK (US)',\n url: `${baseHost}/details/fedlink`,\n },\n {\n title: 'Genealogy',\n url: `${baseHost}/details/genealogy`,\n },\n {\n title: 'Lincoln Collection',\n url: `${baseHost}/details/lincolncollection`,\n },\n ],\n links: [\n {\n title: 'American Libraries',\n url: `${baseHost}/details/americana`,\n },\n {\n title: 'Canadian Libraries',\n url: `${baseHost}/details/toronto`,\n },\n {\n title: 'Universal Library',\n url: `${baseHost}/details/universallibrary`,\n },\n {\n title: 'Project Gutenberg',\n url: `${baseHost}/details/gutenberg`,\n },\n {\n title: \"Children's Library\",\n url: `${baseHost}/details/iacl`,\n },\n {\n title: 'Biodiversity Heritage Library',\n url: `${baseHost}/details/biodiversity`,\n },\n {\n title: 'Books by Language',\n url: `${baseHost}/details/booksbylanguage`,\n },\n {\n title: 'Folkscanomy',\n url: `${baseHost}/details/folkscanomy`,\n },\n {\n title: 'Government Documents',\n url: `${baseHost}/details/government-documents`,\n },\n ],\n mobileAppsLinks: [],\n browserExtensionsLinks: [],\n archiveItLinks: [],\n },\n web: {\n mobileAppsLinks: [\n {\n url: 'https://apps.apple.com/us/app/wayback-machine/id1201888313',\n title: 'Wayback Machine (iOS)',\n external: true,\n },\n {\n url: 'https://play.google.com/store/apps/details?id=com.internetarchive.waybackmachine',\n title: 'Wayback Machine (Android)',\n external: true,\n },\n ],\n browserExtensionsLinks: [\n {\n url: 'https://chrome.google.com/webstore/detail/wayback-machine/fpnmgdkabkmnadcjpehmlllkndpkmiak',\n title: 'Chrome',\n external: true,\n },\n {\n url: 'https://addons.mozilla.org/en-US/firefox/addon/wayback-machine_new/',\n title: 'Firefox',\n external: true,\n },\n {\n url: 'https://apps.apple.com/us/app/wayback-machine/id1472432422?mt=12',\n title: 'Safari',\n external: true,\n },\n {\n url: 'https://microsoftedge.microsoft.com/addons/detail/wayback-machine/kjmickeoogghaimmomagaghnogelpcpn?hl=en-US',\n title: 'Edge',\n external: true,\n },\n ],\n archiveItLinks: [\n {\n url: 'https://www.archive-it.org/explore',\n title: 'Explore the Collections',\n external: true,\n },\n {\n url: 'https://www.archive-it.org/blog/learn-more/',\n title: 'Learn More',\n external: true,\n },\n {\n url: 'https://www.archive-it.org/contact-us',\n title: 'Build Collections',\n external: true,\n },\n ],\n heading: '',\n iconLinks: [],\n featuredLinks: [],\n links: [],\n },\n video: {\n heading: 'Video',\n iconLinks: [\n {\n icon: `${baseHost}/services/img/tv`,\n title: 'TV News',\n url: `${baseHost}/details/tv`,\n },\n {\n icon: `${baseHost}/services/img/911`,\n title: 'Understanding 9/11',\n url: `${baseHost}/details/911`,\n },\n ],\n featuredLinks: [\n {\n title: 'All Video',\n url: `${baseHost}/details/movies`,\n },\n {\n title: 'Prelinger Archives',\n url: `${baseHost}/details/prelinger`,\n },\n {\n title: 'Democracy Now!',\n url: `${baseHost}/details/democracy_now_vid`,\n },\n {\n title: 'Occupy Wall Street',\n url: `${baseHost}/details/occupywallstreet`,\n },\n {\n title: 'TV NSA Clip Library',\n url: `${baseHost}/details/nsa`,\n },\n ],\n links: [\n {\n title: 'Animation & Cartoons',\n url: `${baseHost}/details/animationandcartoons`,\n },\n {\n title: 'Arts & Music',\n url: `${baseHost}/details/artsandmusicvideos`,\n },\n {\n title: 'Computers & Technology',\n url: `${baseHost}/details/computersandtechvideos`,\n },\n {\n title: 'Cultural & Academic Films',\n url: `${baseHost}/details/culturalandacademicfilms`,\n },\n {\n title: 'Ephemeral Films',\n url: `${baseHost}/details/ephemera`,\n },\n {\n title: 'Movies',\n url: `${baseHost}/details/moviesandfilms`,\n },\n {\n title: 'News & Public Affairs',\n url: `${baseHost}/details/newsandpublicaffairs`,\n },\n {\n title: 'Spirituality & Religion',\n url: `${baseHost}/details/spiritualityandreligion`,\n },\n {\n title: 'Sports Videos',\n url: `${baseHost}/details/sports`,\n },\n {\n title: 'Television',\n url: `${baseHost}/details/television`,\n },\n {\n title: 'Videogame Videos',\n url: `${baseHost}/details/gamevideos`,\n },\n {\n title: 'Vlogs',\n url: `${baseHost}/details/vlogs`,\n },\n {\n title: 'Youth Media',\n url: `${baseHost}/details/youth_media`,\n },\n ],\n mobileAppsLinks: [],\n browserExtensionsLinks: [],\n archiveItLinks: [],\n },\n user: [\n {\n url: `${baseHost}/upload`,\n title: 'Upload files',\n analyticsEvent: 'UserUpload',\n class: 'mobile-upload',\n },\n {\n url: `${baseHost}/details/@${userid}`,\n title: 'My uploads',\n analyticsEvent: 'UserLibrary',\n },\n {\n url: `${baseHost}/details/@${userid}/loans`,\n title: 'My loans',\n analyticsEvent: 'UserLoans',\n },\n {\n url: `${baseHost}/details/@${userid}/favorites`,\n title: 'My favorites',\n analyticsEvent: 'UserFavorites',\n },\n {\n url: `${baseHost}/details/@${userid}/lists`,\n title: 'My lists',\n analyticsEvent: 'UserLists',\n },\n {\n url: `${baseHost}/details/@${userid}/collections`,\n title: 'My collections',\n analyticsEvent: 'UserCollections',\n },\n {\n url: `${baseHost}/details/@${userid}/web-archive`,\n title: 'My web archives',\n analyticsEvent: 'UserWebArchive',\n },\n {\n url: `${baseHost}/account/settings`,\n title: 'Account settings',\n analyticsEvent: 'UserSettings',\n },\n {\n url: 'https://help.archive.org',\n title: 'Get help',\n analyticsEvent: 'UserHelp',\n },\n {\n url: `${baseHost}/logout`,\n title: 'Log out',\n analyticsEvent: 'UserLogOut',\n },\n ],\n userAdmin: [\n {\n title: 'ADMINS:',\n },\n {\n title: 'item:',\n },\n {\n url: `${baseHost}/editxml/${itemIdentifier}`,\n title: 'edit xml',\n analyticsEvent: 'AdminUserEditXML',\n },\n {\n url: `${baseHost}/edit.php?redir=1&identifier=${itemIdentifier}`,\n title: 'edit files',\n analyticsEvent: 'AdminUserEditFiles',\n },\n {\n url: `${baseHost}/download/${itemIdentifier}/`,\n title: 'download',\n analyticsEvent: 'AdminUserDownload',\n },\n {\n url: `${baseHost}/metadata/${itemIdentifier}/`,\n title: 'metadata',\n analyticsEvent: 'AdminUserMetadata',\n },\n {\n url: `https://catalogd.archive.org/history/${itemIdentifier}`,\n title: 'history',\n analyticsEvent: 'AdminUserHistory',\n },\n {\n url: `${baseHost}/manage/${itemIdentifier}`,\n title: 'manage',\n analyticsEvent: 'AdminUserManager',\n },\n {\n url: `${baseHost}/manage/${itemIdentifier}#make_dark`,\n title: 'curate',\n analyticsEvent: 'AdminUserCurate',\n },\n {\n url: `${baseHost}/manage/${itemIdentifier}#modify_xml`,\n title: 'modify xml',\n analyticsEvent: 'AdminUserModifyXML',\n },\n ],\n userAdminFlags: [\n {\n url: `${baseHost}/services/flags/admin.php?identifier=${itemIdentifier}`,\n title: 'manage flags',\n analyticsEvent: 'AdminUserManageFlags',\n },\n ],\n userAdminBiblio: biblio\n ? [\n {\n url: `${biblio}&ignored=${itemIdentifier}`,\n title: 'biblio',\n analyticsEvent: 'AdminUserBiblio',\n },\n {\n url: `${baseHost}/bookview.php?mode=debug&identifier=${itemIdentifier}`,\n title: 'bookview',\n analyticsEvent: 'AdminUserBookView',\n },\n {\n url: `${baseHost}/download/${itemIdentifier}/format=Single Page Processed JP2 ZIP`,\n title: 'jp2 zip',\n analyticsEvent: 'AdminUserJP2Zip',\n },\n ]\n : [],\n userAdminUploader: uploader\n ? [\n {\n title: 'uploader:',\n },\n {\n title: uploader,\n },\n {\n url: `https://catalogd.archive.org/control/useradmin.php?email=${encodeURIComponent(uploader)}`,\n title: 'user admin',\n analyticsEvent: 'AdminUserUserAdmin',\n },\n {\n url: `https://catalogd.archive.org/control/setadmin.php?user=${encodeURIComponent(uploader)}&ignore=${itemIdentifier}`,\n title: 'user privs',\n analyticsEvent: 'AdminUserUserPrivs',\n },\n ]\n : [],\n signedOut: [\n {\n url: `${baseHost}/signup`,\n title: 'Sign up for free',\n analyticsEvent: 'AvatarMenu-Signup',\n },\n {\n url: `${baseHost}/login`,\n title: 'Log in',\n analyticsEvent: 'AvatarMenu-Login',\n },\n ],\n };\n}\n"]}
@@ -0,0 +1,21 @@
1
+ import { CSSResultGroup, PropertyValues, TemplateResult, nothing } from 'lit';
2
+ import { IATopNavConfig, IATopNavLink } from './models.js';
3
+ import TrackedElement from './tracked-element.js';
4
+ export default class DropdownMenu extends TrackedElement {
5
+ baseHost: string;
6
+ config: IATopNavConfig;
7
+ menuItems: IATopNavLink[] | IATopNavLink[][];
8
+ animated: boolean;
9
+ open: boolean;
10
+ private previousKeydownListener?;
11
+ updated(props: PropertyValues): void;
12
+ render(): TemplateResult<1>;
13
+ get dropdownItems(): typeof nothing | TemplateResult[] | (TemplateResult[] | undefined)[];
14
+ static get dropdownDivider(): TemplateResult<1>;
15
+ private dropdownSection;
16
+ dropdownLink(link: IATopNavLink): TemplateResult;
17
+ static dropdownText(item: IATopNavLink): TemplateResult<1>;
18
+ get menuClass(): "open" | "closed" | "initial";
19
+ static get styles(): CSSResultGroup;
20
+ }
21
+ //# sourceMappingURL=dropdown-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown-menu.d.ts","sourceRoot":"","sources":["../../../../src/elements/ia-topnav/dropdown-menu.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,cAAc,EACd,cAAc,EAGd,OAAO,EACR,MAAM,KAAK,CAAC;AAMb,OAAO,EACL,cAAc,EACd,YAAY,EAEb,MAAM,UAAU,CAAC;AAClB,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAO/C,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,cAAc;IAC1B,QAAQ,SAAM;IACd,MAAM,EAAE,cAAc,CAAuB;IAC9C,SAAS,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,EAAE,CAAM;IAChD,QAAQ,UAAS;IACjB,IAAI,UAAS;IAE1C,OAAO,CAAC,uBAAuB,CAAC,CACc;IAE9C,OAAO,CAAC,KAAK,EAAE,cAAc;IAoB7B,MAAM;IAgBN,IAAI,aAAa,yEAchB;IAED,MAAM,KAAK,eAAe,sBAEzB;IAED,OAAO,CAAC,eAAe;IAYvB,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc;IAqBhD,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY;IAItC,IAAI,SAAS,kCAIZ;IAED,MAAM,KAAK,MAAM,IAAI,cAAc,CA2LlC;CACF"}
@@ -0,0 +1,315 @@
1
+ var DropdownMenu_1;
2
+ import { __decorate } from "tslib";
3
+ import { css, html, nothing, } from 'lit';
4
+ import { property } from 'lit/decorators.js';
5
+ import icons from './assets/img/icons.js';
6
+ import { defaultTopNavConfig } from './data/menus.js';
7
+ import { formatUrl, makeBooleanString } from './lib/helpers.js';
8
+ import { TOPNAV_MOBILE_BREAKPOINT, } from './models.js';
9
+ import TrackedElement from './tracked-element.js';
10
+ import { ifDefined } from 'lit/directives/if-defined.js';
11
+ import KeyboardNavigation from './lib/keyboard-navigation.js';
12
+ import themeStyles from '../../themes/theme-styles.js';
13
+ import { localized, msg, str } from '@lit/localize';
14
+ let DropdownMenu = DropdownMenu_1 = class DropdownMenu extends TrackedElement {
15
+ constructor() {
16
+ super(...arguments);
17
+ this.baseHost = '';
18
+ this.config = defaultTopNavConfig;
19
+ this.menuItems = [];
20
+ this.animated = false;
21
+ this.open = false;
22
+ }
23
+ updated(props) {
24
+ if (props.has('open') && this.open) {
25
+ const container = this.shadowRoot?.querySelector('.nav-container');
26
+ if (container) {
27
+ const keyboardNavigation = new KeyboardNavigation(container, 'usermenu');
28
+ this.addEventListener('keydown', keyboardNavigation.handleKeyDown);
29
+ if (this.previousKeydownListener) {
30
+ this.removeEventListener('keydown', this.previousKeydownListener);
31
+ }
32
+ this.previousKeydownListener = keyboardNavigation.handleKeyDown;
33
+ }
34
+ }
35
+ }
36
+ render() {
37
+ return html `
38
+ <div class="nav-container">
39
+ <nav
40
+ class="${this.menuClass}"
41
+ aria-hidden="${makeBooleanString(!this.open)}"
42
+ aria-expanded="${makeBooleanString(this.open)}"
43
+ >
44
+ <ul>
45
+ ${this.dropdownItems}
46
+ </ul>
47
+ </nav>
48
+ </div>
49
+ `;
50
+ }
51
+ get dropdownItems() {
52
+ if (!this.menuItems)
53
+ return nothing;
54
+ if (!Array.isArray(this.menuItems[0])) {
55
+ const submenu = this.menuItems;
56
+ return this.dropdownSection(submenu);
57
+ }
58
+ return this.menuItems.map((submenu, i) => {
59
+ const joiner = i ? DropdownMenu_1.dropdownDivider : html ``;
60
+ if (!Array.isArray(submenu)) {
61
+ return;
62
+ }
63
+ return [joiner, ...this.dropdownSection(submenu)];
64
+ });
65
+ }
66
+ static get dropdownDivider() {
67
+ return html `<li class="divider"></li>`;
68
+ }
69
+ dropdownSection(submenu) {
70
+ return submenu.map((item) => html `
71
+ <li>
72
+ ${item.url
73
+ ? this.dropdownLink(item)
74
+ : DropdownMenu_1.dropdownText(item)}
75
+ </li>
76
+ `);
77
+ }
78
+ dropdownLink(link) {
79
+ const calloutText = this.config?.callouts?.[link.title];
80
+ const isMobileUpload = link.class === 'mobile-upload';
81
+ const isTabbable = this.open && !isMobileUpload;
82
+ return html `<a
83
+ href="${formatUrl(link.url, this.baseHost)}"
84
+ class=${ifDefined(link.class)}
85
+ tabindex="${isTabbable ? '' : '-1'}"
86
+ @click=${this.trackClick}
87
+ data-event-click-tracking="${this.config
88
+ ?.eventCategory}|Nav${link.analyticsEvent}"
89
+ aria-label=${calloutText ? msg(str `New feature: ${link.title}`) : nothing}
90
+ >
91
+ ${isMobileUpload ? icons.uploadUnpadded : nothing} ${link.title}
92
+ ${calloutText
93
+ ? html `<span class="callout" aria-hidden="true">${calloutText}</span>`
94
+ : nothing}
95
+ </a>`;
96
+ }
97
+ static dropdownText(item) {
98
+ return html `<span class="info-item">${item.title}</span>`;
99
+ }
100
+ get menuClass() {
101
+ if (this.open)
102
+ return 'open';
103
+ if (this.animated)
104
+ return 'closed';
105
+ return 'initial';
106
+ }
107
+ static get styles() {
108
+ return [
109
+ themeStyles,
110
+ css `
111
+ :host {
112
+ /*
113
+ * Where the menu parks when closed. Nothing sets it today, so the
114
+ * fallback is what actually applies.
115
+ */
116
+ --topnav-dropdown-closed-top--: var(--topOffset, -1500px);
117
+ /*
118
+ * Set imperatively by ia-topnav once it has measured the account
119
+ * button, so the dropdown lines up with the icon that opened it.
120
+ */
121
+ --topnav-dropdown-right--: var(--dropdownMenuRight, 0);
122
+ }
123
+
124
+ .nav-container {
125
+ position: relative;
126
+ }
127
+
128
+ nav {
129
+ position: absolute;
130
+ right: 0;
131
+ z-index: 4;
132
+ overflow: hidden;
133
+ font-size: 1.6rem;
134
+ background-color: var(--dropdownMenuBg);
135
+ transition-property: top;
136
+ transition-duration: 0.2s;
137
+ transition-timing-function: ease;
138
+ }
139
+
140
+ .initial,
141
+ .closed {
142
+ top: var(--topnav-dropdown-closed-top--);
143
+ }
144
+
145
+ .closed {
146
+ transition-duration: 0.5s;
147
+ }
148
+
149
+ .open {
150
+ max-width: 100vw;
151
+ overflow: auto;
152
+ }
153
+
154
+ h3 {
155
+ padding: 0.6rem 2rem;
156
+ margin: 0;
157
+ font-size: inherit;
158
+ overflow: hidden;
159
+ text-overflow: ellipsis;
160
+ }
161
+
162
+ ul {
163
+ padding: 0.4rem 0 0.7rem 0;
164
+ margin: 0;
165
+ list-style: none;
166
+ /* viewport height - nav height + bottom nav border */
167
+ max-height: calc(100vh - 7.2rem + 1px);
168
+ overflow: auto;
169
+ box-sizing: border-box;
170
+ }
171
+
172
+ .divider {
173
+ margin: 0.5rem 0;
174
+ border-bottom: 1px solid var(--dropdownMenuDivider);
175
+ }
176
+
177
+ a,
178
+ .info-item {
179
+ display: block;
180
+ color: var(--primaryTextColor);
181
+ text-decoration: none;
182
+ padding: 1rem 2rem;
183
+ }
184
+
185
+ .info-item {
186
+ font-size: 0.8em;
187
+ color: var(--dropdownMenuInfoItem);
188
+ }
189
+
190
+ .callout {
191
+ position: absolute;
192
+ margin-left: 10px;
193
+ padding: 0 5px;
194
+ border-radius: 2px;
195
+ background: #fee257;
196
+ color: #2c2c2c;
197
+ font-size: 1.4rem;
198
+ font-weight: bold;
199
+ }
200
+
201
+ a.mobile-upload {
202
+ display: flex;
203
+ justify-content: left;
204
+ align-items: center;
205
+ }
206
+ a.mobile-upload svg {
207
+ fill: var(--white);
208
+ margin-right: 1rem;
209
+ height: 1.4rem;
210
+ width: 1.4rem;
211
+ }
212
+
213
+ @media (min-width: ${TOPNAV_MOBILE_BREAKPOINT}px) {
214
+ nav {
215
+ display: flex;
216
+ overflow: visible;
217
+ top: 0;
218
+ left: auto;
219
+ right: var(--topnav-dropdown-right--);
220
+ z-index: 5;
221
+ transition: opacity 0.2s ease-in-out;
222
+ font-size: 1.4rem;
223
+ border-radius: 2px;
224
+ background: var(--primaryTextColor);
225
+ box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.15);
226
+ }
227
+
228
+ nav:after {
229
+ position: absolute;
230
+ right: 7px;
231
+ top: -7px;
232
+ width: 12px;
233
+ height: 7px;
234
+ box-sizing: border-box;
235
+ color: var(--white);
236
+ content: '';
237
+ border-bottom: 7px solid currentColor;
238
+ border-left: 6px solid transparent;
239
+ border-right: 6px solid transparent;
240
+ }
241
+
242
+ h3 {
243
+ display: none;
244
+ }
245
+
246
+ ul {
247
+ /* viewport height - nav height + bottom nav border */
248
+ max-height: calc(100vh - 8.5rem + 1px);
249
+ }
250
+
251
+ .divider {
252
+ border-bottom-color: var(--dropdownMenuDivider);
253
+ }
254
+
255
+ a {
256
+ padding: 0.5rem 2rem;
257
+ color: var(--inverseTextColor);
258
+ transition:
259
+ background 0.1s ease-out,
260
+ color 0.1s ease-out;
261
+ }
262
+
263
+ .info-item {
264
+ padding: 0.5rem 2rem;
265
+ font-size: 0.8em;
266
+ color: var(--inverseDropdownMenuInfoItem);
267
+ }
268
+
269
+ a:hover,
270
+ a:active,
271
+ a:focus {
272
+ color: var(--linkHoverColor);
273
+ background: var(--linkColor);
274
+ outline: none;
275
+ }
276
+
277
+ .initial,
278
+ .closed {
279
+ opacity: 0;
280
+ transition-duration: 0.2s;
281
+ }
282
+
283
+ .open {
284
+ opacity: 1;
285
+ overflow: visible;
286
+ }
287
+
288
+ a.mobile-upload {
289
+ display: none;
290
+ }
291
+ }
292
+ `,
293
+ ];
294
+ }
295
+ };
296
+ __decorate([
297
+ property({ type: String })
298
+ ], DropdownMenu.prototype, "baseHost", void 0);
299
+ __decorate([
300
+ property({ type: Object })
301
+ ], DropdownMenu.prototype, "config", void 0);
302
+ __decorate([
303
+ property({ type: Array })
304
+ ], DropdownMenu.prototype, "menuItems", void 0);
305
+ __decorate([
306
+ property({ type: Boolean })
307
+ ], DropdownMenu.prototype, "animated", void 0);
308
+ __decorate([
309
+ property({ type: Boolean })
310
+ ], DropdownMenu.prototype, "open", void 0);
311
+ DropdownMenu = DropdownMenu_1 = __decorate([
312
+ localized()
313
+ ], DropdownMenu);
314
+ export default DropdownMenu;
315
+ //# sourceMappingURL=dropdown-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown-menu.js","sourceRoot":"","sources":["../../../../src/elements/ia-topnav/dropdown-menu.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n CSSResultGroup,\n PropertyValues,\n TemplateResult,\n css,\n html,\n nothing,\n} from 'lit';\nimport { property } from 'lit/decorators.js';\n\nimport icons from './assets/img/icons';\nimport { defaultTopNavConfig } from './data/menus';\nimport { formatUrl, makeBooleanString } from './lib/helpers';\nimport {\n IATopNavConfig,\n IATopNavLink,\n TOPNAV_MOBILE_BREAKPOINT,\n} from './models';\nimport TrackedElement from './tracked-element';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport KeyboardNavigation from './lib/keyboard-navigation';\nimport themeStyles from '@src/themes/theme-styles';\nimport { localized, msg, str } from '@lit/localize';\n\n@localized()\nexport default class DropdownMenu extends TrackedElement {\n @property({ type: String }) baseHost = '';\n @property({ type: Object }) config: IATopNavConfig = defaultTopNavConfig;\n @property({ type: Array }) menuItems: IATopNavLink[] | IATopNavLink[][] = [];\n @property({ type: Boolean }) animated = false;\n @property({ type: Boolean }) open = false;\n\n private previousKeydownListener?: // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (this: HTMLElement, ev: KeyboardEvent) => any;\n\n updated(props: PropertyValues) {\n if (props.has('open') && this.open) {\n const container = this.shadowRoot?.querySelector(\n '.nav-container',\n ) as HTMLElement;\n\n if (container) {\n const keyboardNavigation = new KeyboardNavigation(\n container,\n 'usermenu',\n );\n this.addEventListener('keydown', keyboardNavigation.handleKeyDown);\n if (this.previousKeydownListener) {\n this.removeEventListener('keydown', this.previousKeydownListener);\n }\n this.previousKeydownListener = keyboardNavigation.handleKeyDown;\n }\n }\n }\n\n render() {\n return html`\n <div class=\"nav-container\">\n <nav\n class=\"${this.menuClass}\"\n aria-hidden=\"${makeBooleanString(!this.open)}\"\n aria-expanded=\"${makeBooleanString(this.open)}\"\n >\n <ul>\n ${this.dropdownItems}\n </ul>\n </nav>\n </div>\n `;\n }\n\n get dropdownItems() {\n if (!this.menuItems) return nothing;\n\n if (!Array.isArray(this.menuItems[0])) {\n const submenu = this.menuItems as IATopNavLink[];\n return this.dropdownSection(submenu);\n }\n return this.menuItems.map((submenu, i) => {\n const joiner = i ? DropdownMenu.dropdownDivider : html``;\n if (!Array.isArray(submenu)) {\n return;\n }\n return [joiner, ...this.dropdownSection(submenu)];\n });\n }\n\n static get dropdownDivider() {\n return html`<li class=\"divider\"></li>`;\n }\n\n private dropdownSection(submenu: IATopNavLink[]): TemplateResult[] {\n return submenu.map(\n (item) => html`\n <li>\n ${item.url\n ? this.dropdownLink(item)\n : DropdownMenu.dropdownText(item)}\n </li>\n `,\n );\n }\n\n dropdownLink(link: IATopNavLink): TemplateResult {\n const calloutText = this.config?.callouts?.[link.title];\n const isMobileUpload = link.class === 'mobile-upload';\n const isTabbable = this.open && !isMobileUpload;\n\n return html`<a\n href=\"${formatUrl(link.url, this.baseHost)}\"\n class=${ifDefined(link.class)}\n tabindex=\"${isTabbable ? '' : '-1'}\"\n @click=${this.trackClick}\n data-event-click-tracking=\"${this.config\n ?.eventCategory}|Nav${link.analyticsEvent}\"\n aria-label=${calloutText ? msg(str`New feature: ${link.title}`) : nothing}\n >\n ${isMobileUpload ? icons.uploadUnpadded : nothing} ${link.title}\n ${calloutText\n ? html`<span class=\"callout\" aria-hidden=\"true\">${calloutText}</span>`\n : nothing}\n </a>`;\n }\n\n static dropdownText(item: IATopNavLink) {\n return html`<span class=\"info-item\">${item.title}</span>`;\n }\n\n get menuClass() {\n if (this.open) return 'open';\n if (this.animated) return 'closed';\n return 'initial';\n }\n\n static get styles(): CSSResultGroup {\n return [\n themeStyles,\n css`\n :host {\n /*\n * Where the menu parks when closed. Nothing sets it today, so the\n * fallback is what actually applies.\n */\n --topnav-dropdown-closed-top--: var(--topOffset, -1500px);\n /*\n * Set imperatively by ia-topnav once it has measured the account\n * button, so the dropdown lines up with the icon that opened it.\n */\n --topnav-dropdown-right--: var(--dropdownMenuRight, 0);\n }\n\n .nav-container {\n position: relative;\n }\n\n nav {\n position: absolute;\n right: 0;\n z-index: 4;\n overflow: hidden;\n font-size: 1.6rem;\n background-color: var(--dropdownMenuBg);\n transition-property: top;\n transition-duration: 0.2s;\n transition-timing-function: ease;\n }\n\n .initial,\n .closed {\n top: var(--topnav-dropdown-closed-top--);\n }\n\n .closed {\n transition-duration: 0.5s;\n }\n\n .open {\n max-width: 100vw;\n overflow: auto;\n }\n\n h3 {\n padding: 0.6rem 2rem;\n margin: 0;\n font-size: inherit;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n ul {\n padding: 0.4rem 0 0.7rem 0;\n margin: 0;\n list-style: none;\n /* viewport height - nav height + bottom nav border */\n max-height: calc(100vh - 7.2rem + 1px);\n overflow: auto;\n box-sizing: border-box;\n }\n\n .divider {\n margin: 0.5rem 0;\n border-bottom: 1px solid var(--dropdownMenuDivider);\n }\n\n a,\n .info-item {\n display: block;\n color: var(--primaryTextColor);\n text-decoration: none;\n padding: 1rem 2rem;\n }\n\n .info-item {\n font-size: 0.8em;\n color: var(--dropdownMenuInfoItem);\n }\n\n .callout {\n position: absolute;\n margin-left: 10px;\n padding: 0 5px;\n border-radius: 2px;\n background: #fee257;\n color: #2c2c2c;\n font-size: 1.4rem;\n font-weight: bold;\n }\n\n a.mobile-upload {\n display: flex;\n justify-content: left;\n align-items: center;\n }\n a.mobile-upload svg {\n fill: var(--white);\n margin-right: 1rem;\n height: 1.4rem;\n width: 1.4rem;\n }\n\n @media (min-width: ${TOPNAV_MOBILE_BREAKPOINT}px) {\n nav {\n display: flex;\n overflow: visible;\n top: 0;\n left: auto;\n right: var(--topnav-dropdown-right--);\n z-index: 5;\n transition: opacity 0.2s ease-in-out;\n font-size: 1.4rem;\n border-radius: 2px;\n background: var(--primaryTextColor);\n box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.15);\n }\n\n nav:after {\n position: absolute;\n right: 7px;\n top: -7px;\n width: 12px;\n height: 7px;\n box-sizing: border-box;\n color: var(--white);\n content: '';\n border-bottom: 7px solid currentColor;\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n }\n\n h3 {\n display: none;\n }\n\n ul {\n /* viewport height - nav height + bottom nav border */\n max-height: calc(100vh - 8.5rem + 1px);\n }\n\n .divider {\n border-bottom-color: var(--dropdownMenuDivider);\n }\n\n a {\n padding: 0.5rem 2rem;\n color: var(--inverseTextColor);\n transition:\n background 0.1s ease-out,\n color 0.1s ease-out;\n }\n\n .info-item {\n padding: 0.5rem 2rem;\n font-size: 0.8em;\n color: var(--inverseDropdownMenuInfoItem);\n }\n\n a:hover,\n a:active,\n a:focus {\n color: var(--linkHoverColor);\n background: var(--linkColor);\n outline: none;\n }\n\n .initial,\n .closed {\n opacity: 0;\n transition-duration: 0.2s;\n }\n\n .open {\n opacity: 1;\n overflow: visible;\n }\n\n a.mobile-upload {\n display: none;\n }\n }\n `,\n ];\n }\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import { CSSResultGroup, TemplateResult } from 'lit';
2
+ import TrackedElement from './tracked-element.js';
3
+ import { IATopNavLink } from './models.js';
4
+ export declare class DesktopSubnav extends TrackedElement {
5
+ baseHost: string;
6
+ menuItems: IATopNavLink[];
7
+ render(): TemplateResult<1>;
8
+ static iconFor(title: string): TemplateResult;
9
+ static get styles(): CSSResultGroup;
10
+ }
11
+ //# sourceMappingURL=ia-topnav-desktop-subnav.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ia-topnav-desktop-subnav.d.ts","sourceRoot":"","sources":["../../../../src/elements/ia-topnav/ia-topnav-desktop-subnav.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAa,MAAM,KAAK,CAAC;AAIhE,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAG/C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,qBACa,aAAc,SAAQ,cAAc;IACnB,QAAQ,SAAM;IACf,SAAS,EAAE,YAAY,EAAE,CAAM;IAE1D,MAAM;IAkBN,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc;IAO7C,MAAM,KAAK,MAAM,IAAI,cAAc,CAwClC;CACF"}
@@ -0,0 +1,89 @@
1
+ var DesktopSubnav_1;
2
+ import { __decorate } from "tslib";
3
+ import { css, html } from 'lit';
4
+ import { property } from 'lit/decorators.js';
5
+ import { customElement } from '../../util/custom-element.js';
6
+ import TrackedElement from './tracked-element.js';
7
+ import icons from './assets/img/icons.js';
8
+ import { formatUrl } from './lib/helpers.js';
9
+ import themeStyles from '../../themes/theme-styles.js';
10
+ let DesktopSubnav = DesktopSubnav_1 = class DesktopSubnav extends TrackedElement {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.baseHost = '';
14
+ this.menuItems = [];
15
+ }
16
+ render() {
17
+ return html `
18
+ <ul>
19
+ ${this.menuItems.map((link) => html `
20
+ <li>
21
+ <a
22
+ class="${link.title.toLowerCase()}"
23
+ .href="${formatUrl(link.url, this.baseHost)}"
24
+ >${link.title}${DesktopSubnav_1.iconFor(link.title)}</a
25
+ >
26
+ </li>
27
+ `)}
28
+ </ul>
29
+ `;
30
+ }
31
+ static iconFor(title) {
32
+ const subnavIcons = {
33
+ Donate: icons.donate,
34
+ };
35
+ return subnavIcons[title] ? subnavIcons[title] : html ``;
36
+ }
37
+ static get styles() {
38
+ return [
39
+ themeStyles,
40
+ css `
41
+ ul {
42
+ position: relative;
43
+ z-index: 3;
44
+ padding: 0.8rem 0;
45
+ margin: 0;
46
+ font-size: 1.2rem;
47
+ text-transform: uppercase;
48
+ text-align: center;
49
+ background: var(--desktopSubnavBg);
50
+ }
51
+
52
+ li {
53
+ display: inline-block;
54
+ padding: 0 15px;
55
+ }
56
+
57
+ a {
58
+ text-decoration: none;
59
+ color: var(--subnavLinkColor);
60
+ outline: none;
61
+ }
62
+
63
+ a:hover,
64
+ a:active,
65
+ a:focus {
66
+ color: var(--linkHoverColor);
67
+ }
68
+
69
+ .donate svg {
70
+ width: 1.6rem;
71
+ height: 1.6rem;
72
+ vertical-align: top;
73
+ fill: #f00;
74
+ }
75
+ `,
76
+ ];
77
+ }
78
+ };
79
+ __decorate([
80
+ property({ type: String })
81
+ ], DesktopSubnav.prototype, "baseHost", void 0);
82
+ __decorate([
83
+ property({ type: Array })
84
+ ], DesktopSubnav.prototype, "menuItems", void 0);
85
+ DesktopSubnav = DesktopSubnav_1 = __decorate([
86
+ customElement('ia-topnav-desktop-subnav')
87
+ ], DesktopSubnav);
88
+ export { DesktopSubnav };
89
+ //# sourceMappingURL=ia-topnav-desktop-subnav.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ia-topnav-desktop-subnav.js","sourceRoot":"","sources":["../../../../src/elements/ia-topnav/ia-topnav-desktop-subnav.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAkC,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAG5C,IAAM,aAAa,qBAAnB,MAAM,aAAc,SAAQ,cAAc;IAA1C;;QACuB,aAAQ,GAAG,EAAE,CAAC;QACf,cAAS,GAAmB,EAAE,CAAC;IAoE5D,CAAC;IAlEC,MAAM;QACJ,OAAO,IAAI,CAAA;;UAEL,IAAI,CAAC,SAAS,CAAC,GAAG,CAClB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAA;;;yBAGC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;yBACxB,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC;mBACxC,IAAI,CAAC,KAAK,GAAG,eAAa,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;;;WAGtD,CACF;;KAEJ,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,MAAM,WAAW,GAAmC;YAClD,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC;QACF,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA,EAAE,CAAC;IAC1D,CAAC;IAED,MAAM,KAAK,MAAM;QACf,OAAO;YACL,WAAW;YACX,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCF;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AArE6B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;+CAAe;AACf;IAA1B,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;gDAAgC;AAF/C,aAAa;IADzB,aAAa,CAAC,0BAA0B,CAAC;GAC7B,aAAa,CAsEzB","sourcesContent":["import { CSSResultGroup, TemplateResult, css, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { customElement } from '@src/util/custom-element';\n\nimport TrackedElement from './tracked-element';\nimport icons from './assets/img/icons';\nimport { formatUrl } from './lib/helpers';\nimport { IATopNavLink } from './models';\nimport themeStyles from '@src/themes/theme-styles';\n\n@customElement('ia-topnav-desktop-subnav')\nexport class DesktopSubnav extends TrackedElement {\n @property({ type: String }) baseHost = '';\n @property({ type: Array }) menuItems: IATopNavLink[] = [];\n\n render() {\n return html`\n <ul>\n ${this.menuItems.map(\n (link) => html`\n <li>\n <a\n class=\"${link.title.toLowerCase()}\"\n .href=\"${formatUrl(link.url, this.baseHost)}\"\n >${link.title}${DesktopSubnav.iconFor(link.title)}</a\n >\n </li>\n `,\n )}\n </ul>\n `;\n }\n\n static iconFor(title: string): TemplateResult {\n const subnavIcons: Record<string, TemplateResult> = {\n Donate: icons.donate,\n };\n return subnavIcons[title] ? subnavIcons[title] : html``;\n }\n\n static get styles(): CSSResultGroup {\n return [\n themeStyles,\n css`\n ul {\n position: relative;\n z-index: 3;\n padding: 0.8rem 0;\n margin: 0;\n font-size: 1.2rem;\n text-transform: uppercase;\n text-align: center;\n background: var(--desktopSubnavBg);\n }\n\n li {\n display: inline-block;\n padding: 0 15px;\n }\n\n a {\n text-decoration: none;\n color: var(--subnavLinkColor);\n outline: none;\n }\n\n a:hover,\n a:active,\n a:focus {\n color: var(--linkHoverColor);\n }\n\n .donate svg {\n width: 1.6rem;\n height: 1.6rem;\n vertical-align: top;\n fill: #f00;\n }\n `,\n ];\n }\n}\n"]}
@@ -0,0 +1,6 @@
1
+ import Icon from './assets/img/icon.js';
2
+ export declare class HamBurger extends Icon {
3
+ render(): import("lit").TemplateResult<1>;
4
+ static get styles(): import("lit").CSSResult;
5
+ }
6
+ //# sourceMappingURL=ia-topnav-icon-hamburger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ia-topnav-icon-hamburger.d.ts","sourceRoot":"","sources":["../../../../src/elements/ia-topnav/ia-topnav-icon-hamburger.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,mBAAmB,CAAC;AAKrC,qBAEa,SAAU,SAAQ,IAAI;IACjC,MAAM;IAwBN,MAAM,KAAK,MAAM,4BAWhB;CACF"}
@@ -0,0 +1,47 @@
1
+ import { __decorate } from "tslib";
2
+ import { html, css } from 'lit';
3
+ import Icon from './assets/img/icon.js';
4
+ import icons from './assets/img/icons.js';
5
+ import { customElement } from '../../util/custom-element.js';
6
+ import { localized, msg } from '@lit/localize';
7
+ let HamBurger = class HamBurger extends Icon {
8
+ render() {
9
+ if (this.active)
10
+ return icons.close;
11
+ return html `
12
+ <svg
13
+ viewBox="0 0 40 40"
14
+ xmlns="http://www.w3.org/2000/svg"
15
+ aria-labelledby="hamburgerTitleID hamburgerDescID"
16
+ >
17
+ <title id="hamburgerTitleID">${msg('Hamburger icon')}</title>
18
+ <desc id="hamburgerDescID">
19
+ ${msg('An icon used to represent a menu that can be toggled by interacting with this icon.')}
20
+ </desc>
21
+ <path
22
+ d="m30.5 26.5c.8284271 0 1.5.6715729 1.5 1.5s-.6715729 1.5-1.5 1.5h-21c-.82842712 0-1.5-.6715729-1.5-1.5s.67157288-1.5 1.5-1.5zm0-8c.8284271 0 1.5.6715729 1.5 1.5s-.6715729 1.5-1.5 1.5h-21c-.82842712 0-1.5-.6715729-1.5-1.5s.67157288-1.5 1.5-1.5zm0-8c.8284271 0 1.5.6715729 1.5 1.5s-.6715729 1.5-1.5 1.5h-21c-.82842712 0-1.5-.6715729-1.5-1.5s.67157288-1.5 1.5-1.5z"
23
+ fill="#999"
24
+ fill-rule="evenodd"
25
+ />
26
+ </svg>
27
+ `;
28
+ }
29
+ static get styles() {
30
+ return css `
31
+ svg {
32
+ display: block;
33
+ height: 4rem;
34
+ width: 4rem;
35
+ }
36
+ .fill-color {
37
+ fill: var(--activeColor);
38
+ }
39
+ `;
40
+ }
41
+ };
42
+ HamBurger = __decorate([
43
+ customElement('ia-topnav-icon-hamburger'),
44
+ localized()
45
+ ], HamBurger);
46
+ export { HamBurger };
47
+ //# sourceMappingURL=ia-topnav-icon-hamburger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ia-topnav-icon-hamburger.js","sourceRoot":"","sources":["../../../../src/elements/ia-topnav/ia-topnav-icon-hamburger.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,IAAI,MAAM,mBAAmB,CAAC;AACrC,OAAO,KAAK,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAIxC,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,IAAI;IACjC,MAAM;QACJ,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC;QAEpC,OAAO,IAAI,CAAA;;;;;;uCAMwB,GAAG,CAAC,gBAAgB,CAAC;;YAEhD,GAAG,CACH,qFAAqF,CACtF;;;;;;;;KAQN,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,MAAM;QACf,OAAO,GAAG,CAAA;;;;;;;;;KAST,CAAC;IACJ,CAAC;CACF,CAAA;AArCY,SAAS;IAFrB,aAAa,CAAC,0BAA0B,CAAC;IACzC,SAAS,EAAE;GACC,SAAS,CAqCrB","sourcesContent":["import { html, css } from 'lit';\nimport Icon from './assets/img/icon';\nimport icons from './assets/img/icons';\nimport { customElement } from '@src/util/custom-element';\nimport { localized, msg } from '@lit/localize';\n\n@customElement('ia-topnav-icon-hamburger')\n@localized()\nexport class HamBurger extends Icon {\n render() {\n if (this.active) return icons.close;\n\n return html`\n <svg\n viewBox=\"0 0 40 40\"\n xmlns=\"http://www.w3.org/2000/svg\"\n aria-labelledby=\"hamburgerTitleID hamburgerDescID\"\n >\n <title id=\"hamburgerTitleID\">${msg('Hamburger icon')}</title>\n <desc id=\"hamburgerDescID\">\n ${msg(\n 'An icon used to represent a menu that can be toggled by interacting with this icon.',\n )}\n </desc>\n <path\n d=\"m30.5 26.5c.8284271 0 1.5.6715729 1.5 1.5s-.6715729 1.5-1.5 1.5h-21c-.82842712 0-1.5-.6715729-1.5-1.5s.67157288-1.5 1.5-1.5zm0-8c.8284271 0 1.5.6715729 1.5 1.5s-.6715729 1.5-1.5 1.5h-21c-.82842712 0-1.5-.6715729-1.5-1.5s.67157288-1.5 1.5-1.5zm0-8c.8284271 0 1.5.6715729 1.5 1.5s-.6715729 1.5-1.5 1.5h-21c-.82842712 0-1.5-.6715729-1.5-1.5s.67157288-1.5 1.5-1.5z\"\n fill=\"#999\"\n fill-rule=\"evenodd\"\n />\n </svg>\n `;\n }\n\n static get styles() {\n return css`\n svg {\n display: block;\n height: 4rem;\n width: 4rem;\n }\n .fill-color {\n fill: var(--activeColor);\n }\n `;\n }\n}\n"]}
@@ -0,0 +1,20 @@
1
+ import { CSSResultGroup } from 'lit';
2
+ import TrackedElement from './tracked-element.js';
3
+ import { IATopNavConfig } from './models.js';
4
+ export declare class LoginButton extends TrackedElement {
5
+ baseHost: string;
6
+ config: IATopNavConfig;
7
+ openMenu: string;
8
+ private toggleButton?;
9
+ render(): import("lit").TemplateResult<1>;
10
+ /** Distance (px) from this element's right edge to the right edge of the dropdown toggle icon. */
11
+ getDropdownToggleOffset(): number;
12
+ get signupPath(): string;
13
+ get loginPath(): string;
14
+ get analyticsEvent(): string;
15
+ get menuOpened(): boolean;
16
+ get avatarClass(): string;
17
+ toggleDropdown(e: Event): void;
18
+ static get styles(): CSSResultGroup;
19
+ }
20
+ //# sourceMappingURL=ia-topnav-login-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ia-topnav-login-button.d.ts","sourceRoot":"","sources":["../../../../src/elements/ia-topnav/ia-topnav-login-button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAa,MAAM,KAAK,CAAC;AAChD,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAK/C,OAAO,EAAE,cAAc,EAA4B,MAAM,UAAU,CAAC;AAKpE,qBAEa,WAAY,SAAQ,cAAc;IACjB,QAAQ,SAAM;IACd,MAAM,EAAE,cAAc,CAAuB;IAC7C,QAAQ,SAAM;IAET,OAAO,CAAC,YAAY,CAAC,CAAoB;IAE1E,MAAM;IAqBN,kGAAkG;IAClG,uBAAuB,IAAI,MAAM;IAQjC,IAAI,UAAU,WAEb;IAED,IAAI,SAAS,WAEZ;IAED,IAAI,cAAc,WAEjB;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,WAAW,WAEd;IAED,cAAc,CAAC,CAAC,EAAE,KAAK;IAcvB,MAAM,KAAK,MAAM,IAAI,cAAc,CA4FlC;CACF"}