@deck.gl/core 9.2.11 → 9.3.0-alpha.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 (152) hide show
  1. package/debug.min.js +1 -1
  2. package/dist/controllers/controller.d.ts +10 -0
  3. package/dist/controllers/controller.d.ts.map +1 -1
  4. package/dist/controllers/controller.js +15 -0
  5. package/dist/controllers/controller.js.map +1 -1
  6. package/dist/controllers/first-person-controller.d.ts +3 -2
  7. package/dist/controllers/first-person-controller.d.ts.map +1 -1
  8. package/dist/controllers/first-person-controller.js +13 -5
  9. package/dist/controllers/first-person-controller.js.map +1 -1
  10. package/dist/controllers/globe-controller.d.ts +1 -0
  11. package/dist/controllers/globe-controller.d.ts.map +1 -1
  12. package/dist/controllers/globe-controller.js +66 -5
  13. package/dist/controllers/globe-controller.js.map +1 -1
  14. package/dist/controllers/map-controller.d.ts +21 -3
  15. package/dist/controllers/map-controller.d.ts.map +1 -1
  16. package/dist/controllers/map-controller.js +139 -25
  17. package/dist/controllers/map-controller.js.map +1 -1
  18. package/dist/controllers/orbit-controller.d.ts +12 -4
  19. package/dist/controllers/orbit-controller.d.ts.map +1 -1
  20. package/dist/controllers/orbit-controller.js +118 -10
  21. package/dist/controllers/orbit-controller.js.map +1 -1
  22. package/dist/controllers/orthographic-controller.d.ts +117 -9
  23. package/dist/controllers/orthographic-controller.d.ts.map +1 -1
  24. package/dist/controllers/orthographic-controller.js +302 -37
  25. package/dist/controllers/orthographic-controller.js.map +1 -1
  26. package/dist/controllers/view-state.d.ts +4 -1
  27. package/dist/controllers/view-state.d.ts.map +1 -1
  28. package/dist/controllers/view-state.js +2 -1
  29. package/dist/controllers/view-state.js.map +1 -1
  30. package/dist/debug/loggers.d.ts.map +1 -1
  31. package/dist/debug/loggers.js +1 -4
  32. package/dist/debug/loggers.js.map +1 -1
  33. package/dist/dist.dev.js +7585 -10714
  34. package/dist/effects/lighting/lighting-effect.d.ts +1 -0
  35. package/dist/effects/lighting/lighting-effect.d.ts.map +1 -1
  36. package/dist/effects/lighting/lighting-effect.js +14 -5
  37. package/dist/effects/lighting/lighting-effect.js.map +1 -1
  38. package/dist/index.cjs +812 -120
  39. package/dist/index.cjs.map +4 -4
  40. package/dist/lib/attribute/attribute-manager.d.ts.map +1 -1
  41. package/dist/lib/attribute/attribute-manager.js +2 -0
  42. package/dist/lib/attribute/attribute-manager.js.map +1 -1
  43. package/dist/lib/attribute/data-column.js +2 -2
  44. package/dist/lib/attribute/data-column.js.map +1 -1
  45. package/dist/lib/attribute/gl-utils.d.ts +1 -1
  46. package/dist/lib/attribute/gl-utils.d.ts.map +1 -1
  47. package/dist/lib/attribute/gl-utils.js +4 -0
  48. package/dist/lib/attribute/gl-utils.js.map +1 -1
  49. package/dist/lib/deck-picker.d.ts +14 -1
  50. package/dist/lib/deck-picker.d.ts.map +1 -1
  51. package/dist/lib/deck-picker.js +43 -11
  52. package/dist/lib/deck-picker.js.map +1 -1
  53. package/dist/lib/deck-renderer.d.ts +6 -1
  54. package/dist/lib/deck-renderer.d.ts.map +1 -1
  55. package/dist/lib/deck-renderer.js +14 -2
  56. package/dist/lib/deck-renderer.js.map +1 -1
  57. package/dist/lib/deck.d.ts +10 -0
  58. package/dist/lib/deck.d.ts.map +1 -1
  59. package/dist/lib/deck.js +29 -11
  60. package/dist/lib/deck.js.map +1 -1
  61. package/dist/lib/init.js +2 -2
  62. package/dist/lib/init.js.map +1 -1
  63. package/dist/lib/layer.d.ts.map +1 -1
  64. package/dist/lib/layer.js +7 -3
  65. package/dist/lib/layer.js.map +1 -1
  66. package/dist/lib/view-manager.d.ts +4 -0
  67. package/dist/lib/view-manager.d.ts.map +1 -1
  68. package/dist/lib/view-manager.js +6 -1
  69. package/dist/lib/view-manager.js.map +1 -1
  70. package/dist/lib/widget.d.ts +4 -0
  71. package/dist/lib/widget.d.ts.map +1 -1
  72. package/dist/lib/widget.js +11 -0
  73. package/dist/lib/widget.js.map +1 -1
  74. package/dist/passes/draw-layers-pass.d.ts +2 -0
  75. package/dist/passes/draw-layers-pass.d.ts.map +1 -1
  76. package/dist/passes/draw-layers-pass.js +3 -0
  77. package/dist/passes/draw-layers-pass.js.map +1 -1
  78. package/dist/passes/layers-pass.d.ts +2 -1
  79. package/dist/passes/layers-pass.d.ts.map +1 -1
  80. package/dist/passes/layers-pass.js +7 -3
  81. package/dist/passes/layers-pass.js.map +1 -1
  82. package/dist/passes/pick-layers-pass.d.ts +6 -3
  83. package/dist/passes/pick-layers-pass.d.ts.map +1 -1
  84. package/dist/passes/pick-layers-pass.js +12 -4
  85. package/dist/passes/pick-layers-pass.js.map +1 -1
  86. package/dist/shaderlib/project/project.glsl.d.ts.map +1 -1
  87. package/dist/shaderlib/project/project.glsl.js +3 -0
  88. package/dist/shaderlib/project/project.glsl.js.map +1 -1
  89. package/dist/utils/deep-merge.d.ts +5 -0
  90. package/dist/utils/deep-merge.d.ts.map +1 -0
  91. package/dist/utils/deep-merge.js +31 -0
  92. package/dist/utils/deep-merge.js.map +1 -0
  93. package/dist/utils/math-utils.d.ts +4 -0
  94. package/dist/utils/math-utils.d.ts.map +1 -1
  95. package/dist/utils/math-utils.js +8 -0
  96. package/dist/utils/math-utils.js.map +1 -1
  97. package/dist/utils/texture.d.ts.map +1 -1
  98. package/dist/utils/texture.js +3 -1
  99. package/dist/utils/texture.js.map +1 -1
  100. package/dist/viewports/globe-viewport.d.ts +1 -0
  101. package/dist/viewports/globe-viewport.d.ts.map +1 -1
  102. package/dist/viewports/globe-viewport.js +1 -1
  103. package/dist/viewports/globe-viewport.js.map +1 -1
  104. package/dist/viewports/orbit-viewport.d.ts.map +1 -1
  105. package/dist/viewports/orbit-viewport.js +7 -2
  106. package/dist/viewports/orbit-viewport.js.map +1 -1
  107. package/dist/viewports/orthographic-viewport.d.ts +8 -2
  108. package/dist/viewports/orthographic-viewport.d.ts.map +1 -1
  109. package/dist/viewports/orthographic-viewport.js.map +1 -1
  110. package/dist/viewports/web-mercator-viewport.d.ts +5 -0
  111. package/dist/viewports/web-mercator-viewport.d.ts.map +1 -1
  112. package/dist/viewports/web-mercator-viewport.js +9 -0
  113. package/dist/viewports/web-mercator-viewport.js.map +1 -1
  114. package/dist/views/orthographic-view.d.ts +38 -4
  115. package/dist/views/orthographic-view.d.ts.map +1 -1
  116. package/dist/views/orthographic-view.js.map +1 -1
  117. package/dist/views/view.d.ts.map +1 -1
  118. package/dist/views/view.js +2 -8
  119. package/dist/views/view.js.map +1 -1
  120. package/dist.min.js +226 -154
  121. package/package.json +9 -9
  122. package/src/controllers/controller.ts +25 -2
  123. package/src/controllers/first-person-controller.ts +18 -8
  124. package/src/controllers/globe-controller.ts +89 -5
  125. package/src/controllers/map-controller.ts +174 -32
  126. package/src/controllers/orbit-controller.ts +147 -13
  127. package/src/controllers/orthographic-controller.ts +417 -41
  128. package/src/controllers/view-state.ts +10 -3
  129. package/src/debug/loggers.ts +1 -5
  130. package/src/effects/lighting/lighting-effect.ts +20 -8
  131. package/src/lib/attribute/attribute-manager.ts +1 -0
  132. package/src/lib/attribute/data-column.ts +3 -3
  133. package/src/lib/attribute/gl-utils.ts +5 -1
  134. package/src/lib/deck-picker.ts +47 -12
  135. package/src/lib/deck-renderer.ts +17 -3
  136. package/src/lib/deck.ts +39 -11
  137. package/src/lib/layer.ts +7 -3
  138. package/src/lib/view-manager.ts +9 -1
  139. package/src/lib/widget.ts +14 -0
  140. package/src/passes/draw-layers-pass.ts +5 -0
  141. package/src/passes/layers-pass.ts +9 -4
  142. package/src/passes/pick-layers-pass.ts +18 -6
  143. package/src/shaderlib/project/project.glsl.ts +3 -0
  144. package/src/utils/deep-merge.ts +33 -0
  145. package/src/utils/math-utils.ts +12 -0
  146. package/src/utils/texture.ts +3 -1
  147. package/src/viewports/globe-viewport.ts +1 -1
  148. package/src/viewports/orbit-viewport.ts +8 -2
  149. package/src/viewports/orthographic-viewport.ts +8 -2
  150. package/src/viewports/web-mercator-viewport.ts +10 -0
  151. package/src/views/orthographic-view.ts +38 -4
  152. package/src/views/view.ts +2 -8
@@ -6,16 +6,50 @@ import View, {CommonViewState, CommonViewProps} from './view';
6
6
  import OrthographicViewport from '../viewports/orthographic-viewport';
7
7
  import OrthographicController from '../controllers/orthographic-controller';
8
8
 
9
+ /** independent zoom levels for X and Y axes
10
+ * @deprecated use `zoomX` and `zoomY` instead */
11
+ type Deprecated2DZoom = [number, number];
12
+
9
13
  export type OrthographicViewState = {
10
14
  /** The world position at the center of the viewport. Default `[0, 0, 0]`. */
11
15
  target?: [number, number, number] | [number, number];
12
16
  /** The zoom level of the viewport. `zoom: 0` maps one unit distance to one pixel on screen, and increasing `zoom` by `1` scales the same object to twice as large.
13
- * To apply independent zoom levels to the X and Y axes, supply an array `[zoomX, zoomY]`. Default `0`. */
14
- zoom?: number | [number, number];
15
- /** The min zoom level of the viewport. Default `-Infinity`. */
17
+ * To apply independent zoom levels to the X and Y axes, use `zoomX` and `zoomY`.
18
+ * @default 0
19
+ */
20
+ zoom?: number | Deprecated2DZoom;
21
+ /** Which axes to apply zoom to. One of 'X', 'Y' or 'all'
22
+ * @default 'all'
23
+ */
24
+ zoomAxis?: 'X' | 'Y' | 'all';
25
+ /** The zoom level along X axis. Overrides `zoom` if supplied. */
26
+ zoomX?: number;
27
+ /** The zoom level along Y axis. Overrides `zoom` if supplied. */
28
+ zoomY?: number;
29
+ /** The min zoom level of the viewport.
30
+ * @default -Infinity
31
+ */
16
32
  minZoom?: number;
17
- /** The max zoom level of the viewport. Default `Infinity`. */
33
+ /** The max zoom level of the viewport.
34
+ * @default Infinity
35
+ */
18
36
  maxZoom?: number;
37
+ /** The min zoom level along X axis.
38
+ * @default `minZoom`
39
+ */
40
+ maxZoomX?: number;
41
+ /** The max zoom level along X axis.
42
+ * @default `maxZoom`
43
+ */
44
+ minZoomX?: number;
45
+ /** The min zoom level along Y axis.
46
+ * @default `minZoom`
47
+ */
48
+ maxZoomY?: number;
49
+ /** The max zoom level along Y axis.
50
+ * @default `maxZoom`
51
+ */
52
+ minZoomY?: number;
19
53
  } & CommonViewState;
20
54
 
21
55
  export type OrthographicViewProps = {
package/src/views/view.ts CHANGED
@@ -5,6 +5,7 @@
5
5
  import Viewport from '../viewports/viewport';
6
6
  import {parsePosition, getPosition, LayoutExpression} from '../utils/positions';
7
7
  import {deepEqual} from '../utils/deep-equal';
8
+ import {deepMergeViewState} from '../utils/deep-merge';
8
9
  import type Controller from '../controllers/controller';
9
10
  import type {ControllerOptions} from '../controllers/controller';
10
11
  import type {TransitionProps} from '../controllers/transition-manager';
@@ -148,14 +149,7 @@ export default abstract class View<
148
149
  return this.props.viewState as ViewState;
149
150
  }
150
151
 
151
- // Merge in all props from View's viewState, except id
152
- const newViewState = {...viewState};
153
- for (const key in this.props.viewState) {
154
- if (key !== 'id') {
155
- newViewState[key] = this.props.viewState[key];
156
- }
157
- }
158
- return newViewState;
152
+ return deepMergeViewState<ViewState>(viewState, this.props.viewState as ViewState);
159
153
  }
160
154
 
161
155
  return viewState;