@map-colonies/react-components 3.12.0 → 3.12.2

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 (375) hide show
  1. package/.eslintignore +1 -1
  2. package/.storybook/main.js +13 -13
  3. package/.storybook/manager.js +6 -6
  4. package/.storybook/preview-head.html +21 -21
  5. package/.storybook/preview.js +18 -18
  6. package/.storybook/theme.js +9 -9
  7. package/CHANGELOG.md +559 -538
  8. package/README.md +53 -53
  9. package/dist/autocomplete/autocomplete.css +25 -25
  10. package/dist/autocomplete/autocomplete.d.ts +33 -33
  11. package/dist/autocomplete/autocomplete.js +478 -478
  12. package/dist/autocomplete/index.d.ts +1 -1
  13. package/dist/autocomplete/index.js +5 -5
  14. package/dist/box/box.d.ts +3 -3
  15. package/dist/box/box.js +35 -35
  16. package/dist/box/index.d.ts +1 -1
  17. package/dist/box/index.js +5 -5
  18. package/dist/cesium-map/data-sources/custom.data-source.d.ts +5 -5
  19. package/dist/cesium-map/data-sources/custom.data-source.js +23 -23
  20. package/dist/cesium-map/data-sources/drawings.data-source.d.ts +34 -34
  21. package/dist/cesium-map/data-sources/drawings.data-source.js +187 -187
  22. package/dist/cesium-map/data-sources/index.d.ts +2 -2
  23. package/dist/cesium-map/data-sources/index.js +14 -14
  24. package/dist/cesium-map/entities/entity.d.ts +5 -5
  25. package/dist/cesium-map/entities/entity.description.d.ts +6 -6
  26. package/dist/cesium-map/entities/entity.description.js +27 -27
  27. package/dist/cesium-map/entities/entity.js +23 -23
  28. package/dist/cesium-map/entities/graphics/polygon.graphics.d.ts +5 -5
  29. package/dist/cesium-map/entities/graphics/polygon.graphics.js +23 -23
  30. package/dist/cesium-map/entities/graphics/polyline.graphics.d.ts +5 -5
  31. package/dist/cesium-map/entities/graphics/polyline.graphics.js +23 -23
  32. package/dist/cesium-map/entities/graphics/rectangle.graphics.d.ts +5 -5
  33. package/dist/cesium-map/entities/graphics/rectangle.graphics.js +23 -23
  34. package/dist/cesium-map/entities/index.d.ts +4 -4
  35. package/dist/cesium-map/entities/index.js +16 -16
  36. package/dist/cesium-map/index.d.ts +8 -7
  37. package/dist/cesium-map/index.js +20 -19
  38. package/dist/cesium-map/layers/3d.tileset.d.ts +7 -7
  39. package/dist/cesium-map/layers/3d.tileset.js +43 -43
  40. package/dist/cesium-map/layers/3d.tileset.with.update.d.ts +6 -6
  41. package/dist/cesium-map/layers/3d.tileset.with.update.js +115 -115
  42. package/dist/cesium-map/layers/geojson.layer.d.ts +5 -5
  43. package/dist/cesium-map/layers/geojson.layer.js +23 -23
  44. package/dist/cesium-map/layers/imagery.layer.d.ts +6 -6
  45. package/dist/cesium-map/layers/imagery.layer.js +68 -68
  46. package/dist/cesium-map/layers/index.d.ts +7 -7
  47. package/dist/cesium-map/layers/index.js +19 -19
  48. package/dist/cesium-map/layers/osm.layer.d.ts +9 -9
  49. package/dist/cesium-map/layers/osm.layer.js +36 -36
  50. package/dist/cesium-map/layers/wms.layer.d.ts +9 -9
  51. package/dist/cesium-map/layers/wms.layer.js +36 -36
  52. package/dist/cesium-map/layers/wmts.layer.d.ts +9 -9
  53. package/dist/cesium-map/layers/wmts.layer.js +36 -36
  54. package/dist/cesium-map/layers/xyz.layer.d.ts +9 -9
  55. package/dist/cesium-map/layers/xyz.layer.js +36 -36
  56. package/dist/cesium-map/layers-manager.d.ts +55 -55
  57. package/dist/cesium-map/layers-manager.js +246 -246
  58. package/dist/cesium-map/map-legend/MapLegend.css +135 -135
  59. package/dist/cesium-map/map-legend/MapLegend.d.ts +15 -15
  60. package/dist/cesium-map/map-legend/MapLegend.js +57 -57
  61. package/dist/cesium-map/map-legend/MapLegendList.d.ts +13 -13
  62. package/dist/cesium-map/map-legend/MapLegendList.js +43 -43
  63. package/dist/cesium-map/map-legend/MapLegendSidebar.d.ts +16 -16
  64. package/dist/cesium-map/map-legend/MapLegendSidebar.js +20 -20
  65. package/dist/cesium-map/map-legend/MapLegendToggle.d.ts +7 -7
  66. package/dist/cesium-map/map-legend/MapLegendToggle.js +20 -20
  67. package/dist/cesium-map/map-legend/index.d.ts +3 -3
  68. package/dist/cesium-map/map-legend/index.js +14 -14
  69. package/dist/cesium-map/map.css +59 -59
  70. package/dist/cesium-map/map.d.ts +59 -61
  71. package/dist/cesium-map/map.js +305 -303
  72. package/dist/cesium-map/map.types.d.ts +8 -8
  73. package/dist/cesium-map/map.types.js +12 -12
  74. package/dist/cesium-map/proxied.types.d.ts +30 -22
  75. package/dist/cesium-map/proxied.types.js +132 -100
  76. package/dist/cesium-map/settings/base-maps.css +37 -37
  77. package/dist/cesium-map/settings/base-maps.d.ts +7 -7
  78. package/dist/cesium-map/settings/base-maps.js +78 -78
  79. package/dist/cesium-map/settings/scene-modes.css +19 -19
  80. package/dist/cesium-map/settings/scene-modes.d.ts +7 -7
  81. package/dist/cesium-map/settings/scene-modes.js +65 -65
  82. package/dist/cesium-map/settings/settings.css +52 -52
  83. package/dist/cesium-map/settings/settings.d.ts +23 -23
  84. package/dist/cesium-map/settings/settings.js +79 -79
  85. package/dist/cesium-map/terrain-providers/custom/dummy-quantized-mesh-tile.d.ts +3 -3
  86. package/dist/cesium-map/terrain-providers/custom/dummy-quantized-mesh-tile.js +245 -245
  87. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-decoder.d.ts +9 -9
  88. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-decoder.js +202 -202
  89. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-terrain-provider.d.ts +50 -50
  90. package/dist/cesium-map/terrain-providers/custom/quantized-mesh-terrain-provider.js +136 -136
  91. package/dist/cesium-map/tools/cesium/primitives-conversions.cesium.d.ts +2 -2
  92. package/dist/cesium-map/tools/cesium/primitives-conversions.cesium.js +38 -38
  93. package/dist/cesium-map/tools/coordinates-tracker.tool.css +11 -11
  94. package/dist/cesium-map/tools/coordinates-tracker.tool.d.ts +7 -7
  95. package/dist/cesium-map/tools/coordinates-tracker.tool.js +78 -78
  96. package/dist/cesium-map/tools/draw/drawHelper.css +101 -101
  97. package/dist/cesium-map/tools/draw/drawHelper.d.ts +28 -28
  98. package/dist/cesium-map/tools/draw/drawHelper.js +1694 -1694
  99. package/dist/cesium-map/tools/geojson/geojson-to-primitive.d.ts +4 -4
  100. package/dist/cesium-map/tools/geojson/geojson-to-primitive.js +41 -41
  101. package/dist/cesium-map/tools/geojson/index.d.ts +2 -2
  102. package/dist/cesium-map/tools/geojson/index.js +14 -14
  103. package/dist/cesium-map/tools/geojson/point.geojson.d.ts +3 -3
  104. package/dist/cesium-map/tools/geojson/point.geojson.js +21 -21
  105. package/dist/cesium-map/tools/geojson/polygon.geojson.d.ts +3 -3
  106. package/dist/cesium-map/tools/geojson/polygon.geojson.js +24 -24
  107. package/dist/cesium-map/tools/geojson/rectangle.geojson.d.ts +3 -3
  108. package/dist/cesium-map/tools/geojson/rectangle.geojson.js +44 -44
  109. package/dist/cesium-map/tools/inspector.tool.d.ts +4 -4
  110. package/dist/cesium-map/tools/inspector.tool.js +33 -33
  111. package/dist/cesium-map/tools/scale-tracker.tool.css +16 -16
  112. package/dist/cesium-map/tools/scale-tracker.tool.d.ts +8 -8
  113. package/dist/cesium-map/tools/scale-tracker.tool.js +158 -158
  114. package/dist/cesium-map/tools/terranian-height.tool.d.ts +4 -4
  115. package/dist/cesium-map/tools/terranian-height.tool.js +114 -114
  116. package/dist/cssbaseline/cssbaseline.d.ts +5 -5
  117. package/dist/cssbaseline/cssbaseline.js +41 -41
  118. package/dist/cssbaseline/index.d.ts +1 -1
  119. package/dist/cssbaseline/index.js +6 -6
  120. package/dist/date-picker/date-picker.css +9 -9
  121. package/dist/date-picker/date-picker.d.ts +14 -14
  122. package/dist/date-picker/date-picker.js +78 -78
  123. package/dist/date-picker/index.d.ts +1 -1
  124. package/dist/date-picker/index.js +13 -13
  125. package/dist/date-range-picker/date-range-picker.css +9 -9
  126. package/dist/date-range-picker/date-range-picker.d.ts +26 -26
  127. package/dist/date-range-picker/date-range-picker.form-control.css +3 -3
  128. package/dist/date-range-picker/date-range-picker.form-control.d.ts +28 -28
  129. package/dist/date-range-picker/date-range-picker.form-control.js +95 -95
  130. package/dist/date-range-picker/date-range-picker.js +104 -104
  131. package/dist/date-range-picker/index.d.ts +2 -2
  132. package/dist/date-range-picker/index.js +14 -14
  133. package/dist/file-picker/file-picker.css +63 -63
  134. package/dist/file-picker/file-picker.d.ts +276 -276
  135. package/dist/file-picker/file-picker.js +151 -151
  136. package/dist/file-picker/fs-map.json +1556 -1556
  137. package/dist/file-picker/index.d.ts +2 -2
  138. package/dist/file-picker/index.js +14 -14
  139. package/dist/file-picker/localization.d.ts +11 -11
  140. package/dist/file-picker/localization.js +124 -124
  141. package/dist/index.d.ts +13 -13
  142. package/dist/index.js +25 -25
  143. package/dist/map-filter-container/container-map.css +5 -5
  144. package/dist/map-filter-container/container-map.d.ts +11 -11
  145. package/dist/map-filter-container/container-map.js +31 -31
  146. package/dist/map-filter-container/index.d.ts +1 -1
  147. package/dist/map-filter-container/index.js +13 -13
  148. package/dist/map-filter-container/map-filter-container.d.ts +9 -9
  149. package/dist/map-filter-container/map-filter-container.js +78 -78
  150. package/dist/map-filter-container/polygon-selection-ui.d.ts +12 -12
  151. package/dist/map-filter-container/polygon-selection-ui.js +62 -62
  152. package/dist/models/defaults.d.ts +28 -28
  153. package/dist/models/defaults.js +32 -32
  154. package/dist/models/enums.d.ts +14 -14
  155. package/dist/models/enums.js +20 -20
  156. package/dist/models/index.d.ts +1 -1
  157. package/dist/models/index.js +13 -13
  158. package/dist/ol-map/feature.d.ts +6 -6
  159. package/dist/ol-map/feature.js +20 -20
  160. package/dist/ol-map/index.d.ts +6 -6
  161. package/dist/ol-map/index.js +18 -18
  162. package/dist/ol-map/interactions/draw.d.ts +8 -8
  163. package/dist/ol-map/interactions/draw.js +44 -44
  164. package/dist/ol-map/interactions/index.d.ts +1 -1
  165. package/dist/ol-map/interactions/index.js +13 -13
  166. package/dist/ol-map/layers/index.d.ts +3 -3
  167. package/dist/ol-map/layers/index.js +15 -15
  168. package/dist/ol-map/layers/tile-layer.d.ts +9 -9
  169. package/dist/ol-map/layers/tile-layer.js +48 -48
  170. package/dist/ol-map/layers/vector-layer.d.ts +4 -4
  171. package/dist/ol-map/layers/vector-layer.js +48 -48
  172. package/dist/ol-map/layers/vector-tile-layer.d.ts +10 -10
  173. package/dist/ol-map/layers/vector-tile-layer.js +66 -66
  174. package/dist/ol-map/map.css +17 -17
  175. package/dist/ol-map/map.d.ts +14 -14
  176. package/dist/ol-map/map.js +117 -117
  177. package/dist/ol-map/source/index.d.ts +6 -6
  178. package/dist/ol-map/source/index.js +18 -18
  179. package/dist/ol-map/source/mvt.d.ts +11 -11
  180. package/dist/ol-map/source/mvt.js +37 -37
  181. package/dist/ol-map/source/osm.d.ts +2 -2
  182. package/dist/ol-map/source/osm.js +14 -14
  183. package/dist/ol-map/source/vector-source.d.ts +4 -4
  184. package/dist/ol-map/source/vector-source.js +45 -45
  185. package/dist/ol-map/source/wms.d.ts +17 -17
  186. package/dist/ol-map/source/wms.js +30 -30
  187. package/dist/ol-map/source/wmts.d.ts +21 -21
  188. package/dist/ol-map/source/wmts.js +59 -59
  189. package/dist/ol-map/source/xyz.d.ts +12 -12
  190. package/dist/ol-map/source/xyz.js +27 -27
  191. package/dist/ol-map/style.d.ts +4 -4
  192. package/dist/ol-map/style.js +22 -22
  193. package/dist/popover/index.d.ts +1 -1
  194. package/dist/popover/index.js +5 -5
  195. package/dist/popover/popover.d.ts +3 -3
  196. package/dist/popover/popover.js +35 -35
  197. package/dist/smart-table/__mock-data__/smartTableMocks.d.ts +7 -7
  198. package/dist/smart-table/__mock-data__/smartTableMocks.js +17 -17
  199. package/dist/smart-table/index.d.ts +2 -2
  200. package/dist/smart-table/index.js +14 -14
  201. package/dist/smart-table/smart-table-head.d.ts +11 -11
  202. package/dist/smart-table/smart-table-head.js +22 -22
  203. package/dist/smart-table/smart-table-row.d.ts +12 -12
  204. package/dist/smart-table/smart-table-row.js +46 -46
  205. package/dist/smart-table/smart-table-types.d.ts +9 -9
  206. package/dist/smart-table/smart-table-types.js +2 -2
  207. package/dist/smart-table/smart-table.d.ts +17 -17
  208. package/dist/smart-table/smart-table.js +51 -51
  209. package/dist/theme/index.d.ts +1 -1
  210. package/dist/theme/index.js +13 -13
  211. package/dist/theme/theme.d.ts +8 -8
  212. package/dist/theme/theme.js +124 -124
  213. package/dist/utils/map.d.ts +3 -3
  214. package/dist/utils/map.js +21 -21
  215. package/dist/utils/projections.d.ts +6 -6
  216. package/dist/utils/projections.js +10 -10
  217. package/dist/utils/story.d.ts +12 -12
  218. package/dist/utils/story.js +2 -2
  219. package/package.json +2 -2
  220. package/public/index.html +43 -43
  221. package/public/manifest.json +25 -25
  222. package/public/robots.txt +3 -3
  223. package/src/index.tsx +9 -9
  224. package/src/lib/autocomplete/autocomplete.css +25 -25
  225. package/src/lib/autocomplete/autocomplete.stories.tsx +101 -101
  226. package/src/lib/autocomplete/autocomplete.tsx +681 -681
  227. package/src/lib/autocomplete/index.ts +1 -1
  228. package/src/lib/box/box.tsx +7 -7
  229. package/src/lib/box/index.ts +1 -1
  230. package/src/lib/cesium-map/context-menu.stories.tsx +444 -444
  231. package/src/lib/cesium-map/data-sources/custom.data-source.tsx +12 -12
  232. package/src/lib/cesium-map/data-sources/drawings.data-source.stories.tsx +161 -161
  233. package/src/lib/cesium-map/data-sources/drawings.data-source.tsx +204 -205
  234. package/src/lib/cesium-map/data-sources/index.ts +2 -2
  235. package/src/lib/cesium-map/entities/entity.description.tsx +19 -19
  236. package/src/lib/cesium-map/entities/entity.graphics.stories.tsx +48 -48
  237. package/src/lib/cesium-map/entities/entity.stories.tsx +146 -146
  238. package/src/lib/cesium-map/entities/entity.tsx +10 -10
  239. package/src/lib/cesium-map/entities/graphics/polygon.graphics.tsx +12 -12
  240. package/src/lib/cesium-map/entities/graphics/polyline.graphics.tsx +12 -12
  241. package/src/lib/cesium-map/entities/graphics/rectangle.graphics.tsx +12 -12
  242. package/src/lib/cesium-map/entities/index.ts +4 -4
  243. package/src/lib/cesium-map/index.ts +8 -7
  244. package/src/lib/cesium-map/layers/3d.tileset.stories.tsx +164 -164
  245. package/src/lib/cesium-map/layers/3d.tileset.tsx +51 -51
  246. package/src/lib/cesium-map/layers/3d.tileset.with.update.tsx +120 -120
  247. package/src/lib/cesium-map/layers/geojson.layer.stories.tsx +119 -119
  248. package/src/lib/cesium-map/layers/geojson.layer.tsx +12 -12
  249. package/src/lib/cesium-map/layers/imagery.layer.stories.tsx +39 -39
  250. package/src/lib/cesium-map/layers/imagery.layer.tsx +37 -37
  251. package/src/lib/cesium-map/layers/index.ts +7 -7
  252. package/src/lib/cesium-map/layers/layers.rect.stories.tsx +171 -171
  253. package/src/lib/cesium-map/layers/osm.layer.stories.tsx +40 -40
  254. package/src/lib/cesium-map/layers/osm.layer.tsx +22 -22
  255. package/src/lib/cesium-map/layers/wms.layer.stories.tsx +38 -38
  256. package/src/lib/cesium-map/layers/wms.layer.tsx +22 -22
  257. package/src/lib/cesium-map/layers/wmts.layer.stories.tsx +53 -53
  258. package/src/lib/cesium-map/layers/wmts.layer.tsx +22 -22
  259. package/src/lib/cesium-map/layers/xyz.layer.stories.tsx +37 -37
  260. package/src/lib/cesium-map/layers/xyz.layer.tsx +22 -22
  261. package/src/lib/cesium-map/layers-manager.stories.tsx +286 -286
  262. package/src/lib/cesium-map/layers-manager.ts +354 -358
  263. package/src/lib/cesium-map/map-legend/MapLegend.css +135 -135
  264. package/src/lib/cesium-map/map-legend/MapLegend.tsx +92 -91
  265. package/src/lib/cesium-map/map-legend/MapLegendList.tsx +47 -46
  266. package/src/lib/cesium-map/map-legend/MapLegendSidebar.tsx +55 -55
  267. package/src/lib/cesium-map/map-legend/MapLegendToggle.tsx +31 -31
  268. package/src/lib/cesium-map/map-legend/index.tsx +3 -3
  269. package/src/lib/cesium-map/map-legend/legends-sidebar.stories.tsx +201 -201
  270. package/src/lib/cesium-map/map.css +59 -59
  271. package/src/lib/cesium-map/map.stories.tsx +143 -143
  272. package/src/lib/cesium-map/map.tsx +446 -447
  273. package/src/lib/cesium-map/map.types.ts +11 -11
  274. package/src/lib/cesium-map/proxied.types.ts +54 -42
  275. package/src/lib/cesium-map/settings/base-maps.css +37 -37
  276. package/src/lib/cesium-map/settings/base-maps.tsx +94 -94
  277. package/src/lib/cesium-map/settings/scene-modes.css +19 -19
  278. package/src/lib/cesium-map/settings/scene-modes.tsx +100 -100
  279. package/src/lib/cesium-map/settings/settings.css +52 -52
  280. package/src/lib/cesium-map/settings/settings.stories.tsx +182 -182
  281. package/src/lib/cesium-map/settings/settings.tsx +141 -141
  282. package/src/lib/cesium-map/terrain-providers/custom/dummy-quantized-mesh-tile.ts +243 -243
  283. package/src/lib/cesium-map/terrain-providers/custom/quantized-mesh-decoder.ts +321 -321
  284. package/src/lib/cesium-map/terrain-providers/custom/quantized-mesh-terrain-provider.ts +237 -237
  285. package/src/lib/cesium-map/terrain-providers/terrain-provider-heights-tool.stories.tsx +170 -170
  286. package/src/lib/cesium-map/terrain-providers/terrain-provider.stories.tsx +187 -187
  287. package/src/lib/cesium-map/tools/cesium/primitives-conversions.cesium.ts +15 -15
  288. package/src/lib/cesium-map/tools/coordinates-tracker.tool.css +11 -11
  289. package/src/lib/cesium-map/tools/coordinates-tracker.tool.tsx +79 -79
  290. package/src/lib/cesium-map/tools/draw/drawHelper.css +101 -101
  291. package/src/lib/cesium-map/tools/draw/drawHelper.ts +2116 -2116
  292. package/src/lib/cesium-map/tools/geojson/geojson-to-primitive.ts +54 -54
  293. package/src/lib/cesium-map/tools/geojson/index.ts +2 -2
  294. package/src/lib/cesium-map/tools/geojson/point.geojson.ts +29 -29
  295. package/src/lib/cesium-map/tools/geojson/polygon.geojson.ts +24 -24
  296. package/src/lib/cesium-map/tools/geojson/rectangle.geojson.ts +21 -21
  297. package/src/lib/cesium-map/tools/inspector.tool.tsx +15 -15
  298. package/src/lib/cesium-map/tools/scale-tracker.tool.css +16 -16
  299. package/src/lib/cesium-map/tools/scale-tracker.tool.tsx +192 -192
  300. package/src/lib/cesium-map/tools/terranian-height.tool.tsx +171 -171
  301. package/src/lib/cssbaseline/cssbaseline.tsx +19 -19
  302. package/src/lib/cssbaseline/index.ts +4 -4
  303. package/src/lib/date-picker/date-picker.css +9 -9
  304. package/src/lib/date-picker/date-picker.stories.tsx +130 -130
  305. package/src/lib/date-picker/date-picker.tsx +90 -90
  306. package/src/lib/date-picker/index.ts +1 -1
  307. package/src/lib/date-range-picker/date-range-picker.css +9 -9
  308. package/src/lib/date-range-picker/date-range-picker.form-control.css +3 -3
  309. package/src/lib/date-range-picker/date-range-picker.form-control.spec.tsx +58 -58
  310. package/src/lib/date-range-picker/date-range-picker.form-control.tsx +150 -150
  311. package/src/lib/date-range-picker/date-range-picker.stories.tsx +207 -207
  312. package/src/lib/date-range-picker/date-range-picker.tsx +156 -156
  313. package/src/lib/date-range-picker/index.ts +2 -2
  314. package/src/lib/file-picker/file-picker.css +63 -63
  315. package/src/lib/file-picker/file-picker.stories.tsx +447 -447
  316. package/src/lib/file-picker/file-picker.tsx +180 -180
  317. package/src/lib/file-picker/fs-map.json +1556 -1556
  318. package/src/lib/file-picker/index.ts +2 -2
  319. package/src/lib/file-picker/localization.ts +164 -164
  320. package/src/lib/index.ts +13 -13
  321. package/src/lib/map-filter-container/container-map.css +5 -5
  322. package/src/lib/map-filter-container/container-map.tsx +48 -48
  323. package/src/lib/map-filter-container/index.ts +1 -1
  324. package/src/lib/map-filter-container/map-filter-container.tsx +91 -91
  325. package/src/lib/map-filter-container/polygon-selection-ui.spec.tsx +119 -119
  326. package/src/lib/map-filter-container/polygon-selection-ui.tsx +111 -111
  327. package/src/lib/map-filter-container/stories/Map.stories.tsx +76 -76
  328. package/src/lib/models/defaults.ts +32 -32
  329. package/src/lib/models/enums.ts +16 -16
  330. package/src/lib/models/index.ts +1 -1
  331. package/src/lib/ol-map/feature.tsx +23 -23
  332. package/src/lib/ol-map/index.ts +6 -6
  333. package/src/lib/ol-map/interactions/draw.tsx +56 -56
  334. package/src/lib/ol-map/interactions/index.ts +1 -1
  335. package/src/lib/ol-map/layers/index.ts +3 -3
  336. package/src/lib/ol-map/layers/tile-layer.tsx +36 -36
  337. package/src/lib/ol-map/layers/vector-layer.tsx +32 -32
  338. package/src/lib/ol-map/layers/vector-tile-layer.tsx +56 -56
  339. package/src/lib/ol-map/map.css +17 -17
  340. package/src/lib/ol-map/map.tsx +137 -137
  341. package/src/lib/ol-map/source/index.ts +6 -6
  342. package/src/lib/ol-map/source/mvt.tsx +46 -46
  343. package/src/lib/ol-map/source/osm.tsx +13 -13
  344. package/src/lib/ol-map/source/stories/mvt.stories.tsx +68 -68
  345. package/src/lib/ol-map/source/stories/vector-source.stories.tsx +78 -78
  346. package/src/lib/ol-map/source/stories/wms.stories.tsx +51 -51
  347. package/src/lib/ol-map/source/stories/wmts.stories.tsx +72 -72
  348. package/src/lib/ol-map/source/stories/xyz.stories.tsx +53 -53
  349. package/src/lib/ol-map/source/vector-source.tsx +30 -30
  350. package/src/lib/ol-map/source/wms.tsx +40 -40
  351. package/src/lib/ol-map/source/wmts.tsx +82 -82
  352. package/src/lib/ol-map/source/xyz.tsx +33 -33
  353. package/src/lib/ol-map/stories/map.stories.tsx +60 -60
  354. package/src/lib/ol-map/style.ts +24 -24
  355. package/src/lib/popover/index.ts +1 -1
  356. package/src/lib/popover/popover.tsx +7 -7
  357. package/src/lib/smart-table/__mock-data__/smartTableMocks.ts +22 -22
  358. package/src/lib/smart-table/index.ts +2 -2
  359. package/src/lib/smart-table/smart-table-head.spec.tsx +116 -116
  360. package/src/lib/smart-table/smart-table-head.tsx +47 -47
  361. package/src/lib/smart-table/smart-table-row.spec.tsx +109 -109
  362. package/src/lib/smart-table/smart-table-row.tsx +78 -78
  363. package/src/lib/smart-table/smart-table-types.ts +10 -10
  364. package/src/lib/smart-table/smart-table.spec.tsx +116 -116
  365. package/src/lib/smart-table/smart-table.tsx +115 -115
  366. package/src/lib/smart-table/stories/SmartTable.stories.tsx +114 -114
  367. package/src/lib/theme/index.ts +1 -1
  368. package/src/lib/theme/theme.ts +123 -123
  369. package/src/lib/utils/map.ts +19 -19
  370. package/src/lib/utils/projections.ts +7 -7
  371. package/src/lib/utils/story.ts +11 -11
  372. package/src/react-app-env.d.ts +1 -1
  373. package/src/setupTests.ts +14 -14
  374. package/tsbuildconfig.json +37 -37
  375. package/tsconfig.json +26 -26
@@ -1,171 +1,171 @@
1
- import React, { ChangeEvent } from 'react';
2
- import {
3
- Cartesian2,
4
- Ellipsoid,
5
- Color as CesiumColor,
6
- LabelStyle as CesiumLabelStyle,
7
- VerticalOrigin as CesiumVerticalOrigin,
8
- Cartographic,
9
- sampleTerrainMostDetailed,
10
- } from 'cesium';
11
- import { CesiumViewer, useCesiumMap } from '../map';
12
-
13
- interface IParsedData {
14
- cartographic: Cartographic;
15
- cartesian: Cartesian2;
16
- }
17
-
18
- const LABEL_PIXEL_OFFSET = -25;
19
- const FIRST_DATA_ROW_IDX = 2;
20
-
21
- export interface TerrainianHeightProps {}
22
-
23
- export const TerrainianHeightTool: React.FC<TerrainianHeightProps> = (
24
- props
25
- ) => {
26
- const mapViewer: CesiumViewer = useCesiumMap();
27
-
28
- const csvToArray = (str: string, delimiter = ','): IParsedData[] => {
29
- // const headers = str.slice(0, str.indexOf('\n')).split(delimiter);
30
- const rows = str.slice(str.indexOf('\n') + 1).split('\n');
31
-
32
- const arr = rows.map((row) => {
33
- const values = row.split(delimiter);
34
- const el = Cartographic.fromDegrees(
35
- parseFloat(values[0]),
36
- parseFloat(values[1])
37
- );
38
- // const el = headers.reduce((object: Record<string, number>, header, index) => {
39
- // const trimmedHeader = header.trim();
40
- // object[trimmedHeader] = parseFloat(values[index]);
41
- // return object;
42
- // }, {});
43
-
44
- //return el;
45
- return {
46
- cartographic: el,
47
- cartesian: new Cartesian2(parseFloat(values[0]), parseFloat(values[1])),
48
- };
49
- });
50
-
51
- return arr;
52
- };
53
-
54
- const loadCSV = (evt: ChangeEvent<HTMLInputElement>): void => {
55
- evt.preventDefault();
56
- evt.persist();
57
- const reader = new FileReader();
58
-
59
- reader.onload = (e: ProgressEvent<FileReader>): any => {
60
- const text = e.target?.result;
61
- const parsed = csvToArray(text as string);
62
- const ellipsoid = Ellipsoid.WGS84;
63
-
64
- console.log('Loaded CSV content:\n', text);
65
-
66
- void sampleTerrainMostDetailed(
67
- mapViewer.terrainProvider,
68
- parsed.map((item) => item.cartographic)
69
- ).then(
70
- (updatedPositions) => {
71
- console.log(updatedPositions);
72
- updatedPositions = updatedPositions.slice(
73
- 0,
74
- updatedPositions.length - 1
75
- ); // UNIX brake line
76
-
77
- mapViewer.scene.globe.depthTestAgainstTerrain = true;
78
- mapViewer.entities.suspendEvents();
79
- mapViewer.entities.removeAll();
80
-
81
- updatedPositions.forEach((position, idx) => {
82
- mapViewer.entities.add({
83
- name: (idx + FIRST_DATA_ROW_IDX).toString(),
84
- position: ellipsoid.cartographicToCartesian(position),
85
- billboard: {
86
- verticalOrigin: CesiumVerticalOrigin.BOTTOM,
87
- scale: 0.7,
88
- image: 'assets/img/map-marker.gif',
89
- },
90
- label: {
91
- text: (idx + FIRST_DATA_ROW_IDX).toString(),
92
- font: '14pt monospace',
93
- fillColor: CesiumColor.BLACK,
94
- style: CesiumLabelStyle.FILL_AND_OUTLINE,
95
- outlineWidth: 4,
96
- outlineColor: CesiumColor.BLACK,
97
- verticalOrigin: CesiumVerticalOrigin.BOTTOM,
98
- pixelOffset: new Cartesian2(0, LABEL_PIXEL_OFFSET),
99
- },
100
- description: `
101
- Long: ${parsed[idx].cartesian.x} </br>
102
- Lat: ${parsed[idx].cartesian.y} </br>
103
- Height(m): <span style="font-weight: 500">${position.height}</span>
104
- `,
105
- });
106
- });
107
-
108
- mapViewer.entities.resumeEvents();
109
-
110
- if (evt.target.files !== null) {
111
- exportToCsv(
112
- `terranian_heights_${evt.target.files[0].name}`,
113
- parsed
114
- );
115
- evt.target.value = '';
116
- }
117
-
118
- console.log(
119
- 'Pinned point count is ',
120
- mapViewer.entities.values.length
121
- );
122
- },
123
- (err) => {
124
- console.error('ERROR while sampleTerrainMostDetailed:', err);
125
- }
126
- );
127
- };
128
-
129
- if (evt.target.files?.[0]) {
130
- reader.readAsText(evt.target.files[0]);
131
- }
132
- };
133
-
134
- const exportToCsv = (filename: string, rows: IParsedData[]): void => {
135
- const processRow = (row: IParsedData): string => {
136
- let finalVal = '';
137
- finalVal += row.cartesian.x.toString() + ',';
138
- finalVal += row.cartesian.y.toString() + ',';
139
- finalVal += row.cartographic.height.toString();
140
- return finalVal + '\n';
141
- };
142
-
143
- let csvFile = 'long,lat,height\n';
144
- rows.forEach((row) => {
145
- csvFile += processRow(row);
146
- });
147
-
148
- const blob = new Blob([csvFile], { type: 'text/csv;charset=utf-8;' });
149
- const link = document.createElement('a');
150
- const url = URL.createObjectURL(blob);
151
- link.setAttribute('href', url);
152
- link.setAttribute('download', filename);
153
- link.style.visibility = 'hidden';
154
- document.body.appendChild(link);
155
- link.click();
156
- document.body.removeChild(link);
157
- };
158
-
159
- return (
160
- <>
161
- <input
162
- type="file"
163
- id="csvFile"
164
- accept=".csv"
165
- onChange={(e: ChangeEvent<HTMLInputElement>): void => {
166
- loadCSV(e);
167
- }}
168
- />
169
- </>
170
- );
171
- };
1
+ import React, { ChangeEvent } from 'react';
2
+ import {
3
+ Cartesian2,
4
+ Ellipsoid,
5
+ Color as CesiumColor,
6
+ LabelStyle as CesiumLabelStyle,
7
+ VerticalOrigin as CesiumVerticalOrigin,
8
+ Cartographic,
9
+ sampleTerrainMostDetailed,
10
+ } from 'cesium';
11
+ import { CesiumViewer, useCesiumMap } from '../map';
12
+
13
+ interface IParsedData {
14
+ cartographic: Cartographic;
15
+ cartesian: Cartesian2;
16
+ }
17
+
18
+ const LABEL_PIXEL_OFFSET = -25;
19
+ const FIRST_DATA_ROW_IDX = 2;
20
+
21
+ export interface TerrainianHeightProps {}
22
+
23
+ export const TerrainianHeightTool: React.FC<TerrainianHeightProps> = (
24
+ props
25
+ ) => {
26
+ const mapViewer: CesiumViewer = useCesiumMap();
27
+
28
+ const csvToArray = (str: string, delimiter = ','): IParsedData[] => {
29
+ // const headers = str.slice(0, str.indexOf('\n')).split(delimiter);
30
+ const rows = str.slice(str.indexOf('\n') + 1).split('\n');
31
+
32
+ const arr = rows.map((row) => {
33
+ const values = row.split(delimiter);
34
+ const el = Cartographic.fromDegrees(
35
+ parseFloat(values[0]),
36
+ parseFloat(values[1])
37
+ );
38
+ // const el = headers.reduce((object: Record<string, number>, header, index) => {
39
+ // const trimmedHeader = header.trim();
40
+ // object[trimmedHeader] = parseFloat(values[index]);
41
+ // return object;
42
+ // }, {});
43
+
44
+ //return el;
45
+ return {
46
+ cartographic: el,
47
+ cartesian: new Cartesian2(parseFloat(values[0]), parseFloat(values[1])),
48
+ };
49
+ });
50
+
51
+ return arr;
52
+ };
53
+
54
+ const loadCSV = (evt: ChangeEvent<HTMLInputElement>): void => {
55
+ evt.preventDefault();
56
+ evt.persist();
57
+ const reader = new FileReader();
58
+
59
+ reader.onload = (e: ProgressEvent<FileReader>): any => {
60
+ const text = e.target?.result;
61
+ const parsed = csvToArray(text as string);
62
+ const ellipsoid = Ellipsoid.WGS84;
63
+
64
+ console.log('Loaded CSV content:\n', text);
65
+
66
+ void sampleTerrainMostDetailed(
67
+ mapViewer.terrainProvider,
68
+ parsed.map((item) => item.cartographic)
69
+ ).then(
70
+ (updatedPositions) => {
71
+ console.log(updatedPositions);
72
+ updatedPositions = updatedPositions.slice(
73
+ 0,
74
+ updatedPositions.length - 1
75
+ ); // UNIX brake line
76
+
77
+ mapViewer.scene.globe.depthTestAgainstTerrain = true;
78
+ mapViewer.entities.suspendEvents();
79
+ mapViewer.entities.removeAll();
80
+
81
+ updatedPositions.forEach((position, idx) => {
82
+ mapViewer.entities.add({
83
+ name: (idx + FIRST_DATA_ROW_IDX).toString(),
84
+ position: ellipsoid.cartographicToCartesian(position),
85
+ billboard: {
86
+ verticalOrigin: CesiumVerticalOrigin.BOTTOM,
87
+ scale: 0.7,
88
+ image: 'assets/img/map-marker.gif',
89
+ },
90
+ label: {
91
+ text: (idx + FIRST_DATA_ROW_IDX).toString(),
92
+ font: '14pt monospace',
93
+ fillColor: CesiumColor.BLACK,
94
+ style: CesiumLabelStyle.FILL_AND_OUTLINE,
95
+ outlineWidth: 4,
96
+ outlineColor: CesiumColor.BLACK,
97
+ verticalOrigin: CesiumVerticalOrigin.BOTTOM,
98
+ pixelOffset: new Cartesian2(0, LABEL_PIXEL_OFFSET),
99
+ },
100
+ description: `
101
+ Long: ${parsed[idx].cartesian.x} </br>
102
+ Lat: ${parsed[idx].cartesian.y} </br>
103
+ Height(m): <span style="font-weight: 500">${position.height}</span>
104
+ `,
105
+ });
106
+ });
107
+
108
+ mapViewer.entities.resumeEvents();
109
+
110
+ if (evt.target.files !== null) {
111
+ exportToCsv(
112
+ `terranian_heights_${evt.target.files[0].name}`,
113
+ parsed
114
+ );
115
+ evt.target.value = '';
116
+ }
117
+
118
+ console.log(
119
+ 'Pinned point count is ',
120
+ mapViewer.entities.values.length
121
+ );
122
+ },
123
+ (err) => {
124
+ console.error('ERROR while sampleTerrainMostDetailed:', err);
125
+ }
126
+ );
127
+ };
128
+
129
+ if (evt.target.files?.[0]) {
130
+ reader.readAsText(evt.target.files[0]);
131
+ }
132
+ };
133
+
134
+ const exportToCsv = (filename: string, rows: IParsedData[]): void => {
135
+ const processRow = (row: IParsedData): string => {
136
+ let finalVal = '';
137
+ finalVal += row.cartesian.x.toString() + ',';
138
+ finalVal += row.cartesian.y.toString() + ',';
139
+ finalVal += row.cartographic.height.toString();
140
+ return finalVal + '\n';
141
+ };
142
+
143
+ let csvFile = 'long,lat,height\n';
144
+ rows.forEach((row) => {
145
+ csvFile += processRow(row);
146
+ });
147
+
148
+ const blob = new Blob([csvFile], { type: 'text/csv;charset=utf-8;' });
149
+ const link = document.createElement('a');
150
+ const url = URL.createObjectURL(blob);
151
+ link.setAttribute('href', url);
152
+ link.setAttribute('download', filename);
153
+ link.style.visibility = 'hidden';
154
+ document.body.appendChild(link);
155
+ link.click();
156
+ document.body.removeChild(link);
157
+ };
158
+
159
+ return (
160
+ <>
161
+ <input
162
+ type="file"
163
+ id="csvFile"
164
+ accept=".csv"
165
+ onChange={(e: ChangeEvent<HTMLInputElement>): void => {
166
+ loadCSV(e);
167
+ }}
168
+ />
169
+ </>
170
+ );
171
+ };
@@ -1,19 +1,19 @@
1
- import React from 'react';
2
- import CssBaseline, { CssBaselineProps } from '@material-ui/core/CssBaseline';
3
- import ScopedCssBaseline, {
4
- ScopedCssBaselineProps,
5
- } from '@material-ui/core/ScopedCssBaseline';
6
-
7
- export const McCssBaseline: React.FC<CssBaselineProps> = (
8
- props: CssBaselineProps
9
- ) => {
10
- const { children, ...rest } = props;
11
- return <CssBaseline {...rest}>{children}</CssBaseline>;
12
- };
13
-
14
- export const McScopedCssBaseline: React.FC<ScopedCssBaselineProps> = (
15
- props: ScopedCssBaselineProps
16
- ) => {
17
- const { children, ...rest } = props;
18
- return <ScopedCssBaseline {...rest}>{children}</ScopedCssBaseline>;
19
- };
1
+ import React from 'react';
2
+ import CssBaseline, { CssBaselineProps } from '@material-ui/core/CssBaseline';
3
+ import ScopedCssBaseline, {
4
+ ScopedCssBaselineProps,
5
+ } from '@material-ui/core/ScopedCssBaseline';
6
+
7
+ export const McCssBaseline: React.FC<CssBaselineProps> = (
8
+ props: CssBaselineProps
9
+ ) => {
10
+ const { children, ...rest } = props;
11
+ return <CssBaseline {...rest}>{children}</CssBaseline>;
12
+ };
13
+
14
+ export const McScopedCssBaseline: React.FC<ScopedCssBaselineProps> = (
15
+ props: ScopedCssBaselineProps
16
+ ) => {
17
+ const { children, ...rest } = props;
18
+ return <ScopedCssBaseline {...rest}>{children}</ScopedCssBaseline>;
19
+ };
@@ -1,4 +1,4 @@
1
- export {
2
- McCssBaseline as CssBaseline,
3
- McScopedCssBaseline as ScopedCssBaseline,
4
- } from './cssbaseline';
1
+ export {
2
+ McCssBaseline as CssBaseline,
3
+ McScopedCssBaseline as ScopedCssBaseline,
4
+ } from './cssbaseline';
@@ -1,9 +1,9 @@
1
- body[dir='rtl'] .drpContainer .MuiInputLabel-formControl {
2
- right: 0px;
3
- left: unset;
4
- }
5
-
6
- body[dir='rtl'] .drpContainer .MuiInputBase-input {
7
- direction: ltr;
8
- text-align: end;
9
- }
1
+ body[dir='rtl'] .drpContainer .MuiInputLabel-formControl {
2
+ right: 0px;
3
+ left: unset;
4
+ }
5
+
6
+ body[dir='rtl'] .drpContainer .MuiInputBase-input {
7
+ direction: ltr;
8
+ text-align: end;
9
+ }
@@ -1,130 +1,130 @@
1
- import React from 'react';
2
- import { action } from '@storybook/addon-actions';
3
- import { Story } from '@storybook/react/types-6-0';
4
- import { CSFStory } from '../utils/story';
5
- import { SupportedLocales } from '../models/enums';
6
- import { DateTimePicker } from './date-picker';
7
-
8
- const TODAY = new Date();
9
-
10
- export default {
11
- title: 'Date Picker',
12
- component: DateTimePicker,
13
- };
14
-
15
- export const DatePickerDefault: CSFStory<JSX.Element> = () => (
16
- <DateTimePicker onChange={action('date changed')} value={TODAY} />
17
- );
18
-
19
- DatePickerDefault.story = {
20
- name: 'Date picker default',
21
- };
22
-
23
- export const DateTimePickerMode: CSFStory<JSX.Element> = () => (
24
- <DateTimePicker
25
- value={TODAY}
26
- onChange={action('date changed')}
27
- showTime={true}
28
- format={'dd/MM/yyyy HH:mm'}
29
- />
30
- );
31
-
32
- DateTimePickerMode.story = {
33
- name: 'Date time picker',
34
- };
35
-
36
- export const DateNoFutureLimitTime: CSFStory<JSX.Element> = () => (
37
- <DateTimePicker
38
- value={TODAY}
39
- disableFuture={false}
40
- onChange={action('date changed')}
41
- />
42
- );
43
-
44
- DateNoFutureLimitTime.story = {
45
- name: 'Date time no future limit',
46
- };
47
-
48
- export const DateMinMaxLimitTime: CSFStory<JSX.Element> = () => {
49
- const minDate = new Date();
50
- const maxDate = new Date();
51
- const deltaInDays = 6;
52
- minDate.setDate(maxDate.getDate() - deltaInDays);
53
- maxDate.setDate(maxDate.getDate() + deltaInDays);
54
- return (
55
- <DateTimePicker
56
- value={TODAY}
57
- onChange={(date) => {
58
- action('date changed')(date);
59
- console.log(date?.toDateString());
60
- }}
61
- minDate={minDate}
62
- maxDate={maxDate}
63
- />
64
- );
65
- };
66
-
67
- DateMinMaxLimitTime.story = {
68
- name: 'Date time with minDate & maxDate ',
69
- };
70
-
71
- export const DateMinMaxLimitTimeWithOnBlur: CSFStory<JSX.Element> = () => {
72
- const minDate = new Date();
73
- const maxDate = new Date();
74
- const deltaInDays = 6;
75
- minDate.setDate(maxDate.getDate() - deltaInDays);
76
- maxDate.setDate(maxDate.getDate() + deltaInDays);
77
- return (
78
- <DateTimePicker
79
- value={TODAY}
80
- onChange={(date) => {
81
- action('date changed')(date);
82
- console.log(date?.toDateString());
83
- }}
84
- onBlur={(date) => {
85
- action('OnBlur invoked')(date);
86
- console.log('OnBlur invoked');
87
- }}
88
- minDate={minDate}
89
- maxDate={maxDate}
90
- />
91
- );
92
- };
93
-
94
- DateMinMaxLimitTimeWithOnBlur.story = {
95
- name: 'Date time with OnBlur ',
96
- };
97
-
98
- export const DateTimeWithControlArgs: Story = (args: unknown) => {
99
- return (
100
- <DateTimePicker {...args} value={TODAY} onChange={action('date changed')} />
101
- );
102
- };
103
-
104
- DateTimeWithControlArgs.storyName = 'Date time control with args';
105
-
106
- DateTimeWithControlArgs.argTypes = {
107
- local: {
108
- control: {
109
- type: 'object',
110
- },
111
- },
112
- };
113
-
114
- export const DateTimeHebrewLocalized: Story = (args: unknown) => {
115
- const local = {
116
- placeHolderText: 'הכנס תאריך',
117
- calendarLocale: SupportedLocales.HE,
118
- };
119
- return (
120
- <DateTimePicker
121
- local={local}
122
- {...args}
123
- value={TODAY}
124
- onChange={action('date changed')}
125
- />
126
- );
127
- };
128
-
129
- DateTimeHebrewLocalized.storyName =
130
- 'Date time range looks like input with Hebrew calendar';
1
+ import React from 'react';
2
+ import { action } from '@storybook/addon-actions';
3
+ import { Story } from '@storybook/react/types-6-0';
4
+ import { CSFStory } from '../utils/story';
5
+ import { SupportedLocales } from '../models/enums';
6
+ import { DateTimePicker } from './date-picker';
7
+
8
+ const TODAY = new Date();
9
+
10
+ export default {
11
+ title: 'Date Picker',
12
+ component: DateTimePicker,
13
+ };
14
+
15
+ export const DatePickerDefault: CSFStory<JSX.Element> = () => (
16
+ <DateTimePicker onChange={action('date changed')} value={TODAY} />
17
+ );
18
+
19
+ DatePickerDefault.story = {
20
+ name: 'Date picker default',
21
+ };
22
+
23
+ export const DateTimePickerMode: CSFStory<JSX.Element> = () => (
24
+ <DateTimePicker
25
+ value={TODAY}
26
+ onChange={action('date changed')}
27
+ showTime={true}
28
+ format={'dd/MM/yyyy HH:mm'}
29
+ />
30
+ );
31
+
32
+ DateTimePickerMode.story = {
33
+ name: 'Date time picker',
34
+ };
35
+
36
+ export const DateNoFutureLimitTime: CSFStory<JSX.Element> = () => (
37
+ <DateTimePicker
38
+ value={TODAY}
39
+ disableFuture={false}
40
+ onChange={action('date changed')}
41
+ />
42
+ );
43
+
44
+ DateNoFutureLimitTime.story = {
45
+ name: 'Date time no future limit',
46
+ };
47
+
48
+ export const DateMinMaxLimitTime: CSFStory<JSX.Element> = () => {
49
+ const minDate = new Date();
50
+ const maxDate = new Date();
51
+ const deltaInDays = 6;
52
+ minDate.setDate(maxDate.getDate() - deltaInDays);
53
+ maxDate.setDate(maxDate.getDate() + deltaInDays);
54
+ return (
55
+ <DateTimePicker
56
+ value={TODAY}
57
+ onChange={(date) => {
58
+ action('date changed')(date);
59
+ console.log(date?.toDateString());
60
+ }}
61
+ minDate={minDate}
62
+ maxDate={maxDate}
63
+ />
64
+ );
65
+ };
66
+
67
+ DateMinMaxLimitTime.story = {
68
+ name: 'Date time with minDate & maxDate ',
69
+ };
70
+
71
+ export const DateMinMaxLimitTimeWithOnBlur: CSFStory<JSX.Element> = () => {
72
+ const minDate = new Date();
73
+ const maxDate = new Date();
74
+ const deltaInDays = 6;
75
+ minDate.setDate(maxDate.getDate() - deltaInDays);
76
+ maxDate.setDate(maxDate.getDate() + deltaInDays);
77
+ return (
78
+ <DateTimePicker
79
+ value={TODAY}
80
+ onChange={(date) => {
81
+ action('date changed')(date);
82
+ console.log(date?.toDateString());
83
+ }}
84
+ onBlur={(date) => {
85
+ action('OnBlur invoked')(date);
86
+ console.log('OnBlur invoked');
87
+ }}
88
+ minDate={minDate}
89
+ maxDate={maxDate}
90
+ />
91
+ );
92
+ };
93
+
94
+ DateMinMaxLimitTimeWithOnBlur.story = {
95
+ name: 'Date time with OnBlur ',
96
+ };
97
+
98
+ export const DateTimeWithControlArgs: Story = (args: unknown) => {
99
+ return (
100
+ <DateTimePicker {...args} value={TODAY} onChange={action('date changed')} />
101
+ );
102
+ };
103
+
104
+ DateTimeWithControlArgs.storyName = 'Date time control with args';
105
+
106
+ DateTimeWithControlArgs.argTypes = {
107
+ local: {
108
+ control: {
109
+ type: 'object',
110
+ },
111
+ },
112
+ };
113
+
114
+ export const DateTimeHebrewLocalized: Story = (args: unknown) => {
115
+ const local = {
116
+ placeHolderText: 'הכנס תאריך',
117
+ calendarLocale: SupportedLocales.HE,
118
+ };
119
+ return (
120
+ <DateTimePicker
121
+ local={local}
122
+ {...args}
123
+ value={TODAY}
124
+ onChange={action('date changed')}
125
+ />
126
+ );
127
+ };
128
+
129
+ DateTimeHebrewLocalized.storyName =
130
+ 'Date time range looks like input with Hebrew calendar';