mobility-toolbox-js 2.3.10 → 2.4.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 (471) hide show
  1. package/api/RealtimeAPI.d.ts +290 -0
  2. package/api/RealtimeAPI.d.ts.map +1 -0
  3. package/api/RealtimeAPI.js +483 -0
  4. package/api/RoutingAPI.d.ts +37 -0
  5. package/api/RoutingAPI.d.ts.map +1 -0
  6. package/api/RoutingAPI.js +35 -0
  7. package/api/StopsAPI.d.ts +38 -0
  8. package/api/StopsAPI.d.ts.map +1 -0
  9. package/api/StopsAPI.js +36 -0
  10. package/api/index.d.ts +4 -0
  11. package/api/index.d.ts.map +1 -0
  12. package/api/typedefs.d.ts +179 -0
  13. package/api/typedefs.d.ts.map +1 -0
  14. package/{src/api → api}/typedefs.js +1 -11
  15. package/common/api/HttpAPI.d.ts +31 -0
  16. package/common/api/HttpAPI.d.ts.map +1 -0
  17. package/common/api/HttpAPI.js +57 -0
  18. package/common/api/WebSocketAPI.d.ts +153 -0
  19. package/common/api/WebSocketAPI.d.ts.map +1 -0
  20. package/common/api/WebSocketAPI.js +341 -0
  21. package/common/controls/ControlCommon.d.ts +76 -0
  22. package/common/controls/ControlCommon.d.ts.map +1 -0
  23. package/common/controls/ControlCommon.js +150 -0
  24. package/common/controls/CopyrightControlCommon.d.ts +13 -0
  25. package/common/controls/CopyrightControlCommon.d.ts.map +1 -0
  26. package/common/controls/CopyrightControlCommon.js +34 -0
  27. package/common/controls/StopFinderControlCommon.d.ts +55 -0
  28. package/common/controls/StopFinderControlCommon.d.ts.map +1 -0
  29. package/common/controls/StopFinderControlCommon.js +144 -0
  30. package/common/index.d.ts +3 -0
  31. package/common/index.d.ts.map +1 -0
  32. package/common/layers/LayerCommon.d.ts +94 -0
  33. package/common/layers/LayerCommon.d.ts.map +1 -0
  34. package/common/layers/LayerCommon.js +244 -0
  35. package/common/mixins/RealtimeLayerMixin.d.ts +288 -0
  36. package/common/mixins/RealtimeLayerMixin.d.ts.map +1 -0
  37. package/common/mixins/RealtimeLayerMixin.js +779 -0
  38. package/common/mixins/UserInteractionsLayerMixin.d.ts +60 -0
  39. package/common/mixins/UserInteractionsLayerMixin.d.ts.map +1 -0
  40. package/common/mixins/UserInteractionsLayerMixin.js +241 -0
  41. package/common/styles/index.d.ts +5 -0
  42. package/common/styles/index.d.ts.map +1 -0
  43. package/common/styles/realtimeDefaultStyle.d.ts +36 -0
  44. package/common/styles/realtimeDefaultStyle.d.ts.map +1 -0
  45. package/common/styles/realtimeDefaultStyle.js +276 -0
  46. package/common/styles/realtimeDelayStyle.d.ts +12 -0
  47. package/common/styles/realtimeDelayStyle.d.ts.map +1 -0
  48. package/common/styles/realtimeDelayStyle.js +13 -0
  49. package/common/styles/realtimeHeadingStyle.d.ts +12 -0
  50. package/common/styles/realtimeHeadingStyle.d.ts.map +1 -0
  51. package/common/styles/realtimeHeadingStyle.js +87 -0
  52. package/common/styles/realtimeSimpleStyle.d.ts +4 -0
  53. package/common/styles/realtimeSimpleStyle.d.ts.map +1 -0
  54. package/common/styles/realtimeSimpleStyle.js +23 -0
  55. package/common/typedefs.d.ts +183 -0
  56. package/common/typedefs.d.ts.map +1 -0
  57. package/{src/common → common}/typedefs.js +1 -1
  58. package/common/utils/compareDepartures.d.ts +11 -0
  59. package/common/utils/compareDepartures.d.ts.map +1 -0
  60. package/common/utils/compareDepartures.js +35 -0
  61. package/common/utils/createCanvas.d.ts +11 -0
  62. package/common/utils/createCanvas.d.ts.map +1 -0
  63. package/common/utils/createCanvas.js +28 -0
  64. package/common/utils/createRealtimeFilters.d.ts +13 -0
  65. package/common/utils/createRealtimeFilters.d.ts.map +1 -0
  66. package/common/utils/createRealtimeFilters.js +74 -0
  67. package/common/utils/debounceDeparturesMessages.d.ts +13 -0
  68. package/common/utils/debounceDeparturesMessages.d.ts.map +1 -0
  69. package/common/utils/debounceDeparturesMessages.js +28 -0
  70. package/common/utils/debounceWebsocketMessages.d.ts +12 -0
  71. package/common/utils/debounceWebsocketMessages.d.ts.map +1 -0
  72. package/common/utils/debounceWebsocketMessages.js +30 -0
  73. package/common/utils/getLayersAsFlatArray.d.ts +4 -0
  74. package/common/utils/getLayersAsFlatArray.d.ts.map +1 -0
  75. package/common/utils/getLayersAsFlatArray.js +16 -0
  76. package/common/utils/getMapboxMapCopyrights.d.ts +18 -0
  77. package/common/utils/getMapboxMapCopyrights.d.ts.map +1 -0
  78. package/common/utils/getMapboxMapCopyrights.js +30 -0
  79. package/common/utils/getMapboxRender.d.ts +8 -0
  80. package/common/utils/getMapboxRender.d.ts.map +1 -0
  81. package/common/utils/getMapboxRender.js +88 -0
  82. package/common/utils/getMaplibreRender.d.ts +9 -0
  83. package/common/utils/getMaplibreRender.d.ts.map +1 -0
  84. package/common/utils/getMaplibreRender.js +40 -0
  85. package/{src/common/utils/getRealtimeModeSuffix.ts → common/utils/getRealtimeModeSuffix.d.ts} +2 -4
  86. package/common/utils/getRealtimeModeSuffix.d.ts.map +1 -0
  87. package/common/utils/getRealtimeModeSuffix.js +7 -0
  88. package/common/utils/getUrlWithParams.d.ts +9 -0
  89. package/common/utils/getUrlWithParams.d.ts.map +1 -0
  90. package/common/utils/getUrlWithParams.js +18 -0
  91. package/common/utils/getVehiclePosition.d.ts +16 -0
  92. package/common/utils/getVehiclePosition.d.ts.map +1 -0
  93. package/common/utils/getVehiclePosition.js +72 -0
  94. package/common/utils/index.d.ts +18 -0
  95. package/common/utils/index.d.ts.map +1 -0
  96. package/{src/common → common}/utils/index.js +2 -1
  97. package/common/utils/realtimeConfig.d.ts +53 -0
  98. package/common/utils/realtimeConfig.d.ts.map +1 -0
  99. package/common/utils/realtimeConfig.js +202 -0
  100. package/common/utils/removeDuplicate.d.ts +10 -0
  101. package/common/utils/removeDuplicate.d.ts.map +1 -0
  102. package/common/utils/removeDuplicate.js +15 -0
  103. package/common/utils/renderTrajectories.d.ts +17 -0
  104. package/common/utils/renderTrajectories.d.ts.map +1 -0
  105. package/common/utils/renderTrajectories.js +110 -0
  106. package/common/utils/sortAndFilterDepartures.d.ts +16 -0
  107. package/common/utils/sortAndFilterDepartures.d.ts.map +1 -0
  108. package/common/utils/sortAndFilterDepartures.js +58 -0
  109. package/common/utils/sortByDelay.d.ts +4 -0
  110. package/common/utils/sortByDelay.d.ts.map +1 -0
  111. package/common/utils/sortByDelay.js +21 -0
  112. package/common/utils/timeUtils.d.ts +24 -0
  113. package/common/utils/timeUtils.d.ts.map +1 -0
  114. package/common/utils/timeUtils.js +39 -0
  115. package/iife.d.ts +3 -0
  116. package/iife.d.ts.map +1 -0
  117. package/{src/iife.js → iife.js} +1 -3
  118. package/index.d.ts +10 -0
  119. package/index.d.ts.map +1 -0
  120. package/index.js +10 -0
  121. package/mapbox/controls/CopyrightControl.d.ts +29 -0
  122. package/mapbox/controls/CopyrightControl.d.ts.map +1 -0
  123. package/{src/mapbox/controls/CopyrightControl.ts → mapbox/controls/CopyrightControl.js} +21 -26
  124. package/mapbox/controls/index.d.ts +2 -0
  125. package/mapbox/controls/index.d.ts.map +1 -0
  126. package/mapbox/index.d.ts +6 -0
  127. package/mapbox/index.d.ts.map +1 -0
  128. package/mapbox/layers/Layer.d.ts +59 -0
  129. package/mapbox/layers/Layer.d.ts.map +1 -0
  130. package/mapbox/layers/Layer.js +101 -0
  131. package/mapbox/layers/RealtimeLayer.d.ts +180 -0
  132. package/mapbox/layers/RealtimeLayer.d.ts.map +1 -0
  133. package/mapbox/layers/RealtimeLayer.js +270 -0
  134. package/mapbox/layers/index.d.ts +3 -0
  135. package/mapbox/layers/index.d.ts.map +1 -0
  136. package/mapbox/utils/getMercatorResolution.d.ts +9 -0
  137. package/mapbox/utils/getMercatorResolution.d.ts.map +1 -0
  138. package/mapbox/utils/getMercatorResolution.js +18 -0
  139. package/mapbox/utils/getSourceCoordinates.d.ts +9 -0
  140. package/mapbox/utils/getSourceCoordinates.d.ts.map +1 -0
  141. package/mapbox/utils/getSourceCoordinates.js +27 -0
  142. package/mapbox/utils/index.d.ts +3 -0
  143. package/mapbox/utils/index.d.ts.map +1 -0
  144. package/mbt.js +64822 -0
  145. package/mbt.js.map +7 -0
  146. package/mbt.min.js +1090 -0
  147. package/mbt.min.js.map +7 -0
  148. package/ol/controls/CopyrightControl.d.ts +31 -0
  149. package/ol/controls/CopyrightControl.d.ts.map +1 -0
  150. package/ol/controls/CopyrightControl.js +68 -0
  151. package/ol/controls/RoutingControl.d.ts +193 -0
  152. package/ol/controls/RoutingControl.d.ts.map +1 -0
  153. package/ol/controls/RoutingControl.js +631 -0
  154. package/ol/controls/StopFinderControl.d.ts +30 -0
  155. package/ol/controls/StopFinderControl.d.ts.map +1 -0
  156. package/{src/ol/controls/StopFinderControl.ts → ol/controls/StopFinderControl.js} +7 -10
  157. package/ol/controls/index.d.ts +4 -0
  158. package/ol/controls/index.d.ts.map +1 -0
  159. package/ol/index.d.ts +6 -0
  160. package/ol/index.d.ts.map +1 -0
  161. package/ol/layers/Layer.d.ts +86 -0
  162. package/ol/layers/Layer.d.ts.map +1 -0
  163. package/ol/layers/Layer.js +174 -0
  164. package/ol/layers/MapGlLayer.d.ts +67 -0
  165. package/ol/layers/MapGlLayer.d.ts.map +1 -0
  166. package/ol/layers/MapGlLayer.js +218 -0
  167. package/ol/layers/MapboxLayer.d.ts +50 -0
  168. package/ol/layers/MapboxLayer.d.ts.map +1 -0
  169. package/ol/layers/MapboxLayer.js +109 -0
  170. package/ol/layers/MapboxStyleLayer.d.ts +131 -0
  171. package/ol/layers/MapboxStyleLayer.d.ts.map +1 -0
  172. package/ol/layers/MapboxStyleLayer.js +369 -0
  173. package/{src/ol/layers/MaplibreLayer.ts → ol/layers/MaplibreLayer.d.ts} +10 -21
  174. package/ol/layers/MaplibreLayer.d.ts.map +1 -0
  175. package/ol/layers/MaplibreLayer.js +34 -0
  176. package/ol/layers/RealtimeLayer.d.ts +202 -0
  177. package/ol/layers/RealtimeLayer.d.ts.map +1 -0
  178. package/ol/layers/RealtimeLayer.js +332 -0
  179. package/ol/layers/RoutingLayer.d.ts +35 -0
  180. package/ol/layers/RoutingLayer.d.ts.map +1 -0
  181. package/ol/layers/RoutingLayer.js +85 -0
  182. package/ol/layers/VectorLayer.d.ts +25 -0
  183. package/ol/layers/VectorLayer.d.ts.map +1 -0
  184. package/ol/layers/VectorLayer.js +38 -0
  185. package/ol/layers/WMSLayer.d.ts +42 -0
  186. package/ol/layers/WMSLayer.d.ts.map +1 -0
  187. package/ol/layers/WMSLayer.js +88 -0
  188. package/ol/layers/index.d.ts +9 -0
  189. package/ol/layers/index.d.ts.map +1 -0
  190. package/ol/styles/fullTrajectoryDelayStyle.d.ts +4 -0
  191. package/ol/styles/fullTrajectoryDelayStyle.d.ts.map +1 -0
  192. package/ol/styles/fullTrajectoryDelayStyle.js +33 -0
  193. package/ol/styles/fullTrajectoryStyle.d.ts +5 -0
  194. package/ol/styles/fullTrajectoryStyle.d.ts.map +1 -0
  195. package/ol/styles/fullTrajectoryStyle.js +44 -0
  196. package/ol/styles/index.d.ts +3 -0
  197. package/ol/styles/index.d.ts.map +1 -0
  198. package/package.json +1 -1
  199. package/setupTests.d.ts +2 -0
  200. package/setupTests.d.ts.map +1 -0
  201. package/{src/setupTests.js → setupTests.js} +7 -12
  202. package/.esdoc.js +0 -18
  203. package/.eslintignore +0 -1
  204. package/.eslintrc.js +0 -25
  205. package/.fixpackrc +0 -20
  206. package/.github/workflows/build.yml +0 -16
  207. package/.github/workflows/conventional-pr-title.yml +0 -16
  208. package/.github/workflows/cypress.yml +0 -101
  209. package/.github/workflows/test.yml +0 -17
  210. package/.husky/commit-msg +0 -4
  211. package/.husky/post-checkout +0 -4
  212. package/.husky/post-merge +0 -4
  213. package/.husky/post-rebase +0 -4
  214. package/.husky/pre-commit +0 -4
  215. package/.lintstagedrc.js +0 -10
  216. package/.nvmrc +0 -1
  217. package/.prettierrc.js +0 -5
  218. package/.stylelintrc.js +0 -4
  219. package/CHANGELOG.md +0 -132
  220. package/LICENSE +0 -21
  221. package/MIGRATION-V2.md +0 -248
  222. package/README.md +0 -42
  223. package/__mocks__/mapbox-gl.js +0 -81
  224. package/__mocks__/maplibre-gl.js +0 -81
  225. package/babel.config.js +0 -9
  226. package/commitlint.config.js +0 -1
  227. package/cypress/e2e/examples/api.cy.js +0 -7
  228. package/cypress/e2e/examples/examples.cy.js +0 -7
  229. package/cypress/e2e/examples/navigation.cy.js +0 -29
  230. package/cypress/fixtures/example.json +0 -5
  231. package/cypress/plugins/index.js +0 -21
  232. package/cypress/support/commands.js +0 -25
  233. package/cypress/support/e2e.js +0 -20
  234. package/cypress.config.ts +0 -15
  235. package/data/fetchRoute.json +0 -292
  236. package/data/fetchTrajectories.json +0 -18
  237. package/data/fetchTrajectoryById.json +0 -3
  238. package/data/fetchTrajectoryStations.json +0 -18
  239. package/data/stopsSearch.json +0 -15
  240. package/dependabot.yml +0 -15
  241. package/doc/.eslintrc.json +0 -1
  242. package/doc/README.md +0 -34
  243. package/doc/next.config.js +0 -16
  244. package/doc/package.json +0 -41
  245. package/doc/pages/404.js +0 -5
  246. package/doc/pages/_app.js +0 -61
  247. package/doc/pages/_document.js +0 -64
  248. package/doc/pages/doc/[...slug].js +0 -23
  249. package/doc/pages/doc.js +0 -23
  250. package/doc/pages/example/[example].js +0 -52
  251. package/doc/pages/examples.js +0 -34
  252. package/doc/pages/index.js +0 -25
  253. package/doc/public/README.md +0 -15
  254. package/doc/public/favicon.ico +0 -0
  255. package/doc/public/static/assets/Lato-Black.ttf +0 -0
  256. package/doc/public/static/assets/Lato-BlackItalic.ttf +0 -0
  257. package/doc/public/static/assets/Lato-Bold.ttf +0 -0
  258. package/doc/public/static/assets/Lato-BoldItalic.ttf +0 -0
  259. package/doc/public/static/assets/Lato-Italic.ttf +0 -0
  260. package/doc/public/static/assets/Lato-Light.ttf +0 -0
  261. package/doc/public/static/assets/Lato-LightItalic.ttf +0 -0
  262. package/doc/public/static/assets/Lato-Regular.ttf +0 -0
  263. package/doc/public/static/assets/Lato-Thin.ttf +0 -0
  264. package/doc/public/static/assets/Lato-ThinItalic.ttf +0 -0
  265. package/doc/public/static/assets/OFL.txt +0 -93
  266. package/doc/public/static/examples/assets/tralis-live-map/index.js +0 -11
  267. package/doc/public/static/examples/assets/tralis-live-map/s1kreis.svg +0 -105
  268. package/doc/public/static/examples/assets/tralis-live-map/s20kreis.svg +0 -101
  269. package/doc/public/static/examples/assets/tralis-live-map/s2kreis.svg +0 -95
  270. package/doc/public/static/examples/assets/tralis-live-map/s3kreis.svg +0 -95
  271. package/doc/public/static/examples/assets/tralis-live-map/s4kreis.svg +0 -95
  272. package/doc/public/static/examples/assets/tralis-live-map/s6kreis.svg +0 -95
  273. package/doc/public/static/examples/assets/tralis-live-map/s7kreis.svg +0 -95
  274. package/doc/public/static/examples/assets/tralis-live-map/s8kreis.svg +0 -93
  275. package/doc/public/static/examples/assets/tralis-live-map/unknown.svg +0 -107
  276. package/doc/public/static/examples/layers.html +0 -11
  277. package/doc/public/static/examples/layers.js +0 -97
  278. package/doc/public/static/examples/mb-copyright.html +0 -26
  279. package/doc/public/static/examples/mb-copyright.js +0 -37
  280. package/doc/public/static/examples/mb-tracker.html +0 -1
  281. package/doc/public/static/examples/mb-tracker.js +0 -40
  282. package/doc/public/static/examples/mb-tracker.md +0 -1
  283. package/doc/public/static/examples/mb-tralis.html +0 -1
  284. package/doc/public/static/examples/mb-tralis.js +0 -34
  285. package/doc/public/static/examples/ol-copyright.html +0 -26
  286. package/doc/public/static/examples/ol-copyright.js +0 -43
  287. package/doc/public/static/examples/ol-mapbox-layer.html +0 -1
  288. package/doc/public/static/examples/ol-mapbox-layer.js +0 -28
  289. package/doc/public/static/examples/ol-mapbox-style-layer.html +0 -12
  290. package/doc/public/static/examples/ol-mapbox-style-layer.js +0 -48
  291. package/doc/public/static/examples/ol-query.html +0 -32
  292. package/doc/public/static/examples/ol-query.js +0 -83
  293. package/doc/public/static/examples/ol-routing.html +0 -26
  294. package/doc/public/static/examples/ol-routing.js +0 -65
  295. package/doc/public/static/examples/ol-routing.md +0 -1
  296. package/doc/public/static/examples/ol-stop-finder.html +0 -15
  297. package/doc/public/static/examples/ol-stop-finder.js +0 -35
  298. package/doc/public/static/examples/ol-stop-finder.md +0 -1
  299. package/doc/public/static/examples/ol-tracker.html +0 -1
  300. package/doc/public/static/examples/ol-tracker.js +0 -41
  301. package/doc/public/static/examples/ol-tracker.md +0 -1
  302. package/doc/public/static/examples/ol-tralis.html +0 -5
  303. package/doc/public/static/examples/ol-tralis.js +0 -62
  304. package/doc/public/static/examples/tralis-live-map.html +0 -1
  305. package/doc/public/static/examples/tralis-live-map.js +0 -67
  306. package/doc/public/static/examples/tralis-live-map.md +0 -3
  307. package/doc/public/static/img/live_tracker_mb.jpg +0 -0
  308. package/doc/public/static/img/live_tracker_munich.jpg +0 -0
  309. package/doc/public/static/img/live_tracker_ol.jpg +0 -0
  310. package/doc/public/static/img/mapbox.jpg +0 -0
  311. package/doc/public/static/img/mapbox_style.jpg +0 -0
  312. package/doc/public/static/img/ol-copyright.png +0 -0
  313. package/doc/public/static/img/query_objects.jpg +0 -0
  314. package/doc/public/static/img/routing.jpg +0 -0
  315. package/doc/public/static/img/simple_map.jpg +0 -0
  316. package/doc/public/static/img/stops.jpg +0 -0
  317. package/doc/public/vercel.svg +0 -4
  318. package/doc/src/components/CodeSandboxButton.js +0 -102
  319. package/doc/src/components/Documentation.js +0 -42
  320. package/doc/src/components/Esdoc/Anchor.js +0 -57
  321. package/doc/src/components/Esdoc/ClassDoc.js +0 -272
  322. package/doc/src/components/Esdoc/DeprecatedHTML.js +0 -16
  323. package/doc/src/components/Esdoc/DetailDocs.js +0 -279
  324. package/doc/src/components/Esdoc/DetailHTML.js +0 -33
  325. package/doc/src/components/Esdoc/DirectSubclassHTML.js +0 -30
  326. package/doc/src/components/Esdoc/DocBuilderUtils.js +0 -697
  327. package/doc/src/components/Esdoc/DocLinkHTML.js +0 -63
  328. package/doc/src/components/Esdoc/DocsLinkHTML.js +0 -38
  329. package/doc/src/components/Esdoc/Esdoc.js +0 -63
  330. package/doc/src/components/Esdoc/EsdocContent.js +0 -56
  331. package/doc/src/components/Esdoc/EsdocNavigation.js +0 -13
  332. package/doc/src/components/Esdoc/EsdocSearch.js +0 -78
  333. package/doc/src/components/Esdoc/ExperimentalHTML.js +0 -17
  334. package/doc/src/components/Esdoc/ExtendsChainHTML.js +0 -32
  335. package/doc/src/components/Esdoc/FileDocLinkHTML.js +0 -62
  336. package/doc/src/components/Esdoc/IdentifiersDoc.js +0 -113
  337. package/doc/src/components/Esdoc/IndirectSubclassHTML.js +0 -30
  338. package/doc/src/components/Esdoc/InheritedSummaryDoc.js +0 -70
  339. package/doc/src/components/Esdoc/InheritedSummaryHTML.js +0 -38
  340. package/doc/src/components/Esdoc/MixinClassesHTML.js +0 -29
  341. package/doc/src/components/Esdoc/NavDoc.js +0 -112
  342. package/doc/src/components/Esdoc/OverrideMethod.js +0 -44
  343. package/doc/src/components/Esdoc/OverrideMethodDescription.js +0 -35
  344. package/doc/src/components/Esdoc/Properties.js +0 -89
  345. package/doc/src/components/Esdoc/README.md +0 -45
  346. package/doc/src/components/Esdoc/SignatureHTML.js +0 -123
  347. package/doc/src/components/Esdoc/SingleDoc.js +0 -31
  348. package/doc/src/components/Esdoc/SummaryDoc.js +0 -160
  349. package/doc/src/components/Esdoc/SummaryHTML.js +0 -96
  350. package/doc/src/components/Esdoc/TypeDocLinkHTML.js +0 -251
  351. package/doc/src/components/Esdoc/index.js +0 -7
  352. package/doc/src/components/Esdoc/taffydb.js +0 -2070
  353. package/doc/src/components/Example.js +0 -200
  354. package/doc/src/components/ExampleCard.js +0 -126
  355. package/doc/src/components/Examples.js +0 -78
  356. package/doc/src/components/Home.js +0 -121
  357. package/doc/src/components/TrackerExample.js +0 -39
  358. package/doc/src/examples.js +0 -117
  359. package/doc/styles/App.scss +0 -53
  360. package/doc/styles/identifiers.css +0 -38
  361. package/doc/styles/search.css +0 -76
  362. package/doc/styles/style.css +0 -603
  363. package/esdoc/README.md +0 -27
  364. package/esdoc/plugins/MyPlugin.js +0 -69
  365. package/esdoc/plugins/dynamic-property-plugin/Plugin.js +0 -50
  366. package/esdoc/plugins/externals-plugin/Plugin.js +0 -45
  367. package/esdoc/plugins/externals-plugin/externals.js +0 -93
  368. package/esdoc/plugins/optional-chaining-plugin/Plugin.js +0 -8
  369. package/global-setup.js +0 -3
  370. package/jest.config.js +0 -24
  371. package/pull_request_template.md +0 -17
  372. package/scripts/read-pkg-json.js +0 -22
  373. package/src/api/RealtimeAPI.test.js +0 -144
  374. package/src/api/RealtimeAPI.ts +0 -712
  375. package/src/api/RoutingAPI.test.js +0 -41
  376. package/src/api/RoutingAPI.ts +0 -47
  377. package/src/api/StopsAPI.test.js +0 -34
  378. package/src/api/StopsAPI.ts +0 -45
  379. package/src/common/api/HttpAPI.test.js +0 -68
  380. package/src/common/api/HttpAPI.ts +0 -77
  381. package/src/common/api/WebSocketAPI.test.js +0 -421
  382. package/src/common/api/WebSocketAPI.ts +0 -515
  383. package/src/common/controls/ControlCommon.test.js +0 -106
  384. package/src/common/controls/ControlCommon.ts +0 -194
  385. package/src/common/controls/CopyrightControlCommon.ts +0 -41
  386. package/src/common/controls/StopFinderControlCommon.ts +0 -192
  387. package/src/common/layers/LayerCommon.test.js +0 -158
  388. package/src/common/layers/LayerCommon.ts +0 -321
  389. package/src/common/mixins/RealtimeLayerMixin.ts +0 -1168
  390. package/src/common/mixins/UserInteractionsLayerMixin.test.js +0 -227
  391. package/src/common/mixins/UserInteractionsLayerMixin.ts +0 -352
  392. package/src/common/styles/realtimeDefaultStyle.ts +0 -436
  393. package/src/common/styles/realtimeDelayStyle.ts +0 -27
  394. package/src/common/styles/realtimeHeadingStyle.ts +0 -138
  395. package/src/common/styles/realtimeSimpleStyle.ts +0 -25
  396. package/src/common/utils/compareDepartures.ts +0 -46
  397. package/src/common/utils/createCanvas.ts +0 -33
  398. package/src/common/utils/createRealtimeFilters.test.js +0 -100
  399. package/src/common/utils/createRealtimeFilters.ts +0 -96
  400. package/src/common/utils/debounceDeparturesMessages.ts +0 -52
  401. package/src/common/utils/debounceWebsocketMessages.ts +0 -47
  402. package/src/common/utils/getLayersAsFlatArray.ts +0 -17
  403. package/src/common/utils/getMapboxMapCopyrights.test.js +0 -47
  404. package/src/common/utils/getMapboxMapCopyrights.ts +0 -52
  405. package/src/common/utils/getMapboxRender.ts +0 -104
  406. package/src/common/utils/getMaplibreRender.ts +0 -54
  407. package/src/common/utils/getUrlWithParams.ts +0 -21
  408. package/src/common/utils/getVehiclePosition.ts +0 -92
  409. package/src/common/utils/realtimeConfig.test.js +0 -57
  410. package/src/common/utils/realtimeConfig.ts +0 -228
  411. package/src/common/utils/removeDuplicate.test.js +0 -22
  412. package/src/common/utils/removeDuplicate.ts +0 -22
  413. package/src/common/utils/renderTrajectories.ts +0 -194
  414. package/src/common/utils/sortAndFilterDepartures.ts +0 -78
  415. package/src/common/utils/sortByDelay.ts +0 -29
  416. package/src/common/utils/timeUtils.test.js +0 -16
  417. package/src/common/utils/timeUtils.ts +0 -45
  418. package/src/index.js +0 -10
  419. package/src/mapbox/layers/Layer.test.js +0 -217
  420. package/src/mapbox/layers/Layer.ts +0 -144
  421. package/src/mapbox/layers/RealtimeLayer.test.js +0 -13
  422. package/src/mapbox/layers/RealtimeLayer.ts +0 -350
  423. package/src/mapbox/utils/getMercatorResolution.ts +0 -21
  424. package/src/mapbox/utils/getSourceCoordinates.ts +0 -34
  425. package/src/ol/README.md +0 -0
  426. package/src/ol/controls/CopyrightControl.test.js +0 -211
  427. package/src/ol/controls/CopyrightControl.ts +0 -82
  428. package/src/ol/controls/RoutingControl.test.js +0 -205
  429. package/src/ol/controls/RoutingControl.ts +0 -869
  430. package/src/ol/controls/StopFinderControl.test.js +0 -59
  431. package/src/ol/controls/snapshots/RoutingControlRouteGen10.json +0 -58
  432. package/src/ol/controls/snapshots/RoutingControlRouteGen100.json +0 -292
  433. package/src/ol/controls/snapshots/RoutingControlRouteGen30.json +0 -69
  434. package/src/ol/controls/snapshots/RoutingControlRouteGen5.json +0 -58
  435. package/src/ol/controls/snapshots/RoutingControlRouteOSM.json +0 -759
  436. package/src/ol/controls/snapshots/RoutingControlStation1.json +0 -60
  437. package/src/ol/controls/snapshots/RoutingControlStation2.json +0 -49
  438. package/src/ol/layers/Layer.test.js +0 -212
  439. package/src/ol/layers/Layer.ts +0 -252
  440. package/src/ol/layers/MapGlLayer.ts +0 -294
  441. package/src/ol/layers/MapboxLayer.test.js +0 -190
  442. package/src/ol/layers/MapboxLayer.ts +0 -136
  443. package/src/ol/layers/MapboxStyleLayer.test.js +0 -258
  444. package/src/ol/layers/MapboxStyleLayer.ts +0 -466
  445. package/src/ol/layers/RealtimeLayer.test.js +0 -84
  446. package/src/ol/layers/RealtimeLayer.ts +0 -465
  447. package/src/ol/layers/RoutingLayer.test.js +0 -48
  448. package/src/ol/layers/RoutingLayer.ts +0 -113
  449. package/src/ol/layers/VectorLayer.test.js +0 -87
  450. package/src/ol/layers/VectorLayer.ts +0 -48
  451. package/src/ol/layers/WMSLayer.test.js +0 -65
  452. package/src/ol/layers/WMSLayer.ts +0 -114
  453. package/src/ol/styles/fullTrajectoryDelayStyle.ts +0 -37
  454. package/src/ol/styles/fullTrajectoryStyle.ts +0 -56
  455. package/tsconfig.json +0 -23
  456. /package/{src/api → api}/index.js +0 -0
  457. /package/{src/common → common}/index.js +0 -0
  458. /package/{src/common → common}/styles/index.js +0 -0
  459. /package/{src/mapbox → mapbox}/controls/index.js +0 -0
  460. /package/{src/mapbox → mapbox}/index.js +0 -0
  461. /package/{src/mapbox → mapbox}/layers/index.js +0 -0
  462. /package/{src/mapbox → mapbox}/utils/index.js +0 -0
  463. /package/{src/ol → ol}/controls/index.js +0 -0
  464. /package/{src/ol → ol}/index.js +0 -0
  465. /package/{src/ol → ol}/layers/index.js +0 -0
  466. /package/{src/ol → ol}/styles/index.js +0 -0
  467. /package/{src/types → types}/common.d.ts +0 -0
  468. /package/{src/types → types}/index.d.ts +0 -0
  469. /package/{src/types → types}/realtime.d.ts +0 -0
  470. /package/{src/types → types}/routing.d.ts +0 -0
  471. /package/{src/types → types}/stops.d.ts +0 -0
@@ -1,697 +0,0 @@
1
- /* eslint-disable no-restricted-syntax */
2
- /* eslint-disable no-underscore-dangle */
3
- import React from 'react';
4
-
5
- // We had to copy the taffydb code here instead of loading the module because nextjs can't import the module properly
6
- // so the taffydb.js file in this folder is a copy paste from taffydb@2.7.3 with a esm default export at the end.
7
- import taffy from './taffydb';
8
- import docss from './index.json';
9
-
10
- /**
11
- * Load the config into a in memory db.
12
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Plugin.js#L33
13
- */
14
- export const _data = taffy(docss);
15
-
16
- /**
17
- * Index used for the search.
18
- */
19
- let searchIndex;
20
-
21
- /**
22
- * find doc objects that is ordered.
23
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocBuilder.js#L117
24
- * @param {string} order - doc objects order(``column asec`` or ``column desc``).
25
- * @param {...Object} cond - condition objects
26
- * @returns {DocObject[]} found doc objects.
27
- * @private
28
- */
29
- export const _orderedFind = (order, ...cond) => {
30
- const data = _data(...cond);
31
-
32
- if (order) {
33
- return data.order(`${order}, name asec`).map((v) => v);
34
- }
35
- return data.order('name asec').map((v) => v);
36
- };
37
-
38
- /**
39
- * find doc object.
40
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocBuilder.js#L36
41
- * @param {...Object} cond - find condition.
42
- * @returns {DocObject[]} found doc objects.
43
- * @private
44
- */
45
- export const _find = (...cond) => {
46
- return _orderedFind(null, ...cond);
47
- };
48
-
49
- /**
50
- * find all identifiers with kind grouping.
51
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocBuilder.js#L46
52
- * @returns {{class: DocObject[], interface: DocObject[], function: DocObject[], variable: DocObject[], typedef: DocObject[], external: DocObject[]}} found doc objects.
53
- * @private
54
- */
55
- export const _findAllIdentifiersKindGrouping = () => {
56
- const result = {
57
- class: _find([{ kind: 'class', interface: false }]),
58
- interface: _find([{ kind: 'class', interface: true }]),
59
- function: _find([{ kind: 'function' }]),
60
- variable: _find([{ kind: 'variable' }]),
61
- typedef: _find([{ kind: 'typedef' }]),
62
- external: _find([{ kind: 'external' }]).filter((v) => !v.builtinExternal),
63
- };
64
- return result;
65
- };
66
-
67
- /**
68
- * fuzzy find doc object by name.
69
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocBuilder.js#L63
70
- * - equal with longname
71
- * - equal with name
72
- * - include in longname
73
- * - include in ancestor
74
- *
75
- * @param {string} name - target identifier name.
76
- * @param {string} [kind] - target kind.
77
- * @returns {DocObject[]} found doc objects.
78
- * @private
79
- */
80
- export const _findByName = (name, kind = null) => {
81
- let docs;
82
-
83
- if (kind) {
84
- docs = _orderedFind(null, { longname: name, kind });
85
- } else {
86
- docs = _orderedFind(null, { longname: name });
87
- }
88
- if (docs.length) return docs;
89
-
90
- if (kind) {
91
- docs = _orderedFind(null, { name, kind });
92
- } else {
93
- docs = _orderedFind(null, { name });
94
- }
95
- if (docs.length) return docs;
96
-
97
- const regexp = new RegExp(`[~]${name.replace('*', '\\*')}$`); // if name is `*`, need to escape.
98
- if (kind) {
99
- docs = _orderedFind(null, { longname: { regex: regexp }, kind });
100
- } else {
101
- docs = _orderedFind(null, { longname: { regex: regexp } });
102
- }
103
- if (docs.length) return docs;
104
-
105
- // inherited method?
106
- const matched = name.match(/(.*)[.#](.*)$/); // instance method(Foo#bar) or static method(Foo.baz)
107
- if (matched) {
108
- const parent = matched[1];
109
- const childName = matched[2];
110
- const parentDoc = _findByName(parent, 'class')[0];
111
- if (parentDoc && parentDoc._custom_extends_chains) {
112
- for (const superLongname of parentDoc._custom_extends_chains) {
113
- docs = _find({ memberof: superLongname, name: childName });
114
- if (docs.length) return docs;
115
- }
116
- }
117
- }
118
-
119
- return [];
120
- };
121
-
122
- /**
123
- * get file name of output html page.
124
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocBuilder.js#L555
125
- * @param {DocObject} doc - target doc object.
126
- * @returns {string} file name.
127
- * @private
128
- */
129
- const _getOutputFileName = (doc) => {
130
- switch (doc.kind) {
131
- case 'variable':
132
- return 'variable/index.html';
133
- case 'function':
134
- return 'function/index.html';
135
- case 'member': // fall
136
- case 'method': // fall
137
- case 'constructor': // fall
138
- case 'set': // fall
139
- case 'get': {
140
- // fal
141
- const parentDoc = _find({ longname: doc.memberof })[0];
142
- return _getOutputFileName(parentDoc);
143
- }
144
- case 'external':
145
- return 'external/index.html';
146
- case 'typedef':
147
- return 'typedef/index.html';
148
- case 'class':
149
- return `class/${doc.longname}.html`;
150
- case 'file':
151
- return `file/${doc.name}.html`;
152
- case 'testFile':
153
- return `test-file/${doc.name}.html`;
154
- case 'test':
155
- return 'test.html';
156
- default:
157
- throw new Error('DocBuilder: can not resolve file name.');
158
- }
159
- };
160
-
161
- /**
162
- * gat url of output html page.
163
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocBuilder.js#L533
164
- * @param {DocObject} doc - target doc object.
165
- * @returns {string} url of output html. it is relative path from output root dir.
166
- * @private
167
- */
168
- export const _getURL = (doc) => {
169
- let inner = false;
170
- if (
171
- [
172
- 'variable',
173
- 'function',
174
- 'member',
175
- 'typedef',
176
- 'method',
177
- 'constructor',
178
- 'get',
179
- 'set',
180
- ].includes(doc.kind)
181
- ) {
182
- inner = true;
183
- }
184
-
185
- if (inner) {
186
- const scope = doc.static ? 'static' : 'instance';
187
- const fileName = _getOutputFileName(doc);
188
- return `${fileName}#${scope}-${doc.kind}-${doc.name}`;
189
- }
190
- const fileName = _getOutputFileName(doc);
191
- return fileName;
192
- };
193
-
194
- /**
195
- * resolve class extends chain.
196
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocResolver.js#L146
197
- * add following special property.
198
- * - ``_custom_extends_chain``: ancestor class chain.
199
- * - ``_custom_direct_subclasses``: class list that direct extends target doc.
200
- * - ``_custom_indirect_subclasses``: class list that indirect extends target doc.
201
- * - ``_custom_indirect_implements``: class list that target doc indirect implements.
202
- * - ``_custom_direct_implemented``: class list that direct implements target doc.
203
- * - ``_custom_indirect_implemented``: class list that indirect implements target doc.
204
- *
205
- * @private
206
- */
207
- export const _resolveExtendsChain = (docs) => {
208
- if (_data.__RESOLVED_EXTENDS_CHAIN__) return;
209
-
210
- const extendsChain = (doc) => {
211
- if (!doc.extends) return;
212
-
213
- const selfDoc = doc;
214
-
215
- // traverse super class.
216
- const chains = [];
217
-
218
- /* eslint-disable */
219
- while (1) {
220
- if (!doc.extends) break;
221
-
222
- let superClassDoc = _findByName(doc.extends[0])[0];
223
-
224
- if (superClassDoc) {
225
- // this is circular extends
226
- if (superClassDoc.longname === selfDoc.longname) {
227
- break;
228
- }
229
-
230
- chains.push(superClassDoc.longname);
231
- doc = superClassDoc;
232
- } else {
233
- chains.push(doc.extends[0]);
234
- break;
235
- }
236
- }
237
-
238
- if (chains.length) {
239
- // direct subclass
240
- let superClassDoc = _findByName(chains[0])[0];
241
- if (superClassDoc) {
242
- if (!superClassDoc._custom_direct_subclasses)
243
- superClassDoc._custom_direct_subclasses = [];
244
- superClassDoc._custom_direct_subclasses.push(selfDoc.longname);
245
- }
246
-
247
- // indirect subclass
248
- for (let superClassLongname of chains.slice(1)) {
249
- superClassDoc = _findByName(superClassLongname)[0];
250
- if (superClassDoc) {
251
- if (!superClassDoc._custom_indirect_subclasses)
252
- superClassDoc._custom_indirect_subclasses = [];
253
- superClassDoc._custom_indirect_subclasses.push(selfDoc.longname);
254
- }
255
- }
256
-
257
- // indirect implements and mixes
258
- for (let superClassLongname of chains) {
259
- superClassDoc = _findByName(superClassLongname)[0];
260
- if (!superClassDoc) continue;
261
-
262
- // indirect implements
263
- if (superClassDoc.implements) {
264
- if (!selfDoc._custom_indirect_implements)
265
- selfDoc._custom_indirect_implements = [];
266
- selfDoc._custom_indirect_implements.push(...superClassDoc.implements);
267
- }
268
-
269
- // indirect mixes
270
- //if (superClassDoc.mixes) {
271
- // if (!selfDoc._custom_indirect_mixes) selfDoc._custom_indirect_mixes = [];
272
- // selfDoc._custom_indirect_mixes.push(...superClassDoc.mixes);
273
- //}
274
- }
275
-
276
- // extends chains
277
- selfDoc._custom_extends_chains = chains.reverse();
278
- }
279
- };
280
-
281
- let implemented = (doc) => {
282
- let selfDoc = doc;
283
-
284
- // direct implemented (like direct subclass)
285
- for (let superClassLongname of selfDoc.implements || []) {
286
- let superClassDoc = _findByName(superClassLongname)[0];
287
- if (!superClassDoc) continue;
288
- if (!superClassDoc._custom_direct_implemented)
289
- superClassDoc._custom_direct_implemented = [];
290
- superClassDoc._custom_direct_implemented.push(selfDoc.longname);
291
- }
292
-
293
- // indirect implemented (like indirect subclass)
294
- for (let superClassLongname of selfDoc._custom_indirect_implements || []) {
295
- let superClassDoc = _findByName(superClassLongname)[0];
296
- if (!superClassDoc) continue;
297
- if (!superClassDoc._custom_indirect_implemented)
298
- superClassDoc._custom_indirect_implemented = [];
299
- superClassDoc._custom_indirect_implemented.push(selfDoc.longname);
300
- }
301
- };
302
-
303
- //var mixed = (doc) =>{
304
- // var selfDoc = doc;
305
- //
306
- // // direct mixed (like direct subclass)
307
- // for (var superClassLongname of selfDoc.mixes || []) {
308
- // var superClassDoc = _find({longname: superClassLongname})[0];
309
- // if (!superClassDoc) continue;
310
- // if(!superClassDoc._custom_direct_mixed) superClassDoc._custom_direct_mixed = [];
311
- // superClassDoc._custom_direct_mixed.push(selfDoc.longname);
312
- // }
313
- //
314
- // // indirect mixed (like indirect subclass)
315
- // for (var superClassLongname of selfDoc._custom_indirect_mixes || []) {
316
- // var superClassDoc = _find({longname: superClassLongname})[0];
317
- // if (!superClassDoc) continue;
318
- // if(!superClassDoc._custom_indirect_mixed) superClassDoc._custom_indirect_mixed = [];
319
- // superClassDoc._custom_indirect_mixed.push(selfDoc.longname);
320
- // }
321
- //};
322
-
323
- let classDocs = _find({ kind: 'class' });
324
- for (let doc of classDocs) {
325
- extendsChain(doc);
326
- implemented(doc);
327
- //mixed(doc);
328
- }
329
- return docs;
330
-
331
- _data.__RESOLVED_EXTENDS_CHAIN__ = true;
332
- };
333
-
334
- /**
335
- * resolve ignore property.
336
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocResolver.js#L43
337
- * remove docs that has ignore property.
338
- * @private
339
- */
340
- export const _resolveIgnore = (docs) => {
341
- if (_data.__RESOLVED_IGNORE__) return;
342
-
343
- const ignoreDocs = _find({ ignore: true });
344
- for (const doc of ignoreDocs) {
345
- const longname = doc.longname.replace(/[$]/g, '\\$');
346
- const regex = new RegExp(`^${longname}[.~#]`);
347
- _data({ longname: { regex: regex } }).remove();
348
- }
349
- _data({ ignore: true }).remove();
350
-
351
- _data.__RESOLVED_IGNORE__ = true;
352
- return docs;
353
- };
354
-
355
- /**
356
- * resolve @link as html link.
357
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocResolver.js#L89
358
- * @private
359
- * @todo resolve all ``description`` property.
360
- */
361
- export const _resolveLink = (docs) => {
362
- if (_data.__RESOLVED_LINK__) return;
363
-
364
- const link = (str) => {
365
- if (!str) return str;
366
- return str.replace(/\{@link ([\w#_\-.:~\/$]+)}/g, (str, longname) => {
367
- // Code from DocLinkHTML.js
368
- // transform {@link } in markdown.
369
- const doc = _findByName(longname)[0];
370
- if (!doc) {
371
- return str;
372
- }
373
- const url = _getURL(doc, false);
374
- if (url) {
375
- return `[${longname}](/doc/${url.replace(/\./g, '%20')})`;
376
- }
377
- });
378
- };
379
-
380
- _data().each((v) => {
381
- v.description = link(v.description);
382
-
383
- if (v.params) {
384
- for (const param of v.params) {
385
- param.description = link(param.description);
386
- }
387
- }
388
-
389
- if (v.properties) {
390
- for (const property of v.properties) {
391
- property.description = link(property.description);
392
- }
393
- }
394
-
395
- if (v.return) {
396
- v.return.description = link(v.return.description);
397
- }
398
-
399
- if (v.throws) {
400
- for (const _throw of v.throws) {
401
- _throw.description = link(_throw.description);
402
- }
403
- }
404
-
405
- if (v.listens) {
406
- for (const _listen of v.listens) {
407
- _listen.description = link(_listen.description);
408
- }
409
- }
410
-
411
- if (v.emits) {
412
- for (const _emit of v.emits) {
413
- _emit.description = link(_emit.description);
414
- }
415
- }
416
-
417
- if (v.see) {
418
- for (let i = 0; i < v.see.length; i++) {
419
- if (v.see[i].indexOf('{@link') === 0) {
420
- v.see[i] = link(v.see[i]);
421
- } else if (v.see[i].indexOf('<a href') === 0) {
422
- // ignore
423
- } else {
424
- v.see[i] = `<a href="${v.see[i]}">${v.see[i]}</a>`;
425
- }
426
- }
427
- }
428
- });
429
-
430
- _data.__RESOLVED_LINK__ = true;
431
- return docs;
432
- };
433
-
434
- /**
435
- * resolve necessary identifier.
436
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocResolver.js#L277
437
- *
438
- * ```javascript
439
- * class Foo {}
440
- *
441
- * export default Bar extends Foo {}
442
- * ```
443
- *
444
- * ``Foo`` is not exported, but ``Bar`` extends ``Foo``.
445
- * ``Foo`` is necessary.
446
- * So, ``Foo`` must be exported by force.
447
- *
448
- * @private
449
- */
450
- export const _resolveNecessary = (docs) => {
451
- _data({ export: false }).update(function () {
452
- let doc = this;
453
- let childNames = [];
454
- if (doc._custom_direct_subclasses)
455
- childNames.push(...doc._custom_direct_subclasses);
456
- if (doc._custom_indirect_subclasses)
457
- childNames.push(...doc._custom_indirect_subclasses);
458
- if (doc._custom_direct_implemented)
459
- childNames.push(...doc._custom_direct_implemented);
460
- if (doc._custom_indirect_implemented)
461
- childNames.push(...doc._custom_indirect_implemented);
462
-
463
- for (let childName of childNames) {
464
- let childDoc = _find({ longname: childName })[0];
465
- if (!childDoc) continue;
466
- if (!childDoc.ignore && childDoc.export) {
467
- doc.ignore = false;
468
- return doc;
469
- }
470
- }
471
- });
472
- return docs;
473
- };
474
-
475
- /**
476
- * find doc object for each access.
477
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/DocBuilder.js#L226
478
- * @param {DocObject} doc - parent doc object.
479
- * @param {string} kind - kind property condition.
480
- * @param {boolean} isStatic - static property condition
481
- * @returns {Array[]} found doc objects.
482
- * @property {Array[]} 0 - ['Public', DocObject[]]
483
- * @property {Array[]} 1 - ['Protected', DocObject[]]
484
- * @property {Array[]} 2 - ['Private', DocObject[]]
485
- * @private
486
- */
487
- export const _findAccessDocs = (doc, kind, isStatic = true) => {
488
- const cond = { kind: kind, static: isStatic };
489
-
490
- if (doc) cond.memberof = doc.longname;
491
-
492
- /* eslint-disable default-case */
493
- switch (kind) {
494
- case 'class':
495
- cond.interface = false;
496
- break;
497
- case 'interface':
498
- cond.kind = 'class';
499
- cond.interface = true;
500
- break;
501
- case 'member':
502
- cond.kind = ['member', 'get', 'set'];
503
- break;
504
- }
505
-
506
- const publicDocs = _find(cond, { access: 'public' }).filter(
507
- (v) => !v.builtinExternal,
508
- );
509
- const protectedDocs = _find(cond, { access: 'protected' }).filter(
510
- (v) => !v.builtinExternal,
511
- );
512
- const privateDocs = _find(cond, { access: 'private' }).filter(
513
- (v) => !v.builtinExternal,
514
- );
515
- const accessDocs = [
516
- ['Public', publicDocs],
517
- // We don't want to display private and protected functions
518
- // to keep the doc simple as possible. Feel free to uncomment
519
- // the following line if you want them.
520
- // ['Protected', protectedDocs],
521
- // ['Private', privateDocs],
522
- ];
523
-
524
- return accessDocs;
525
- };
526
-
527
- /**
528
- * shorten description.
529
- * e.g. ``this is JavaScript. this is Java.`` => ``this is JavaScript.``.
530
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/util.js#L4
531
- *
532
- * @param {DocObject} doc - target doc object.
533
- * @param {boolean} [asMarkdown=false] - is true, test as markdown and convert to html.
534
- * @returns {string} shorten description.
535
- * @todo shorten before process markdown.
536
- */
537
- export function shorten(doc, asMarkdown = false) {
538
- if (!doc) return '';
539
-
540
- if (doc.summary) return doc.summary;
541
-
542
- const desc = doc.descriptionRaw;
543
- if (!desc) return '';
544
-
545
- let len = desc.length;
546
- let inSQuote = false;
547
- let inWQuote = false;
548
- let inCode = false;
549
- for (let i = 0; i < desc.length; i++) {
550
- const char1 = desc.charAt(i);
551
- const char2 = desc.charAt(i + 1);
552
- const char4 = desc.substr(i, 6);
553
- const char5 = desc.substr(i, 7);
554
- if (char1 === "'") inSQuote = !inSQuote;
555
- else if (char1 === '"') inWQuote = !inWQuote;
556
- else if (char4 === '<code>') inCode = true;
557
- else if (char5 === '</code>') inCode = false;
558
-
559
- if (inSQuote || inCode || inWQuote) continue;
560
-
561
- if (char1 === '.') {
562
- if (char2 === ' ' || char2 === '\n' || char2 === '<') {
563
- len = i + 1;
564
- break;
565
- }
566
- } else if (char1 === '\n' && char2 === '\n') {
567
- len = i + 1;
568
- break;
569
- }
570
- }
571
-
572
- let result = desc.substr(0, len);
573
- // Use Markdown component instead
574
- // if (asMarkdown) {
575
- // result = markdown(result);
576
- // }
577
-
578
- return result;
579
- }
580
-
581
- /**
582
- * parse ``@example`` value.
583
- * ``@example`` value can have ``<caption>`` tag.
584
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/util.js#L127
585
- *
586
- * @param {string} example - target example value.
587
- * @returns {{body: string, caption: string}} parsed example value.
588
- */
589
- export function parseExample(example) {
590
- let body = example;
591
- let caption = '';
592
-
593
- /* eslint-disable no-control-regex */
594
- const regexp = new RegExp('^<caption>(.*?)</caption>\n');
595
- const matched = example.match(regexp);
596
- if (matched) {
597
- body = example.replace(regexp, '');
598
- caption = matched[1].trim();
599
- }
600
-
601
- return { body, caption };
602
- }
603
-
604
- /**
605
- * escape URL hash.
606
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/util.js#L149
607
- * @param {string} hash - URL hash for HTML a tag and id tag
608
- * @returns {string} escaped URL hash
609
- */
610
- export const escapeURLHash = (hash) => {
611
- return hash
612
- .toLowerCase()
613
- .replace(/[~!@#$%^&*()_+=\[\]\\{}|;':"<>?,.\/ ]/g, '-');
614
- };
615
-
616
- /**
617
- * Create search index of identifier builder class.
618
- * https://github.com/esdoc/esdoc-plugins/blob/2de5022baa569785a189056a99acd1d7ca8284b7/esdoc-publish-html-plugin/src/Builder/SearchIndexBuilder.js#L7
619
- */
620
- export const _getSearchIndex = () => {
621
- if (searchIndex) {
622
- return searchIndex;
623
- }
624
-
625
- searchIndex = [];
626
- const docs = _find({});
627
-
628
- for (const doc of docs) {
629
- if (doc.kind === 'index') continue;
630
- if (doc.kind.indexOf('manual') === 0) continue;
631
-
632
- let indexText;
633
- let url;
634
- let displayText;
635
-
636
- if (doc.importPath) {
637
- displayText = (
638
- <>
639
- <span>{doc.name}</span>{' '}
640
- <span class="search-result-import-path">{doc.importPath}</span>
641
- </>
642
- );
643
- indexText = `${doc.importPath}~${doc.name}`.toLowerCase();
644
- url = _getURL(doc);
645
- } else if (doc.kind === 'test') {
646
- displayText = doc.testFullDescription;
647
- indexText = [
648
- ...(doc.testTargets || []),
649
- ...(doc._custom_test_targets || []),
650
- ]
651
- .join(' ')
652
- .toLowerCase();
653
- const filePath = doc.longname.split('~')[0];
654
- const fileDoc = _find({ kind: 'testFile', name: filePath })[0];
655
- url = `${_getURL(fileDoc)}#lineNumber${doc.lineNumber}`;
656
- } else if (doc.kind === 'external') {
657
- displayText = doc.longname;
658
- indexText = displayText.toLowerCase();
659
- url = doc.externalLink;
660
- } else if (doc.kind === 'file' || doc.kind === 'testFile') {
661
- displayText = doc.name;
662
- indexText = displayText.toLowerCase();
663
- url = _getURL(doc);
664
- } else if (doc.kind === 'packageJSON') {
665
- continue;
666
- } else {
667
- displayText = doc.longname;
668
- indexText = displayText.toLowerCase();
669
- url = _getURL(doc);
670
- }
671
-
672
- let kind = doc.kind;
673
- /* eslint-disable default-case */
674
- switch (kind) {
675
- case 'constructor':
676
- kind = 'method';
677
- break;
678
- case 'get':
679
- case 'set':
680
- kind = 'member';
681
- break;
682
- }
683
-
684
- searchIndex.push([indexText, url, displayText, kind]);
685
- }
686
-
687
- searchIndex.sort((a, b) => {
688
- if (a[2] === b[2]) {
689
- return 0;
690
- } else if (a[2] < b[2]) {
691
- return -1;
692
- } else {
693
- return 1;
694
- }
695
- });
696
- return searchIndex;
697
- };