@kepler.gl/deckgl-layers 3.3.0-alpha.0 → 3.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.
- package/dist/cluster-layer/cluster-layer.js +1 -4
- package/dist/grid-layer/enhanced-cpu-grid-layer.d.ts +92 -7
- package/dist/grid-layer/enhanced-cpu-grid-layer.js +29 -8
- package/dist/hexagon-layer/enhanced-hexagon-layer.d.ts +92 -7
- package/dist/hexagon-layer/enhanced-hexagon-layer.js +29 -8
- package/dist/index.d.ts +1 -0
- package/dist/index.js +13 -1
- package/dist/layer-utils/aggregation-utils.d.ts +44 -0
- package/dist/layer-utils/aggregation-utils.js +181 -0
- package/dist/layer-utils/shader-utils.d.ts +1 -0
- package/dist/layer-utils/shader-utils.js +10 -1
- package/dist/raster/pipeline-validation-patch.js +61 -20
- package/dist/raster/raster-layer/raster-layer-shaders.js +44 -10
- package/dist/raster/raster-layer/raster-layer.js +8 -27
- package/dist/raster/raster-mesh-layer/matrix.d.ts +1 -1
- package/dist/raster/raster-mesh-layer/matrix.js +1 -1
- package/dist/raster/raster-mesh-layer/raster-mesh-layer.js +15 -26
- package/dist/raster/raster-processing-uniforms.d.ts +38 -0
- package/dist/raster/raster-processing-uniforms.js +124 -0
- package/dist/raster/util.d.ts +15 -0
- package/dist/raster/util.js +113 -3
- package/dist/wms/wms-layer.d.ts +5 -2
- package/dist/wms/wms-layer.js +94 -21
- package/package.json +20 -17
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.rasterProcessingUniforms = exports.UNIFORM_NAME_MAP = exports.RASTER_PROCESSING_FS = void 0;
|
|
7
|
+
// SPDX-License-Identifier: MIT
|
|
8
|
+
// Copyright contributors to the kepler.gl project
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Shared UBO for all raster processing module uniforms.
|
|
12
|
+
*
|
|
13
|
+
* WebGL2 guarantees only 12 fragment uniform blocks (GL_MAX_FRAGMENT_UNIFORM_BUFFERS).
|
|
14
|
+
* Without consolidation, the base layer already uses 8–9 blocks (project, picking,
|
|
15
|
+
* lighting, phongMaterial, floatColors, layer, shadow, simpleMesh/rasterMesh, raster),
|
|
16
|
+
* leaving only 3–4 for raster processing modules. Since a typical pipeline can use
|
|
17
|
+
* 5–9 raster modules (combineBands, mask, reorderBands, linearRescale, gammaContrast,
|
|
18
|
+
* sigmoidalContrast, colormap, filter, saturation), each declaring its own UBO block
|
|
19
|
+
* would exceed the limit.
|
|
20
|
+
*
|
|
21
|
+
* This module declares a single UBO that contains all possible raster processing
|
|
22
|
+
* uniforms. Individual modules' GLSL code still references the uniforms through
|
|
23
|
+
* the block instance name, and prepareLumaModules() rewires the declarations.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
var RASTER_PROCESSING_UNIFORM_BLOCK = "uniform rasterProcessingUniforms {\n // linear_rescale\n float linear_rescale_scaler;\n float linear_rescale_offset;\n\n // gamma_contrast\n float gamma_contrast_gamma1;\n float gamma_contrast_gamma2;\n float gamma_contrast_gamma3;\n float gamma_contrast_gamma4;\n\n // sigmoidalContrast\n float sigmoidalContrast_contrast;\n float sigmoidalContrast_bias;\n\n // colormap\n int colormap_hasCategoricalColors;\n int colormap_categoricalMinValue;\n int colormap_categoricalMaxValue;\n int colormap_maxPixelValue;\n\n // bandFilter\n float bandFilter_min1;\n float bandFilter_max1;\n float bandFilter_min2;\n float bandFilter_max2;\n float bandFilter_min3;\n float bandFilter_max3;\n float bandFilter_min4;\n float bandFilter_max4;\n\n // saturation\n float saturation_value;\n\n // reorder_bands\n mat4 reorder_bands_ordering;\n\n // mask (shared by mask_image_float, mask_image_uint, mask_image_int)\n float mask_keepMin;\n float mask_keepMax;\n\n // pansharpen_brovey\n float pansharpen_brovey_panWeight;\n} rasterProcessing;\n";
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* GLSL #define aliases that let per-module code continue referencing uniforms
|
|
30
|
+
* through their original block instance names (e.g. `linear_rescale.scaler`).
|
|
31
|
+
*/
|
|
32
|
+
var ALIAS_DEFINES = "#define linear_rescale_scaler_ALIAS rasterProcessing.linear_rescale_scaler\n#define linear_rescale_offset_ALIAS rasterProcessing.linear_rescale_offset\n#define gamma_contrast_gamma1_ALIAS rasterProcessing.gamma_contrast_gamma1\n#define gamma_contrast_gamma2_ALIAS rasterProcessing.gamma_contrast_gamma2\n#define gamma_contrast_gamma3_ALIAS rasterProcessing.gamma_contrast_gamma3\n#define gamma_contrast_gamma4_ALIAS rasterProcessing.gamma_contrast_gamma4\n#define sigmoidalContrast_contrast_ALIAS rasterProcessing.sigmoidalContrast_contrast\n#define sigmoidalContrast_bias_ALIAS rasterProcessing.sigmoidalContrast_bias\n#define colormap_hasCategoricalColors_ALIAS rasterProcessing.colormap_hasCategoricalColors\n#define colormap_categoricalMinValue_ALIAS rasterProcessing.colormap_categoricalMinValue\n#define colormap_categoricalMaxValue_ALIAS rasterProcessing.colormap_categoricalMaxValue\n#define colormap_maxPixelValue_ALIAS rasterProcessing.colormap_maxPixelValue\n#define bandFilter_min1_ALIAS rasterProcessing.bandFilter_min1\n#define bandFilter_max1_ALIAS rasterProcessing.bandFilter_max1\n#define bandFilter_min2_ALIAS rasterProcessing.bandFilter_min2\n#define bandFilter_max2_ALIAS rasterProcessing.bandFilter_max2\n#define bandFilter_min3_ALIAS rasterProcessing.bandFilter_min3\n#define bandFilter_max3_ALIAS rasterProcessing.bandFilter_max3\n#define bandFilter_min4_ALIAS rasterProcessing.bandFilter_min4\n#define bandFilter_max4_ALIAS rasterProcessing.bandFilter_max4\n#define saturation_value_ALIAS rasterProcessing.saturation_value\n#define reorder_bands_ordering_ALIAS rasterProcessing.reorder_bands_ordering\n#define mask_keepMin_ALIAS rasterProcessing.mask_keepMin\n#define mask_keepMax_ALIAS rasterProcessing.mask_keepMax\n#define pansharpen_brovey_panWeight_ALIAS rasterProcessing.pansharpen_brovey_panWeight\n";
|
|
33
|
+
var RASTER_PROCESSING_FS = exports.RASTER_PROCESSING_FS = RASTER_PROCESSING_UNIFORM_BLOCK + ALIAS_DEFINES;
|
|
34
|
+
var rasterProcessingUniforms = exports.rasterProcessingUniforms = {
|
|
35
|
+
name: 'rasterProcessing',
|
|
36
|
+
fs: RASTER_PROCESSING_FS,
|
|
37
|
+
vs: '',
|
|
38
|
+
uniformTypes: {
|
|
39
|
+
linear_rescale_scaler: 'f32',
|
|
40
|
+
linear_rescale_offset: 'f32',
|
|
41
|
+
gamma_contrast_gamma1: 'f32',
|
|
42
|
+
gamma_contrast_gamma2: 'f32',
|
|
43
|
+
gamma_contrast_gamma3: 'f32',
|
|
44
|
+
gamma_contrast_gamma4: 'f32',
|
|
45
|
+
sigmoidalContrast_contrast: 'f32',
|
|
46
|
+
sigmoidalContrast_bias: 'f32',
|
|
47
|
+
colormap_hasCategoricalColors: 'i32',
|
|
48
|
+
colormap_categoricalMinValue: 'i32',
|
|
49
|
+
colormap_categoricalMaxValue: 'i32',
|
|
50
|
+
colormap_maxPixelValue: 'i32',
|
|
51
|
+
bandFilter_min1: 'f32',
|
|
52
|
+
bandFilter_max1: 'f32',
|
|
53
|
+
bandFilter_min2: 'f32',
|
|
54
|
+
bandFilter_max2: 'f32',
|
|
55
|
+
bandFilter_min3: 'f32',
|
|
56
|
+
bandFilter_max3: 'f32',
|
|
57
|
+
bandFilter_min4: 'f32',
|
|
58
|
+
bandFilter_max4: 'f32',
|
|
59
|
+
saturation_value: 'f32',
|
|
60
|
+
reorder_bands_ordering: 'mat4x4<f32>',
|
|
61
|
+
mask_keepMin: 'f32',
|
|
62
|
+
mask_keepMax: 'f32',
|
|
63
|
+
pansharpen_brovey_panWeight: 'f32'
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Map from original module uniform names (as returned by getUniforms) to
|
|
69
|
+
* the prefixed names used in the shared UBO.
|
|
70
|
+
*/
|
|
71
|
+
var UNIFORM_NAME_MAP = exports.UNIFORM_NAME_MAP = {
|
|
72
|
+
linear_rescale: {
|
|
73
|
+
scaler: 'linear_rescale_scaler',
|
|
74
|
+
offset: 'linear_rescale_offset'
|
|
75
|
+
},
|
|
76
|
+
gamma_contrast: {
|
|
77
|
+
gamma1: 'gamma_contrast_gamma1',
|
|
78
|
+
gamma2: 'gamma_contrast_gamma2',
|
|
79
|
+
gamma3: 'gamma_contrast_gamma3',
|
|
80
|
+
gamma4: 'gamma_contrast_gamma4'
|
|
81
|
+
},
|
|
82
|
+
sigmoidalContrast: {
|
|
83
|
+
contrast: 'sigmoidalContrast_contrast',
|
|
84
|
+
bias: 'sigmoidalContrast_bias'
|
|
85
|
+
},
|
|
86
|
+
colormap: {
|
|
87
|
+
hasCategoricalColors: 'colormap_hasCategoricalColors',
|
|
88
|
+
categoricalMinValue: 'colormap_categoricalMinValue',
|
|
89
|
+
categoricalMaxValue: 'colormap_categoricalMaxValue',
|
|
90
|
+
maxPixelValue: 'colormap_maxPixelValue'
|
|
91
|
+
},
|
|
92
|
+
bandFilter: {
|
|
93
|
+
min1: 'bandFilter_min1',
|
|
94
|
+
max1: 'bandFilter_max1',
|
|
95
|
+
min2: 'bandFilter_min2',
|
|
96
|
+
max2: 'bandFilter_max2',
|
|
97
|
+
min3: 'bandFilter_min3',
|
|
98
|
+
max3: 'bandFilter_max3',
|
|
99
|
+
min4: 'bandFilter_min4',
|
|
100
|
+
max4: 'bandFilter_max4'
|
|
101
|
+
},
|
|
102
|
+
saturation: {
|
|
103
|
+
value: 'saturation_value'
|
|
104
|
+
},
|
|
105
|
+
reorder_bands: {
|
|
106
|
+
ordering: 'reorder_bands_ordering'
|
|
107
|
+
},
|
|
108
|
+
mask_image_float: {
|
|
109
|
+
keepMin: 'mask_keepMin',
|
|
110
|
+
keepMax: 'mask_keepMax'
|
|
111
|
+
},
|
|
112
|
+
mask_image_uint: {
|
|
113
|
+
keepMin: 'mask_keepMin',
|
|
114
|
+
keepMax: 'mask_keepMax'
|
|
115
|
+
},
|
|
116
|
+
mask_image_int: {
|
|
117
|
+
keepMin: 'mask_keepMin',
|
|
118
|
+
keepMax: 'mask_keepMax'
|
|
119
|
+
},
|
|
120
|
+
pansharpen_brovey: {
|
|
121
|
+
panWeight: 'pansharpen_brovey_panWeight'
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSQVNURVJfUFJPQ0VTU0lOR19VTklGT1JNX0JMT0NLIiwiQUxJQVNfREVGSU5FUyIsIlJBU1RFUl9QUk9DRVNTSU5HX0ZTIiwiZXhwb3J0cyIsInJhc3RlclByb2Nlc3NpbmdVbmlmb3JtcyIsIm5hbWUiLCJmcyIsInZzIiwidW5pZm9ybVR5cGVzIiwibGluZWFyX3Jlc2NhbGVfc2NhbGVyIiwibGluZWFyX3Jlc2NhbGVfb2Zmc2V0IiwiZ2FtbWFfY29udHJhc3RfZ2FtbWExIiwiZ2FtbWFfY29udHJhc3RfZ2FtbWEyIiwiZ2FtbWFfY29udHJhc3RfZ2FtbWEzIiwiZ2FtbWFfY29udHJhc3RfZ2FtbWE0Iiwic2lnbW9pZGFsQ29udHJhc3RfY29udHJhc3QiLCJzaWdtb2lkYWxDb250cmFzdF9iaWFzIiwiY29sb3JtYXBfaGFzQ2F0ZWdvcmljYWxDb2xvcnMiLCJjb2xvcm1hcF9jYXRlZ29yaWNhbE1pblZhbHVlIiwiY29sb3JtYXBfY2F0ZWdvcmljYWxNYXhWYWx1ZSIsImNvbG9ybWFwX21heFBpeGVsVmFsdWUiLCJiYW5kRmlsdGVyX21pbjEiLCJiYW5kRmlsdGVyX21heDEiLCJiYW5kRmlsdGVyX21pbjIiLCJiYW5kRmlsdGVyX21heDIiLCJiYW5kRmlsdGVyX21pbjMiLCJiYW5kRmlsdGVyX21heDMiLCJiYW5kRmlsdGVyX21pbjQiLCJiYW5kRmlsdGVyX21heDQiLCJzYXR1cmF0aW9uX3ZhbHVlIiwicmVvcmRlcl9iYW5kc19vcmRlcmluZyIsIm1hc2tfa2VlcE1pbiIsIm1hc2tfa2VlcE1heCIsInBhbnNoYXJwZW5fYnJvdmV5X3BhbldlaWdodCIsIlVOSUZPUk1fTkFNRV9NQVAiLCJsaW5lYXJfcmVzY2FsZSIsInNjYWxlciIsIm9mZnNldCIsImdhbW1hX2NvbnRyYXN0IiwiZ2FtbWExIiwiZ2FtbWEyIiwiZ2FtbWEzIiwiZ2FtbWE0Iiwic2lnbW9pZGFsQ29udHJhc3QiLCJjb250cmFzdCIsImJpYXMiLCJjb2xvcm1hcCIsImhhc0NhdGVnb3JpY2FsQ29sb3JzIiwiY2F0ZWdvcmljYWxNaW5WYWx1ZSIsImNhdGVnb3JpY2FsTWF4VmFsdWUiLCJtYXhQaXhlbFZhbHVlIiwiYmFuZEZpbHRlciIsIm1pbjEiLCJtYXgxIiwibWluMiIsIm1heDIiLCJtaW4zIiwibWF4MyIsIm1pbjQiLCJtYXg0Iiwic2F0dXJhdGlvbiIsInZhbHVlIiwicmVvcmRlcl9iYW5kcyIsIm9yZGVyaW5nIiwibWFza19pbWFnZV9mbG9hdCIsImtlZXBNaW4iLCJrZWVwTWF4IiwibWFza19pbWFnZV91aW50IiwibWFza19pbWFnZV9pbnQiLCJwYW5zaGFycGVuX2Jyb3ZleSIsInBhbldlaWdodCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yYXN0ZXIvcmFzdGVyLXByb2Nlc3NpbmctdW5pZm9ybXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuLyoqXG4gKiBTaGFyZWQgVUJPIGZvciBhbGwgcmFzdGVyIHByb2Nlc3NpbmcgbW9kdWxlIHVuaWZvcm1zLlxuICpcbiAqIFdlYkdMMiBndWFyYW50ZWVzIG9ubHkgMTIgZnJhZ21lbnQgdW5pZm9ybSBibG9ja3MgKEdMX01BWF9GUkFHTUVOVF9VTklGT1JNX0JVRkZFUlMpLlxuICogV2l0aG91dCBjb25zb2xpZGF0aW9uLCB0aGUgYmFzZSBsYXllciBhbHJlYWR5IHVzZXMgOOKAkzkgYmxvY2tzIChwcm9qZWN0LCBwaWNraW5nLFxuICogbGlnaHRpbmcsIHBob25nTWF0ZXJpYWwsIGZsb2F0Q29sb3JzLCBsYXllciwgc2hhZG93LCBzaW1wbGVNZXNoL3Jhc3Rlck1lc2gsIHJhc3RlciksXG4gKiBsZWF2aW5nIG9ubHkgM+KAkzQgZm9yIHJhc3RlciBwcm9jZXNzaW5nIG1vZHVsZXMuIFNpbmNlIGEgdHlwaWNhbCBwaXBlbGluZSBjYW4gdXNlXG4gKiA14oCTOSByYXN0ZXIgbW9kdWxlcyAoY29tYmluZUJhbmRzLCBtYXNrLCByZW9yZGVyQmFuZHMsIGxpbmVhclJlc2NhbGUsIGdhbW1hQ29udHJhc3QsXG4gKiBzaWdtb2lkYWxDb250cmFzdCwgY29sb3JtYXAsIGZpbHRlciwgc2F0dXJhdGlvbiksIGVhY2ggZGVjbGFyaW5nIGl0cyBvd24gVUJPIGJsb2NrXG4gKiB3b3VsZCBleGNlZWQgdGhlIGxpbWl0LlxuICpcbiAqIFRoaXMgbW9kdWxlIGRlY2xhcmVzIGEgc2luZ2xlIFVCTyB0aGF0IGNvbnRhaW5zIGFsbCBwb3NzaWJsZSByYXN0ZXIgcHJvY2Vzc2luZ1xuICogdW5pZm9ybXMuIEluZGl2aWR1YWwgbW9kdWxlcycgR0xTTCBjb2RlIHN0aWxsIHJlZmVyZW5jZXMgdGhlIHVuaWZvcm1zIHRocm91Z2hcbiAqIHRoZSBibG9jayBpbnN0YW5jZSBuYW1lLCBhbmQgcHJlcGFyZUx1bWFNb2R1bGVzKCkgcmV3aXJlcyB0aGUgZGVjbGFyYXRpb25zLlxuICovXG5cbmNvbnN0IFJBU1RFUl9QUk9DRVNTSU5HX1VOSUZPUk1fQkxPQ0sgPSBgXFxcbnVuaWZvcm0gcmFzdGVyUHJvY2Vzc2luZ1VuaWZvcm1zIHtcbiAgLy8gbGluZWFyX3Jlc2NhbGVcbiAgZmxvYXQgbGluZWFyX3Jlc2NhbGVfc2NhbGVyO1xuICBmbG9hdCBsaW5lYXJfcmVzY2FsZV9vZmZzZXQ7XG5cbiAgLy8gZ2FtbWFfY29udHJhc3RcbiAgZmxvYXQgZ2FtbWFfY29udHJhc3RfZ2FtbWExO1xuICBmbG9hdCBnYW1tYV9jb250cmFzdF9nYW1tYTI7XG4gIGZsb2F0IGdhbW1hX2NvbnRyYXN0X2dhbW1hMztcbiAgZmxvYXQgZ2FtbWFfY29udHJhc3RfZ2FtbWE0O1xuXG4gIC8vIHNpZ21vaWRhbENvbnRyYXN0XG4gIGZsb2F0IHNpZ21vaWRhbENvbnRyYXN0X2NvbnRyYXN0O1xuICBmbG9hdCBzaWdtb2lkYWxDb250cmFzdF9iaWFzO1xuXG4gIC8vIGNvbG9ybWFwXG4gIGludCBjb2xvcm1hcF9oYXNDYXRlZ29yaWNhbENvbG9ycztcbiAgaW50IGNvbG9ybWFwX2NhdGVnb3JpY2FsTWluVmFsdWU7XG4gIGludCBjb2xvcm1hcF9jYXRlZ29yaWNhbE1heFZhbHVlO1xuICBpbnQgY29sb3JtYXBfbWF4UGl4ZWxWYWx1ZTtcblxuICAvLyBiYW5kRmlsdGVyXG4gIGZsb2F0IGJhbmRGaWx0ZXJfbWluMTtcbiAgZmxvYXQgYmFuZEZpbHRlcl9tYXgxO1xuICBmbG9hdCBiYW5kRmlsdGVyX21pbjI7XG4gIGZsb2F0IGJhbmRGaWx0ZXJfbWF4MjtcbiAgZmxvYXQgYmFuZEZpbHRlcl9taW4zO1xuICBmbG9hdCBiYW5kRmlsdGVyX21heDM7XG4gIGZsb2F0IGJhbmRGaWx0ZXJfbWluNDtcbiAgZmxvYXQgYmFuZEZpbHRlcl9tYXg0O1xuXG4gIC8vIHNhdHVyYXRpb25cbiAgZmxvYXQgc2F0dXJhdGlvbl92YWx1ZTtcblxuICAvLyByZW9yZGVyX2JhbmRzXG4gIG1hdDQgcmVvcmRlcl9iYW5kc19vcmRlcmluZztcblxuICAvLyBtYXNrIChzaGFyZWQgYnkgbWFza19pbWFnZV9mbG9hdCwgbWFza19pbWFnZV91aW50LCBtYXNrX2ltYWdlX2ludClcbiAgZmxvYXQgbWFza19rZWVwTWluO1xuICBmbG9hdCBtYXNrX2tlZXBNYXg7XG5cbiAgLy8gcGFuc2hhcnBlbl9icm92ZXlcbiAgZmxvYXQgcGFuc2hhcnBlbl9icm92ZXlfcGFuV2VpZ2h0O1xufSByYXN0ZXJQcm9jZXNzaW5nO1xuYDtcblxuLyoqXG4gKiBHTFNMICNkZWZpbmUgYWxpYXNlcyB0aGF0IGxldCBwZXItbW9kdWxlIGNvZGUgY29udGludWUgcmVmZXJlbmNpbmcgdW5pZm9ybXNcbiAqIHRocm91Z2ggdGhlaXIgb3JpZ2luYWwgYmxvY2sgaW5zdGFuY2UgbmFtZXMgKGUuZy4gYGxpbmVhcl9yZXNjYWxlLnNjYWxlcmApLlxuICovXG5jb25zdCBBTElBU19ERUZJTkVTID0gYFxcXG4jZGVmaW5lIGxpbmVhcl9yZXNjYWxlX3NjYWxlcl9BTElBUyByYXN0ZXJQcm9jZXNzaW5nLmxpbmVhcl9yZXNjYWxlX3NjYWxlclxuI2RlZmluZSBsaW5lYXJfcmVzY2FsZV9vZmZzZXRfQUxJQVMgcmFzdGVyUHJvY2Vzc2luZy5saW5lYXJfcmVzY2FsZV9vZmZzZXRcbiNkZWZpbmUgZ2FtbWFfY29udHJhc3RfZ2FtbWExX0FMSUFTIHJhc3RlclByb2Nlc3NpbmcuZ2FtbWFfY29udHJhc3RfZ2FtbWExXG4jZGVmaW5lIGdhbW1hX2NvbnRyYXN0X2dhbW1hMl9BTElBUyByYXN0ZXJQcm9jZXNzaW5nLmdhbW1hX2NvbnRyYXN0X2dhbW1hMlxuI2RlZmluZSBnYW1tYV9jb250cmFzdF9nYW1tYTNfQUxJQVMgcmFzdGVyUHJvY2Vzc2luZy5nYW1tYV9jb250cmFzdF9nYW1tYTNcbiNkZWZpbmUgZ2FtbWFfY29udHJhc3RfZ2FtbWE0X0FMSUFTIHJhc3RlclByb2Nlc3NpbmcuZ2FtbWFfY29udHJhc3RfZ2FtbWE0XG4jZGVmaW5lIHNpZ21vaWRhbENvbnRyYXN0X2NvbnRyYXN0X0FMSUFTIHJhc3RlclByb2Nlc3Npbmcuc2lnbW9pZGFsQ29udHJhc3RfY29udHJhc3RcbiNkZWZpbmUgc2lnbW9pZGFsQ29udHJhc3RfYmlhc19BTElBUyByYXN0ZXJQcm9jZXNzaW5nLnNpZ21vaWRhbENvbnRyYXN0X2JpYXNcbiNkZWZpbmUgY29sb3JtYXBfaGFzQ2F0ZWdvcmljYWxDb2xvcnNfQUxJQVMgcmFzdGVyUHJvY2Vzc2luZy5jb2xvcm1hcF9oYXNDYXRlZ29yaWNhbENvbG9yc1xuI2RlZmluZSBjb2xvcm1hcF9jYXRlZ29yaWNhbE1pblZhbHVlX0FMSUFTIHJhc3RlclByb2Nlc3NpbmcuY29sb3JtYXBfY2F0ZWdvcmljYWxNaW5WYWx1ZVxuI2RlZmluZSBjb2xvcm1hcF9jYXRlZ29yaWNhbE1heFZhbHVlX0FMSUFTIHJhc3RlclByb2Nlc3NpbmcuY29sb3JtYXBfY2F0ZWdvcmljYWxNYXhWYWx1ZVxuI2RlZmluZSBjb2xvcm1hcF9tYXhQaXhlbFZhbHVlX0FMSUFTIHJhc3RlclByb2Nlc3NpbmcuY29sb3JtYXBfbWF4UGl4ZWxWYWx1ZVxuI2RlZmluZSBiYW5kRmlsdGVyX21pbjFfQUxJQVMgcmFzdGVyUHJvY2Vzc2luZy5iYW5kRmlsdGVyX21pbjFcbiNkZWZpbmUgYmFuZEZpbHRlcl9tYXgxX0FMSUFTIHJhc3RlclByb2Nlc3NpbmcuYmFuZEZpbHRlcl9tYXgxXG4jZGVmaW5lIGJhbmRGaWx0ZXJfbWluMl9BTElBUyByYXN0ZXJQcm9jZXNzaW5nLmJhbmRGaWx0ZXJfbWluMlxuI2RlZmluZSBiYW5kRmlsdGVyX21heDJfQUxJQVMgcmFzdGVyUHJvY2Vzc2luZy5iYW5kRmlsdGVyX21heDJcbiNkZWZpbmUgYmFuZEZpbHRlcl9taW4zX0FMSUFTIHJhc3RlclByb2Nlc3NpbmcuYmFuZEZpbHRlcl9taW4zXG4jZGVmaW5lIGJhbmRGaWx0ZXJfbWF4M19BTElBUyByYXN0ZXJQcm9jZXNzaW5nLmJhbmRGaWx0ZXJfbWF4M1xuI2RlZmluZSBiYW5kRmlsdGVyX21pbjRfQUxJQVMgcmFzdGVyUHJvY2Vzc2luZy5iYW5kRmlsdGVyX21pbjRcbiNkZWZpbmUgYmFuZEZpbHRlcl9tYXg0X0FMSUFTIHJhc3RlclByb2Nlc3NpbmcuYmFuZEZpbHRlcl9tYXg0XG4jZGVmaW5lIHNhdHVyYXRpb25fdmFsdWVfQUxJQVMgcmFzdGVyUHJvY2Vzc2luZy5zYXR1cmF0aW9uX3ZhbHVlXG4jZGVmaW5lIHJlb3JkZXJfYmFuZHNfb3JkZXJpbmdfQUxJQVMgcmFzdGVyUHJvY2Vzc2luZy5yZW9yZGVyX2JhbmRzX29yZGVyaW5nXG4jZGVmaW5lIG1hc2tfa2VlcE1pbl9BTElBUyByYXN0ZXJQcm9jZXNzaW5nLm1hc2tfa2VlcE1pblxuI2RlZmluZSBtYXNrX2tlZXBNYXhfQUxJQVMgcmFzdGVyUHJvY2Vzc2luZy5tYXNrX2tlZXBNYXhcbiNkZWZpbmUgcGFuc2hhcnBlbl9icm92ZXlfcGFuV2VpZ2h0X0FMSUFTIHJhc3RlclByb2Nlc3NpbmcucGFuc2hhcnBlbl9icm92ZXlfcGFuV2VpZ2h0XG5gO1xuXG5leHBvcnQgY29uc3QgUkFTVEVSX1BST0NFU1NJTkdfRlMgPSBSQVNURVJfUFJPQ0VTU0lOR19VTklGT1JNX0JMT0NLICsgQUxJQVNfREVGSU5FUztcblxuZXhwb3J0IGNvbnN0IHJhc3RlclByb2Nlc3NpbmdVbmlmb3JtcyA9IHtcbiAgbmFtZTogJ3Jhc3RlclByb2Nlc3NpbmcnLFxuICBmczogUkFTVEVSX1BST0NFU1NJTkdfRlMsXG4gIHZzOiAnJyxcbiAgdW5pZm9ybVR5cGVzOiB7XG4gICAgbGluZWFyX3Jlc2NhbGVfc2NhbGVyOiAnZjMyJyxcbiAgICBsaW5lYXJfcmVzY2FsZV9vZmZzZXQ6ICdmMzInLFxuICAgIGdhbW1hX2NvbnRyYXN0X2dhbW1hMTogJ2YzMicsXG4gICAgZ2FtbWFfY29udHJhc3RfZ2FtbWEyOiAnZjMyJyxcbiAgICBnYW1tYV9jb250cmFzdF9nYW1tYTM6ICdmMzInLFxuICAgIGdhbW1hX2NvbnRyYXN0X2dhbW1hNDogJ2YzMicsXG4gICAgc2lnbW9pZGFsQ29udHJhc3RfY29udHJhc3Q6ICdmMzInLFxuICAgIHNpZ21vaWRhbENvbnRyYXN0X2JpYXM6ICdmMzInLFxuICAgIGNvbG9ybWFwX2hhc0NhdGVnb3JpY2FsQ29sb3JzOiAnaTMyJyxcbiAgICBjb2xvcm1hcF9jYXRlZ29yaWNhbE1pblZhbHVlOiAnaTMyJyxcbiAgICBjb2xvcm1hcF9jYXRlZ29yaWNhbE1heFZhbHVlOiAnaTMyJyxcbiAgICBjb2xvcm1hcF9tYXhQaXhlbFZhbHVlOiAnaTMyJyxcbiAgICBiYW5kRmlsdGVyX21pbjE6ICdmMzInLFxuICAgIGJhbmRGaWx0ZXJfbWF4MTogJ2YzMicsXG4gICAgYmFuZEZpbHRlcl9taW4yOiAnZjMyJyxcbiAgICBiYW5kRmlsdGVyX21heDI6ICdmMzInLFxuICAgIGJhbmRGaWx0ZXJfbWluMzogJ2YzMicsXG4gICAgYmFuZEZpbHRlcl9tYXgzOiAnZjMyJyxcbiAgICBiYW5kRmlsdGVyX21pbjQ6ICdmMzInLFxuICAgIGJhbmRGaWx0ZXJfbWF4NDogJ2YzMicsXG4gICAgc2F0dXJhdGlvbl92YWx1ZTogJ2YzMicsXG4gICAgcmVvcmRlcl9iYW5kc19vcmRlcmluZzogJ21hdDR4NDxmMzI+JyxcbiAgICBtYXNrX2tlZXBNaW46ICdmMzInLFxuICAgIG1hc2tfa2VlcE1heDogJ2YzMicsXG4gICAgcGFuc2hhcnBlbl9icm92ZXlfcGFuV2VpZ2h0OiAnZjMyJ1xuICB9XG59O1xuXG4vKipcbiAqIE1hcCBmcm9tIG9yaWdpbmFsIG1vZHVsZSB1bmlmb3JtIG5hbWVzIChhcyByZXR1cm5lZCBieSBnZXRVbmlmb3JtcykgdG9cbiAqIHRoZSBwcmVmaXhlZCBuYW1lcyB1c2VkIGluIHRoZSBzaGFyZWQgVUJPLlxuICovXG5leHBvcnQgY29uc3QgVU5JRk9STV9OQU1FX01BUDogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4gPSB7XG4gIGxpbmVhcl9yZXNjYWxlOiB7XG4gICAgc2NhbGVyOiAnbGluZWFyX3Jlc2NhbGVfc2NhbGVyJyxcbiAgICBvZmZzZXQ6ICdsaW5lYXJfcmVzY2FsZV9vZmZzZXQnXG4gIH0sXG4gIGdhbW1hX2NvbnRyYXN0OiB7XG4gICAgZ2FtbWExOiAnZ2FtbWFfY29udHJhc3RfZ2FtbWExJyxcbiAgICBnYW1tYTI6ICdnYW1tYV9jb250cmFzdF9nYW1tYTInLFxuICAgIGdhbW1hMzogJ2dhbW1hX2NvbnRyYXN0X2dhbW1hMycsXG4gICAgZ2FtbWE0OiAnZ2FtbWFfY29udHJhc3RfZ2FtbWE0J1xuICB9LFxuICBzaWdtb2lkYWxDb250cmFzdDoge1xuICAgIGNvbnRyYXN0OiAnc2lnbW9pZGFsQ29udHJhc3RfY29udHJhc3QnLFxuICAgIGJpYXM6ICdzaWdtb2lkYWxDb250cmFzdF9iaWFzJ1xuICB9LFxuICBjb2xvcm1hcDoge1xuICAgIGhhc0NhdGVnb3JpY2FsQ29sb3JzOiAnY29sb3JtYXBfaGFzQ2F0ZWdvcmljYWxDb2xvcnMnLFxuICAgIGNhdGVnb3JpY2FsTWluVmFsdWU6ICdjb2xvcm1hcF9jYXRlZ29yaWNhbE1pblZhbHVlJyxcbiAgICBjYXRlZ29yaWNhbE1heFZhbHVlOiAnY29sb3JtYXBfY2F0ZWdvcmljYWxNYXhWYWx1ZScsXG4gICAgbWF4UGl4ZWxWYWx1ZTogJ2NvbG9ybWFwX21heFBpeGVsVmFsdWUnXG4gIH0sXG4gIGJhbmRGaWx0ZXI6IHtcbiAgICBtaW4xOiAnYmFuZEZpbHRlcl9taW4xJyxcbiAgICBtYXgxOiAnYmFuZEZpbHRlcl9tYXgxJyxcbiAgICBtaW4yOiAnYmFuZEZpbHRlcl9taW4yJyxcbiAgICBtYXgyOiAnYmFuZEZpbHRlcl9tYXgyJyxcbiAgICBtaW4zOiAnYmFuZEZpbHRlcl9taW4zJyxcbiAgICBtYXgzOiAnYmFuZEZpbHRlcl9tYXgzJyxcbiAgICBtaW40OiAnYmFuZEZpbHRlcl9taW40JyxcbiAgICBtYXg0OiAnYmFuZEZpbHRlcl9tYXg0J1xuICB9LFxuICBzYXR1cmF0aW9uOiB7XG4gICAgdmFsdWU6ICdzYXR1cmF0aW9uX3ZhbHVlJ1xuICB9LFxuICByZW9yZGVyX2JhbmRzOiB7XG4gICAgb3JkZXJpbmc6ICdyZW9yZGVyX2JhbmRzX29yZGVyaW5nJ1xuICB9LFxuICBtYXNrX2ltYWdlX2Zsb2F0OiB7XG4gICAga2VlcE1pbjogJ21hc2tfa2VlcE1pbicsXG4gICAga2VlcE1heDogJ21hc2tfa2VlcE1heCdcbiAgfSxcbiAgbWFza19pbWFnZV91aW50OiB7XG4gICAga2VlcE1pbjogJ21hc2tfa2VlcE1pbicsXG4gICAga2VlcE1heDogJ21hc2tfa2VlcE1heCdcbiAgfSxcbiAgbWFza19pbWFnZV9pbnQ6IHtcbiAgICBrZWVwTWluOiAnbWFza19rZWVwTWluJyxcbiAgICBrZWVwTWF4OiAnbWFza19rZWVwTWF4J1xuICB9LFxuICBwYW5zaGFycGVuX2Jyb3ZleToge1xuICAgIHBhbldlaWdodDogJ3BhbnNoYXJwZW5fYnJvdmV5X3BhbldlaWdodCdcbiAgfVxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7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
|
package/dist/raster/util.d.ts
CHANGED
|
@@ -8,3 +8,18 @@ import { ShaderModule } from './webgl/types';
|
|
|
8
8
|
* @return true if both lists are equal
|
|
9
9
|
*/
|
|
10
10
|
export declare function modulesEqual(modules: ShaderModule[], oldModules: ShaderModule[]): boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Apply module uniforms/bindings to shaderInputs, calling each module's
|
|
13
|
+
* getUniforms exactly once and writing the result directly — avoiding the
|
|
14
|
+
* double-getUniforms bug where shaderInputs.setProps() would re-invoke
|
|
15
|
+
* getUniforms on already-transformed values.
|
|
16
|
+
*
|
|
17
|
+
* For modules whose uniforms have been consolidated into the shared
|
|
18
|
+
* rasterProcessing UBO, the uniform values are remapped (prefixed) and
|
|
19
|
+
* written to the rasterProcessing slot instead of the individual module slot.
|
|
20
|
+
*/
|
|
21
|
+
export declare function applyModuleUniforms(shaderInputs: {
|
|
22
|
+
moduleUniforms: Record<string, Record<string, unknown>>;
|
|
23
|
+
moduleBindings: Record<string, Record<string, unknown>>;
|
|
24
|
+
setProps?: (props: any) => void;
|
|
25
|
+
}, modules: ShaderModule[], allModuleProps: Record<string, unknown>): void;
|
package/dist/raster/util.js
CHANGED
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
7
|
+
exports.applyModuleUniforms = applyModuleUniforms;
|
|
6
8
|
exports.modulesEqual = modulesEqual;
|
|
7
|
-
|
|
9
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
var _rasterProcessingUniforms = require("./raster-processing-uniforms");
|
|
12
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
13
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
14
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } // SPDX-License-Identifier: MIT
|
|
8
15
|
// Copyright contributors to the kepler.gl project
|
|
9
|
-
|
|
10
16
|
/**
|
|
11
17
|
* Test if two lists of modules are equal
|
|
12
18
|
*
|
|
@@ -26,4 +32,108 @@ function modulesEqual(modules, oldModules) {
|
|
|
26
32
|
}
|
|
27
33
|
return true;
|
|
28
34
|
}
|
|
29
|
-
|
|
35
|
+
function isUniformValue(value) {
|
|
36
|
+
return typeof value === 'number' || typeof value === 'boolean' || ArrayBuffer.isView(value) || Array.isArray(value);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Apply module uniforms/bindings to shaderInputs, calling each module's
|
|
41
|
+
* getUniforms exactly once and writing the result directly — avoiding the
|
|
42
|
+
* double-getUniforms bug where shaderInputs.setProps() would re-invoke
|
|
43
|
+
* getUniforms on already-transformed values.
|
|
44
|
+
*
|
|
45
|
+
* For modules whose uniforms have been consolidated into the shared
|
|
46
|
+
* rasterProcessing UBO, the uniform values are remapped (prefixed) and
|
|
47
|
+
* written to the rasterProcessing slot instead of the individual module slot.
|
|
48
|
+
*/
|
|
49
|
+
function applyModuleUniforms(shaderInputs, modules, allModuleProps) {
|
|
50
|
+
var _iterator = _createForOfIteratorHelper(modules),
|
|
51
|
+
_step;
|
|
52
|
+
try {
|
|
53
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
54
|
+
var mod = _step.value;
|
|
55
|
+
if (mod.getUniforms) {
|
|
56
|
+
var result = mod.getUniforms(allModuleProps);
|
|
57
|
+
if (result) {
|
|
58
|
+
var uniforms = {};
|
|
59
|
+
var bindings = {};
|
|
60
|
+
for (var _i = 0, _Object$entries = Object.entries(result); _i < _Object$entries.length; _i++) {
|
|
61
|
+
var _Object$entries$_i = (0, _slicedToArray2["default"])(_Object$entries[_i], 2),
|
|
62
|
+
key = _Object$entries$_i[0],
|
|
63
|
+
value = _Object$entries$_i[1];
|
|
64
|
+
if (isUniformValue(value)) {
|
|
65
|
+
uniforms[key] = value;
|
|
66
|
+
} else {
|
|
67
|
+
bindings[key] = value;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
try {
|
|
71
|
+
var nameMap = _rasterProcessingUniforms.UNIFORM_NAME_MAP[mod.name];
|
|
72
|
+
if (nameMap && mod.uniformTypes) {
|
|
73
|
+
// Consolidated module: remap uniforms to the shared rasterProcessing UBO
|
|
74
|
+
if (!shaderInputs.moduleUniforms.rasterProcessing) {
|
|
75
|
+
shaderInputs.moduleUniforms.rasterProcessing = {};
|
|
76
|
+
}
|
|
77
|
+
for (var _i2 = 0, _Object$entries2 = Object.entries(uniforms); _i2 < _Object$entries2.length; _i2++) {
|
|
78
|
+
var _Object$entries2$_i = (0, _slicedToArray2["default"])(_Object$entries2[_i2], 2),
|
|
79
|
+
_key = _Object$entries2$_i[0],
|
|
80
|
+
_value = _Object$entries2$_i[1];
|
|
81
|
+
var remapped = nameMap[_key];
|
|
82
|
+
if (remapped) {
|
|
83
|
+
shaderInputs.moduleUniforms.rasterProcessing[remapped] = _value;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
// Bindings (textures) stay on the original module name
|
|
87
|
+
if (Object.keys(bindings).length > 0) {
|
|
88
|
+
if (!shaderInputs.moduleBindings[mod.name]) {
|
|
89
|
+
shaderInputs.moduleBindings[mod.name] = {};
|
|
90
|
+
}
|
|
91
|
+
Object.assign(shaderInputs.moduleBindings[mod.name], bindings);
|
|
92
|
+
}
|
|
93
|
+
} else {
|
|
94
|
+
// Non-consolidated module: write directly as before
|
|
95
|
+
if (!shaderInputs.moduleUniforms[mod.name]) {
|
|
96
|
+
shaderInputs.moduleUniforms[mod.name] = {};
|
|
97
|
+
}
|
|
98
|
+
if (!shaderInputs.moduleBindings[mod.name]) {
|
|
99
|
+
shaderInputs.moduleBindings[mod.name] = {};
|
|
100
|
+
}
|
|
101
|
+
Object.assign(shaderInputs.moduleUniforms[mod.name], uniforms);
|
|
102
|
+
Object.assign(shaderInputs.moduleBindings[mod.name], bindings);
|
|
103
|
+
}
|
|
104
|
+
} catch (_unused) {
|
|
105
|
+
var _nameMap = _rasterProcessingUniforms.UNIFORM_NAME_MAP[mod.name];
|
|
106
|
+
if (_nameMap && mod.uniformTypes) {
|
|
107
|
+
var _shaderInputs$setProp;
|
|
108
|
+
var remappedUniforms = {};
|
|
109
|
+
for (var _i3 = 0, _Object$entries3 = Object.entries(uniforms); _i3 < _Object$entries3.length; _i3++) {
|
|
110
|
+
var _Object$entries3$_i = (0, _slicedToArray2["default"])(_Object$entries3[_i3], 2),
|
|
111
|
+
_key2 = _Object$entries3$_i[0],
|
|
112
|
+
val = _Object$entries3$_i[1];
|
|
113
|
+
var _remapped = _nameMap[_key2];
|
|
114
|
+
if (_remapped) {
|
|
115
|
+
remappedUniforms[_remapped] = val;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
(_shaderInputs$setProp = shaderInputs.setProps) === null || _shaderInputs$setProp === void 0 || _shaderInputs$setProp.call(shaderInputs, {
|
|
119
|
+
rasterProcessing: remappedUniforms
|
|
120
|
+
});
|
|
121
|
+
if (Object.keys(bindings).length > 0) {
|
|
122
|
+
var _shaderInputs$setProp2;
|
|
123
|
+
(_shaderInputs$setProp2 = shaderInputs.setProps) === null || _shaderInputs$setProp2 === void 0 || _shaderInputs$setProp2.call(shaderInputs, (0, _defineProperty2["default"])({}, mod.name, bindings));
|
|
124
|
+
}
|
|
125
|
+
} else {
|
|
126
|
+
var _shaderInputs$setProp4;
|
|
127
|
+
(_shaderInputs$setProp4 = shaderInputs.setProps) === null || _shaderInputs$setProp4 === void 0 || _shaderInputs$setProp4.call(shaderInputs, (0, _defineProperty2["default"])({}, mod.name, result));
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
} catch (err) {
|
|
134
|
+
_iterator.e(err);
|
|
135
|
+
} finally {
|
|
136
|
+
_iterator.f();
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmFzdGVyUHJvY2Vzc2luZ1VuaWZvcm1zIiwicmVxdWlyZSIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyIiwiciIsImUiLCJ0IiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJBcnJheSIsImlzQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJsZW5ndGgiLCJfbiIsIkYiLCJzIiwibiIsImRvbmUiLCJ2YWx1ZSIsImYiLCJUeXBlRXJyb3IiLCJvIiwiYSIsInUiLCJjYWxsIiwibmV4dCIsIl9hcnJheUxpa2VUb0FycmF5IiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwibmFtZSIsImZyb20iLCJ0ZXN0IiwibW9kdWxlc0VxdWFsIiwibW9kdWxlcyIsIm9sZE1vZHVsZXMiLCJpIiwiaXNVbmlmb3JtVmFsdWUiLCJBcnJheUJ1ZmZlciIsImlzVmlldyIsImFwcGx5TW9kdWxlVW5pZm9ybXMiLCJzaGFkZXJJbnB1dHMiLCJhbGxNb2R1bGVQcm9wcyIsIl9pdGVyYXRvciIsIl9zdGVwIiwibW9kIiwiZ2V0VW5pZm9ybXMiLCJyZXN1bHQiLCJ1bmlmb3JtcyIsImJpbmRpbmdzIiwiX2kiLCJfT2JqZWN0JGVudHJpZXMiLCJPYmplY3QiLCJlbnRyaWVzIiwiX09iamVjdCRlbnRyaWVzJF9pIiwiX3NsaWNlZFRvQXJyYXkyIiwia2V5IiwibmFtZU1hcCIsIlVOSUZPUk1fTkFNRV9NQVAiLCJ1bmlmb3JtVHlwZXMiLCJtb2R1bGVVbmlmb3JtcyIsInJhc3RlclByb2Nlc3NpbmciLCJfaTIiLCJfT2JqZWN0JGVudHJpZXMyIiwiX09iamVjdCRlbnRyaWVzMiRfaSIsInJlbWFwcGVkIiwia2V5cyIsIm1vZHVsZUJpbmRpbmdzIiwiYXNzaWduIiwiX3VudXNlZCIsIl9zaGFkZXJJbnB1dHMkc2V0UHJvcCIsInJlbWFwcGVkVW5pZm9ybXMiLCJfaTMiLCJfT2JqZWN0JGVudHJpZXMzIiwiX09iamVjdCRlbnRyaWVzMyRfaSIsInZhbCIsInNldFByb3BzIiwiX3NoYWRlcklucHV0cyRzZXRQcm9wMiIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJfc2hhZGVySW5wdXRzJHNldFByb3A0IiwiZXJyIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Jhc3Rlci91dGlsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7U2hhZGVyTW9kdWxlfSBmcm9tICcuL3dlYmdsL3R5cGVzJztcbmltcG9ydCB7VU5JRk9STV9OQU1FX01BUH0gZnJvbSAnLi9yYXN0ZXItcHJvY2Vzc2luZy11bmlmb3Jtcyc7XG5cbi8qKlxuICogVGVzdCBpZiB0d28gbGlzdHMgb2YgbW9kdWxlcyBhcmUgZXF1YWxcbiAqXG4gKiBAcGFyYW0gbW9kdWxlcyAgICAgTW9kdWxlcyBsaXN0XG4gKiBAcGFyYW0gb2xkTW9kdWxlcyAgTW9kdWxlcyBsaXN0XG4gKlxuICogQHJldHVybiB0cnVlIGlmIGJvdGggbGlzdHMgYXJlIGVxdWFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtb2R1bGVzRXF1YWwobW9kdWxlczogU2hhZGVyTW9kdWxlW10sIG9sZE1vZHVsZXM6IFNoYWRlck1vZHVsZVtdKTogYm9vbGVhbiB7XG4gIGlmIChtb2R1bGVzLmxlbmd0aCAhPT0gb2xkTW9kdWxlcy5sZW5ndGgpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBmb3IgKGxldCBpID0gMDsgaSA8IG1vZHVsZXMubGVuZ3RoOyBpKyspIHtcbiAgICBpZiAobW9kdWxlc1tpXS5uYW1lICE9PSBvbGRNb2R1bGVzW2ldLm5hbWUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn1cblxuZnVuY3Rpb24gaXNVbmlmb3JtVmFsdWUodmFsdWU6IHVua25vd24pOiBib29sZWFuIHtcbiAgcmV0dXJuIChcbiAgICB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInIHx8XG4gICAgdHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicgfHxcbiAgICBBcnJheUJ1ZmZlci5pc1ZpZXcodmFsdWUpIHx8XG4gICAgQXJyYXkuaXNBcnJheSh2YWx1ZSlcbiAgKTtcbn1cblxuLyoqXG4gKiBBcHBseSBtb2R1bGUgdW5pZm9ybXMvYmluZGluZ3MgdG8gc2hhZGVySW5wdXRzLCBjYWxsaW5nIGVhY2ggbW9kdWxlJ3NcbiAqIGdldFVuaWZvcm1zIGV4YWN0bHkgb25jZSBhbmQgd3JpdGluZyB0aGUgcmVzdWx0IGRpcmVjdGx5IOKAlCBhdm9pZGluZyB0aGVcbiAqIGRvdWJsZS1nZXRVbmlmb3JtcyBidWcgd2hlcmUgc2hhZGVySW5wdXRzLnNldFByb3BzKCkgd291bGQgcmUtaW52b2tlXG4gKiBnZXRVbmlmb3JtcyBvbiBhbHJlYWR5LXRyYW5zZm9ybWVkIHZhbHVlcy5cbiAqXG4gKiBGb3IgbW9kdWxlcyB3aG9zZSB1bmlmb3JtcyBoYXZlIGJlZW4gY29uc29saWRhdGVkIGludG8gdGhlIHNoYXJlZFxuICogcmFzdGVyUHJvY2Vzc2luZyBVQk8sIHRoZSB1bmlmb3JtIHZhbHVlcyBhcmUgcmVtYXBwZWQgKHByZWZpeGVkKSBhbmRcbiAqIHdyaXR0ZW4gdG8gdGhlIHJhc3RlclByb2Nlc3Npbmcgc2xvdCBpbnN0ZWFkIG9mIHRoZSBpbmRpdmlkdWFsIG1vZHVsZSBzbG90LlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXBwbHlNb2R1bGVVbmlmb3JtcyhcbiAgc2hhZGVySW5wdXRzOiB7XG4gICAgbW9kdWxlVW5pZm9ybXM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHVua25vd24+PjtcbiAgICBtb2R1bGVCaW5kaW5nczogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xuICAgIHNldFByb3BzPzogKHByb3BzOiBhbnkpID0+IHZvaWQ7XG4gIH0sXG4gIG1vZHVsZXM6IFNoYWRlck1vZHVsZVtdLFxuICBhbGxNb2R1bGVQcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbik6IHZvaWQge1xuICBmb3IgKGNvbnN0IG1vZCBvZiBtb2R1bGVzKSB7XG4gICAgaWYgKG1vZC5nZXRVbmlmb3Jtcykge1xuICAgICAgY29uc3QgcmVzdWx0ID0gbW9kLmdldFVuaWZvcm1zKGFsbE1vZHVsZVByb3BzIGFzIG9iamVjdCk7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGNvbnN0IHVuaWZvcm1zOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9O1xuICAgICAgICBjb25zdCBiaW5kaW5nczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fTtcbiAgICAgICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocmVzdWx0KSkge1xuICAgICAgICAgIGlmIChpc1VuaWZvcm1WYWx1ZSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHVuaWZvcm1zW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYmluZGluZ3Nba2V5XSA9IHZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IG5hbWVNYXAgPSBVTklGT1JNX05BTUVfTUFQW21vZC5uYW1lXTtcbiAgICAgICAgICBpZiAobmFtZU1hcCAmJiBtb2QudW5pZm9ybVR5cGVzKSB7XG4gICAgICAgICAgICAvLyBDb25zb2xpZGF0ZWQgbW9kdWxlOiByZW1hcCB1bmlmb3JtcyB0byB0aGUgc2hhcmVkIHJhc3RlclByb2Nlc3NpbmcgVUJPXG4gICAgICAgICAgICBpZiAoIXNoYWRlcklucHV0cy5tb2R1bGVVbmlmb3Jtcy5yYXN0ZXJQcm9jZXNzaW5nKSB7XG4gICAgICAgICAgICAgIHNoYWRlcklucHV0cy5tb2R1bGVVbmlmb3Jtcy5yYXN0ZXJQcm9jZXNzaW5nID0ge307XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyh1bmlmb3JtcykpIHtcbiAgICAgICAgICAgICAgY29uc3QgcmVtYXBwZWQgPSBuYW1lTWFwW2tleV07XG4gICAgICAgICAgICAgIGlmIChyZW1hcHBlZCkge1xuICAgICAgICAgICAgICAgIHNoYWRlcklucHV0cy5tb2R1bGVVbmlmb3Jtcy5yYXN0ZXJQcm9jZXNzaW5nW3JlbWFwcGVkXSA9IHZhbHVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBCaW5kaW5ncyAodGV4dHVyZXMpIHN0YXkgb24gdGhlIG9yaWdpbmFsIG1vZHVsZSBuYW1lXG4gICAgICAgICAgICBpZiAoT2JqZWN0LmtleXMoYmluZGluZ3MpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgaWYgKCFzaGFkZXJJbnB1dHMubW9kdWxlQmluZGluZ3NbbW9kLm5hbWVdKSB7XG4gICAgICAgICAgICAgICAgc2hhZGVySW5wdXRzLm1vZHVsZUJpbmRpbmdzW21vZC5uYW1lXSA9IHt9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oc2hhZGVySW5wdXRzLm1vZHVsZUJpbmRpbmdzW21vZC5uYW1lXSwgYmluZGluZ3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBOb24tY29uc29saWRhdGVkIG1vZHVsZTogd3JpdGUgZGlyZWN0bHkgYXMgYmVmb3JlXG4gICAgICAgICAgICBpZiAoIXNoYWRlcklucHV0cy5tb2R1bGVVbmlmb3Jtc1ttb2QubmFtZV0pIHtcbiAgICAgICAgICAgICAgc2hhZGVySW5wdXRzLm1vZHVsZVVuaWZvcm1zW21vZC5uYW1lXSA9IHt9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCFzaGFkZXJJbnB1dHMubW9kdWxlQmluZGluZ3NbbW9kLm5hbWVdKSB7XG4gICAgICAgICAgICAgIHNoYWRlcklucHV0cy5tb2R1bGVCaW5kaW5nc1ttb2QubmFtZV0gPSB7fTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oc2hhZGVySW5wdXRzLm1vZHVsZVVuaWZvcm1zW21vZC5uYW1lXSwgdW5pZm9ybXMpO1xuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihzaGFkZXJJbnB1dHMubW9kdWxlQmluZGluZ3NbbW9kLm5hbWVdLCBiaW5kaW5ncyk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICBjb25zdCBuYW1lTWFwID0gVU5JRk9STV9OQU1FX01BUFttb2QubmFtZV07XG4gICAgICAgICAgaWYgKG5hbWVNYXAgJiYgbW9kLnVuaWZvcm1UeXBlcykge1xuICAgICAgICAgICAgY29uc3QgcmVtYXBwZWRVbmlmb3JtczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsXSBvZiBPYmplY3QuZW50cmllcyh1bmlmb3JtcykpIHtcbiAgICAgICAgICAgICAgY29uc3QgcmVtYXBwZWQgPSBuYW1lTWFwW2tleV07XG4gICAgICAgICAgICAgIGlmIChyZW1hcHBlZCkge1xuICAgICAgICAgICAgICAgIHJlbWFwcGVkVW5pZm9ybXNbcmVtYXBwZWRdID0gdmFsO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzaGFkZXJJbnB1dHMuc2V0UHJvcHM/Lih7cmFzdGVyUHJvY2Vzc2luZzogcmVtYXBwZWRVbmlmb3Jtc30pO1xuICAgICAgICAgICAgaWYgKE9iamVjdC5rZXlzKGJpbmRpbmdzKS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgIHNoYWRlcklucHV0cy5zZXRQcm9wcz8uKHtbbW9kLm5hbWVdOiBiaW5kaW5nc30pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzaGFkZXJJbnB1dHMuc2V0UHJvcHM/Lih7W21vZC5uYW1lXTog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SUFBSVosR0FBRyxDQUFDYyxZQUFZLEVBQUU7Y0FBQSxJQUFBVyxxQkFBQTtjQUMvQixJQUFNQyxnQkFBeUMsR0FBRyxDQUFDLENBQUM7Y0FDcEQsU0FBQUMsR0FBQSxNQUFBQyxnQkFBQSxHQUF5QnJCLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDTCxRQUFRLENBQUMsRUFBQXdCLEdBQUEsR0FBQUMsZ0JBQUEsQ0FBQTdELE1BQUEsRUFBQTRELEdBQUEsSUFBRTtnQkFBOUMsSUFBQUUsbUJBQUEsT0FBQW5CLGVBQUEsYUFBQWtCLGdCQUFBLENBQUFELEdBQUE7a0JBQU9oQixLQUFHLEdBQUFrQixtQkFBQTtrQkFBRUMsR0FBRyxHQUFBRCxtQkFBQTtnQkFDbEIsSUFBTVQsU0FBUSxHQUFHUixRQUFPLENBQUNELEtBQUcsQ0FBQztnQkFDN0IsSUFBSVMsU0FBUSxFQUFFO2tCQUNaTSxnQkFBZ0IsQ0FBQ04sU0FBUSxDQUFDLEdBQUdVLEdBQUc7Z0JBQ2xDO2NBQ0Y7Y0FDQSxDQUFBTCxxQkFBQSxHQUFBN0IsWUFBWSxDQUFDbUMsUUFBUSxjQUFBTixxQkFBQSxlQUFyQkEscUJBQUEsQ0FBQTlDLElBQUEsQ0FBQWlCLFlBQVksRUFBWTtnQkFBQ29CLGdCQUFnQixFQUFFVTtjQUFnQixDQUFDLENBQUM7Y0FDN0QsSUFBSW5CLE1BQU0sQ0FBQ2MsSUFBSSxDQUFDakIsUUFBUSxDQUFDLENBQUNyQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUFBLElBQUFpRSxzQkFBQTtnQkFDcEMsQ0FBQUEsc0JBQUEsR0FBQXBDLFlBQVksQ0FBQ21DLFFBQVEsY0FBQUMsc0JBQUEsZUFBckJBLHNCQUFBLENBQUFyRCxJQUFBLENBQUFpQixZQUFZLE1BQUFxQyxnQkFBQSxpQkFBY2pDLEdBQUcsQ0FBQ2YsSUFBSSxFQUFHbUIsUUFBUSxDQUFDLENBQUM7Y0FDakQ7WUFDRixDQUFDLE1BQU07Y0FBQSxJQUFBOEIsc0JBQUE7Y0FDTCxDQUFBQSxzQkFBQSxHQUFBdEMsWUFBWSxDQUFDbUMsUUFBUSxjQUFBRyxzQkFBQSxlQUFyQkEsc0JBQUEsQ0FBQXZELElBQUEsQ0FBQWlCLFlBQVksTUFBQXFDLGdCQUFBLGlCQUFjakMsR0FBRyxDQUFDZixJQUFJLEVBQUdpQixNQUFNLENBQUMsQ0FBQztZQUMvQztVQUNGO1FBQ0Y7TUFDRjtJQUNGO0VBQUMsU0FBQWlDLEdBQUE7SUFBQXJDLFNBQUEsQ0FBQXRDLENBQUEsQ0FBQTJFLEdBQUE7RUFBQTtJQUFBckMsU0FBQSxDQUFBeEIsQ0FBQTtFQUFBO0FBQ0giLCJpZ25vcmVMaXN0IjpbXX0=
|
package/dist/wms/wms-layer.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { Layer, CompositeLayer, CompositeLayerProps, UpdateParameters, DefaultProps, Viewport } from '@deck.gl/core';
|
|
2
2
|
import { ImageSource } from '@loaders.gl/wms';
|
|
3
3
|
import type { ImageSourceMetadata } from '@loaders.gl/loader-utils';
|
|
4
|
-
import type { ImageType
|
|
4
|
+
import type { ImageType } from '@loaders.gl/wms';
|
|
5
5
|
/** All props supported by the TileLayer */
|
|
6
6
|
export type WMSLayerProps = CompositeLayerProps & _WMSLayerProps;
|
|
7
7
|
/** Props added by the TileLayer */
|
|
8
8
|
type _WMSLayerProps = {
|
|
9
9
|
data: string | ImageSource;
|
|
10
|
-
serviceType?:
|
|
10
|
+
serviceType?: string | 'auto';
|
|
11
11
|
layers?: string[];
|
|
12
12
|
srs?: 'EPSG:4326' | 'EPSG:3857' | 'auto';
|
|
13
13
|
transparent?: boolean;
|
|
@@ -37,6 +37,7 @@ export default class WMSLayer extends CompositeLayer<Required<_WMSLayerProps>> {
|
|
|
37
37
|
/** TODO: Change any => setTimeout return type. Different between Node and browser... */
|
|
38
38
|
_timeoutId: any;
|
|
39
39
|
loadCounter: number;
|
|
40
|
+
_lastRequestZoom: number;
|
|
40
41
|
};
|
|
41
42
|
/** Returns true if all async resources are loaded */
|
|
42
43
|
get isLoaded(): boolean;
|
|
@@ -55,6 +56,8 @@ export default class WMSLayer extends CompositeLayer<Required<_WMSLayerProps>> {
|
|
|
55
56
|
private getRequestId;
|
|
56
57
|
/** Runs an action in the future, cancels it if the new action is issued before it executes */
|
|
57
58
|
private debounce;
|
|
59
|
+
/** Compare request parameters to determine if a new request is needed */
|
|
60
|
+
private _areRequestParamsEqual;
|
|
58
61
|
}
|
|
59
62
|
/** Projects EPSG:4326 to EPSG:3857
|
|
60
63
|
* This is a lightweight replacement of proj4. Use tests to ensure conformance.
|