@thegetty/quire-cli 0.20.3 → 0.20.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (370) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/bin/.DS_Store +0 -0
  3. package/bin/go-iiif/.DS_Store +0 -0
  4. package/bin/index.js +2 -0
  5. package/bin/starters/.DS_Store +0 -0
  6. package/bin/starters/README.md +0 -0
  7. package/bin/starters/default/.circleci/config.yml +98 -0
  8. package/bin/starters/default/.gitignore +14 -0
  9. package/bin/starters/default/.nojekyll +0 -0
  10. package/bin/starters/default/CHANGELOG.md +38 -0
  11. package/bin/starters/default/README.md +25 -0
  12. package/bin/starters/default/bin/deploy.sh +25 -0
  13. package/bin/starters/default/config/_default/config.yml +53 -0
  14. package/bin/starters/default/config/development/config.yml +14 -0
  15. package/bin/starters/default/config/environments/dev.yml +14 -0
  16. package/bin/starters/default/config/environments/github.yml +15 -0
  17. package/bin/starters/default/config/environments/netlify.yml +18 -0
  18. package/bin/starters/default/config/epub.yml +15 -0
  19. package/bin/starters/default/config/pdf.yml +16 -0
  20. package/bin/starters/default/config/site.yml +13 -0
  21. package/bin/starters/default/config.yml +53 -0
  22. package/bin/starters/default/content/about.md +20 -0
  23. package/bin/starters/default/content/bibliography.md +7 -0
  24. package/bin/starters/default/content/catalogue/1.md +28 -0
  25. package/bin/starters/default/content/catalogue/2.md +29 -0
  26. package/bin/starters/default/content/catalogue/3.md +20 -0
  27. package/bin/starters/default/content/catalogue/4.md +22 -0
  28. package/bin/starters/default/content/catalogue/catalogue-index.md +8 -0
  29. package/bin/starters/default/content/contents.md +7 -0
  30. package/bin/starters/default/content/contributors.md +7 -0
  31. package/bin/starters/default/content/cover.md +11 -0
  32. package/bin/starters/default/content/essay.md +80 -0
  33. package/bin/starters/default/content/intro.md +21 -0
  34. package/bin/starters/default/content/search-index.md +8 -0
  35. package/bin/starters/default/data/figures.yml +90 -0
  36. package/bin/starters/default/data/objects.yml +49 -0
  37. package/bin/starters/default/data/publication.yml +149 -0
  38. package/bin/starters/default/data/references.yml +11 -0
  39. package/bin/starters/default/static/css/custom.css +0 -0
  40. package/bin/starters/default/static/data/sample-geojson.json +16 -0
  41. package/bin/starters/default/static/downloads/.gitkeep +0 -0
  42. package/bin/starters/default/static/downloads/output.epub +0 -0
  43. package/bin/starters/default/static/downloads/output.mobi +0 -0
  44. package/bin/starters/default/static/downloads/output.pdf +0 -0
  45. package/bin/starters/default/static/img/contributors/judith-keller.jpg +0 -0
  46. package/bin/starters/default/static/img/cover.png +0 -0
  47. package/bin/starters/default/static/img/figures/duo.jpg +0 -0
  48. package/bin/starters/default/static/img/figures/evans-burroughs.jpg +0 -0
  49. package/bin/starters/default/static/img/figures/evans-child.jpg +0 -0
  50. package/bin/starters/default/static/img/figures/evans-graveyard.jpg +0 -0
  51. package/bin/starters/default/static/img/figures/evans-hymns.jpg +0 -0
  52. package/bin/starters/default/static/img/figures/evans-legionnaire.jpg +0 -0
  53. package/bin/starters/default/static/img/figures/evans-refugee.jpg +0 -0
  54. package/bin/starters/default/static/img/figures/evans-sons.jpg +0 -0
  55. package/bin/starters/default/static/img/figures/evans-video-still.jpg +0 -0
  56. package/bin/starters/default/static/img/figures/evans-washroom.jpg +0 -0
  57. package/bin/starters/default/static/img/figures/evans.jpg +0 -0
  58. package/bin/starters/default/static/img/figures/family.jpg +0 -0
  59. package/bin/starters/default/static/img/figures/lange-house.jpg +0 -0
  60. package/bin/starters/default/static/img/figures/lange.jpg +0 -0
  61. package/bin/starters/default/static/img/figures/mother-b.jpg +0 -0
  62. package/bin/starters/default/static/img/figures/mother-c.jpg +0 -0
  63. package/bin/starters/default/static/img/figures/mother.jpg +0 -0
  64. package/bin/starters/default/static/img/figures/pickers.jpg +0 -0
  65. package/bin/starters/default/static/img/logo-getty.png +0 -0
  66. package/bin/starters/default/static/img/pattern-spiral-overlay.png +0 -0
  67. package/bin/starters/default/static/js/custom.js +4 -0
  68. package/bin/themes/README.md +0 -0
  69. package/bin/themes/default/.circleci/config.yml +62 -0
  70. package/bin/themes/default/.eslintrc.js +16 -0
  71. package/bin/themes/default/.gitignore +13 -0
  72. package/bin/themes/default/.scss-lint.yml +239 -0
  73. package/bin/themes/default/CHANGELOG.md +73 -0
  74. package/bin/themes/default/LICENSE.md +20 -0
  75. package/bin/themes/default/README.md +112 -0
  76. package/bin/themes/default/archetypes/default.md +2 -0
  77. package/bin/themes/default/cypress.json +7 -0
  78. package/bin/themes/default/layouts/404.html +0 -0
  79. package/bin/themes/default/layouts/_default/baseof.html +43 -0
  80. package/bin/themes/default/layouts/_default/single.html +26 -0
  81. package/bin/themes/default/layouts/contents/single.html +37 -0
  82. package/bin/themes/default/layouts/cover/single.html +128 -0
  83. package/bin/themes/default/layouts/data/search-index.html +65 -0
  84. package/bin/themes/default/layouts/entry/single.html +372 -0
  85. package/bin/themes/default/layouts/essay/single.html +24 -0
  86. package/bin/themes/default/layouts/partials/analytics.html +29 -0
  87. package/bin/themes/default/layouts/partials/cite-this.html +348 -0
  88. package/bin/themes/default/layouts/partials/contents-list/card-image.html +13 -0
  89. package/bin/themes/default/layouts/partials/contents-list/closing-tags.html +59 -0
  90. package/bin/themes/default/layouts/partials/contents-list/contents-list.html +179 -0
  91. package/bin/themes/default/layouts/partials/contents-list/file-dir.html +7 -0
  92. package/bin/themes/default/layouts/partials/contents-list/file-path.html +10 -0
  93. package/bin/themes/default/layouts/partials/contents-list/list-item-type.html +9 -0
  94. package/bin/themes/default/layouts/partials/contents-list/list-item-types/abstract.html +17 -0
  95. package/bin/themes/default/layouts/partials/contents-list/list-item-types/brief.html +7 -0
  96. package/bin/themes/default/layouts/partials/contents-list/list-item-types/default.html +9 -0
  97. package/bin/themes/default/layouts/partials/contents-list/list-item-types/grid.html +30 -0
  98. package/bin/themes/default/layouts/partials/contents-list/section-heading.html +5 -0
  99. package/bin/themes/default/layouts/partials/contents-list.html +207 -0
  100. package/bin/themes/default/layouts/partials/contributor-info.html +78 -0
  101. package/bin/themes/default/layouts/partials/contributor-list.html +102 -0
  102. package/bin/themes/default/layouts/partials/copyright.html +155 -0
  103. package/bin/themes/default/layouts/partials/debug-contents.html +8 -0
  104. package/bin/themes/default/layouts/partials/dublin-core.html +21 -0
  105. package/bin/themes/default/layouts/partials/error-message.html +19 -0
  106. package/bin/themes/default/layouts/partials/figure-caption.html +1 -0
  107. package/bin/themes/default/layouts/partials/figure-fallback.html +31 -0
  108. package/bin/themes/default/layouts/partials/figure-image.html +44 -0
  109. package/bin/themes/default/layouts/partials/figure-label.html +15 -0
  110. package/bin/themes/default/layouts/partials/figure-soundcloud.html +25 -0
  111. package/bin/themes/default/layouts/partials/figure-table.html +44 -0
  112. package/bin/themes/default/layouts/partials/figure-vimeo.html +24 -0
  113. package/bin/themes/default/layouts/partials/figure-website.html +21 -0
  114. package/bin/themes/default/layouts/partials/figure-youtube.html +23 -0
  115. package/bin/themes/default/layouts/partials/figures/caption.html +44 -0
  116. package/bin/themes/default/layouts/partials/figures/label.html +35 -0
  117. package/bin/themes/default/layouts/partials/figures/media-types/fallback.html +32 -0
  118. package/bin/themes/default/layouts/partials/figures/media-types/image.html +54 -0
  119. package/bin/themes/default/layouts/partials/figures/media-types/soundcloud.html +35 -0
  120. package/bin/themes/default/layouts/partials/figures/media-types/table.html +53 -0
  121. package/bin/themes/default/layouts/partials/figures/media-types/vimeo.html +34 -0
  122. package/bin/themes/default/layouts/partials/figures/media-types/website.html +24 -0
  123. package/bin/themes/default/layouts/partials/figures/media-types/youtube.html +29 -0
  124. package/bin/themes/default/layouts/partials/footer-buttons.html +29 -0
  125. package/bin/themes/default/layouts/partials/head.html +46 -0
  126. package/bin/themes/default/layouts/partials/icon.html +20 -0
  127. package/bin/themes/default/layouts/partials/icons-cc.html +86 -0
  128. package/bin/themes/default/layouts/partials/icons.html +54 -0
  129. package/bin/themes/default/layouts/partials/json-ld.html +117 -0
  130. package/bin/themes/default/layouts/partials/link-list-arrow.html +16 -0
  131. package/bin/themes/default/layouts/partials/link-list.html +11 -0
  132. package/bin/themes/default/layouts/partials/menu-header.html +25 -0
  133. package/bin/themes/default/layouts/partials/menu.html +69 -0
  134. package/bin/themes/default/layouts/partials/metadata.html +27 -0
  135. package/bin/themes/default/layouts/partials/navbar.html +173 -0
  136. package/bin/themes/default/layouts/partials/open-graph.html +43 -0
  137. package/bin/themes/default/layouts/partials/page-abstract.html +7 -0
  138. package/bin/themes/default/layouts/partials/page-bibliography.html +59 -0
  139. package/bin/themes/default/layouts/partials/page-class.html +9 -0
  140. package/bin/themes/default/layouts/partials/page-contributor.html +48 -0
  141. package/bin/themes/default/layouts/partials/page-header.html +22 -0
  142. package/bin/themes/default/layouts/partials/page-title.html +9 -0
  143. package/bin/themes/default/layouts/partials/page-tombstone.html +36 -0
  144. package/bin/themes/default/layouts/partials/pdf-info.html +20 -0
  145. package/bin/themes/default/layouts/partials/pdf-title-pages.html +39 -0
  146. package/bin/themes/default/layouts/partials/scripts.html +5 -0
  147. package/bin/themes/default/layouts/partials/search.html +52 -0
  148. package/bin/themes/default/layouts/partials/site-title.html +9 -0
  149. package/bin/themes/default/layouts/partials/tests/check-node-modules.html +9 -0
  150. package/bin/themes/default/layouts/partials/tests/check-page-one-class.html +21 -0
  151. package/bin/themes/default/layouts/partials/tests/check-page-weights.html +49 -0
  152. package/bin/themes/default/layouts/partials/tests/run.html +13 -0
  153. package/bin/themes/default/layouts/partials/twitter-card.html +23 -0
  154. package/bin/themes/default/layouts/shortcodes/q-bibliography.html +61 -0
  155. package/bin/themes/default/layouts/shortcodes/q-cite.html +79 -0
  156. package/bin/themes/default/layouts/shortcodes/q-class.html +3 -0
  157. package/bin/themes/default/layouts/shortcodes/q-contributor.html +327 -0
  158. package/bin/themes/default/layouts/shortcodes/q-contributors.html +11 -0
  159. package/bin/themes/default/layouts/shortcodes/q-figure-group.html +457 -0
  160. package/bin/themes/default/layouts/shortcodes/q-figure-new.html +70 -0
  161. package/bin/themes/default/layouts/shortcodes/q-figure-zoom.html +408 -0
  162. package/bin/themes/default/layouts/shortcodes/q-figure.html +86 -0
  163. package/bin/themes/default/layouts/sitemap.xml +24 -0
  164. package/bin/themes/default/layouts/splash/single.html +67 -0
  165. package/bin/themes/default/package-lock.json +13198 -0
  166. package/bin/themes/default/package.json +96 -0
  167. package/bin/themes/default/source/css/application.scss +30 -0
  168. package/bin/themes/default/source/css/bulma-components.scss +21 -0
  169. package/bin/themes/default/source/css/colors.scss +16 -0
  170. package/bin/themes/default/source/css/components/_all.scss +15 -0
  171. package/bin/themes/default/source/css/components/container.sass +35 -0
  172. package/bin/themes/default/source/css/components/quire-buttons.scss +95 -0
  173. package/bin/themes/default/source/css/components/quire-citation.scss +77 -0
  174. package/bin/themes/default/source/css/components/quire-contents-list.scss +329 -0
  175. package/bin/themes/default/source/css/components/quire-contributors.scss +131 -0
  176. package/bin/themes/default/source/css/components/quire-copyright.scss +28 -0
  177. package/bin/themes/default/source/css/components/quire-cover.scss +216 -0
  178. package/bin/themes/default/source/css/components/quire-deepzoom.scss +181 -0
  179. package/bin/themes/default/source/css/components/quire-entry.scss +651 -0
  180. package/bin/themes/default/source/css/components/quire-figure.scss +589 -0
  181. package/bin/themes/default/source/css/components/quire-map.scss +17 -0
  182. package/bin/themes/default/source/css/components/quire-menu.scss +209 -0
  183. package/bin/themes/default/source/css/components/quire-navbar.scss +366 -0
  184. package/bin/themes/default/source/css/components/quire-page.scss +920 -0
  185. package/bin/themes/default/source/css/components/quire-popup.scss +233 -0
  186. package/bin/themes/default/source/css/components/quire-search.scss +121 -0
  187. package/bin/themes/default/source/css/epub.scss +549 -0
  188. package/bin/themes/default/source/css/fonts.scss +159 -0
  189. package/bin/themes/default/source/css/layout.scss +186 -0
  190. package/bin/themes/default/source/css/print.scss +613 -0
  191. package/bin/themes/default/source/css/utilities.scss +345 -0
  192. package/bin/themes/default/source/css/variables.scss +144 -0
  193. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-bold.eot +0 -0
  194. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-bold.woff +0 -0
  195. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-bold.woff2 +0 -0
  196. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-bolditalic.eot +0 -0
  197. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-bolditalic.woff +0 -0
  198. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-bolditalic.woff2 +0 -0
  199. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-italic.eot +0 -0
  200. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-italic.woff +0 -0
  201. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-italic.woff2 +0 -0
  202. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-regular.eot +0 -0
  203. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-regular.woff +0 -0
  204. package/bin/themes/default/source/fonts/ibm-plex-sans-condensed/ibmplexsanscondensed-regular.woff2 +0 -0
  205. package/bin/themes/default/source/fonts/noto-sans/notosans-bold.eot +0 -0
  206. package/bin/themes/default/source/fonts/noto-sans/notosans-bold.woff +0 -0
  207. package/bin/themes/default/source/fonts/noto-sans/notosans-bold.woff2 +0 -0
  208. package/bin/themes/default/source/fonts/noto-sans/notosans-bolditalic.eot +0 -0
  209. package/bin/themes/default/source/fonts/noto-sans/notosans-bolditalic.woff +0 -0
  210. package/bin/themes/default/source/fonts/noto-sans/notosans-bolditalic.woff2 +0 -0
  211. package/bin/themes/default/source/fonts/noto-sans/notosans-italic.eot +0 -0
  212. package/bin/themes/default/source/fonts/noto-sans/notosans-italic.woff +0 -0
  213. package/bin/themes/default/source/fonts/noto-sans/notosans-italic.woff2 +0 -0
  214. package/bin/themes/default/source/fonts/noto-sans/notosans-regular.eot +0 -0
  215. package/bin/themes/default/source/fonts/noto-sans/notosans-regular.woff +0 -0
  216. package/bin/themes/default/source/fonts/noto-sans/notosans-regular.woff2 +0 -0
  217. package/bin/themes/default/source/fonts/noto-serif/notoserif-bold.eot +0 -0
  218. package/bin/themes/default/source/fonts/noto-serif/notoserif-bold.woff +0 -0
  219. package/bin/themes/default/source/fonts/noto-serif/notoserif-bold.woff2 +0 -0
  220. package/bin/themes/default/source/fonts/noto-serif/notoserif-bolditalic.eot +0 -0
  221. package/bin/themes/default/source/fonts/noto-serif/notoserif-bolditalic.woff +0 -0
  222. package/bin/themes/default/source/fonts/noto-serif/notoserif-bolditalic.woff2 +0 -0
  223. package/bin/themes/default/source/fonts/noto-serif/notoserif-italic.eot +0 -0
  224. package/bin/themes/default/source/fonts/noto-serif/notoserif-italic.woff +0 -0
  225. package/bin/themes/default/source/fonts/noto-serif/notoserif-italic.woff2 +0 -0
  226. package/bin/themes/default/source/fonts/noto-serif/notoserif-regular.eot +0 -0
  227. package/bin/themes/default/source/fonts/noto-serif/notoserif-regular.woff +0 -0
  228. package/bin/themes/default/source/fonts/noto-serif/notoserif-regular.woff2 +0 -0
  229. package/bin/themes/default/source/img/cover.png +0 -0
  230. package/bin/themes/default/source/img/fullscreen.png +0 -0
  231. package/bin/themes/default/source/img/icons/arrow_forward.png +0 -0
  232. package/bin/themes/default/source/img/icons/baseline-headset-24px.png +0 -0
  233. package/bin/themes/default/source/img/icons/baseline-videocam-24px.png +0 -0
  234. package/bin/themes/default/source/img/icons/baseline-website-24px.png +0 -0
  235. package/bin/themes/default/source/img/icons/cc-by-nc-nd.png +0 -0
  236. package/bin/themes/default/source/img/icons/cc-by-nc-sa.png +0 -0
  237. package/bin/themes/default/source/img/icons/cc-by-nc.png +0 -0
  238. package/bin/themes/default/source/img/icons/cc-by-nd.png +0 -0
  239. package/bin/themes/default/source/img/icons/cc-by-sa.png +0 -0
  240. package/bin/themes/default/source/img/icons/cc-by.png +0 -0
  241. package/bin/themes/default/source/img/icons/cc-zero.png +0 -0
  242. package/bin/themes/default/source/img/icons/close.png +0 -0
  243. package/bin/themes/default/source/img/icons/down-arrow.png +0 -0
  244. package/bin/themes/default/source/img/icons/download.png +0 -0
  245. package/bin/themes/default/source/img/icons/favicon.ico +0 -0
  246. package/bin/themes/default/source/img/icons/home.png +0 -0
  247. package/bin/themes/default/source/img/icons/left-arrow.png +0 -0
  248. package/bin/themes/default/source/img/icons/link.png +0 -0
  249. package/bin/themes/default/source/img/icons/nav.png +0 -0
  250. package/bin/themes/default/source/img/icons/right-arrow.png +0 -0
  251. package/bin/themes/default/source/img/icons/search.png +0 -0
  252. package/bin/themes/default/source/img/icons/start.png +0 -0
  253. package/bin/themes/default/source/img/layers-2x.png +0 -0
  254. package/bin/themes/default/source/img/layers.png +0 -0
  255. package/bin/themes/default/source/img/marker-icon.png +0 -0
  256. package/bin/themes/default/source/img/pattern-spiral-overlay.png +0 -0
  257. package/bin/themes/default/source/img/promo-screenshots/classic-catalogue.png +0 -0
  258. package/bin/themes/default/source/img/promo-screenshots/classic-entry.png +0 -0
  259. package/bin/themes/default/source/img/promo-screenshots/classic-essay.png +0 -0
  260. package/bin/themes/default/source/img/promo-screenshots/modern-contents.png +0 -0
  261. package/bin/themes/default/source/img/promo-screenshots/modern-cover.png +0 -0
  262. package/bin/themes/default/source/img/promo-screenshots/modern-essay.png +0 -0
  263. package/bin/themes/default/source/js/application.js +604 -0
  264. package/bin/themes/default/source/js/deepzoom.js +186 -0
  265. package/bin/themes/default/source/js/epub.js +9 -0
  266. package/bin/themes/default/source/js/fullscreen.js +190 -0
  267. package/bin/themes/default/source/js/helper.js +197 -0
  268. package/bin/themes/default/source/js/map.js +94 -0
  269. package/bin/themes/default/source/js/navigation.js +59 -0
  270. package/bin/themes/default/source/js/popup.js +311 -0
  271. package/bin/themes/default/source/js/search.js +35 -0
  272. package/bin/themes/default/source/js/soundcloud-api.js +1 -0
  273. package/bin/themes/default/static/css/epub.css +401 -0
  274. package/bin/themes/default/static/fonts/MaterialIcons-Regular.eot +0 -0
  275. package/bin/themes/default/static/fonts/MaterialIcons-Regular.woff +0 -0
  276. package/bin/themes/default/static/fonts/MaterialIcons-Regular.woff2 +0 -0
  277. package/bin/themes/default/static/fonts/ibmplexsanscondensed-bold.eot +0 -0
  278. package/bin/themes/default/static/fonts/ibmplexsanscondensed-bold.woff +0 -0
  279. package/bin/themes/default/static/fonts/ibmplexsanscondensed-bold.woff2 +0 -0
  280. package/bin/themes/default/static/fonts/ibmplexsanscondensed-bolditalic.eot +0 -0
  281. package/bin/themes/default/static/fonts/ibmplexsanscondensed-bolditalic.woff +0 -0
  282. package/bin/themes/default/static/fonts/ibmplexsanscondensed-bolditalic.woff2 +0 -0
  283. package/bin/themes/default/static/fonts/ibmplexsanscondensed-italic.eot +0 -0
  284. package/bin/themes/default/static/fonts/ibmplexsanscondensed-italic.woff +0 -0
  285. package/bin/themes/default/static/fonts/ibmplexsanscondensed-italic.woff2 +0 -0
  286. package/bin/themes/default/static/fonts/ibmplexsanscondensed-regular.eot +0 -0
  287. package/bin/themes/default/static/fonts/ibmplexsanscondensed-regular.woff +0 -0
  288. package/bin/themes/default/static/fonts/ibmplexsanscondensed-regular.woff2 +0 -0
  289. package/bin/themes/default/static/fonts/notosans-bold.eot +0 -0
  290. package/bin/themes/default/static/fonts/notosans-bold.woff +0 -0
  291. package/bin/themes/default/static/fonts/notosans-bold.woff2 +0 -0
  292. package/bin/themes/default/static/fonts/notosans-bolditalic.eot +0 -0
  293. package/bin/themes/default/static/fonts/notosans-bolditalic.woff +0 -0
  294. package/bin/themes/default/static/fonts/notosans-bolditalic.woff2 +0 -0
  295. package/bin/themes/default/static/fonts/notosans-italic.eot +0 -0
  296. package/bin/themes/default/static/fonts/notosans-italic.woff +0 -0
  297. package/bin/themes/default/static/fonts/notosans-italic.woff2 +0 -0
  298. package/bin/themes/default/static/fonts/notosans-regular.eot +0 -0
  299. package/bin/themes/default/static/fonts/notosans-regular.woff +0 -0
  300. package/bin/themes/default/static/fonts/notosans-regular.woff2 +0 -0
  301. package/bin/themes/default/static/fonts/notoserif-bold.eot +0 -0
  302. package/bin/themes/default/static/fonts/notoserif-bold.woff +0 -0
  303. package/bin/themes/default/static/fonts/notoserif-bold.woff2 +0 -0
  304. package/bin/themes/default/static/fonts/notoserif-bolditalic.eot +0 -0
  305. package/bin/themes/default/static/fonts/notoserif-bolditalic.woff +0 -0
  306. package/bin/themes/default/static/fonts/notoserif-bolditalic.woff2 +0 -0
  307. package/bin/themes/default/static/fonts/notoserif-italic.eot +0 -0
  308. package/bin/themes/default/static/fonts/notoserif-italic.woff +0 -0
  309. package/bin/themes/default/static/fonts/notoserif-italic.woff2 +0 -0
  310. package/bin/themes/default/static/fonts/notoserif-regular.eot +0 -0
  311. package/bin/themes/default/static/fonts/notoserif-regular.woff +0 -0
  312. package/bin/themes/default/static/fonts/notoserif-regular.woff2 +0 -0
  313. package/bin/themes/default/static/img/baseline-website-24px.png +0 -0
  314. package/bin/themes/default/static/img/cover.png +0 -0
  315. package/bin/themes/default/static/img/fullscreen.png +0 -0
  316. package/bin/themes/default/static/img/fullscreen@2x.png +0 -0
  317. package/bin/themes/default/static/img/icons/arrow_forward.png +0 -0
  318. package/bin/themes/default/static/img/icons/baseline-headset-24px.png +0 -0
  319. package/bin/themes/default/static/img/icons/baseline-videocam-24px.png +0 -0
  320. package/bin/themes/default/static/img/icons/baseline-website-24px.png +0 -0
  321. package/bin/themes/default/static/img/icons/cc-by-nc-nd.png +0 -0
  322. package/bin/themes/default/static/img/icons/cc-by-nc-sa.png +0 -0
  323. package/bin/themes/default/static/img/icons/cc-by-nc.png +0 -0
  324. package/bin/themes/default/static/img/icons/cc-by-nd.png +0 -0
  325. package/bin/themes/default/static/img/icons/cc-by-sa.png +0 -0
  326. package/bin/themes/default/static/img/icons/cc-by.png +0 -0
  327. package/bin/themes/default/static/img/icons/cc-zero.png +0 -0
  328. package/bin/themes/default/static/img/icons/close.png +0 -0
  329. package/bin/themes/default/static/img/icons/down-arrow.png +0 -0
  330. package/bin/themes/default/static/img/icons/download.png +0 -0
  331. package/bin/themes/default/static/img/icons/favicon.ico +0 -0
  332. package/bin/themes/default/static/img/icons/home.png +0 -0
  333. package/bin/themes/default/static/img/icons/left-arrow.png +0 -0
  334. package/bin/themes/default/static/img/icons/link.png +0 -0
  335. package/bin/themes/default/static/img/icons/nav.png +0 -0
  336. package/bin/themes/default/static/img/icons/right-arrow.png +0 -0
  337. package/bin/themes/default/static/img/icons/search.png +0 -0
  338. package/bin/themes/default/static/img/icons/soundcloud.png +0 -0
  339. package/bin/themes/default/static/img/icons/start.png +0 -0
  340. package/bin/themes/default/static/img/icons/vimeo.png +0 -0
  341. package/bin/themes/default/static/img/icons/website.png +0 -0
  342. package/bin/themes/default/static/img/icons/youtube.png +0 -0
  343. package/bin/themes/default/static/img/layers-2x.png +0 -0
  344. package/bin/themes/default/static/img/layers.png +0 -0
  345. package/bin/themes/default/static/img/marker-icon.png +0 -0
  346. package/bin/themes/default/static/img/pattern-spiral-overlay.png +0 -0
  347. package/bin/themes/default/tests/.gitkeep +0 -0
  348. package/bin/themes/default/tests/e2e/.eslintrc.js +9 -0
  349. package/bin/themes/default/tests/e2e/fixtures/blns.json +483 -0
  350. package/bin/themes/default/tests/e2e/plugins/index.js +22 -0
  351. package/bin/themes/default/tests/e2e/specs/quire-contents.spec.js +52 -0
  352. package/bin/themes/default/tests/e2e/specs/quire-contributors.spec.js +66 -0
  353. package/bin/themes/default/tests/e2e/specs/quire-entry.spec.js +104 -0
  354. package/bin/themes/default/tests/e2e/specs/quire-essay.spec.js +105 -0
  355. package/bin/themes/default/tests/e2e/specs/quire-menu.spec.js +38 -0
  356. package/bin/themes/default/tests/e2e/specs/quire-modal.spec.js +69 -0
  357. package/bin/themes/default/tests/e2e/specs/quire-next-back-buttons.spec.js +27 -0
  358. package/bin/themes/default/tests/e2e/specs/quire-page.spec.js +28 -0
  359. package/bin/themes/default/tests/e2e/specs/quire-search.spec.js +48 -0
  360. package/bin/themes/default/tests/e2e/specs/quire-splash.spec.js +38 -0
  361. package/bin/themes/default/tests/e2e/support/commands.js +25 -0
  362. package/bin/themes/default/tests/e2e/support/index.js +20 -0
  363. package/bin/themes/default/theme.toml +22 -0
  364. package/bin/themes/default/tsconfig.json +5 -0
  365. package/bin/themes/default/webpack/webpack.config.dev.js +128 -0
  366. package/bin/themes/default/webpack/webpack.config.epub.js +140 -0
  367. package/bin/themes/default/webpack/webpack.config.pdf.js +135 -0
  368. package/bin/themes/default/webpack/webpack.config.prod.js +133 -0
  369. package/package.json +1 -1
  370. package/index.js +0 -20
@@ -0,0 +1,59 @@
1
+ import Hammer from 'hammerjs';
2
+
3
+ class Navigation {
4
+ constructor() {
5
+ this.boundKeyboardListener = this.keyboardListener.bind(this)
6
+ // this.boundSwipeListener = this.swipeListener.bind(this)
7
+ this.addListeners()
8
+ }
9
+
10
+ prev() {
11
+ let prevLink = document.getElementById('js-prev')
12
+ prevLink && prevLink.click()
13
+ }
14
+
15
+ next() {
16
+ let nextLink = document.getElementById('js-next')
17
+ nextLink && nextLink.click()
18
+ }
19
+
20
+ keyboardListener(event) {
21
+ // 37 = left arrow key
22
+ if (event.which == 37) {
23
+ this.prev()
24
+ event.preventDefault()
25
+ }
26
+ // 39 = right arrow key
27
+ if (event.which == 39) {
28
+ this.next()
29
+ event.preventDefault()
30
+ }
31
+ }
32
+
33
+ swipeListener(event) {
34
+ if (event.deltaX < 0) {
35
+ this.next()
36
+ } else {
37
+ this.prev()
38
+ }
39
+ }
40
+
41
+ addListeners() {
42
+ document.addEventListener('keyup', this.boundKeyboardListener, false)
43
+
44
+ let main = document.getElementById('main')
45
+ this.hammer = new Hammer(main)
46
+ this.hammer.on('swipe', this.boundSwipeListener)
47
+ }
48
+
49
+ removeListeners() {
50
+ document.removeEventListener('keyup', this.boundKeyboardListener, false)
51
+ this.hammer.destroy()
52
+ }
53
+
54
+ teardown() {
55
+ this.removeListeners()
56
+ }
57
+ }
58
+
59
+ export default Navigation
@@ -0,0 +1,311 @@
1
+ // @ts-check
2
+
3
+ import $ from "jquery";
4
+ import DeepZoom from "./deepzoom.js";
5
+ import Map from "./map.js";
6
+ import { toggleFullscreen } from "./helper";
7
+ import "magnific-popup/dist/magnific-popup.css";
8
+ // eslint-disable-next-line no-undef
9
+ require("magnific-popup");
10
+
11
+ export default function(gallerySelector, mapArr) {
12
+ /** set var */
13
+ const fullscreenButton = `
14
+ <div
15
+ class="leaflet-control-fullscreen leaflet-bar leaflet-control remove-from-epub"
16
+ >
17
+ <a
18
+ id="toggleFullscreen"
19
+ class="leaflet-control-fullscreen-button leaflet-bar-part"
20
+ href="#"
21
+ title="View Fullscreen"
22
+ style="outline: none;">
23
+ </a>
24
+ </div>
25
+ `;
26
+
27
+ /**
28
+ * Popup Leaflet instances
29
+ */
30
+ let deepzoom;
31
+ let map;
32
+
33
+ /**
34
+ * @description Find all instances of soundcloud players
35
+ * and stop them
36
+ */
37
+ const findSoundCloudWidgetsAndStopThem = () => {
38
+ const items = [...document.querySelectorAll(`.quire-figure`)];
39
+ items
40
+ .filter(item => {
41
+ return [...item.children][0].src !== undefined &&
42
+ [...item.children][0].src.indexOf(`soundcloud`)
43
+ ? [...item.children][0]
44
+ : ``;
45
+ })
46
+ .map(item => {
47
+ let iframeElementID = [...item.children][0].id;
48
+ let widget = SC.Widget(iframeElementID);
49
+ return widget;
50
+ })
51
+ .forEach(item => {
52
+ return item.pause();
53
+ });
54
+ };
55
+
56
+ /**
57
+ * @param {*} self
58
+ * @description update caption in modal viewer if
59
+ * needed and clear before update
60
+ */
61
+ const captionUpdate = self => {
62
+ const setCaption = self => {
63
+ if (self) {
64
+ $(".mfp-title").hide();
65
+ const figureWrapper = $(self.currItem.el).closest('.q-figure__wrapper');
66
+ const captionParts = ['label-text', 'caption-content', 'credit'];
67
+ const captionWrapper =$(`<span class="caption"></span>`);
68
+ captionParts.forEach((item) => {
69
+ const content = $(figureWrapper).find(`.quire-figure__${item}`).prop('outerHTML');
70
+ content ? captionWrapper.append(content) : null;
71
+ })
72
+ if (captionWrapper.html()) {
73
+ self.captionCont = `
74
+ <div class="quire-caption-container">${captionWrapper.prop('outerHTML')}</div>`;
75
+ $(".mfp-wrap").prepend(self.captionCont);
76
+ }
77
+ } else {
78
+ if ($(".quire-caption-container")) {
79
+ $(".quire-caption-container").remove();
80
+ }
81
+ }
82
+ };
83
+ setCaption();
84
+ switch (self.currItem.type) {
85
+ case "inline":
86
+ setCaption(self);
87
+ break;
88
+ case "iframe":
89
+ setCaption(self);
90
+ break;
91
+ case "image":
92
+ setCaption(self);
93
+ break;
94
+ default:
95
+ setCaption();
96
+ break;
97
+ }
98
+ };
99
+
100
+ /**
101
+ * If map or deepzoom leaflet instances are defined, removes them.
102
+ * There should only be one defined at a time
103
+ * @todo The Map and Deepzoom classes should be refactored, at least to have the same signature
104
+ */
105
+ const tearDownMap = () => {
106
+ if (deepzoom) {
107
+ deepzoom.map.remove();
108
+ return;
109
+ }
110
+ if (map) {
111
+ map.remove();
112
+ return;
113
+ }
114
+ };
115
+
116
+ // add link to first slide when view as slides is present
117
+ const updateViewSlidesLink = () => {
118
+ let items = [...document.querySelectorAll(`.quire-figure--group`)];
119
+ items
120
+ .filter(item => {
121
+ return item;
122
+ })
123
+ .map(item => {
124
+ return [$(item).find(".viewSlides"), $(item).find(`a:first`)];
125
+ })
126
+ .forEach(item => {
127
+ $(item[0]).on("click", e => {
128
+ e.preventDefault();
129
+ $(item[1]).click();
130
+ });
131
+ });
132
+ };
133
+ updateViewSlidesLink();
134
+
135
+ /**
136
+ *
137
+ * @description e magnificPopup object
138
+ *
139
+ */
140
+ $(gallerySelector).magnificPopup({
141
+ delegate: "a.popup",
142
+ type: "image",
143
+ closeBtnInside: false,
144
+ closeOnBgClick: false,
145
+ fixedContentPos: false,
146
+ fixedBgPos: "auto",
147
+ overflowY: "hidden",
148
+ image: {
149
+ titleSrc: function(item) {
150
+ return item.el.find(".figure-caption-container").html();
151
+ }
152
+ },
153
+ gallery: {
154
+ enabled: true,
155
+ preload: [0, 2], // read about this option in next Lazy-loading section
156
+ navigateByImgClick: true,
157
+ arrowMarkup:
158
+ '<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"><span class="mfp-prevent-close arrow-img-%dir%"></span></button>', // markup of an arrow button
159
+ tPrev: "Previous (Left arrow key)", // title for left button
160
+ tNext: "Next (Right arrow key)", // title for right button
161
+ tCounter: "",
162
+ closeMarkup:
163
+ '<button title="Close (Esc)" type="button" class="mfp-close"></button>'
164
+ },
165
+ callbacks: {
166
+ beforeOpen: function() {
167
+ findSoundCloudWidgetsAndStopThem();
168
+ $("body").addClass("android-fixed");
169
+ this.current = this.index + 1;
170
+ this.total = this.items.length - 1;
171
+ this.counter = `<span class="counter">${this.current} of ${this.items.length}</span>`;
172
+ this.cont = `<div class="quire-counter-container">${this.counter}</div>`;
173
+ },
174
+ elementParse: function(item) {
175
+ if (item.el[0].getAttribute("data-type") === "video") {
176
+ // eslint-disable-next-line no-unused-expressions
177
+ (item.type = "iframe"),
178
+ (item.iframe = {
179
+ patterns: {
180
+ youtube: {
181
+ index: "youtube.com/", // String that detects type of video (in this case YouTube). Simply via url.indexOf(index).
182
+ id: "v=", // String that splits URL in a two parts, second part should be %id%
183
+ // Or null - full URL will be returned
184
+ // Or a function that should return %id%, for example:
185
+ // id: function(url) { return 'parsed id'; }
186
+ src: "//www.youtube.com/embed/%id%?autoplay=1" // URL that will be set as a source for iframe.
187
+ },
188
+ vimeo: {
189
+ index: "vimeo.com/",
190
+ id: "/",
191
+ src: "//player.vimeo.com/video/%id%?autoplay=1"
192
+ },
193
+ gmaps: {
194
+ index: "//maps.google.",
195
+ src: "%id%&output=embed"
196
+ }
197
+ }
198
+ });
199
+ } else if (item.el[0].getAttribute("data-type") === "inline") {
200
+ item.type = "inline";
201
+ } else {
202
+ // eslint-disable-next-line no-unused-expressions
203
+ (item.type = "image"),
204
+ (item.tLoading = "Loading image #%curr%..."),
205
+ (item.mainClass = "mfp-img-mobile"),
206
+ (item.image = {
207
+ tError:
208
+ '<a href="%url%">The image #%curr%</a> could not be loaded.'
209
+ });
210
+ }
211
+ },
212
+ change: function() {
213
+ tearDownMap();
214
+ this.current = this.index + 1;
215
+ if (document.querySelector(".counter")) {
216
+ document.querySelector(
217
+ ".counter"
218
+ ).innerHTML = `${this.current} of ${this.items.length}`;
219
+ }
220
+ captionUpdate(this);
221
+ let id = this.content.children()[0].id;
222
+ let waitForDOMUpdate = 0;
223
+ if (id !== "" || id !== undefined) {
224
+ if (id.indexOf("map") !== -1) {
225
+ setTimeout(() => {
226
+ map = new Map(id);
227
+ }, waitForDOMUpdate);
228
+ }
229
+ if (id.indexOf("deepzoom") !== -1) {
230
+ setTimeout(() => {
231
+ let url = $(`#${id}`).attr("src");
232
+ if (url) {
233
+ let image = new Image();
234
+ image.src = url;
235
+ image.onload = function() {
236
+ deepzoom = new DeepZoom(id, mapArr);
237
+ };
238
+ } else {
239
+ deepzoom = null;
240
+ }
241
+ }, waitForDOMUpdate);
242
+ }
243
+ if (id.indexOf("iiif") !== -1) {
244
+ setTimeout(() => {
245
+ deepzoom = new DeepZoom(id, mapArr);
246
+ }, waitForDOMUpdate);
247
+ }
248
+ }
249
+ $(".mfp-content").prepend(fullscreenButton);
250
+ },
251
+ resize: function() {
252
+ // console.log('Popup resized ' + $(window).innerHeight());
253
+ // resize event triggers only when height is changed or layout forced
254
+ },
255
+ open: function() {
256
+ // console.log('Popup open');
257
+ captionUpdate(this);
258
+ $(".mfp-wrap").prepend(this.cont);
259
+ $(".mfp-content").prepend(fullscreenButton);
260
+ toggleFullscreen(
261
+ mapArr,
262
+ document.getElementById("toggleFullscreen"),
263
+ document.querySelector(".mfp-wrap")
264
+ );
265
+ },
266
+ beforeClose: function() {
267
+ // Callback available since v0.9.0
268
+ // console.log('Popup close has been initiated');
269
+ $("body").removeClass("android-fixed");
270
+ $(".quire-counter-container, .quire-caption-container").remove();
271
+ },
272
+ close: function() {
273
+ // console.log('Popup removal initiated (after removalDelay timer finished)');
274
+ },
275
+ afterClose: function() {
276
+ // console.log('Popup is completely closed');
277
+ },
278
+
279
+ markupParse: function(template, values, item) {
280
+ // Triggers each time when content of popup changes
281
+ // console.log('Parsing:', template, values, item);
282
+ },
283
+ updateStatus: function(data) {
284
+ // console.log('Status changed', data);
285
+ // "data" is an object that has two properties:
286
+ // "data.status" - current status type, can be "loading", "error", "ready"
287
+ // "data.text" - text that will be displayed (e.g. "Loading...")
288
+ // you may modify this properties to change current status or its text dynamically
289
+ },
290
+ imageLoadComplete: function() {
291
+ // fires when image in current popup finished loading
292
+ // avaiable since v0.9.0
293
+ // console.log('Image loaded');
294
+ },
295
+ // Only for ajax popup type
296
+ parseAjax: function(mfpResponse) {
297
+ // mfpResponse.data is a "data" object from ajax "success" callback
298
+ // for simple HTML file, it will be just String
299
+ // You may modify it to change contents of the popup
300
+ // For example, to show just #some-element:
301
+ // mfpResponse.data = $(mfpResponse.data).find('#some-element');
302
+ // mfpResponse.data must be a String or a DOM (jQuery) element
303
+ // console.log('Ajax content loaded:', mfpResponse);
304
+ },
305
+ ajaxContentAdded: function() {
306
+ // Ajax content is loaded and prepended to DOM
307
+ // console.log(this.content);
308
+ }
309
+ }
310
+ });
311
+ }
@@ -0,0 +1,35 @@
1
+ import lunr from 'lunr';
2
+
3
+ class Search {
4
+ constructor(data) {
5
+ this.index = this.buildIndex(data);
6
+ this.contentList = data;
7
+ }
8
+
9
+ buildIndex(data) {
10
+ return lunr(function () {
11
+ this.field('title', {
12
+ boost: 100
13
+ });
14
+ this.field('url', {
15
+ boost: 10
16
+ });
17
+ this.field('content');
18
+ this.ref('id');
19
+ data.forEach(item => {
20
+ this.add(item);
21
+ });
22
+ });
23
+ }
24
+
25
+ // Return results in order of relevance
26
+ search(query) {
27
+ let results = this.index.search(query);
28
+ return results.map((result) => {
29
+ return this.contentList[result.ref];
30
+ });
31
+ }
32
+ }
33
+
34
+ export default Search
35
+ ;
@@ -0,0 +1 @@
1
+ var SC=SC||{};SC.Widget=function(n){function t(r){if(e[r])return e[r].exports;var o=e[r]={exports:{},id:r,loaded:!1};return n[r].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var e={};return t.m=n,t.c=e,t.p="",t(0)}([function(n,t,e){function r(n){return!!(""===n||n&&n.charCodeAt&&n.substr)}function o(n){return!!(n&&n.constructor&&n.call&&n.apply)}function i(n){return!(!n||1!==n.nodeType||"IFRAME"!==n.nodeName.toUpperCase())}function a(n){var t,e=!1;for(t in b)if(b.hasOwnProperty(t)&&b[t]===n){e=!0;break}return e}function s(n){var t,e,r;for(t=0,e=I.length;t<e&&(r=n(I[t]),r!==!1);t++);}function u(n){var t,e,r,o="";for("//"===n.substr(0,2)&&(n=window.location.protocol+n),r=n.split("/"),t=0,e=r.length;t<e&&t<3;t++)o+=r[t],t<2&&(o+="/");return o}function c(n){return n.contentWindow?n.contentWindow:n.contentDocument&&"parentWindow"in n.contentDocument?n.contentDocument.parentWindow:null}function l(n){var t,e=[];for(t in n)n.hasOwnProperty(t)&&e.push(n[t]);return e}function d(n,t,e){e.callbacks[n]=e.callbacks[n]||[],e.callbacks[n].push(t)}function E(n,t){var e,r=!0;return t.callbacks[n]=[],s(function(t){if(e=t.callbacks[n]||[],e.length)return r=!1,!1}),r}function f(n,t,e){var r,o,i=c(e);return!!i.postMessage&&(r=e.getAttribute("src").split("?")[0],o=JSON.stringify({method:n,value:t}),"//"===r.substr(0,2)&&(r=window.location.protocol+r),r=r.replace(/http:\/\/(w|wt).soundcloud.com/,"https://$1.soundcloud.com"),void i.postMessage(o,r))}function p(n){var t;return s(function(e){if(e.instance===n)return t=e,!1}),t}function h(n){var t;return s(function(e){if(c(e.element)===n)return t=e,!1}),t}function v(n,t){return function(e){var r=o(e),i=p(this),a=!r&&t?e:null,s=r&&!t?e:null;return s&&d(n,s,i),f(n,a,i.element),this}}function S(n,t,e){var r,o,i;for(r=0,o=t.length;r<o;r++)i=t[r],n[i]=v(i,e)}function R(n,t,e){return n+"?url="+t+"&"+g(e)}function g(n){var t,e,r=[];for(t in n)n.hasOwnProperty(t)&&(e=n[t],r.push(t+"="+("start_track"===t?parseInt(e,10):e?"true":"false")));return r.join("&")}function m(n,t,e){var r,o,i=n.callbacks[t]||[];for(r=0,o=i.length;r<o;r++)i[r].apply(n.instance,e);(a(t)||t===L.READY)&&(n.callbacks[t]=[])}function w(n){var t,e,r,o,i;try{e=JSON.parse(n.data)}catch(a){return!1}return t=h(n.source),r=e.method,o=e.value,(!t||A(n.origin)===A(t.domain))&&(t?(r===L.READY&&(t.isReady=!0,m(t,C),E(C,t)),r!==L.PLAY||t.playEventFired||(t.playEventFired=!0),r!==L.PLAY_PROGRESS||t.playEventFired||(t.playEventFired=!0,m(t,L.PLAY,[o])),i=[],void 0!==o&&i.push(o),void m(t,r,i)):(r===L.READY&&T.push(n.source),!1))}function A(n){return n.replace(Y,"")}var _,y,O,D=e(1),b=e(2),P=e(3),L=D.api,N=D.bridge,T=[],I=[],C="__LATE_BINDING__",k="http://wt.soundcloud.test:9200/",Y=/^http(?:s?)/;window.addEventListener?window.addEventListener("message",w,!1):window.attachEvent("onmessage",w),n.exports=O=function(n,t,e){if(r(n)&&(n=document.getElementById(n)),!i(n))throw new Error("SC.Widget function should be given either iframe element or a string specifying id attribute of iframe element.");t&&(e=e||{},n.src=R(k,t,e));var o,a,s=h(c(n));return s&&s.instance?s.instance:(o=T.indexOf(c(n))>-1,a=new _(n),I.push(new y(a,n,o)),a)},O.Events=L,window.SC=window.SC||{},window.SC.Widget=O,y=function(n,t,e){this.instance=n,this.element=t,this.domain=u(t.getAttribute("src")),this.isReady=!!e,this.callbacks={}},_=function(){},_.prototype={constructor:_,load:function(n,t){if(n){t=t||{};var e=this,r=p(this),o=r.element,i=o.src,a=i.substr(0,i.indexOf("?"));r.isReady=!1,r.playEventFired=!1,o.onload=function(){e.bind(L.READY,function(){var n,e=r.callbacks;for(n in e)e.hasOwnProperty(n)&&n!==L.READY&&f(N.ADD_LISTENER,n,r.element);t.callback&&t.callback()})},o.src=R(a,n,t)}},bind:function(n,t){var e=this,r=p(this);return r&&r.element&&(n===L.READY&&r.isReady?setTimeout(t,1):r.isReady?(d(n,t,r),f(N.ADD_LISTENER,n,r.element)):d(C,function(){e.bind(n,t)},r)),this},unbind:function(n){var t,e=p(this);e&&e.element&&(t=E(n,e),n!==L.READY&&t&&f(N.REMOVE_LISTENER,n,e.element))}},S(_.prototype,l(b)),S(_.prototype,l(P),!0)},function(n,t){t.api={LOAD_PROGRESS:"loadProgress",PLAY_PROGRESS:"playProgress",PLAY:"play",PAUSE:"pause",FINISH:"finish",SEEK:"seek",READY:"ready",OPEN_SHARE_PANEL:"sharePanelOpened",CLICK_DOWNLOAD:"downloadClicked",CLICK_BUY:"buyClicked",ERROR:"error"},t.bridge={REMOVE_LISTENER:"removeEventListener",ADD_LISTENER:"addEventListener"}},function(n,t){n.exports={GET_VOLUME:"getVolume",GET_DURATION:"getDuration",GET_POSITION:"getPosition",GET_SOUNDS:"getSounds",GET_CURRENT_SOUND:"getCurrentSound",GET_CURRENT_SOUND_INDEX:"getCurrentSoundIndex",IS_PAUSED:"isPaused"}},function(n,t){n.exports={PLAY:"play",PAUSE:"pause",TOGGLE:"toggle",SEEK_TO:"seekTo",SET_VOLUME:"setVolume",NEXT:"next",PREV:"prev",SKIP:"skip"}}]);