@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.
@@ -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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
@@ -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;
@@ -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
- // SPDX-License-Identifier: MIT
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
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtb2R1bGVzRXF1YWwiLCJtb2R1bGVzIiwib2xkTW9kdWxlcyIsImxlbmd0aCIsImkiLCJuYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Jhc3Rlci91dGlsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7U2hhZGVyTW9kdWxlfSBmcm9tICcuL3dlYmdsL3R5cGVzJztcblxuLyoqXG4gKiBUZXN0IGlmIHR3byBsaXN0cyBvZiBtb2R1bGVzIGFyZSBlcXVhbFxuICpcbiAqIEBwYXJhbSBtb2R1bGVzICAgICBNb2R1bGVzIGxpc3RcbiAqIEBwYXJhbSBvbGRNb2R1bGVzICBNb2R1bGVzIGxpc3RcbiAqXG4gKiBAcmV0dXJuIHRydWUgaWYgYm90aCBsaXN0cyBhcmUgZXF1YWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1vZHVsZXNFcXVhbChtb2R1bGVzOiBTaGFkZXJNb2R1bGVbXSwgb2xkTW9kdWxlczogU2hhZGVyTW9kdWxlW10pOiBib29sZWFuIHtcbiAgaWYgKG1vZHVsZXMubGVuZ3RoICE9PSBvbGRNb2R1bGVzLmxlbmd0aCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgbW9kdWxlcy5sZW5ndGg7IGkrKykge1xuICAgIGlmIChtb2R1bGVzW2ldLm5hbWUgIT09IG9sZE1vZHVsZXNbaV0ubmFtZSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBOztBQUlBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxTQUFTQSxZQUFZQSxDQUFDQyxPQUF1QixFQUFFQyxVQUEwQixFQUFXO0VBQ3pGLElBQUlELE9BQU8sQ0FBQ0UsTUFBTSxLQUFLRCxVQUFVLENBQUNDLE1BQU0sRUFBRTtJQUN4QyxPQUFPLEtBQUs7RUFDZDtFQUVBLEtBQUssSUFBSUMsQ0FBQyxHQUFHLENBQUMsRUFBRUEsQ0FBQyxHQUFHSCxPQUFPLENBQUNFLE1BQU0sRUFBRUMsQ0FBQyxFQUFFLEVBQUU7SUFDdkMsSUFBSUgsT0FBTyxDQUFDRyxDQUFDLENBQUMsQ0FBQ0MsSUFBSSxLQUFLSCxVQUFVLENBQUNFLENBQUMsQ0FBQyxDQUFDQyxJQUFJLEVBQUU7TUFDMUMsT0FBTyxLQUFLO0lBQ2Q7RUFDRjtFQUVBLE9BQU8sSUFBSTtBQUNiIiwiaWdub3JlTGlzdCI6W119
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/Lih7W21vZC5uYW1lXTogcmVzdWx0fSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFJQSxJQUFBQSx5QkFBQSxHQUFBQyxPQUFBO0FBQThELFNBQUFDLDJCQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSx5QkFBQUMsTUFBQSxJQUFBSCxDQUFBLENBQUFHLE1BQUEsQ0FBQUMsUUFBQSxLQUFBSixDQUFBLHFCQUFBRSxDQUFBLFFBQUFHLEtBQUEsQ0FBQUMsT0FBQSxDQUFBTixDQUFBLE1BQUFFLENBQUEsR0FBQUssMkJBQUEsQ0FBQVAsQ0FBQSxNQUFBQyxDQUFBLElBQUFELENBQUEsdUJBQUFBLENBQUEsQ0FBQVEsTUFBQSxJQUFBTixDQUFBLEtBQUFGLENBQUEsR0FBQUUsQ0FBQSxPQUFBTyxFQUFBLE1BQUFDLENBQUEsWUFBQUEsRUFBQSxlQUFBQyxDQUFBLEVBQUFELENBQUEsRUFBQUUsQ0FBQSxXQUFBQSxFQUFBLFdBQUFILEVBQUEsSUFBQVQsQ0FBQSxDQUFBUSxNQUFBLEtBQUFLLElBQUEsV0FBQUEsSUFBQSxNQUFBQyxLQUFBLEVBQUFkLENBQUEsQ0FBQVMsRUFBQSxVQUFBUixDQUFBLFdBQUFBLEVBQUFELENBQUEsVUFBQUEsQ0FBQSxLQUFBZSxDQUFBLEVBQUFMLENBQUEsZ0JBQUFNLFNBQUEsaUpBQUFDLENBQUEsRUFBQUMsQ0FBQSxPQUFBQyxDQUFBLGdCQUFBUixDQUFBLFdBQUFBLEVBQUEsSUFBQVQsQ0FBQSxHQUFBQSxDQUFBLENBQUFrQixJQUFBLENBQUFwQixDQUFBLE1BQUFZLENBQUEsV0FBQUEsRUFBQSxRQUFBWixDQUFBLEdBQUFFLENBQUEsQ0FBQW1CLElBQUEsV0FBQUgsQ0FBQSxHQUFBbEIsQ0FBQSxDQUFBYSxJQUFBLEVBQUFiLENBQUEsS0FBQUMsQ0FBQSxXQUFBQSxFQUFBRCxDQUFBLElBQUFtQixDQUFBLE9BQUFGLENBQUEsR0FBQWpCLENBQUEsS0FBQWUsQ0FBQSxXQUFBQSxFQUFBLFVBQUFHLENBQUEsWUFBQWhCLENBQUEsY0FBQUEsQ0FBQSw4QkFBQWlCLENBQUEsUUFBQUYsQ0FBQTtBQUFBLFNBQUFWLDRCQUFBUCxDQUFBLEVBQUFrQixDQUFBLFFBQUFsQixDQUFBLDJCQUFBQSxDQUFBLFNBQUFzQixpQkFBQSxDQUFBdEIsQ0FBQSxFQUFBa0IsQ0FBQSxPQUFBaEIsQ0FBQSxNQUFBcUIsUUFBQSxDQUFBSCxJQUFBLENBQUFwQixDQUFBLEVBQUF3QixLQUFBLDZCQUFBdEIsQ0FBQSxJQUFBRixDQUFBLENBQUF5QixXQUFBLEtBQUF2QixDQUFBLEdBQUFGLENBQUEsQ0FBQXlCLFdBQUEsQ0FBQUMsSUFBQSxhQUFBeEIsQ0FBQSxjQUFBQSxDQUFBLEdBQUFHLEtBQUEsQ0FBQXNCLElBQUEsQ0FBQTNCLENBQUEsb0JBQUFFLENBQUEsK0NBQUEwQixJQUFBLENBQUExQixDQUFBLElBQUFvQixpQkFBQSxDQUFBdEIsQ0FBQSxFQUFBa0IsQ0FBQTtBQUFBLFNBQUFJLGtCQUFBdEIsQ0FBQSxFQUFBa0IsQ0FBQSxhQUFBQSxDQUFBLElBQUFBLENBQUEsR0FBQWxCLENBQUEsQ0FBQVEsTUFBQSxNQUFBVSxDQUFBLEdBQUFsQixDQUFBLENBQUFRLE1BQUEsWUFBQVAsQ0FBQSxNQUFBVyxDQUFBLEdBQUFQLEtBQUEsQ0FBQWEsQ0FBQSxHQUFBakIsQ0FBQSxHQUFBaUIsQ0FBQSxFQUFBakIsQ0FBQSxJQUFBVyxDQUFBLENBQUFYLENBQUEsSUFBQUQsQ0FBQSxDQUFBQyxDQUFBLFVBQUFXLENBQUEsSUFKOUQ7QUFDQTtBQUtBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxTQUFTaUIsWUFBWUEsQ0FBQ0MsT0FBdUIsRUFBRUMsVUFBMEIsRUFBVztFQUN6RixJQUFJRCxPQUFPLENBQUN0QixNQUFNLEtBQUt1QixVQUFVLENBQUN2QixNQUFNLEVBQUU7SUFDeEMsT0FBTyxLQUFLO0VBQ2Q7RUFFQSxLQUFLLElBQUl3QixDQUFDLEdBQUcsQ0FBQyxFQUFFQSxDQUFDLEdBQUdGLE9BQU8sQ0FBQ3RCLE1BQU0sRUFBRXdCLENBQUMsRUFBRSxFQUFFO0lBQ3ZDLElBQUlGLE9BQU8sQ0FBQ0UsQ0FBQyxDQUFDLENBQUNOLElBQUksS0FBS0ssVUFBVSxDQUFDQyxDQUFDLENBQUMsQ0FBQ04sSUFBSSxFQUFFO01BQzFDLE9BQU8sS0FBSztJQUNkO0VBQ0Y7RUFFQSxPQUFPLElBQUk7QUFDYjtBQUVBLFNBQVNPLGNBQWNBLENBQUNuQixLQUFjLEVBQVc7RUFDL0MsT0FDRSxPQUFPQSxLQUFLLEtBQUssUUFBUSxJQUN6QixPQUFPQSxLQUFLLEtBQUssU0FBUyxJQUMxQm9CLFdBQVcsQ0FBQ0MsTUFBTSxDQUFDckIsS0FBSyxDQUFDLElBQ3pCVCxLQUFLLENBQUNDLE9BQU8sQ0FBQ1EsS0FBSyxDQUFDO0FBRXhCOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sU0FBU3NCLG1CQUFtQkEsQ0FDakNDLFlBSUMsRUFDRFAsT0FBdUIsRUFDdkJRLGNBQXVDLEVBQ2pDO0VBQUEsSUFBQUMsU0FBQSxHQUFBeEMsMEJBQUEsQ0FDWStCLE9BQU87SUFBQVUsS0FBQTtFQUFBO0lBQXpCLEtBQUFELFNBQUEsQ0FBQTVCLENBQUEsTUFBQTZCLEtBQUEsR0FBQUQsU0FBQSxDQUFBM0IsQ0FBQSxJQUFBQyxJQUFBLEdBQTJCO01BQUEsSUFBaEI0QixHQUFHLEdBQUFELEtBQUEsQ0FBQTFCLEtBQUE7TUFDWixJQUFJMkIsR0FBRyxDQUFDQyxXQUFXLEVBQUU7UUFDbkIsSUFBTUMsTUFBTSxHQUFHRixHQUFHLENBQUNDLFdBQVcsQ0FBQ0osY0FBd0IsQ0FBQztRQUN4RCxJQUFJSyxNQUFNLEVBQUU7VUFDVixJQUFNQyxRQUFpQyxHQUFHLENBQUMsQ0FBQztVQUM1QyxJQUFNQyxRQUFpQyxHQUFHLENBQUMsQ0FBQztVQUM1QyxTQUFBQyxFQUFBLE1BQUFDLGVBQUEsR0FBMkJDLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDTixNQUFNLENBQUMsRUFBQUcsRUFBQSxHQUFBQyxlQUFBLENBQUF2QyxNQUFBLEVBQUFzQyxFQUFBLElBQUU7WUFBOUMsSUFBQUksa0JBQUEsT0FBQUMsZUFBQSxhQUFBSixlQUFBLENBQUFELEVBQUE7Y0FBT00sR0FBRyxHQUFBRixrQkFBQTtjQUFFcEMsS0FBSyxHQUFBb0Msa0JBQUE7WUFDcEIsSUFBSWpCLGNBQWMsQ0FBQ25CLEtBQUssQ0FBQyxFQUFFO2NBQ3pCOEIsUUFBUSxDQUFDUSxHQUFHLENBQUMsR0FBR3RDLEtBQUs7WUFDdkIsQ0FBQyxNQUFNO2NBQ0wrQixRQUFRLENBQUNPLEdBQUcsQ0FBQyxHQUFHdEMsS0FBSztZQUN2QjtVQUNGO1VBQ0EsSUFBSTtZQUNGLElBQU11QyxPQUFPLEdBQUdDLDBDQUFnQixDQUFDYixHQUFHLENBQUNmLElBQUksQ0FBQztZQUMxQyxJQUFJMkIsT0FBTyxJQUFJWixHQUFHLENBQUNjLFlBQVksRUFBRTtjQUMvQjtjQUNBLElBQUksQ0FBQ2xCLFlBQVksQ0FBQ21CLGNBQWMsQ0FBQ0MsZ0JBQWdCLEVBQUU7Z0JBQ2pEcEIsWUFBWSxDQUFDbUIsY0FBYyxDQUFDQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7Y0FDbkQ7Y0FDQSxTQUFBQyxHQUFBLE1BQUFDLGdCQUFBLEdBQTJCWCxNQUFNLENBQUNDLE9BQU8sQ0FBQ0wsUUFBUSxDQUFDLEVBQUFjLEdBQUEsR0FBQUMsZ0JBQUEsQ0FBQW5ELE1BQUEsRUFBQWtELEdBQUEsSUFBRTtnQkFBaEQsSUFBQUUsbUJBQUEsT0FBQVQsZUFBQSxhQUFBUSxnQkFBQSxDQUFBRCxHQUFBO2tCQUFPTixJQUFHLEdBQUFRLG1CQUFBO2tCQUFFOUMsTUFBSyxHQUFBOEMsbUJBQUE7Z0JBQ3BCLElBQU1DLFFBQVEsR0FBR1IsT0FBTyxDQUFDRCxJQUFHLENBQUM7Z0JBQzdCLElBQUlTLFFBQVEsRUFBRTtrQkFDWnhCLFlBQVksQ0FBQ21CLGNBQWMsQ0FBQ0MsZ0JBQWdCLENBQUNJLFFBQVEsQ0FBQyxHQUFHL0MsTUFBSztnQkFDaEU7Y0FDRjtjQUNBO2NBQ0EsSUFBSWtDLE1BQU0sQ0FBQ2MsSUFBSSxDQUFDakIsUUFBUSxDQUFDLENBQUNyQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNwQyxJQUFJLENBQUM2QixZQUFZLENBQUMwQixjQUFjLENBQUN0QixHQUFHLENBQUNmLElBQUksQ0FBQyxFQUFFO2tCQUMxQ1csWUFBWSxDQUFDMEIsY0FBYyxDQUFDdEIsR0FBRyxDQUFDZixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzVDO2dCQUNBc0IsTUFBTSxDQUFDZ0IsTUFBTSxDQUFDM0IsWUFBWSxDQUFDMEIsY0FBYyxDQUFDdEIsR0FBRyxDQUFDZixJQUFJLENBQUMsRUFBRW1CLFFBQVEsQ0FBQztjQUNoRTtZQUNGLENBQUMsTUFBTTtjQUNMO2NBQ0EsSUFBSSxDQUFDUixZQUFZLENBQUNtQixjQUFjLENBQUNmLEdBQUcsQ0FBQ2YsSUFBSSxDQUFDLEVBQUU7Z0JBQzFDVyxZQUFZLENBQUNtQixjQUFjLENBQUNmLEdBQUcsQ0FBQ2YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2NBQzVDO2NBQ0EsSUFBSSxDQUFDVyxZQUFZLENBQUMwQixjQUFjLENBQUN0QixHQUFHLENBQUNmLElBQUksQ0FBQyxFQUFFO2dCQUMxQ1csWUFBWSxDQUFDMEIsY0FBYyxDQUFDdEIsR0FBRyxDQUFDZixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Y0FDNUM7Y0FDQXNCLE1BQU0sQ0FBQ2dCLE1BQU0sQ0FBQzNCLFlBQVksQ0FBQ21CLGNBQWMsQ0FBQ2YsR0FBRyxDQUFDZixJQUFJLENBQUMsRUFBRWtCLFFBQVEsQ0FBQztjQUM5REksTUFBTSxDQUFDZ0IsTUFBTSxDQUFDM0IsWUFBWSxDQUFDMEIsY0FBYyxDQUFDdEIsR0FBRyxDQUFDZixJQUFJLENBQUMsRUFBRW1CLFFBQVEsQ0FBQztZQUNoRTtVQUNGLENBQUMsQ0FBQyxPQUFBb0IsT0FBQSxFQUFNO1lBQ04sSUFBTVosUUFBTyxHQUFHQywwQ0FBZ0IsQ0FBQ2IsR0FBRyxDQUFDZixJQUFJLENBQUM7WUFDMUMsSUFBSTJCLFFBQU8sSUFBSVosR0FBRyxDQUFDYyxZQUFZLEVBQUU7Y0FBQSxJQUFBVyxxQkFBQTtjQUMvQixJQUFNQyxnQkFBeUMsR0FBRyxDQUFDLENBQUM7Y0FDcEQsU0FBQUMsR0FBQSxNQUFBQyxnQkFBQSxHQUF5QnJCLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDTCxRQUFRLENBQUMsRUFBQXdCLEdBQUEsR0FBQUMsZ0JBQUEsQ0FBQTdELE1BQUEsRUFBQTRELEdBQUEsSUFBRTtnQkFBOUMsSUFBQUUsbUJBQUEsT0FBQW5CLGVBQUEsYUFBQWtCLGdCQUFBLENBQUFELEdBQUE7a0JBQU9oQixLQUFHLEdBQUFrQixtQkFBQTtrQkFBRUMsR0FBRyxHQUFBRCxtQkFBQTtnQkFDbEIsSUFBTVQsU0FBUSxHQUFHUixRQUFPLENBQUNELEtBQUcsQ0FBQztnQkFDN0IsSUFBSVMsU0FBUSxFQUFFO2tCQUNaTSxnQkFBZ0IsQ0FBQ04sU0FBUSxDQUFDLEdBQUdVLEdBQUc7Z0JBQ2xDO2NBQ0Y7Y0FDQSxDQUFBTCxxQkFBQSxHQUFBN0IsWUFBWSxDQUFDbUMsUUFBUSxjQUFBTixxQkFBQSxlQUFyQkEscUJBQUEsQ0FBQTlDLElBQUEsQ0FBQWlCLFlBQVksRUFBWTtnQkFBQ29CLGdCQUFnQixFQUFFVTtjQUFnQixDQUFDLENBQUM7Y0FDN0QsSUFBSW5CLE1BQU0sQ0FBQ2MsSUFBSSxDQUFDakIsUUFBUSxDQUFDLENBQUNyQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUFBLElBQUFpRSxzQkFBQTtnQkFDcEMsQ0FBQUEsc0JBQUEsR0FBQXBDLFlBQVksQ0FBQ21DLFFBQVEsY0FBQUMsc0JBQUEsZUFBckJBLHNCQUFBLENBQUFyRCxJQUFBLENBQUFpQixZQUFZLE1BQUFxQyxnQkFBQSxpQkFBY2pDLEdBQUcsQ0FBQ2YsSUFBSSxFQUFHbUIsUUFBUSxDQUFDLENBQUM7Y0FDakQ7WUFDRixDQUFDLE1BQU07Y0FBQSxJQUFBOEIsc0JBQUE7Y0FDTCxDQUFBQSxzQkFBQSxHQUFBdEMsWUFBWSxDQUFDbUMsUUFBUSxjQUFBRyxzQkFBQSxlQUFyQkEsc0JBQUEsQ0FBQXZELElBQUEsQ0FBQWlCLFlBQVksTUFBQXFDLGdCQUFBLGlCQUFjakMsR0FBRyxDQUFDZixJQUFJLEVBQUdpQixNQUFNLENBQUMsQ0FBQztZQUMvQztVQUNGO1FBQ0Y7TUFDRjtJQUNGO0VBQUMsU0FBQWlDLEdBQUE7SUFBQXJDLFNBQUEsQ0FBQXRDLENBQUEsQ0FBQTJFLEdBQUE7RUFBQTtJQUFBckMsU0FBQSxDQUFBeEIsQ0FBQTtFQUFBO0FBQ0giLCJpZ25vcmVMaXN0IjpbXX0=
@@ -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, ImageServiceType } from '@loaders.gl/wms';
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?: ImageServiceType | 'auto';
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.