@panoramax/web-viewer 4.4.0-develop-746bcb00 → 4.4.0-develop-d8b38e70

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 (341) hide show
  1. package/{src → build}/components/core/Basic.js +22 -16
  2. package/{src → build}/components/core/CoverageMap.js +19 -14
  3. package/{src → build}/components/core/Editor.js +16 -16
  4. package/{src → build}/components/core/PhotoViewer.js +30 -29
  5. package/{src → build}/components/core/Viewer.js +21 -20
  6. package/build/components/core/index.js +10 -0
  7. package/build/components/index.js +11 -0
  8. package/build/components/index_photoviewer.js +6 -0
  9. package/{src → build}/components/layout/BottomDrawer.js +4 -4
  10. package/{src → build}/components/layout/CorneredGrid.js +1 -1
  11. package/{src → build}/components/layout/Mini.js +5 -4
  12. package/{src → build}/components/layout/Tabs.js +1 -1
  13. package/build/components/layout/index.js +9 -0
  14. package/{src → build}/components/menus/LocationPrecisionDoc.js +4 -6
  15. package/{src → build}/components/menus/MapBackground.js +4 -6
  16. package/{src → build}/components/menus/MapFilters.js +16 -21
  17. package/{src → build}/components/menus/MapLayers.js +20 -24
  18. package/{src → build}/components/menus/MapLegend.js +3 -4
  19. package/{src → build}/components/menus/MiniPictureLegend.js +3 -4
  20. package/{src → build}/components/menus/PictureLegend.js +10 -15
  21. package/{src → build}/components/menus/PictureMetadata.js +12 -19
  22. package/{src → build}/components/menus/PlayerOptions.js +5 -7
  23. package/{src → build}/components/menus/QualityScoreDoc.js +3 -4
  24. package/{src → build}/components/menus/ReportForm.js +8 -9
  25. package/{src → build}/components/menus/SemanticsDoc.js +3 -4
  26. package/{src → build}/components/menus/SemanticsDownload.js +3 -3
  27. package/{src → build}/components/menus/SemanticsFilters.js +7 -8
  28. package/{src → build}/components/menus/SemanticsList.js +11 -18
  29. package/{src → build}/components/menus/SemanticsMetadata.js +8 -11
  30. package/{src → build}/components/menus/Share.js +6 -7
  31. package/build/components/menus/index.js +22 -0
  32. package/build/components/menus/index_photoviewer.js +11 -0
  33. package/{src → build}/components/styles.js +0 -2
  34. package/{src → build}/components/ui/AnnotationsSwitch.js +6 -8
  35. package/{src → build}/components/ui/Button.js +1 -1
  36. package/{src → build}/components/ui/ButtonGroup.js +2 -1
  37. package/{src → build}/components/ui/CopyButton.js +4 -6
  38. package/{src → build}/components/ui/Grade.js +5 -5
  39. package/{src → build}/components/ui/GradeFilter.js +3 -3
  40. package/{src → build}/components/ui/IconSwitch.js +1 -1
  41. package/{src → build}/components/ui/LinkButton.js +1 -1
  42. package/{src → build}/components/ui/ListGroup.js +3 -3
  43. package/{src → build}/components/ui/ListItem.js +1 -1
  44. package/{src → build}/components/ui/Loader.js +8 -7
  45. package/{src → build}/components/ui/Map.js +38 -26
  46. package/{src → build}/components/ui/MapMore.js +7 -7
  47. package/{src → build}/components/ui/Photo.js +29 -27
  48. package/{src → build}/components/ui/Popup.js +4 -4
  49. package/{src → build}/components/ui/QualityScore.js +4 -4
  50. package/{src → build}/components/ui/SearchBar.js +6 -7
  51. package/{src → build}/components/ui/SemanticsEditor.js +14 -15
  52. package/{src → build}/components/ui/SemanticsTable.js +4 -5
  53. package/{src → build}/components/ui/Switch.js +1 -1
  54. package/{src → build}/components/ui/TogglableGroup.js +4 -4
  55. package/build/components/ui/index.js +29 -0
  56. package/build/components/ui/index_photoviewer.js +21 -0
  57. package/{src → build}/components/ui/widgets/CopyCoordinates.js +5 -5
  58. package/{src → build}/components/ui/widgets/GeoSearch.js +10 -10
  59. package/{src → build}/components/ui/widgets/Legend.js +9 -8
  60. package/{src → build}/components/ui/widgets/LevelSelect.js +9 -7
  61. package/{src → build}/components/ui/widgets/MapFiltersButton.js +5 -5
  62. package/{src → build}/components/ui/widgets/MapLayersButton.js +5 -5
  63. package/{src → build}/components/ui/widgets/OSMEditors.js +8 -8
  64. package/{src → build}/components/ui/widgets/PictureLegendActions.js +4 -4
  65. package/{src → build}/components/ui/widgets/Player.js +6 -7
  66. package/{src → build}/components/ui/widgets/SemanticsFiltersButton.js +6 -7
  67. package/{src → build}/components/ui/widgets/Zoom.js +6 -6
  68. package/build/components/ui/widgets/index.js +16 -0
  69. package/build/components/ui/widgets/index_photoviewer.js +7 -0
  70. package/build/editor.html +94 -10
  71. package/{src → build}/img/arrow_triangle.svg +0 -1
  72. package/{src → build}/img/arrow_turn.svg +0 -1
  73. package/build/index.html +111 -1
  74. package/build/index.js +6 -95
  75. package/build/index_photoviewer.js +4 -0
  76. package/build/map.html +97 -1
  77. package/build/package.json +141 -0
  78. package/build/photo.html +85 -1
  79. package/build/servers.js +3 -4
  80. package/{src → build}/translations/pt.json +7 -2
  81. package/{src → build}/utils/API.js +33 -33
  82. package/{src → build}/utils/InitParameters.js +11 -9
  83. package/{src → build}/utils/MapStyleComposer.js +39 -37
  84. package/{src → build}/utils/PhotoAdapter.js +1 -0
  85. package/{src → build}/utils/PresetsManager.js +4 -4
  86. package/{src → build}/utils/SemanticsMapProtocol.js +3 -4
  87. package/{src → build}/utils/URLHandler.js +16 -14
  88. package/{src → build}/utils/geocoder.js +5 -5
  89. package/{src → build}/utils/i18n.js +21 -20
  90. package/build/utils/index.js +17 -0
  91. package/build/utils/index_photoviewer.js +14 -0
  92. package/{src → build}/utils/indoor.js +9 -5
  93. package/{src → build}/utils/map.js +15 -11
  94. package/{src → build}/utils/picture.js +22 -17
  95. package/{src → build}/utils/semantics.js +9 -5
  96. package/{src → build}/utils/utils.js +8 -4
  97. package/{src → build}/utils/widgets.js +2 -2
  98. package/build/viewer.html +120 -35
  99. package/build/viewer_indoor.html +90 -8
  100. package/build/widgets.html +410 -1
  101. package/package.json +81 -204
  102. package/.dockerignore +0 -7
  103. package/.gitlab-ci.yml +0 -78
  104. package/CHANGELOG.md +0 -853
  105. package/CODE_OF_CONDUCT.md +0 -134
  106. package/Dockerfile +0 -14
  107. package/build/index.css +0 -36
  108. package/build/index.css.map +0 -1
  109. package/build/index.js.map +0 -1
  110. package/build/photoviewer.css +0 -36
  111. package/build/photoviewer.css.map +0 -1
  112. package/build/photoviewer.js +0 -86
  113. package/build/photoviewer.js.map +0 -1
  114. package/build/static/media/atkinson-hyperlegible-next-latin-400-normal..woff +0 -0
  115. package/build/static/media/atkinson-hyperlegible-next-latin-400-normal..woff2 +0 -0
  116. package/build/static/media/atkinson-hyperlegible-next-latin-ext-400-normal..woff +0 -0
  117. package/build/static/media/atkinson-hyperlegible-next-latin-ext-400-normal..woff2 +0 -0
  118. package/config/env.js +0 -104
  119. package/config/getHttpsConfig.js +0 -69
  120. package/config/getPackageJson.js +0 -25
  121. package/config/jest/babelTransform.js +0 -29
  122. package/config/jest/cssTransform.js +0 -14
  123. package/config/jest/fileTransform.js +0 -40
  124. package/config/jest/mocks.js +0 -230
  125. package/config/modules.js +0 -134
  126. package/config/paths.js +0 -76
  127. package/config/pnpTs.js +0 -35
  128. package/config/webpack/persistentCache/createEnvironmentHash.js +0 -9
  129. package/config/webpack.config.js +0 -825
  130. package/config/webpackDevServer.config.js +0 -131
  131. package/docs/03_URL_settings.md +0 -218
  132. package/docs/05_Compatibility.md +0 -83
  133. package/docs/09_Develop.md +0 -141
  134. package/docs/90_Releases.md +0 -27
  135. package/docs/images/class_diagram.drawio +0 -144
  136. package/docs/images/class_diagram.jpg +0 -0
  137. package/docs/images/comparative_3drender.jpg +0 -0
  138. package/docs/images/indoor_level.png +0 -0
  139. package/docs/images/screenshot.jpg +0 -0
  140. package/docs/index.md +0 -159
  141. package/docs/reference/components/core/Basic.md +0 -211
  142. package/docs/reference/components/core/CoverageMap.md +0 -220
  143. package/docs/reference/components/core/Editor.md +0 -252
  144. package/docs/reference/components/core/PhotoViewer.md +0 -320
  145. package/docs/reference/components/core/Viewer.md +0 -398
  146. package/docs/reference/components/layout/BottomDrawer.md +0 -35
  147. package/docs/reference/components/layout/CorneredGrid.md +0 -29
  148. package/docs/reference/components/layout/Mini.md +0 -45
  149. package/docs/reference/components/layout/Tabs.md +0 -46
  150. package/docs/reference/components/menus/LocationPrecisionDoc.md +0 -15
  151. package/docs/reference/components/menus/MapBackground.md +0 -32
  152. package/docs/reference/components/menus/MapFilters.md +0 -37
  153. package/docs/reference/components/menus/MapLayers.md +0 -15
  154. package/docs/reference/components/menus/MapLegend.md +0 -32
  155. package/docs/reference/components/menus/MiniPictureLegend.md +0 -15
  156. package/docs/reference/components/menus/PictureLegend.md +0 -45
  157. package/docs/reference/components/menus/PictureMetadata.md +0 -32
  158. package/docs/reference/components/menus/PlayerOptions.md +0 -15
  159. package/docs/reference/components/menus/QualityScoreDoc.md +0 -15
  160. package/docs/reference/components/menus/ReportForm.md +0 -15
  161. package/docs/reference/components/menus/SemanticsDoc.md +0 -15
  162. package/docs/reference/components/menus/SemanticsDownload.md +0 -15
  163. package/docs/reference/components/menus/SemanticsFilters.md +0 -33
  164. package/docs/reference/components/menus/SemanticsList.md +0 -97
  165. package/docs/reference/components/menus/SemanticsMetadata.md +0 -15
  166. package/docs/reference/components/menus/ShareMenu.md +0 -32
  167. package/docs/reference/components/ui/AnnotationsSwitch.md +0 -32
  168. package/docs/reference/components/ui/Button.md +0 -40
  169. package/docs/reference/components/ui/ButtonGroup.md +0 -36
  170. package/docs/reference/components/ui/CopyButton.md +0 -41
  171. package/docs/reference/components/ui/Grade.md +0 -32
  172. package/docs/reference/components/ui/GradeFilter.md +0 -42
  173. package/docs/reference/components/ui/IconSwitch.md +0 -53
  174. package/docs/reference/components/ui/LinkButton.md +0 -45
  175. package/docs/reference/components/ui/ListGroup.md +0 -22
  176. package/docs/reference/components/ui/ListItem.md +0 -39
  177. package/docs/reference/components/ui/Loader.md +0 -56
  178. package/docs/reference/components/ui/Map.md +0 -150
  179. package/docs/reference/components/ui/MapMore.md +0 -150
  180. package/docs/reference/components/ui/Photo.md +0 -495
  181. package/docs/reference/components/ui/Popup.md +0 -56
  182. package/docs/reference/components/ui/ProgressBar.md +0 -32
  183. package/docs/reference/components/ui/QualityScore.md +0 -45
  184. package/docs/reference/components/ui/SearchBar.md +0 -63
  185. package/docs/reference/components/ui/SemanticsEditor.md +0 -113
  186. package/docs/reference/components/ui/SemanticsTable.md +0 -32
  187. package/docs/reference/components/ui/Switch.md +0 -49
  188. package/docs/reference/components/ui/TogglableGroup.md +0 -39
  189. package/docs/reference/components/ui/widgets/CopyCoordinates.md +0 -32
  190. package/docs/reference/components/ui/widgets/GeoSearch.md +0 -36
  191. package/docs/reference/components/ui/widgets/Legend.md +0 -58
  192. package/docs/reference/components/ui/widgets/LevelSelect.md +0 -16
  193. package/docs/reference/components/ui/widgets/MapFiltersButton.md +0 -37
  194. package/docs/reference/components/ui/widgets/MapLayersButton.md +0 -15
  195. package/docs/reference/components/ui/widgets/OSMEditors.md +0 -15
  196. package/docs/reference/components/ui/widgets/PictureLegendActions.md +0 -32
  197. package/docs/reference/components/ui/widgets/Player.md +0 -34
  198. package/docs/reference/components/ui/widgets/SemanticsFiltersButton.md +0 -15
  199. package/docs/reference/components/ui/widgets/Zoom.md +0 -15
  200. package/docs/reference/utils/API.md +0 -389
  201. package/docs/reference/utils/InitParameters.md +0 -68
  202. package/docs/reference/utils/MapStyleComposer.md +0 -408
  203. package/docs/reference/utils/PanoraMapProtocol.md +0 -28
  204. package/docs/reference/utils/PresetsManager.md +0 -43
  205. package/docs/reference/utils/SemanticsMapProtocol.md +0 -43
  206. package/docs/reference/utils/URLHandler.md +0 -114
  207. package/docs/reference.md +0 -99
  208. package/docs/shortcuts.md +0 -11
  209. package/docs/tutorials/aerial_imagery.md +0 -21
  210. package/docs/tutorials/authentication.md +0 -10
  211. package/docs/tutorials/custom_widgets.md +0 -59
  212. package/docs/tutorials/indoor_maps.md +0 -50
  213. package/docs/tutorials/map_style.md +0 -83
  214. package/docs/tutorials/migrate_v4.md +0 -153
  215. package/docs/tutorials/migrate_v5.md +0 -103
  216. package/docs/tutorials/semantics_overlays.md +0 -74
  217. package/docs/tutorials/synced_coverage.md +0 -43
  218. package/mkdocs.yml +0 -131
  219. package/public/editor.html +0 -53
  220. package/public/index.html +0 -70
  221. package/public/map.html +0 -55
  222. package/public/photo.html +0 -43
  223. package/public/servers.js +0 -15
  224. package/public/viewer.html +0 -79
  225. package/public/viewer_indoor.html +0 -48
  226. package/public/widgets.html +0 -366
  227. package/scripts/build.js +0 -217
  228. package/scripts/doc.js +0 -79
  229. package/scripts/start.js +0 -172
  230. package/scripts/test.js +0 -52
  231. package/src/components/core/index.js +0 -12
  232. package/src/components/index.js +0 -13
  233. package/src/components/index_photoviewer.js +0 -8
  234. package/src/components/layout/index.js +0 -9
  235. package/src/components/menus/index.js +0 -22
  236. package/src/components/menus/index_photoviewer.js +0 -13
  237. package/src/components/ui/index.js +0 -29
  238. package/src/components/ui/index_photoviewer.js +0 -23
  239. package/src/components/ui/widgets/index.js +0 -16
  240. package/src/components/ui/widgets/index_photoviewer.js +0 -9
  241. package/src/index.js +0 -8
  242. package/src/index_photoviewer.js +0 -6
  243. package/src/utils/index.js +0 -17
  244. package/src/utils/index_photoviewer.js +0 -16
  245. package/tests/components/core/Basic.test.js +0 -168
  246. package/tests/components/core/BasicMock.js +0 -25
  247. package/tests/components/core/CoverageMap.test.js +0 -20
  248. package/tests/components/core/Editor.test.js +0 -20
  249. package/tests/components/core/PhotoViewer.test.js +0 -57
  250. package/tests/components/core/Viewer.test.js +0 -85
  251. package/tests/components/core/__snapshots__/PhotoViewer.test.js.snap +0 -96
  252. package/tests/components/core/__snapshots__/Viewer.test.js.snap +0 -188
  253. package/tests/components/ui/CopyButton.test.js +0 -52
  254. package/tests/components/ui/Loader.test.js +0 -55
  255. package/tests/components/ui/Map.test.js +0 -145
  256. package/tests/components/ui/Photo.test.js +0 -437
  257. package/tests/components/ui/Popup.test.js +0 -26
  258. package/tests/components/ui/QualityScore.test.js +0 -18
  259. package/tests/components/ui/SearchBar.test.js +0 -110
  260. package/tests/components/ui/__snapshots__/CopyButton.test.js.snap +0 -33
  261. package/tests/components/ui/__snapshots__/Loader.test.js.snap +0 -56
  262. package/tests/components/ui/__snapshots__/Map.test.js.snap +0 -16
  263. package/tests/components/ui/__snapshots__/Photo.test.js.snap +0 -263
  264. package/tests/components/ui/__snapshots__/Popup.test.js.snap +0 -29
  265. package/tests/components/ui/__snapshots__/QualityScore.test.js.snap +0 -11
  266. package/tests/components/ui/__snapshots__/SearchBar.test.js.snap +0 -65
  267. package/tests/data/Map_geocoder_ban.json +0 -36
  268. package/tests/data/Map_geocoder_nominatim.json +0 -41
  269. package/tests/data/Viewer_pictures_1.json +0 -148
  270. package/tests/setupTests.js +0 -5
  271. package/tests/utils/API.test.js +0 -752
  272. package/tests/utils/InitParameters.test.js +0 -599
  273. package/tests/utils/MapStyleComposer.test.js +0 -697
  274. package/tests/utils/PresetsManager.test.js +0 -123
  275. package/tests/utils/URLHandler.test.js +0 -587
  276. package/tests/utils/__snapshots__/API.test.js.snap +0 -40
  277. package/tests/utils/__snapshots__/MapStyleComposer.test.js.snap +0 -767
  278. package/tests/utils/__snapshots__/URLHandler.test.js.snap +0 -21
  279. package/tests/utils/__snapshots__/geocoder.test.js.snap +0 -37
  280. package/tests/utils/__snapshots__/map.test.js.snap +0 -1249
  281. package/tests/utils/__snapshots__/picture.test.js.snap +0 -327
  282. package/tests/utils/__snapshots__/widgets.test.js.snap +0 -19
  283. package/tests/utils/geocoder.test.js +0 -37
  284. package/tests/utils/i18n.test.js +0 -111
  285. package/tests/utils/map.test.js +0 -200
  286. package/tests/utils/picture.test.js +0 -745
  287. package/tests/utils/semantics.test.js +0 -174
  288. package/tests/utils/utils.test.js +0 -358
  289. package/tests/utils/widgets.test.js +0 -31
  290. /package/{src → build}/components/core/Basic.css +0 -0
  291. /package/{src → build}/components/core/CoverageMap.css +0 -0
  292. /package/{src → build}/components/core/Editor.css +0 -0
  293. /package/{src → build}/components/core/PhotoViewer.css +0 -0
  294. /package/{src → build}/components/core/Viewer.css +0 -0
  295. /package/{src → build}/components/ui/ButtonGroup.css +0 -0
  296. /package/{src → build}/components/ui/Map.css +0 -0
  297. /package/{src → build}/components/ui/Photo.css +0 -0
  298. /package/{src → build}/components/ui/ProgressBar.js +0 -0
  299. /package/{src → build}/components/ui/widgets/GeoSearch.css +0 -0
  300. /package/{src → build}/components/ui/widgets/LevelSelect.css +0 -0
  301. /package/{src → build}/components/ui/widgets/Player.css +0 -0
  302. /package/{public → build}/favicon.ico +0 -0
  303. /package/{src → build}/img/arrow_360.svg +0 -0
  304. /package/{src → build}/img/arrow_flat.svg +0 -0
  305. /package/{src → build}/img/bg_aerial.jpg +0 -0
  306. /package/{src → build}/img/bg_streets.jpg +0 -0
  307. /package/{src → build}/img/loader_base.jpg +0 -0
  308. /package/{src → build}/img/logo_dead.svg +0 -0
  309. /package/{src → build}/img/marker.svg +0 -0
  310. /package/{src → build}/img/marker_blue.svg +0 -0
  311. /package/{src → build}/img/osm.svg +0 -0
  312. /package/{src → build}/img/panoramax.svg +0 -0
  313. /package/{src → build}/img/switch_big.svg +0 -0
  314. /package/{src → build}/img/switch_mini.svg +0 -0
  315. /package/{src → build}/img/wd.svg +0 -0
  316. /package/{src → build}/translations/ar.json +0 -0
  317. /package/{src → build}/translations/be.json +0 -0
  318. /package/{src → build}/translations/br.json +0 -0
  319. /package/{src → build}/translations/cy.json +0 -0
  320. /package/{src → build}/translations/da.json +0 -0
  321. /package/{src → build}/translations/de.json +0 -0
  322. /package/{src → build}/translations/en.json +0 -0
  323. /package/{src → build}/translations/eo.json +0 -0
  324. /package/{src → build}/translations/es.json +0 -0
  325. /package/{src → build}/translations/fi.json +0 -0
  326. /package/{src → build}/translations/fr.json +0 -0
  327. /package/{src → build}/translations/hu.json +0 -0
  328. /package/{src → build}/translations/it.json +0 -0
  329. /package/{src → build}/translations/ja.json +0 -0
  330. /package/{src → build}/translations/ko.json +0 -0
  331. /package/{src → build}/translations/nl.json +0 -0
  332. /package/{src → build}/translations/nn.json +0 -0
  333. /package/{src → build}/translations/pl.json +0 -0
  334. /package/{src → build}/translations/pt_BR.json +0 -0
  335. /package/{src → build}/translations/sv.json +0 -0
  336. /package/{src → build}/translations/ti.json +0 -0
  337. /package/{src → build}/translations/tr.json +0 -0
  338. /package/{src → build}/translations/uk.json +0 -0
  339. /package/{src → build}/translations/zh_Hant.json +0 -0
  340. /package/{src → build}/utils/PanoraMapProtocol.js +0 -0
  341. /package/{src → build}/utils/services.js +0 -0
@@ -1,220 +0,0 @@
1
- <a name="Panoramax.components.core.CoverageMap"></a>
2
-
3
- ## Panoramax.components.core.CoverageMap ⇐ [<code>Basic</code>](Basic.md/#Panoramax.components.core.Basic)
4
- **Kind**: static class of <code>Panoramax.components.core</code>
5
- **Extends**: [<code>Basic</code>](Basic.md/#Panoramax.components.core.Basic)
6
- **Emits**: [<code>select</code>](Basic.md/#Panoramax.components.core.Basic+event_select), [<code>ready</code>](Basic.md/#Panoramax.components.core.Basic+event_ready), [<code>broken</code>](Basic.md/#Panoramax.components.core.Basic+event_broken)
7
- **Element**: pnx-coverage-map
8
- **Properties**
9
-
10
- | Name | Type | Description |
11
- | --- | --- | --- |
12
- | loader | [<code>Loader</code>](../ui/Loader.md/#Panoramax.components.ui.Loader) | The loader screen |
13
- | api | [<code>API</code>](../../utils/API.md/#Panoramax.utils.API) | The API manager |
14
- | map | [<code>Map</code>](../ui/Map.md/#Panoramax.components.ui.Map) | The MapLibre GL map itself |
15
- | mapStyleComposer | [<code>MapStyleComposer</code>](../../utils/MapStyleComposer.md/#Panoramax.utils.MapStyleComposer) | The map style helper |
16
-
17
-
18
- * [.CoverageMap](#Panoramax.components.core.CoverageMap) ⇐ [<code>Basic</code>](Basic.md/#Panoramax.components.core.Basic)
19
- * [new CoverageMap()](#new_Panoramax.components.core.CoverageMap_new)
20
- * [.properties](#Panoramax.components.core.CoverageMap+properties) : <code>Object</code>
21
- * [.onceReady()](Basic.md/#Panoramax.components.core.Basic+onceReady) ⇒ <code>Promise</code>
22
- * [.onceAPIReady()](Basic.md/#Panoramax.components.core.Basic+onceAPIReady) ⇒ <code>Promise</code>
23
- * [.getClassName()](Basic.md/#Panoramax.components.core.Basic+getClassName) ⇒ <code>string</code>
24
- * [.select([seqId], [picId], [force])](#Panoramax.components.core.Basic+select)
25
- * [.isWidthSmall()](Basic.md/#Panoramax.components.core.Basic+isWidthSmall) ⇒ <code>boolean</code>
26
- * [.isWidthMedium()](Basic.md/#Panoramax.components.core.Basic+isWidthMedium) ⇒ <code>boolean</code>
27
- * [.isHeightSmall()](Basic.md/#Panoramax.components.core.Basic+isHeightSmall) ⇒ <code>boolean</code>
28
- * [.getSubComponentsNames()](Basic.md/#Panoramax.components.core.Basic+getSubComponentsNames) ⇒ <code>Array.&lt;string&gt;</code>
29
- * [.addEventListener(type, listener, [options])](#Panoramax.components.core.Basic+addEventListener)
30
- * ["menu-opened"](Basic.md/#Panoramax.components.core.Basic+event_menu-opened)
31
- * ["select"](Basic.md/#Panoramax.components.core.Basic+event_select)
32
- * ["ready"](Basic.md/#Panoramax.components.core.Basic+event_ready)
33
- * ["broken"](Basic.md/#Panoramax.components.core.Basic+event_broken)
34
-
35
- <a name="new_Panoramax.components.core.CoverageMap_new"></a>
36
-
37
- ### new CoverageMap()
38
- Coverage Map is a basic map showing Panoramax coverage.
39
-
40
- Make sure to set width/height through CSS for proper display.
41
-
42
- **Example**
43
- ```html
44
- <pnx-coverage-map
45
- endpoint="https://panoramax.openstreetmap.fr/"
46
- map-options='{"bounds": [[-73.9876, 40.7661], [-73.9397, 40.8002]]}'
47
- style="width: 300px; height: 250px"
48
- />
49
- ```
50
- <a name="Panoramax.components.core.CoverageMap+properties"></a>
51
-
52
- ### coverageMap.properties : <code>Object</code>
53
- Component properties.
54
-
55
- **Kind**: instance property of [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
56
- **Mixes**: [<code>properties</code>](Basic.md/#Panoramax.components.core.Basic+properties)
57
- **Overrides**: [<code>properties</code>](Basic.md/#Panoramax.components.core.Basic+properties)
58
- **Properties**
59
-
60
- | Name | Type | Description |
61
- | --- | --- | --- |
62
- | endpoint | <code>string</code> | URL to API to use (must be a [STAC API](https://github.com/radiantearth/stac-api-spec/blob/main/overview.md)) |
63
- | [picture] | <code>string</code> | The picture ID to display |
64
- | [sequence] | <code>string</code> | The sequence ID of the picture displayed |
65
- | [fetch-options] | <code>object</code> | Set custom options for fetch calls made against API ([same syntax as fetch options parameter](https://developer.mozilla.org/en-US/docs/Web/API/fetch#parameters)) |
66
- | [map-style] | <code>string</code> \| <code>object</code> | The map's MapLibre style. This can be an a JSON object conforming to the schema described in the [MapLibre Style Specification](https://maplibre.org/maplibre-style-spec/), or a URL string pointing to one. Defaults to OSM vector tiles. |
67
- | [lang] | <code>string</code> | To override language used for labels. Defaults to using user's preferred languages. |
68
- | [map-options] | <code>object</code> | [Any map option available in Map class](../ui/Map.md/#Panoramax.components.ui.Map).<br />Example: `map-options='{"bounds": [[-73.9876, 40.7661], [-73.9397, 40.8002]]}'` |
69
- | [user] | <code>string</code> | To filter on a specific user UUID |
70
-
71
- <a name="Panoramax.components.core.Basic+onceReady"></a>
72
-
73
- ### coverageMap.onceReady() ⇒ <code>Promise</code>
74
- Waits for component to have its first loading done.
75
-
76
- Each inheriting class must override this method.
77
-
78
- **Kind**: instance method of [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
79
- **Fulfil**: <code>null</code> When initialization is complete.
80
- **Reject**: <code>string</code> Error message
81
- <a name="Panoramax.components.core.Basic+onceAPIReady"></a>
82
-
83
- ### coverageMap.onceAPIReady() ⇒ <code>Promise</code>
84
- Waits for initial API setup.
85
-
86
- **Kind**: instance method of [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
87
- **Overrides**: [<code>onceAPIReady</code>](Basic.md/#Panoramax.components.core.Basic+onceAPIReady)
88
- **Fulfil**: <code>null</code> When API is ready.
89
- **Reject**: <code>string</code> Error message
90
- <a name="Panoramax.components.core.Basic+getClassName"></a>
91
-
92
- ### coverageMap.getClassName() ⇒ <code>string</code>
93
- This allows to retrieve an always correct class name.
94
- This is crap, but avoids issues with Webpack & so on.
95
-
96
- Each inheriting class must override this method.
97
-
98
- **Kind**: instance method of [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
99
- **Returns**: <code>string</code> - The class name (for example "Basic")
100
- <a name="Panoramax.components.core.Basic+select"></a>
101
-
102
- ### coverageMap.select([seqId], [picId], [force])
103
- Change the currently picture and/or sequence.
104
- Calling the method without parameters unselects.
105
-
106
- **Kind**: instance method of [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
107
-
108
- | Param | Type | Default | Description |
109
- | --- | --- | --- | --- |
110
- | [seqId] | <code>string</code> | <code>null</code> | The sequence UUID |
111
- | [picId] | <code>string</code> | <code>null</code> | The picture UUID |
112
- | [force] | <code>boolean</code> | <code>false</code> | Force select even if already selected |
113
-
114
- <a name="Panoramax.components.core.Basic+isWidthSmall"></a>
115
-
116
- ### coverageMap.isWidthSmall() ⇒ <code>boolean</code>
117
- Is the view running in a small container (small embed or smartphone)
118
-
119
- **Kind**: instance method of [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
120
- **Returns**: <code>boolean</code> - True if container is small
121
- <a name="Panoramax.components.core.Basic+isWidthMedium"></a>
122
-
123
- ### coverageMap.isWidthMedium() ⇒ <code>boolean</code>
124
- Is the view running in a medium container (576-768px)
125
-
126
- **Kind**: instance method of [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
127
- **Returns**: <code>boolean</code> - True if container is medium
128
- <a name="Panoramax.components.core.Basic+isHeightSmall"></a>
129
-
130
- ### coverageMap.isHeightSmall() ⇒ <code>boolean</code>
131
- Is the view running in a small-height container (small embed or smartphone)
132
-
133
- **Kind**: instance method of [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
134
- **Returns**: <code>boolean</code> - True if container height is small
135
- <a name="Panoramax.components.core.Basic+getSubComponentsNames"></a>
136
-
137
- ### coverageMap.getSubComponentsNames() ⇒ <code>Array.&lt;string&gt;</code>
138
- List names of sub-components (like loader, api, map, psv) available in this component.
139
-
140
- **Kind**: instance method of [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
141
- **Returns**: <code>Array.&lt;string&gt;</code> - Sub-components names.
142
- <a name="Panoramax.components.core.Basic+addEventListener"></a>
143
-
144
- ### coverageMap.addEventListener(type, listener, [options])
145
- Listen to events from this components or one of its sub-components.
146
-
147
- For example, you can listen to `map` events using prefix `map:`.
148
-
149
- ```js
150
- me.addEventListener("map:move", doSomething);
151
- ```
152
-
153
- **Kind**: instance method of [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
154
-
155
- | Param | Type | Description |
156
- | --- | --- | --- |
157
- | type | <code>string</code> | The event type to listen for |
158
- | listener | <code>function</code> | The event handler |
159
- | [options] | <code>object</code> | [Any original addEventListener available options](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#options) |
160
-
161
- <a name="Panoramax.components.core.Basic+event_menu-opened"></a>
162
-
163
- ### "menu-opened"
164
- Event for overlaying menu opening
165
-
166
- **Kind**: event emitted by [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
167
- **Properties**
168
-
169
- | Name | Type | Description |
170
- | --- | --- | --- |
171
- | detail.menu | <code>Element</code> | The opened menu |
172
-
173
- <a name="Panoramax.components.core.Basic+event_select"></a>
174
-
175
- ### "select"
176
- Event for sequence/picture selection
177
-
178
- **Kind**: event emitted by [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
179
- **Properties**
180
-
181
- | Name | Type | Description |
182
- | --- | --- | --- |
183
- | detail.seqId | <code>string</code> | The selected sequence ID |
184
- | detail.picId | <code>string</code> | The selected picture ID (or null if not a precise picture clicked) |
185
- | [detail.prevSeqId] | <code>string</code> | The previously selected sequence ID (or null if none) |
186
- | [detail.prevPicId] | <code>string</code> | The previously selected picture ID (or null if none) |
187
-
188
- <a name="Panoramax.components.core.Basic+event_ready"></a>
189
-
190
- ### "ready"
191
- Event when component is ready to use.
192
- This happens when loader screen disappear, with picture and map loaded.
193
-
194
- To follow more precisely loading steps, you can also watch for sub-components `ready` events.
195
- ```js
196
- // Watch API-readiness
197
- viewer.addEventListener("api:ready", ...); // From parent
198
- viewer.api.addEventListener("ready", ...); // Or on sub-component
199
- ```
200
-
201
- **Kind**: event emitted by [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
202
- <a name="Panoramax.components.core.Basic+event_broken"></a>
203
-
204
- ### "broken"
205
- Event for viewer failing to initially load.
206
-
207
- To follow more precisely loading failures, you can also watch for sub-components `broken` events.
208
- ```js
209
- // Watch API breaks
210
- viewer.addEventListener("api:broken", ...); // From parent
211
- viewer.api.addEventListener("broken", ...); // Or on sub-component
212
- ```
213
-
214
- **Kind**: event emitted by [<code>CoverageMap</code>](#Panoramax.components.core.CoverageMap)
215
- **Properties**
216
-
217
- | Name | Type | Description |
218
- | --- | --- | --- |
219
- | detail.error | <code>string</code> | The user-friendly error message to display |
220
-
@@ -1,252 +0,0 @@
1
- <a name="Panoramax.components.core.Editor"></a>
2
-
3
- ## Panoramax.components.core.Editor ⇐ [<code>Basic</code>](Basic.md/#Panoramax.components.core.Basic)
4
- **Kind**: static class of <code>Panoramax.components.core</code>
5
- **Extends**: [<code>Basic</code>](Basic.md/#Panoramax.components.core.Basic)
6
- **Emits**: [<code>select</code>](Basic.md/#Panoramax.components.core.Basic+event_select), [<code>ready</code>](Basic.md/#Panoramax.components.core.Basic+event_ready), [<code>broken</code>](Basic.md/#Panoramax.components.core.Basic+event_broken)
7
- **Element**: pnx-editor
8
- **Slot**: `top-left` The top-left corner
9
- **Slot**: `top` The top middle corner
10
- **Slot**: `top-right` The top-right corner
11
- **Slot**: `bottom-left` The bottom-left corner
12
- **Slot**: `bottom` The bottom middle corner
13
- **Slot**: `bottom-right` The bottom-right corner
14
- **Properties**
15
-
16
- | Name | Type | Description |
17
- | --- | --- | --- |
18
- | loader | [<code>Loader</code>](../ui/Loader.md/#Panoramax.components.ui.Loader) | The loader screen |
19
- | api | [<code>API</code>](../../utils/API.md/#Panoramax.utils.API) | The API manager |
20
- | map | [<code>Map</code>](../ui/Map.md/#Panoramax.components.ui.Map) | The MapLibre GL map itself |
21
- | mapStyleComposer | [<code>MapStyleComposer</code>](../../utils/MapStyleComposer.md/#Panoramax.utils.MapStyleComposer) | The map style helper |
22
- | psv | [<code>Photo</code>](../ui/Photo.md/#Panoramax.components.ui.Photo) | The Photo Sphere Viewer component itself |
23
- | grid | [<code>CorneredGrid</code>](../layout/CorneredGrid.md/#Panoramax.components.layout.CorneredGrid) | The grid layout manager |
24
-
25
-
26
- * [.Editor](#Panoramax.components.core.Editor) ⇐ [<code>Basic</code>](Basic.md/#Panoramax.components.core.Basic)
27
- * [new Editor()](#new_Panoramax.components.core.Editor_new)
28
- * [.properties](#Panoramax.components.core.Editor+properties) : <code>Object</code>
29
- * [.previewSequenceHeadingChange([relHeading])](#Panoramax.components.core.Editor+previewSequenceHeadingChange)
30
- * [.onceReady()](Basic.md/#Panoramax.components.core.Basic+onceReady) ⇒ <code>Promise</code>
31
- * [.onceAPIReady()](Basic.md/#Panoramax.components.core.Basic+onceAPIReady) ⇒ <code>Promise</code>
32
- * [.getClassName()](Basic.md/#Panoramax.components.core.Basic+getClassName) ⇒ <code>string</code>
33
- * [.select([seqId], [picId], [force])](#Panoramax.components.core.Basic+select)
34
- * [.isWidthSmall()](Basic.md/#Panoramax.components.core.Basic+isWidthSmall) ⇒ <code>boolean</code>
35
- * [.isWidthMedium()](Basic.md/#Panoramax.components.core.Basic+isWidthMedium) ⇒ <code>boolean</code>
36
- * [.isHeightSmall()](Basic.md/#Panoramax.components.core.Basic+isHeightSmall) ⇒ <code>boolean</code>
37
- * [.getSubComponentsNames()](Basic.md/#Panoramax.components.core.Basic+getSubComponentsNames) ⇒ <code>Array.&lt;string&gt;</code>
38
- * [.addEventListener(type, listener, [options])](#Panoramax.components.core.Basic+addEventListener)
39
- * ["menu-opened"](Basic.md/#Panoramax.components.core.Basic+event_menu-opened)
40
- * ["select"](Basic.md/#Panoramax.components.core.Basic+event_select)
41
- * ["ready"](Basic.md/#Panoramax.components.core.Basic+event_ready)
42
- * ["broken"](Basic.md/#Panoramax.components.core.Basic+event_broken)
43
-
44
- <a name="new_Panoramax.components.core.Editor_new"></a>
45
-
46
- ### new Editor()
47
- Editor allows to focus on a single sequence, and preview what you edits would look like.
48
- It shows both picture and map.
49
-
50
- Make sure to set width/height through CSS for proper display.
51
-
52
- This component has a [CorneredGrid](../layout/CorneredGrid.md/#Panoramax.components.layout.CorneredGrid) layout, you can use directly any slot element to pass custom widgets.
53
-
54
- **Example**
55
- ```html
56
- <!-- Basic example -->
57
- <pnx-editor
58
- endpoint="https://panoramax.openstreetmap.fr/"
59
- style="width: 300px; height: 250px"
60
- />
61
-
62
- <!-- With slotted widgets -->
63
- <pnx-editor
64
- endpoint="https://panoramax.openstreetmap.fr/"
65
- style="width: 300px; height: 250px"
66
- >
67
- <p slot="top-right">My custom text</p>
68
- </pnx-editor>
69
- ```
70
- <a name="Panoramax.components.core.Editor+properties"></a>
71
-
72
- ### editor.properties : <code>Object</code>
73
- Component properties. All of [Basic properties](Basic.md/#Panoramax.components.core.Basic+properties) are available as well.
74
-
75
- **Kind**: instance property of [<code>Editor</code>](#Panoramax.components.core.Editor)
76
- **Mixes**: [<code>properties</code>](Basic.md/#Panoramax.components.core.Basic+properties)
77
- **Overrides**: [<code>properties</code>](Basic.md/#Panoramax.components.core.Basic+properties)
78
- **Properties**
79
-
80
- | Name | Type | Default | Description |
81
- | --- | --- | --- | --- |
82
- | endpoint | <code>string</code> | | URL to API to use (must be a [STAC API](https://github.com/radiantearth/stac-api-spec/blob/main/overview.md)) |
83
- | [picture] | <code>string</code> | | The picture ID to display |
84
- | [sequence] | <code>string</code> | | The sequence ID of the picture displayed |
85
- | [fetch-options] | <code>object</code> | | Set custom options for fetch calls made against API ([same syntax as fetch options parameter](https://developer.mozilla.org/en-US/docs/Web/API/fetch#parameters)) |
86
- | [map-style] | <code>string</code> \| <code>object</code> | | The map's MapLibre style. This can be an a JSON object conforming to the schema described in the [MapLibre Style Specification](https://maplibre.org/maplibre-style-spec/), or a URL string pointing to one. Defaults to OSM vector tiles. |
87
- | [lang] | <code>string</code> | | To override language used for labels. Defaults to using user's preferred languages. |
88
- | [raster] | <code>object</code> | | The MapLibre raster source for aerial background. This must be a JSON object following [MapLibre raster source definition](https://maplibre.org/maplibre-style-spec/sources/#raster). |
89
- | [background] | <code>string</code> | <code>&quot;streets&quot;</code> | Choose default map background to display (streets or aerial, if raster aerial background available). Defaults to street. |
90
-
91
- <a name="Panoramax.components.core.Editor+previewSequenceHeadingChange"></a>
92
-
93
- ### editor.previewSequenceHeadingChange([relHeading])
94
- Preview on map how the new relative heading would reflect on all pictures.
95
- This doesn't change anything on API-side, it's just a preview.
96
-
97
- **Kind**: instance method of [<code>Editor</code>](#Panoramax.components.core.Editor)
98
-
99
- | Param | Type | Description |
100
- | --- | --- | --- |
101
- | [relHeading] | <code>number</code> | The new relative heading compared to sequence path. In degrees, between -180 and 180 (0 = front, -90 = left, 90 = right). Set to null to remove preview. |
102
-
103
- <a name="Panoramax.components.core.Basic+onceReady"></a>
104
-
105
- ### editor.onceReady() ⇒ <code>Promise</code>
106
- Waits for component to have its first loading done.
107
-
108
- Each inheriting class must override this method.
109
-
110
- **Kind**: instance method of [<code>Editor</code>](#Panoramax.components.core.Editor)
111
- **Fulfil**: <code>null</code> When initialization is complete.
112
- **Reject**: <code>string</code> Error message
113
- <a name="Panoramax.components.core.Basic+onceAPIReady"></a>
114
-
115
- ### editor.onceAPIReady() ⇒ <code>Promise</code>
116
- Waits for initial API setup.
117
-
118
- **Kind**: instance method of [<code>Editor</code>](#Panoramax.components.core.Editor)
119
- **Overrides**: [<code>onceAPIReady</code>](Basic.md/#Panoramax.components.core.Basic+onceAPIReady)
120
- **Fulfil**: <code>null</code> When API is ready.
121
- **Reject**: <code>string</code> Error message
122
- <a name="Panoramax.components.core.Basic+getClassName"></a>
123
-
124
- ### editor.getClassName() ⇒ <code>string</code>
125
- This allows to retrieve an always correct class name.
126
- This is crap, but avoids issues with Webpack & so on.
127
-
128
- Each inheriting class must override this method.
129
-
130
- **Kind**: instance method of [<code>Editor</code>](#Panoramax.components.core.Editor)
131
- **Returns**: <code>string</code> - The class name (for example "Basic")
132
- <a name="Panoramax.components.core.Basic+select"></a>
133
-
134
- ### editor.select([seqId], [picId], [force])
135
- Change the currently picture and/or sequence.
136
- Calling the method without parameters unselects.
137
-
138
- **Kind**: instance method of [<code>Editor</code>](#Panoramax.components.core.Editor)
139
-
140
- | Param | Type | Default | Description |
141
- | --- | --- | --- | --- |
142
- | [seqId] | <code>string</code> | <code>null</code> | The sequence UUID |
143
- | [picId] | <code>string</code> | <code>null</code> | The picture UUID |
144
- | [force] | <code>boolean</code> | <code>false</code> | Force select even if already selected |
145
-
146
- <a name="Panoramax.components.core.Basic+isWidthSmall"></a>
147
-
148
- ### editor.isWidthSmall() ⇒ <code>boolean</code>
149
- Is the view running in a small container (small embed or smartphone)
150
-
151
- **Kind**: instance method of [<code>Editor</code>](#Panoramax.components.core.Editor)
152
- **Returns**: <code>boolean</code> - True if container is small
153
- <a name="Panoramax.components.core.Basic+isWidthMedium"></a>
154
-
155
- ### editor.isWidthMedium() ⇒ <code>boolean</code>
156
- Is the view running in a medium container (576-768px)
157
-
158
- **Kind**: instance method of [<code>Editor</code>](#Panoramax.components.core.Editor)
159
- **Returns**: <code>boolean</code> - True if container is medium
160
- <a name="Panoramax.components.core.Basic+isHeightSmall"></a>
161
-
162
- ### editor.isHeightSmall() ⇒ <code>boolean</code>
163
- Is the view running in a small-height container (small embed or smartphone)
164
-
165
- **Kind**: instance method of [<code>Editor</code>](#Panoramax.components.core.Editor)
166
- **Returns**: <code>boolean</code> - True if container height is small
167
- <a name="Panoramax.components.core.Basic+getSubComponentsNames"></a>
168
-
169
- ### editor.getSubComponentsNames() ⇒ <code>Array.&lt;string&gt;</code>
170
- List names of sub-components (like loader, api, map, psv) available in this component.
171
-
172
- **Kind**: instance method of [<code>Editor</code>](#Panoramax.components.core.Editor)
173
- **Returns**: <code>Array.&lt;string&gt;</code> - Sub-components names.
174
- <a name="Panoramax.components.core.Basic+addEventListener"></a>
175
-
176
- ### editor.addEventListener(type, listener, [options])
177
- Listen to events from this components or one of its sub-components.
178
-
179
- For example, you can listen to `map` events using prefix `map:`.
180
-
181
- ```js
182
- me.addEventListener("map:move", doSomething);
183
- ```
184
-
185
- **Kind**: instance method of [<code>Editor</code>](#Panoramax.components.core.Editor)
186
-
187
- | Param | Type | Description |
188
- | --- | --- | --- |
189
- | type | <code>string</code> | The event type to listen for |
190
- | listener | <code>function</code> | The event handler |
191
- | [options] | <code>object</code> | [Any original addEventListener available options](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#options) |
192
-
193
- <a name="Panoramax.components.core.Basic+event_menu-opened"></a>
194
-
195
- ### "menu-opened"
196
- Event for overlaying menu opening
197
-
198
- **Kind**: event emitted by [<code>Editor</code>](#Panoramax.components.core.Editor)
199
- **Properties**
200
-
201
- | Name | Type | Description |
202
- | --- | --- | --- |
203
- | detail.menu | <code>Element</code> | The opened menu |
204
-
205
- <a name="Panoramax.components.core.Basic+event_select"></a>
206
-
207
- ### "select"
208
- Event for sequence/picture selection
209
-
210
- **Kind**: event emitted by [<code>Editor</code>](#Panoramax.components.core.Editor)
211
- **Properties**
212
-
213
- | Name | Type | Description |
214
- | --- | --- | --- |
215
- | detail.seqId | <code>string</code> | The selected sequence ID |
216
- | detail.picId | <code>string</code> | The selected picture ID (or null if not a precise picture clicked) |
217
- | [detail.prevSeqId] | <code>string</code> | The previously selected sequence ID (or null if none) |
218
- | [detail.prevPicId] | <code>string</code> | The previously selected picture ID (or null if none) |
219
-
220
- <a name="Panoramax.components.core.Basic+event_ready"></a>
221
-
222
- ### "ready"
223
- Event when component is ready to use.
224
- This happens when loader screen disappear, with picture and map loaded.
225
-
226
- To follow more precisely loading steps, you can also watch for sub-components `ready` events.
227
- ```js
228
- // Watch API-readiness
229
- viewer.addEventListener("api:ready", ...); // From parent
230
- viewer.api.addEventListener("ready", ...); // Or on sub-component
231
- ```
232
-
233
- **Kind**: event emitted by [<code>Editor</code>](#Panoramax.components.core.Editor)
234
- <a name="Panoramax.components.core.Basic+event_broken"></a>
235
-
236
- ### "broken"
237
- Event for viewer failing to initially load.
238
-
239
- To follow more precisely loading failures, you can also watch for sub-components `broken` events.
240
- ```js
241
- // Watch API breaks
242
- viewer.addEventListener("api:broken", ...); // From parent
243
- viewer.api.addEventListener("broken", ...); // Or on sub-component
244
- ```
245
-
246
- **Kind**: event emitted by [<code>Editor</code>](#Panoramax.components.core.Editor)
247
- **Properties**
248
-
249
- | Name | Type | Description |
250
- | --- | --- | --- |
251
- | detail.error | <code>string</code> | The user-friendly error message to display |
252
-