vistaview 1.0.3 → 2.0.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 (342) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +18 -61
  3. package/{dist/lib/extensions/dailymotion-video.d.ts → extensions/dailymotion-video/dist/main.d.ts} +3 -3
  4. package/extensions/dailymotion-video/dist/main.d.ts.map +1 -0
  5. package/extensions/dailymotion-video/dist/main.js +72 -0
  6. package/extensions/dailymotion-video/dist/main.js.map +1 -0
  7. package/extensions/dailymotion-video/dist/main.test.d.ts +2 -0
  8. package/extensions/dailymotion-video/dist/main.test.d.ts.map +1 -0
  9. package/extensions/dailymotion-video/dist/main.umd.cjs +2 -0
  10. package/extensions/dailymotion-video/dist/main.umd.cjs.map +1 -0
  11. package/extensions/download/dist/main.d.ts +4 -0
  12. package/extensions/download/dist/main.d.ts.map +1 -0
  13. package/extensions/download/dist/main.js +42 -0
  14. package/extensions/download/dist/main.js.map +1 -0
  15. package/extensions/download/dist/main.test.d.ts +2 -0
  16. package/extensions/download/dist/main.test.d.ts.map +1 -0
  17. package/extensions/download/dist/main.umd.cjs +2 -0
  18. package/extensions/download/dist/main.umd.cjs.map +1 -0
  19. package/{dist/lib/extensions/google-maps.d.ts → extensions/google-maps/dist/main.d.ts} +3 -3
  20. package/extensions/google-maps/dist/main.d.ts.map +1 -0
  21. package/extensions/google-maps/dist/main.js +96 -0
  22. package/extensions/google-maps/dist/main.js.map +1 -0
  23. package/extensions/google-maps/dist/main.test.d.ts +2 -0
  24. package/extensions/google-maps/dist/main.test.d.ts.map +1 -0
  25. package/extensions/google-maps/dist/main.umd.cjs +2 -0
  26. package/extensions/google-maps/dist/main.umd.cjs.map +1 -0
  27. package/extensions/image-story/dist/main.d.ts +16 -0
  28. package/extensions/image-story/dist/main.d.ts.map +1 -0
  29. package/extensions/image-story/dist/main.js +600 -0
  30. package/extensions/image-story/dist/main.js.map +1 -0
  31. package/extensions/image-story/dist/main.test.d.ts +2 -0
  32. package/extensions/image-story/dist/main.test.d.ts.map +1 -0
  33. package/extensions/image-story/dist/main.umd.cjs +3 -0
  34. package/extensions/image-story/dist/main.umd.cjs.map +1 -0
  35. package/extensions/image-story/dist/style.css +1 -0
  36. package/extensions/logger/dist/main.d.ts +3 -0
  37. package/extensions/logger/dist/main.d.ts.map +1 -0
  38. package/extensions/logger/dist/main.js +23 -0
  39. package/extensions/logger/dist/main.js.map +1 -0
  40. package/extensions/logger/dist/main.test.d.ts +2 -0
  41. package/extensions/logger/dist/main.test.d.ts.map +1 -0
  42. package/extensions/logger/dist/main.umd.cjs +2 -0
  43. package/extensions/logger/dist/main.umd.cjs.map +1 -0
  44. package/{dist/lib/extensions/mapbox.d.ts → extensions/mapbox/dist/main.d.ts} +3 -3
  45. package/extensions/mapbox/dist/main.d.ts.map +1 -0
  46. package/extensions/mapbox/dist/main.js +114 -0
  47. package/extensions/mapbox/dist/main.js.map +1 -0
  48. package/extensions/mapbox/dist/main.test.d.ts +2 -0
  49. package/extensions/mapbox/dist/main.test.d.ts.map +1 -0
  50. package/extensions/mapbox/dist/main.umd.cjs +2 -0
  51. package/extensions/mapbox/dist/main.umd.cjs.map +1 -0
  52. package/{dist/lib/extensions/openstreetmap.d.ts → extensions/openstreetmap/dist/main.d.ts} +3 -3
  53. package/extensions/openstreetmap/dist/main.d.ts.map +1 -0
  54. package/extensions/openstreetmap/dist/main.js +114 -0
  55. package/extensions/openstreetmap/dist/main.js.map +1 -0
  56. package/extensions/openstreetmap/dist/main.test.d.ts +2 -0
  57. package/extensions/openstreetmap/dist/main.test.d.ts.map +1 -0
  58. package/extensions/openstreetmap/dist/main.umd.cjs +2 -0
  59. package/extensions/openstreetmap/dist/main.umd.cjs.map +1 -0
  60. package/{dist/lib/extensions/select-box.d.ts → extensions/select-box/dist/main.d.ts} +2 -2
  61. package/extensions/select-box/dist/main.d.ts.map +1 -0
  62. package/extensions/select-box/dist/main.js +25 -0
  63. package/extensions/select-box/dist/main.js.map +1 -0
  64. package/extensions/select-box/dist/main.umd.cjs +2 -0
  65. package/extensions/select-box/dist/main.umd.cjs.map +1 -0
  66. package/{dist/lib/extensions/streamable-video.d.ts → extensions/streamable-video/dist/main.d.ts} +3 -3
  67. package/extensions/streamable-video/dist/main.d.ts.map +1 -0
  68. package/extensions/streamable-video/dist/main.js +68 -0
  69. package/extensions/streamable-video/dist/main.js.map +1 -0
  70. package/extensions/streamable-video/dist/main.test.d.ts +2 -0
  71. package/extensions/streamable-video/dist/main.test.d.ts.map +1 -0
  72. package/extensions/streamable-video/dist/main.umd.cjs +2 -0
  73. package/extensions/streamable-video/dist/main.umd.cjs.map +1 -0
  74. package/{dist/lib/extensions/twitch-video.d.ts → extensions/twitch-video/dist/main.d.ts} +3 -3
  75. package/extensions/twitch-video/dist/main.d.ts.map +1 -0
  76. package/extensions/twitch-video/dist/main.js +81 -0
  77. package/extensions/twitch-video/dist/main.js.map +1 -0
  78. package/extensions/twitch-video/dist/main.umd.cjs +2 -0
  79. package/extensions/twitch-video/dist/main.umd.cjs.map +1 -0
  80. package/{dist/lib/extensions/vidyard-video.d.ts → extensions/vidyard-video/dist/main.d.ts} +3 -3
  81. package/extensions/vidyard-video/dist/main.d.ts.map +1 -0
  82. package/extensions/vidyard-video/dist/main.js +72 -0
  83. package/extensions/vidyard-video/dist/main.js.map +1 -0
  84. package/extensions/vidyard-video/dist/main.test.d.ts +2 -0
  85. package/extensions/vidyard-video/dist/main.test.d.ts.map +1 -0
  86. package/extensions/vidyard-video/dist/main.umd.cjs +2 -0
  87. package/extensions/vidyard-video/dist/main.umd.cjs.map +1 -0
  88. package/{dist/lib/extensions/vimeo-video.d.ts → extensions/vimeo-video/dist/main.d.ts} +3 -3
  89. package/extensions/vimeo-video/dist/main.d.ts.map +1 -0
  90. package/extensions/vimeo-video/dist/main.js +68 -0
  91. package/extensions/vimeo-video/dist/main.js.map +1 -0
  92. package/extensions/vimeo-video/dist/main.test.d.ts +2 -0
  93. package/extensions/vimeo-video/dist/main.test.d.ts.map +1 -0
  94. package/extensions/vimeo-video/dist/main.umd.cjs +2 -0
  95. package/extensions/vimeo-video/dist/main.umd.cjs.map +1 -0
  96. package/{dist/lib/extensions/wistia-video.d.ts → extensions/wistia-video/dist/main.d.ts} +3 -3
  97. package/extensions/wistia-video/dist/main.d.ts.map +1 -0
  98. package/extensions/wistia-video/dist/main.js +72 -0
  99. package/extensions/wistia-video/dist/main.js.map +1 -0
  100. package/extensions/wistia-video/dist/main.test.d.ts +2 -0
  101. package/extensions/wistia-video/dist/main.test.d.ts.map +1 -0
  102. package/extensions/wistia-video/dist/main.umd.cjs +2 -0
  103. package/extensions/wistia-video/dist/main.umd.cjs.map +1 -0
  104. package/{dist/lib/extensions/youtube-video.d.ts → extensions/youtube-video/dist/main.d.ts} +3 -3
  105. package/extensions/youtube-video/dist/main.d.ts.map +1 -0
  106. package/extensions/youtube-video/dist/main.js +80 -0
  107. package/extensions/youtube-video/dist/main.js.map +1 -0
  108. package/extensions/youtube-video/dist/main.test.d.ts +2 -0
  109. package/extensions/youtube-video/dist/main.test.d.ts.map +1 -0
  110. package/extensions/youtube-video/dist/main.umd.cjs +2 -0
  111. package/extensions/youtube-video/dist/main.umd.cjs.map +1 -0
  112. package/frameworks/react/dist/main.d.ts +3 -0
  113. package/frameworks/react/dist/main.es.js +51 -0
  114. package/frameworks/react/dist/main.es.js.map +1 -0
  115. package/frameworks/react/dist/test-setup.d.ts +1 -0
  116. package/frameworks/react/dist/use-vistaview.d.ts +2 -0
  117. package/frameworks/react/dist/vistaview.d.ts +13 -0
  118. package/frameworks/solid/dist/dev.js +77 -0
  119. package/frameworks/solid/dist/dev.jsx +72 -0
  120. package/frameworks/solid/dist/index.d.ts +18 -0
  121. package/frameworks/solid/dist/index.js +76 -0
  122. package/frameworks/solid/dist/index.jsx +71 -0
  123. package/frameworks/svelte/dist/VistaView.svelte +65 -0
  124. package/frameworks/svelte/dist/VistaView.svelte.d.ts +46 -0
  125. package/frameworks/svelte/dist/index.d.ts +3 -0
  126. package/frameworks/svelte/dist/index.js +2 -0
  127. package/frameworks/svelte/dist/types.d.ts +14 -0
  128. package/frameworks/svelte/dist/types.js +1 -0
  129. package/frameworks/svelte/dist/use-vistaview.d.ts +2 -0
  130. package/frameworks/svelte/dist/use-vistaview.js +24 -0
  131. package/frameworks/svelte/dist/use-vistaview.test.d.ts +1 -0
  132. package/frameworks/svelte/dist/use-vistaview.test.js +115 -0
  133. package/frameworks/vue/dist/main.es.js +95 -0
  134. package/frameworks/vue/dist/main.es.js.map +1 -0
  135. package/{dist → main/dist}/lib/components.d.ts +1 -2
  136. package/main/dist/lib/components.js +107 -0
  137. package/main/dist/lib/defaults/close.d.ts +2 -0
  138. package/main/dist/lib/defaults/close.js +4 -0
  139. package/main/dist/lib/defaults/image-setup.d.ts +3 -0
  140. package/main/dist/lib/defaults/image-setup.js +4 -0
  141. package/main/dist/lib/defaults/init.d.ts +2 -0
  142. package/main/dist/lib/defaults/init.js +97 -0
  143. package/main/dist/lib/defaults/open.d.ts +2 -0
  144. package/main/dist/lib/defaults/open.js +8 -0
  145. package/main/dist/lib/defaults/options.d.ts +2 -0
  146. package/main/dist/lib/defaults/options.js +15 -0
  147. package/{dist → main/dist}/lib/defaults/transition.d.ts +2 -3
  148. package/main/dist/lib/defaults/transition.js +40 -0
  149. package/{dist → main/dist}/lib/main.d.ts +1 -2
  150. package/main/dist/lib/main.js +66 -0
  151. package/{dist → main/dist}/lib/throttle.d.ts +0 -1
  152. package/main/dist/lib/throttle.js +21 -0
  153. package/{dist → main/dist}/lib/types.d.ts +4 -5
  154. package/main/dist/lib/types.js +1 -0
  155. package/{dist → main/dist}/lib/utils/get-fitted-size.d.ts +0 -1
  156. package/main/dist/lib/utils/get-fitted-size.js +53 -0
  157. package/{dist → main/dist}/lib/utils/get-full-size-dim.d.ts +0 -1
  158. package/main/dist/lib/utils/get-full-size-dim.js +35 -0
  159. package/{dist → main/dist}/lib/utils/get-style.d.ts +0 -1
  160. package/main/dist/lib/utils/get-style.js +19 -0
  161. package/{dist → main/dist}/lib/utils/index.d.ts +0 -1
  162. package/main/dist/lib/utils/index.js +7 -0
  163. package/{dist → main/dist}/lib/utils/is-not-zero-css.d.ts +0 -1
  164. package/main/dist/lib/utils/is-not-zero-css.js +3 -0
  165. package/{dist → main/dist}/lib/utils/parse-element.d.ts +1 -2
  166. package/main/dist/lib/utils/parse-element.js +67 -0
  167. package/{dist → main/dist}/lib/vista-box.d.ts +3 -4
  168. package/main/dist/lib/vista-box.js +466 -0
  169. package/{dist → main/dist}/lib/vista-hires-transition.d.ts +2 -3
  170. package/main/dist/lib/vista-hires-transition.js +108 -0
  171. package/{dist → main/dist}/lib/vista-image-event.d.ts +2 -3
  172. package/main/dist/lib/vista-image-event.js +166 -0
  173. package/{dist → main/dist}/lib/vista-image.d.ts +2 -3
  174. package/main/dist/lib/vista-image.js +274 -0
  175. package/{dist → main/dist}/lib/vista-pointers.d.ts +1 -2
  176. package/main/dist/lib/vista-pointers.js +163 -0
  177. package/{dist → main/dist}/lib/vista-state.d.ts +2 -3
  178. package/main/dist/lib/vista-state.js +15 -0
  179. package/{dist → main/dist}/lib/vista-view.d.ts +2 -3
  180. package/main/dist/lib/vista-view.js +576 -0
  181. package/main/dist/style.css +1 -0
  182. package/main/dist/styles/autumn-amber.css +1 -0
  183. package/main/dist/styles/cotton-candy.css +1 -0
  184. package/main/dist/styles/dark-rounded.css +1 -0
  185. package/main/dist/styles/ember-glow.css +1 -0
  186. package/main/dist/styles/forest-moss.css +1 -0
  187. package/main/dist/styles/green-lake.css +1 -0
  188. package/main/dist/styles/ice-crystal.css +1 -0
  189. package/main/dist/styles/lavender-fields.css +1 -0
  190. package/main/dist/styles/midnight-gold.css +1 -0
  191. package/main/dist/styles/midnight-ocean.css +1 -0
  192. package/main/dist/styles/mint-chocolate.css +1 -0
  193. package/main/dist/styles/neon-nights.css +1 -0
  194. package/main/dist/styles/paper-light.css +1 -0
  195. package/main/dist/styles/retro-arcade.css +1 -0
  196. package/main/dist/styles/soft-neutral.css +1 -0
  197. package/main/dist/styles/stark-minimal.css +1 -0
  198. package/main/dist/styles/strawberry.css +1 -0
  199. package/{dist → main/dist}/vistaview.d.ts +0 -1
  200. package/main/dist/vistaview.js +14 -0
  201. package/main/dist/vistaview.umd.js +18 -0
  202. package/package.json +122 -67
  203. package/dist/extensions/dailymotion-video.d.ts +0 -2
  204. package/dist/extensions/dailymotion-video.js +0 -80
  205. package/dist/extensions/dailymotion-video.umd.js +0 -1
  206. package/dist/extensions/download.d.ts +0 -2
  207. package/dist/extensions/download.js +0 -35
  208. package/dist/extensions/download.umd.js +0 -1
  209. package/dist/extensions/google-maps.d.ts +0 -2
  210. package/dist/extensions/google-maps.js +0 -96
  211. package/dist/extensions/google-maps.umd.js +0 -1
  212. package/dist/extensions/image-story.d.ts +0 -2
  213. package/dist/extensions/image-story.js +0 -621
  214. package/dist/extensions/image-story.umd.js +0 -2
  215. package/dist/extensions/logger.d.ts +0 -2
  216. package/dist/extensions/logger.js +0 -23
  217. package/dist/extensions/logger.umd.js +0 -1
  218. package/dist/extensions/mapbox.d.ts +0 -2
  219. package/dist/extensions/mapbox.js +0 -124
  220. package/dist/extensions/mapbox.umd.js +0 -1
  221. package/dist/extensions/openstreetmap.d.ts +0 -2
  222. package/dist/extensions/openstreetmap.js +0 -125
  223. package/dist/extensions/openstreetmap.umd.js +0 -1
  224. package/dist/extensions/select-box.d.ts +0 -2
  225. package/dist/extensions/select-box.js +0 -29
  226. package/dist/extensions/select-box.umd.js +0 -1
  227. package/dist/extensions/streamable-video.d.ts +0 -2
  228. package/dist/extensions/streamable-video.js +0 -76
  229. package/dist/extensions/streamable-video.umd.js +0 -1
  230. package/dist/extensions/twitch-video.d.ts +0 -2
  231. package/dist/extensions/twitch-video.js +0 -79
  232. package/dist/extensions/vidyard-video.d.ts +0 -2
  233. package/dist/extensions/vidyard-video.js +0 -80
  234. package/dist/extensions/vidyard-video.umd.js +0 -1
  235. package/dist/extensions/vimeo-video.d.ts +0 -2
  236. package/dist/extensions/vimeo-video.js +0 -76
  237. package/dist/extensions/vimeo-video.umd.js +0 -1
  238. package/dist/extensions/wistia-video.d.ts +0 -2
  239. package/dist/extensions/wistia-video.js +0 -85
  240. package/dist/extensions/wistia-video.umd.js +0 -1
  241. package/dist/extensions/youtube-video.d.ts +0 -2
  242. package/dist/extensions/youtube-video.js +0 -88
  243. package/dist/extensions/youtube-video.umd.js +0 -1
  244. package/dist/lib/components.d.ts.map +0 -1
  245. package/dist/lib/defaults/close.d.ts +0 -3
  246. package/dist/lib/defaults/close.d.ts.map +0 -1
  247. package/dist/lib/defaults/image-setup.d.ts +0 -4
  248. package/dist/lib/defaults/image-setup.d.ts.map +0 -1
  249. package/dist/lib/defaults/init.d.ts +0 -3
  250. package/dist/lib/defaults/init.d.ts.map +0 -1
  251. package/dist/lib/defaults/open.d.ts +0 -3
  252. package/dist/lib/defaults/open.d.ts.map +0 -1
  253. package/dist/lib/defaults/options.d.ts +0 -3
  254. package/dist/lib/defaults/options.d.ts.map +0 -1
  255. package/dist/lib/defaults/transition.d.ts.map +0 -1
  256. package/dist/lib/extensions/dailymotion-video.d.ts.map +0 -1
  257. package/dist/lib/extensions/download.d.ts +0 -3
  258. package/dist/lib/extensions/download.d.ts.map +0 -1
  259. package/dist/lib/extensions/google-maps.d.ts.map +0 -1
  260. package/dist/lib/extensions/image-story.d.ts +0 -12
  261. package/dist/lib/extensions/image-story.d.ts.map +0 -1
  262. package/dist/lib/extensions/logger.d.ts +0 -3
  263. package/dist/lib/extensions/logger.d.ts.map +0 -1
  264. package/dist/lib/extensions/mapbox.d.ts.map +0 -1
  265. package/dist/lib/extensions/openstreetmap.d.ts.map +0 -1
  266. package/dist/lib/extensions/select-box.d.ts.map +0 -1
  267. package/dist/lib/extensions/streamable-video.d.ts.map +0 -1
  268. package/dist/lib/extensions/twitch-video.d.ts.map +0 -1
  269. package/dist/lib/extensions/vidyard-video.d.ts.map +0 -1
  270. package/dist/lib/extensions/vimeo-video.d.ts.map +0 -1
  271. package/dist/lib/extensions/wistia-video.d.ts.map +0 -1
  272. package/dist/lib/extensions/youtube-video.d.ts.map +0 -1
  273. package/dist/lib/main.d.ts.map +0 -1
  274. package/dist/lib/throttle.d.ts.map +0 -1
  275. package/dist/lib/types.d.ts.map +0 -1
  276. package/dist/lib/utils/get-fitted-size.d.ts.map +0 -1
  277. package/dist/lib/utils/get-full-size-dim.d.ts.map +0 -1
  278. package/dist/lib/utils/get-style.d.ts.map +0 -1
  279. package/dist/lib/utils/index.d.ts.map +0 -1
  280. package/dist/lib/utils/is-not-zero-css.d.ts.map +0 -1
  281. package/dist/lib/utils/parse-element.d.ts.map +0 -1
  282. package/dist/lib/vista-box.d.ts.map +0 -1
  283. package/dist/lib/vista-hires-transition.d.ts.map +0 -1
  284. package/dist/lib/vista-image-event.d.ts.map +0 -1
  285. package/dist/lib/vista-image.d.ts.map +0 -1
  286. package/dist/lib/vista-pointers.d.ts.map +0 -1
  287. package/dist/lib/vista-state.d.ts.map +0 -1
  288. package/dist/lib/vista-view.d.ts.map +0 -1
  289. package/dist/react.d.ts +0 -11
  290. package/dist/react.d.ts.map +0 -1
  291. package/dist/react.js +0 -69
  292. package/dist/solid.d.ts +0 -3
  293. package/dist/solid.d.ts.map +0 -1
  294. package/dist/solid.js +0 -24
  295. package/dist/style.css +0 -1
  296. package/dist/style.d.ts +0 -1
  297. package/dist/styles/autumn-amber.css +0 -1
  298. package/dist/styles/autumn-amber.d.ts +0 -1
  299. package/dist/styles/cotton-candy.css +0 -1
  300. package/dist/styles/cotton-candy.d.ts +0 -1
  301. package/dist/styles/dark-rounded.css +0 -1
  302. package/dist/styles/dark-rounded.d.ts +0 -1
  303. package/dist/styles/ember-glow.css +0 -1
  304. package/dist/styles/ember-glow.d.ts +0 -1
  305. package/dist/styles/extensions/image-story.css +0 -1
  306. package/dist/styles/extensions/image-story.d.ts +0 -1
  307. package/dist/styles/forest-moss.css +0 -1
  308. package/dist/styles/forest-moss.d.ts +0 -1
  309. package/dist/styles/green-lake.css +0 -1
  310. package/dist/styles/green-lake.d.ts +0 -1
  311. package/dist/styles/ice-crystal.css +0 -1
  312. package/dist/styles/ice-crystal.d.ts +0 -1
  313. package/dist/styles/lavender-fields.css +0 -1
  314. package/dist/styles/lavender-fields.d.ts +0 -1
  315. package/dist/styles/midnight-gold.css +0 -1
  316. package/dist/styles/midnight-gold.d.ts +0 -1
  317. package/dist/styles/midnight-ocean.css +0 -1
  318. package/dist/styles/midnight-ocean.d.ts +0 -1
  319. package/dist/styles/mint-chocolate.css +0 -1
  320. package/dist/styles/mint-chocolate.d.ts +0 -1
  321. package/dist/styles/neon-nights.css +0 -1
  322. package/dist/styles/neon-nights.d.ts +0 -1
  323. package/dist/styles/paper-light.css +0 -1
  324. package/dist/styles/paper-light.d.ts +0 -1
  325. package/dist/styles/retro-arcade.css +0 -1
  326. package/dist/styles/retro-arcade.d.ts +0 -1
  327. package/dist/styles/soft-neutral.css +0 -1
  328. package/dist/styles/soft-neutral.d.ts +0 -1
  329. package/dist/styles/stark-minimal.css +0 -1
  330. package/dist/styles/stark-minimal.d.ts +0 -1
  331. package/dist/styles/strawberry.css +0 -1
  332. package/dist/styles/strawberry.d.ts +0 -1
  333. package/dist/svelte.d.ts +0 -3
  334. package/dist/svelte.d.ts.map +0 -1
  335. package/dist/svelte.js +0 -22
  336. package/dist/vista-box-zG6ZgBcI.js +0 -334
  337. package/dist/vistaview.d.ts.map +0 -1
  338. package/dist/vistaview.js +0 -1013
  339. package/dist/vistaview.umd.js +0 -18
  340. package/dist/vue.d.ts +0 -25
  341. package/dist/vue.d.ts.map +0 -1
  342. package/dist/vue.js +0 -79
@@ -0,0 +1,166 @@
1
+ import { VistaPointers } from './vista-pointers';
2
+ export class VistaImageEvent {
3
+ //
4
+ pointers = null;
5
+ // Pinch gesture state
6
+ lastDistance = 0;
7
+ pinchMode = false;
8
+ lastPinchEndTime = 0;
9
+ PINCH_COOLDOWN = 111;
10
+ cancelMove = () => { };
11
+ pointerListeners = [];
12
+ vvw;
13
+ // private vistaImage: VistaImage;
14
+ imageContainer = null;
15
+ constructor(vvw) {
16
+ this.vvw = vvw;
17
+ // this.vistaImage = vistaImage;
18
+ }
19
+ // register external pointer listener
20
+ registerPointerListener(listener) {
21
+ this.pointerListeners.push(listener);
22
+ }
23
+ isPinching = () => {
24
+ return this.pinchMode || performance.now() - this.lastPinchEndTime < this.PINCH_COOLDOWN;
25
+ };
26
+ internalPointerListener = (e) => {
27
+ // Detect if we are pinching - to prevent conflict with single pointer move
28
+ // Adds a small cooldown after pinch ends to avoid immediate single pointer move
29
+ const vistaImage = this.vvw.state.children.images.find((img) => img.pos === 0);
30
+ // POINTER DOWN - Start drag or pinch
31
+ if (e.event === 'down') {
32
+ this.cancelMove();
33
+ // Single finger: prepare for drag (if zoomed in)
34
+ if (this.vvw.state.zoomedIn && e.pointers.length === 1 && !this.isPinching()) {
35
+ const center = this.pointers.getCentroid();
36
+ vistaImage.setInitialCenter(center);
37
+ }
38
+ // Two fingers: start pinch zoom
39
+ if (e.pointers.length >= 2) {
40
+ this.pinchMode = true;
41
+ const center = this.pointers.getCentroid();
42
+ this.lastDistance = this.pointers.getPointerDistance(e.pointers[0], e.pointers[1]);
43
+ vistaImage.setInitialCenter(center);
44
+ }
45
+ }
46
+ // POINTER MOVE - Drag or pinch zoom
47
+ else if (e.event === 'move') {
48
+ // Single finger drag (when zoomed in)
49
+ if (this.vvw.state.zoomedIn &&
50
+ e.pointers.length === 1 &&
51
+ e.lastPointerLen === 0 &&
52
+ !this.isPinching()) {
53
+ const center = this.pointers.getCentroid();
54
+ vistaImage.scaleMove(1, center);
55
+ }
56
+ // Two finger pinch zoom
57
+ if (e.pointers.length >= 2 && this.pinchMode) {
58
+ const center = this.pointers.getCentroid();
59
+ const distance = this.pointers.getPointerDistance(e.pointers[0], e.pointers[1]);
60
+ vistaImage.scaleMove(distance / this.lastDistance, center);
61
+ }
62
+ }
63
+ // POINTER UP - End drag/pinch, normalize position
64
+ else if ((e.event === 'up' || e.event === 'cancel') &&
65
+ (this.pinchMode || this.vvw.state.zoomedIn)) {
66
+ if (this.pinchMode) {
67
+ // End pinch: normalize zoom level, close if zoomed out too far
68
+ this.lastPinchEndTime = performance.now();
69
+ this.pinchMode = false;
70
+ // const close = vistaImage.normalize();
71
+ const ret = vistaImage.setFinalTransform();
72
+ if (ret?.cancel) {
73
+ this.cancelMove = ret.cancel;
74
+ }
75
+ if (ret?.close) {
76
+ requestAnimationFrame(() => {
77
+ this.vvw.close();
78
+ });
79
+ }
80
+ }
81
+ else if (this.vvw.state.zoomedIn && e.pointers.length === 0 && !this.isPinching()) {
82
+ // End drag: animate back to bounds if necessary
83
+ vistaImage.isThrowing = true;
84
+ this.cancelMove = vistaImage.momentumThrow({
85
+ x: e.pointer.movementX,
86
+ y: e.pointer.movementY,
87
+ });
88
+ }
89
+ }
90
+ // Notify external listeners (user-registered pointer handlers)
91
+ this.pointerListeners.forEach((l) => l({
92
+ ...e,
93
+ state: this.vvw.state,
94
+ hasInternalExecution: this.vvw.state.zoomedIn || this.isPinching(),
95
+ abortController: this.vvw.state.abortController,
96
+ }));
97
+ };
98
+ onKeyDown = (e) => {
99
+ const vvw = this.vvw;
100
+ switch (e.key) {
101
+ case 'ArrowLeft':
102
+ e.preventDefault();
103
+ vvw.prev();
104
+ break;
105
+ case 'ArrowRight':
106
+ e.preventDefault();
107
+ vvw.next();
108
+ break;
109
+ case 'ArrowUp':
110
+ e.preventDefault();
111
+ vvw.zoomIn();
112
+ break;
113
+ case 'ArrowDown':
114
+ e.preventDefault();
115
+ vvw.zoomOut();
116
+ break;
117
+ case 'Escape':
118
+ e.preventDefault();
119
+ vvw.close();
120
+ break;
121
+ }
122
+ };
123
+ onScroll = (e) => {
124
+ e.preventDefault();
125
+ const vvw = this.vvw;
126
+ const vistaImage = this.vvw.state.children.images.find((img) => img.pos === 0);
127
+ const delta = e.deltaY;
128
+ vistaImage.setInitialCenter({
129
+ x: e.clientX,
130
+ y: e.clientY,
131
+ });
132
+ if (delta < 0) {
133
+ vvw.zoomIn();
134
+ }
135
+ else if (delta > 0) {
136
+ vvw.zoomOut();
137
+ }
138
+ };
139
+ onResizeHandler = () => {
140
+ this.vvw.state.children.images.forEach((vistaImage) => {
141
+ vistaImage.setSizes();
142
+ });
143
+ };
144
+ start(imageContainer) {
145
+ // keyboard events
146
+ if (this.vvw.options.keyboardListeners)
147
+ window.addEventListener('keydown', this.onKeyDown);
148
+ // scroll Events
149
+ this.imageContainer = imageContainer;
150
+ this.imageContainer.addEventListener('wheel', this.onScroll, { passive: false });
151
+ // resize listener
152
+ window.addEventListener('resize', this.onResizeHandler);
153
+ this.pointers = new VistaPointers({
154
+ elm: imageContainer,
155
+ listeners: [this.internalPointerListener],
156
+ });
157
+ }
158
+ stop() {
159
+ if (this.vvw.options.keyboardListeners)
160
+ window.removeEventListener('keydown', this.onKeyDown);
161
+ window.removeEventListener('resize', this.onResizeHandler);
162
+ this.imageContainer.removeEventListener('wheel', this.onScroll);
163
+ this.pointers.removeListeners();
164
+ this.pointerListeners = [];
165
+ }
166
+ }
@@ -1,4 +1,4 @@
1
- import { VistaImageParams } from './types';
1
+ import type { VistaImageParams } from './types';
2
2
  import { VistaBox } from './vista-box';
3
3
  export declare class VistaImage extends VistaBox {
4
4
  element: HTMLImageElement;
@@ -27,7 +27,6 @@ export declare class VistaImage extends VistaBox {
27
27
  private animateNormalize;
28
28
  setFinalTransform(): {
29
29
  close: boolean;
30
- cancel: () => import('./vista-hires-transition').VistaHiresTransitionOpt | undefined;
30
+ cancel: () => import("./vista-hires-transition").VistaHiresTransitionOpt | undefined;
31
31
  } | undefined;
32
32
  }
33
- //# sourceMappingURL=vista-image.d.ts.map
@@ -0,0 +1,274 @@
1
+ // import type { VistaHiresTransitionOpt } from './vista-hires-transition';
2
+ // import type { VistaImageState } from './types';
3
+ import { getFullSizeDim } from './utils/get-full-size-dim';
4
+ import { VistaHiresTransition } from './vista-hires-transition';
5
+ // import { getFittedSize } from './utils/get-fitted-size';
6
+ // import { VistaImageEvent } from './vista-image-event';
7
+ import { VistaBox } from './vista-box';
8
+ export class VistaImage extends VistaBox {
9
+ element;
10
+ rect = null;
11
+ onWidthChange(value) {
12
+ super.onWidthChange(value);
13
+ // update src from parsedSrcSet if available
14
+ const url = this.getFromParsedSrcSet(value);
15
+ if (url && this.element.src !== url) {
16
+ // create new image element and replace existing
17
+ const newImg = new Image();
18
+ newImg.onload = () => {
19
+ newImg.decode().then(() => {
20
+ if (this.isCancelled)
21
+ return;
22
+ this.element.src = url;
23
+ });
24
+ };
25
+ newImg.src = url;
26
+ }
27
+ }
28
+ constructor(par) {
29
+ super(par);
30
+ const img = document.createElement('img');
31
+ img.alt = this.config.alt || '';
32
+ // adding srcset actually makes the load time longer for me
33
+ // img.srcset = this.config.srcSet || '';
34
+ img.classList.add('vvw-img-hi');
35
+ this.element = img;
36
+ img.onerror = (e) => {
37
+ // this.onImageError(e);
38
+ this.isLoadedRejected(e);
39
+ };
40
+ img.src = this.config.src;
41
+ img
42
+ .decode()
43
+ .then(() => {
44
+ this.onLoad();
45
+ })
46
+ .catch((e) => {
47
+ this.isLoadedRejected(e);
48
+ });
49
+ // trigger setSizes to setup thumb and hires image
50
+ // stableSize = false
51
+ // initDimension = true
52
+ this.setSizes({
53
+ stableSize: false,
54
+ initDimension: true,
55
+ });
56
+ }
57
+ onLoad() {
58
+ if (this.isCancelled)
59
+ return;
60
+ const img = this.element;
61
+ img.width = img.naturalWidth;
62
+ img.height = img.naturalHeight;
63
+ // set max zoomed dimensions
64
+ // this.maxH = img.naturalHeight * this.maxZoomLevel;
65
+ this.maxW = img.naturalWidth * this.maxZoomLevel;
66
+ // set fullscreen dimensions
67
+ const { width: fullWidth, height: fullHeight } = getFullSizeDim(img);
68
+ this.fullH = fullHeight;
69
+ this.fullW = fullWidth;
70
+ this.minW = this.fullW * 0.5;
71
+ // this.minH = this.fullH * 0.3
72
+ this.isLoadedResolved(true);
73
+ }
74
+ getFullSizeDim() {
75
+ return getFullSizeDim(this.element);
76
+ }
77
+ normalize() {
78
+ super.normalize();
79
+ const img = this.element;
80
+ img.style.objectFit = 'cover';
81
+ img.style.borderRadius = '0';
82
+ }
83
+ // Used by: VistaImageEvent
84
+ scaleMove(scaleFactor, center, animate = false) {
85
+ if (!this.isReady)
86
+ return;
87
+ if (!this.element)
88
+ return;
89
+ if (!this.rect) {
90
+ this.rect = this.element.getBoundingClientRect();
91
+ }
92
+ if (!center) {
93
+ center = this.initPointerCenter;
94
+ }
95
+ // Calculate translation to keep the INITIAL center point fixed during zoom
96
+ // Current image center position
97
+ const imgCenterX = this.rect.left + this.rect.width / 2;
98
+ const imgCenterY = this.rect.top + this.rect.height / 2;
99
+ // Distance from INITIAL pinch center to image center (when gesture started)
100
+ const initialOffsetX = this.initPointerCenter.x - imgCenterX;
101
+ const initialOffsetY = this.initPointerCenter.y - imgCenterY;
102
+ // Zoom translation: keep initial pinch point fixed
103
+ const zoomTranslateX = initialOffsetX * (1 - scaleFactor);
104
+ const zoomTranslateY = initialOffsetY * (1 - scaleFactor);
105
+ // Pan translation: account for finger movement during pinch
106
+ const panX = center.x - this.initPointerCenter.x;
107
+ const panY = center.y - this.initPointerCenter.y;
108
+ if (animate) {
109
+ VistaHiresTransition.start({
110
+ vistaImage: this,
111
+ target: {
112
+ transform: {
113
+ x: zoomTranslateX + panX,
114
+ y: zoomTranslateY + panY,
115
+ scale: scaleFactor,
116
+ },
117
+ },
118
+ onComplete: () => {
119
+ this.setFinalTransform();
120
+ },
121
+ shouldWait: () => false,
122
+ });
123
+ }
124
+ else {
125
+ this.state.transform = {
126
+ x: zoomTranslateX + panX,
127
+ y: zoomTranslateY + panY,
128
+ scale: scaleFactor,
129
+ };
130
+ }
131
+ // notify scale change
132
+ const rect = this.element.getBoundingClientRect();
133
+ const scaledWidth = rect.width * scaleFactor;
134
+ this.isZoomedIn = scaledWidth > this.fullW;
135
+ this.state.lessThanMinWidth = scaledWidth <= this.minW;
136
+ this.onScale({
137
+ vistaImage: this,
138
+ scale: scaledWidth / this.fullW,
139
+ isMax: scaledWidth >= this.maxW,
140
+ isMin: scaledWidth <= this.fullW,
141
+ });
142
+ }
143
+ animateZoom(scaleFactor, center) {
144
+ if (this.state.width * scaleFactor < this.minW)
145
+ return;
146
+ this.scaleMove(scaleFactor, center, true);
147
+ }
148
+ // Used by: VistaImageEvent
149
+ momentumThrow(par) {
150
+ if (!this.isReady) {
151
+ return () => { };
152
+ }
153
+ if (!this.isThrowing) {
154
+ this.setFinalTransform();
155
+ return () => { };
156
+ }
157
+ if (Math.abs(par.x) < 0.1 && Math.abs(par.y) < 0.1) {
158
+ const img = this.element;
159
+ const bound = img.getBoundingClientRect();
160
+ VistaHiresTransition.start({
161
+ vistaImage: this,
162
+ target: {
163
+ transform: {
164
+ x: bound.right < window.innerWidth / 2
165
+ ? this.state.transform.x + (window.innerWidth / 2 - bound.right)
166
+ : bound.left > window.innerWidth / 2
167
+ ? this.state.transform.x - (bound.left - window.innerWidth / 2)
168
+ : this.state.transform.x,
169
+ y: bound.bottom < window.innerHeight / 2
170
+ ? this.state.transform.y + (window.innerHeight / 2 - bound.bottom)
171
+ : bound.top > window.innerHeight / 2
172
+ ? this.state.transform.y - (bound.top - window.innerHeight / 2)
173
+ : this.state.transform.y,
174
+ },
175
+ },
176
+ onComplete: () => {
177
+ this.isThrowing = false;
178
+ this.setFinalTransform();
179
+ },
180
+ shouldWait: () => false,
181
+ });
182
+ return () => { };
183
+ }
184
+ requestAnimationFrame(() => {
185
+ if (!this.isThrowing)
186
+ return this.momentumThrow({ x: 0, y: 0 });
187
+ const img = this.element;
188
+ const t = this.state.transform;
189
+ t.x += par.x;
190
+ t.y += par.y;
191
+ const bound = img.getBoundingClientRect();
192
+ t.x = t.x + par.x;
193
+ t.y = t.y + par.y;
194
+ if (bound.right < window.innerWidth / 2) {
195
+ t.x += (window.innerWidth / 2 - bound.right) * 0.1;
196
+ par.x *= 0.7;
197
+ }
198
+ if (bound.left > window.innerWidth / 2) {
199
+ t.x -= (bound.left - window.innerWidth / 2) * 0.1;
200
+ par.x *= 0.7;
201
+ }
202
+ if (bound.bottom < window.innerHeight / 2) {
203
+ t.y += (window.innerHeight / 2 - bound.bottom) * 0.1;
204
+ par.y *= 0.7;
205
+ }
206
+ if (bound.top > window.innerHeight / 2) {
207
+ t.y -= (bound.top - window.innerHeight / 2) * 0.1;
208
+ par.y *= 0.7;
209
+ }
210
+ this.state.transform = t;
211
+ this.momentumThrow({
212
+ x: par.x * 0.9,
213
+ y: par.y * 0.9,
214
+ });
215
+ });
216
+ return () => {
217
+ VistaHiresTransition.stop(this);
218
+ this.isThrowing = false;
219
+ this.setFinalTransform();
220
+ };
221
+ }
222
+ animateNormalizeTimeout = null;
223
+ animateNormalize() {
224
+ if (this.animateNormalizeTimeout) {
225
+ clearTimeout(this.animateNormalizeTimeout);
226
+ }
227
+ this.animateNormalizeTimeout = setTimeout(() => {
228
+ VistaHiresTransition.start({
229
+ vistaImage: this,
230
+ target: {
231
+ width: this.fullW,
232
+ height: this.fullH,
233
+ translate: { x: 0, y: 0 },
234
+ transform: { x: 0, y: 0, scale: 1 },
235
+ },
236
+ onComplete: () => {
237
+ this.setFinalTransform();
238
+ },
239
+ shouldWait: () => false,
240
+ });
241
+ }, 50);
242
+ }
243
+ // Used by: VistaImageEvent
244
+ setFinalTransform() {
245
+ if (!this.isReady)
246
+ return;
247
+ // remove this.rect
248
+ this.rect = null;
249
+ super.setFinalTransform({ propagateEvent: false });
250
+ const close = this.state.width <= this.minW;
251
+ // animate back to max if over max
252
+ if (this.state.width > this.maxW) {
253
+ this.animateZoom(this.maxW / this.state.width);
254
+ }
255
+ // animate back to full if under full
256
+ else if (!close && this.state.width < this.fullW) {
257
+ this.animateNormalize();
258
+ }
259
+ // need to propagate content change event
260
+ else if (this.pos === 0) {
261
+ const obj = this.toObject();
262
+ this.vistaView.options.onContentChange &&
263
+ this.vistaView.options.onContentChange(obj, this.vistaView);
264
+ this.vistaView.state.extensions.forEach((ext) => {
265
+ ext.onContentChange && ext.onContentChange(obj, this.vistaView);
266
+ });
267
+ }
268
+ // determine if this should be closed
269
+ return {
270
+ close,
271
+ cancel: () => VistaHiresTransition.stop(this),
272
+ };
273
+ }
274
+ }
@@ -1,4 +1,4 @@
1
- import { VistaPointer, VistaPointerListener, VistaPointerArgs } from './types.js';
1
+ import type { VistaPointer, VistaPointerListener, VistaPointerArgs } from './types.js';
2
2
  export declare class VistaPointers {
3
3
  private pointers;
4
4
  private elm;
@@ -20,4 +20,3 @@ export declare class VistaPointers {
20
20
  y: number;
21
21
  } | null;
22
22
  }
23
- //# sourceMappingURL=vista-pointers.d.ts.map
@@ -0,0 +1,163 @@
1
+ // simplification of pointas
2
+ export class VistaPointers {
3
+ pointers = [];
4
+ elm;
5
+ listeners = [];
6
+ lastPointerDownId = null;
7
+ constructor({ elm, listeners }) {
8
+ this.elm = elm ?? document;
9
+ if (listeners) {
10
+ this.listeners = listeners;
11
+ }
12
+ this.startListeners();
13
+ }
14
+ removeLastPointer = () => {
15
+ if (!this.pointers.length)
16
+ return;
17
+ if (this.lastPointerDownId !== null) {
18
+ const idx = this.pointers.findIndex((p) => p.id === this.lastPointerDownId);
19
+ if (idx !== -1) {
20
+ this.pointers.splice(idx, 1);
21
+ }
22
+ }
23
+ };
24
+ onPointerDown = (e) => {
25
+ if (!this.listeners.length)
26
+ return;
27
+ // Ignore non-primary button clicks (right-click, middle-click, etc.)
28
+ if (e.button !== 0)
29
+ return;
30
+ e.preventDefault();
31
+ // record last pointer down id for contextmenu/auxclick removal
32
+ this.lastPointerDownId = e.pointerId;
33
+ // add one-time listeners to remove pointer on contextmenu/auxclick
34
+ window.addEventListener('contextmenu', this.removeLastPointer, { once: true });
35
+ window.addEventListener('auxclick', this.removeLastPointer, { once: true });
36
+ let pointer = {
37
+ x: e.clientX,
38
+ y: e.clientY,
39
+ movementX: 0,
40
+ movementY: 0,
41
+ id: e.pointerId,
42
+ };
43
+ this.pointers.push(pointer);
44
+ this.listeners.forEach((l) => l({
45
+ event: 'down',
46
+ pointer: pointer,
47
+ pointers: this.pointers,
48
+ lastPointerLen: this.pointers.length - 1,
49
+ }));
50
+ };
51
+ onPointerMove = (e) => {
52
+ if (!this.listeners.length)
53
+ return;
54
+ e.preventDefault();
55
+ const pointer = this.pointers.find((p) => p.id === e.pointerId);
56
+ if (!pointer)
57
+ return;
58
+ pointer.movementX = e.movementX;
59
+ pointer.movementY = e.movementY;
60
+ pointer.x = e.clientX;
61
+ pointer.y = e.clientY;
62
+ this.listeners.forEach((l) => l({
63
+ event: 'move',
64
+ pointer: pointer,
65
+ pointers: this.pointers,
66
+ lastPointerLen: this.pointers.length - 1,
67
+ }));
68
+ };
69
+ onPointerUp = (e) => {
70
+ if (!this.listeners.length)
71
+ return;
72
+ // Ignore non-primary button clicks (right-click, middle-click, etc.)
73
+ if (e.button !== 0)
74
+ return;
75
+ // remove one-time listeners
76
+ window.removeEventListener('contextmenu', this.removeLastPointer);
77
+ window.removeEventListener('auxclick', this.removeLastPointer);
78
+ // Only handle if target is within our element
79
+ if (e.target instanceof Node &&
80
+ !this.elm.contains(e.target) &&
81
+ e.target !== document.querySelector('html') &&
82
+ e.target !== document)
83
+ return;
84
+ e.preventDefault();
85
+ const pointerIndex = this.pointers.findIndex((p) => p.id === e.pointerId);
86
+ if (pointerIndex === -1)
87
+ return;
88
+ const pointer = this.pointers[pointerIndex];
89
+ pointer.x = e.clientX;
90
+ pointer.y = e.clientY;
91
+ const lastLen = this.pointers.length;
92
+ this.pointers.splice(pointerIndex, 1);
93
+ this.listeners.forEach((l) => l({
94
+ event: 'up',
95
+ pointer: pointer,
96
+ pointers: this.pointers,
97
+ lastPointerLen: lastLen,
98
+ }));
99
+ };
100
+ onPointerCancel = (e) => {
101
+ if (!this.listeners.length)
102
+ return;
103
+ // Only handle if target is within our element
104
+ if (e.target instanceof Node &&
105
+ !this.elm.contains(e.target) &&
106
+ e.target !== document.querySelector('html') &&
107
+ e.target !== document)
108
+ return;
109
+ e.preventDefault();
110
+ const pointerIndex = this.pointers.findIndex((p) => p.id === e.pointerId);
111
+ if (pointerIndex === -1)
112
+ return;
113
+ const pointer = this.pointers[pointerIndex];
114
+ pointer.x = e.clientX;
115
+ pointer.y = e.clientY;
116
+ const lastLen = this.pointers.length;
117
+ this.pointers.splice(pointerIndex, 1);
118
+ this.listeners.forEach((l) => l({
119
+ event: 'cancel',
120
+ pointer: pointer,
121
+ pointers: this.pointers,
122
+ lastPointerLen: lastLen,
123
+ }));
124
+ };
125
+ startListeners() {
126
+ this.elm.addEventListener('pointerdown', this.onPointerDown);
127
+ this.elm.addEventListener('pointermove', this.onPointerMove);
128
+ // Listen to up/cancel on document to catch events outside the element
129
+ document.addEventListener('pointerup', this.onPointerUp);
130
+ document.addEventListener('pointercancel', this.onPointerCancel);
131
+ }
132
+ removeListeners() {
133
+ this.elm.removeEventListener('pointerdown', this.onPointerDown);
134
+ this.elm.removeEventListener('pointermove', this.onPointerMove);
135
+ document.removeEventListener('pointerup', this.onPointerUp);
136
+ document.removeEventListener('pointercancel', this.onPointerCancel);
137
+ this.pointers = [];
138
+ }
139
+ addEventListener(listener) {
140
+ this.listeners.push(listener);
141
+ }
142
+ removeEventListener(listener) {
143
+ this.listeners = this.listeners.filter((l) => l !== listener);
144
+ }
145
+ getPointerDistance(p1, p2) {
146
+ const dx = p1.x - p2.x;
147
+ const dy = p1.y - p2.y;
148
+ return Math.sqrt(dx * dx + dy * dy);
149
+ }
150
+ getCentroid() {
151
+ if (this.pointers.length === 0)
152
+ return null;
153
+ const sum = this.pointers.reduce((acc, p) => {
154
+ acc.x += p.x;
155
+ acc.y += p.y;
156
+ return acc;
157
+ }, { x: 0, y: 0 });
158
+ return {
159
+ x: sum.x / this.pointers.length,
160
+ y: sum.y / this.pointers.length,
161
+ };
162
+ }
163
+ }
@@ -1,5 +1,5 @@
1
- import { VistaExtension } from './types';
2
- import { VistaBox } from './vista-box';
1
+ import type { VistaExtension } from './types';
2
+ import type { VistaBox } from './vista-box';
3
3
  export declare class VistaState {
4
4
  open: boolean;
5
5
  settled: boolean;
@@ -15,4 +15,3 @@ export declare class VistaState {
15
15
  isReducedMotion: boolean;
16
16
  extensions: Set<VistaExtension>;
17
17
  }
18
- //# sourceMappingURL=vista-state.d.ts.map
@@ -0,0 +1,15 @@
1
+ export class VistaState {
2
+ open = false;
3
+ settled = false;
4
+ closing = false;
5
+ zoomedIn = false;
6
+ children = {
7
+ htmls: [],
8
+ images: [],
9
+ };
10
+ currentIndex = -1;
11
+ elmLength = 0;
12
+ abortController = new AbortController();
13
+ isReducedMotion = false;
14
+ extensions = new Set();
15
+ }
@@ -1,6 +1,6 @@
1
- import { VistaOpt, VistaImgConfig, VistaExternalPointerListenerArgs } from './types';
1
+ import type { VistaOpt, VistaImgConfig, VistaExternalPointerListenerArgs } from './types';
2
2
  import { VistaState } from './vista-state';
3
- import { VistaBox } from './vista-box';
3
+ import type { VistaBox } from './vista-box';
4
4
  export declare const GlobalVistaState: {
5
5
  somethingOpened: VistaView | null;
6
6
  };
@@ -50,4 +50,3 @@ export declare class VistaView {
50
50
  zoomOut(): void;
51
51
  getCurrentIndex(): number;
52
52
  }
53
- //# sourceMappingURL=vista-view.d.ts.map