@deck.gl/extensions 9.0.0-alpha.7 → 9.0.0-beta.10
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/brushing/brushing-extension.js +80 -0
- package/{typed → dist}/brushing/shader-module.d.ts +1 -1
- package/{typed → dist}/brushing/shader-module.d.ts.map +1 -1
- package/dist/brushing/shader-module.js +92 -0
- package/{typed → dist}/clip/clip-extension.d.ts.map +1 -1
- package/dist/clip/clip-extension.js +117 -0
- package/{typed → dist}/collision-filter/collision-filter-effect.d.ts.map +1 -1
- package/dist/collision-filter/collision-filter-effect.js +193 -0
- package/dist/collision-filter/collision-filter-extension.js +49 -0
- package/{typed → dist}/collision-filter/collision-filter-pass.d.ts +4 -2
- package/{typed → dist}/collision-filter/collision-filter-pass.d.ts.map +1 -1
- package/dist/collision-filter/collision-filter-pass.js +25 -0
- package/{typed → dist}/collision-filter/shader-module.d.ts.map +1 -1
- package/dist/collision-filter/shader-module.js +87 -0
- package/dist/data-filter/aggregator.d.ts.map +1 -0
- package/dist/{esm/data-filter → data-filter}/aggregator.js +40 -41
- package/{typed → dist}/data-filter/data-filter-extension.d.ts +38 -6
- package/dist/data-filter/data-filter-extension.d.ts.map +1 -0
- package/dist/data-filter/data-filter-extension.js +249 -0
- package/{typed → dist}/data-filter/shader-module.d.ts +1 -1
- package/dist/data-filter/shader-module.d.ts.map +1 -0
- package/dist/data-filter/shader-module.js +179 -0
- package/dist/dist.dev.js +2079 -10477
- package/{typed → dist}/fill-style/fill-style-extension.d.ts +2 -30
- package/dist/fill-style/fill-style-extension.d.ts.map +1 -0
- package/dist/fill-style/fill-style-extension.js +116 -0
- package/{typed/fill-style/shaders.glsl.d.ts → dist/fill-style/shader-module.d.ts} +1 -1
- package/dist/fill-style/shader-module.d.ts.map +1 -0
- package/dist/fill-style/shader-module.js +96 -0
- package/dist/fp64/fp64-extension.js +35 -0
- package/dist/fp64/project64.glsl.js +81 -0
- package/dist/fp64/project64.js +50 -0
- package/dist/index.cjs +2756 -0
- package/dist/index.cjs.map +7 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/{typed → dist}/mask/mask-effect.d.ts +1 -1
- package/dist/mask/mask-effect.d.ts.map +1 -0
- package/dist/mask/mask-effect.js +194 -0
- package/dist/mask/mask-extension.js +57 -0
- package/{typed → dist}/mask/mask-pass.d.ts.map +1 -1
- package/dist/mask/mask-pass.js +44 -0
- package/{typed → dist}/mask/shader-module.d.ts.map +1 -1
- package/dist/mask/shader-module.js +77 -0
- package/dist/path-style/path-style-extension.js +111 -0
- package/dist/path-style/shaders.glsl.js +86 -0
- package/{typed → dist}/terrain/height-map-builder.d.ts +1 -1
- package/dist/terrain/height-map-builder.d.ts.map +1 -0
- package/dist/terrain/height-map-builder.js +104 -0
- package/{typed → dist}/terrain/shader-module.d.ts +5 -3
- package/dist/terrain/shader-module.d.ts.map +1 -0
- package/dist/terrain/shader-module.js +137 -0
- package/{typed → dist}/terrain/terrain-cover.d.ts +1 -1
- package/dist/terrain/terrain-cover.d.ts.map +1 -0
- package/dist/terrain/terrain-cover.js +187 -0
- package/{typed → dist}/terrain/terrain-effect.d.ts +2 -2
- package/dist/terrain/terrain-effect.d.ts.map +1 -0
- package/dist/terrain/terrain-effect.js +184 -0
- package/dist/terrain/terrain-extension.js +44 -0
- package/{typed → dist}/terrain/terrain-pass.d.ts +2 -2
- package/dist/terrain/terrain-pass.d.ts.map +1 -0
- package/dist/terrain/terrain-pass.js +61 -0
- package/{typed → dist}/terrain/terrain-picking-pass.d.ts +1 -1
- package/dist/terrain/terrain-picking-pass.d.ts.map +1 -0
- package/dist/terrain/terrain-picking-pass.js +66 -0
- package/dist/terrain/utils.js +21 -0
- package/{typed → dist}/utils/debug.d.ts.map +1 -1
- package/dist/utils/debug.js +50 -0
- package/dist/utils/projection-utils.js +153 -0
- package/dist/utils/syntax-tags.d.ts +6 -0
- package/dist/utils/syntax-tags.d.ts.map +1 -0
- package/dist/utils/syntax-tags.js +5 -0
- package/dist.min.js +898 -1257
- package/package.json +19 -16
- package/src/brushing/shader-module.ts +4 -3
- package/src/clip/clip-extension.ts +10 -9
- package/src/collision-filter/collision-filter-effect.ts +12 -8
- package/src/collision-filter/collision-filter-pass.ts +5 -5
- package/src/collision-filter/shader-module.ts +6 -4
- package/src/data-filter/aggregator.ts +8 -13
- package/src/data-filter/data-filter-extension.ts +147 -30
- package/src/data-filter/shader-module.ts +38 -9
- package/src/fill-style/fill-style-extension.ts +4 -5
- package/src/fill-style/{shaders.glsl.ts → shader-module.ts} +6 -5
- package/src/mask/mask-effect.ts +0 -1
- package/src/mask/mask-pass.ts +1 -3
- package/src/mask/shader-module.ts +7 -6
- package/src/terrain/shader-module.ts +16 -15
- package/src/terrain/terrain-effect.ts +12 -5
- package/src/terrain/terrain-pass.ts +2 -5
- package/src/terrain/terrain-picking-pass.ts +1 -3
- package/src/terrain/utils.ts +1 -1
- package/src/utils/debug.ts +1 -2
- package/src/utils/syntax-tags.ts +5 -0
- package/dist/es5/brushing/brushing-extension.js +0 -108
- package/dist/es5/brushing/brushing-extension.js.map +0 -1
- package/dist/es5/brushing/shader-module.js +0 -50
- package/dist/es5/brushing/shader-module.js.map +0 -1
- package/dist/es5/clip/clip-extension.js +0 -98
- package/dist/es5/clip/clip-extension.js.map +0 -1
- package/dist/es5/collision-filter/collision-filter-effect.js +0 -294
- package/dist/es5/collision-filter/collision-filter-effect.js.map +0 -1
- package/dist/es5/collision-filter/collision-filter-extension.js +0 -109
- package/dist/es5/collision-filter/collision-filter-extension.js.map +0 -1
- package/dist/es5/collision-filter/collision-filter-pass.js +0 -77
- package/dist/es5/collision-filter/collision-filter-pass.js.map +0 -1
- package/dist/es5/collision-filter/shader-module.js +0 -39
- package/dist/es5/collision-filter/shader-module.js.map +0 -1
- package/dist/es5/data-filter/aggregator.js +0 -79
- package/dist/es5/data-filter/aggregator.js.map +0 -1
- package/dist/es5/data-filter/data-filter-extension.js +0 -236
- package/dist/es5/data-filter/data-filter-extension.js.map +0 -1
- package/dist/es5/data-filter/shader-module.js +0 -122
- package/dist/es5/data-filter/shader-module.js.map +0 -1
- package/dist/es5/fill-style/fill-style-extension.js +0 -190
- package/dist/es5/fill-style/fill-style-extension.js.map +0 -1
- package/dist/es5/fill-style/shaders.glsl.js +0 -59
- package/dist/es5/fill-style/shaders.glsl.js.map +0 -1
- package/dist/es5/fp64/fp64-extension.js +0 -55
- package/dist/es5/fp64/fp64-extension.js.map +0 -1
- package/dist/es5/fp64/project64.glsl.js +0 -9
- package/dist/es5/fp64/project64.glsl.js.map +0 -1
- package/dist/es5/fp64/project64.js +0 -52
- package/dist/es5/fp64/project64.js.map +0 -1
- package/dist/es5/index.js +0 -88
- package/dist/es5/index.js.map +0 -1
- package/dist/es5/mask/mask-effect.js +0 -279
- package/dist/es5/mask/mask-effect.js.map +0 -1
- package/dist/es5/mask/mask-extension.js +0 -113
- package/dist/es5/mask/mask-extension.js.map +0 -1
- package/dist/es5/mask/mask-pass.js +0 -106
- package/dist/es5/mask/mask-pass.js.map +0 -1
- package/dist/es5/mask/shader-module.js +0 -38
- package/dist/es5/mask/shader-module.js.map +0 -1
- package/dist/es5/path-style/path-style-extension.js +0 -169
- package/dist/es5/path-style/path-style-extension.js.map +0 -1
- package/dist/es5/path-style/shaders.glsl.js +0 -25
- package/dist/es5/path-style/shaders.glsl.js.map +0 -1
- package/dist/es5/terrain/height-map-builder.js +0 -111
- package/dist/es5/terrain/height-map-builder.js.map +0 -1
- package/dist/es5/terrain/shader-module.js +0 -84
- package/dist/es5/terrain/shader-module.js.map +0 -1
- package/dist/es5/terrain/terrain-cover.js +0 -256
- package/dist/es5/terrain/terrain-cover.js.map +0 -1
- package/dist/es5/terrain/terrain-effect.js +0 -326
- package/dist/es5/terrain/terrain-effect.js.map +0 -1
- package/dist/es5/terrain/terrain-extension.js +0 -94
- package/dist/es5/terrain/terrain-extension.js.map +0 -1
- package/dist/es5/terrain/terrain-pass.js +0 -121
- package/dist/es5/terrain/terrain-pass.js.map +0 -1
- package/dist/es5/terrain/terrain-picking-pass.js +0 -124
- package/dist/es5/terrain/terrain-picking-pass.js.map +0 -1
- package/dist/es5/terrain/utils.js +0 -35
- package/dist/es5/terrain/utils.js.map +0 -1
- package/dist/es5/utils/debug.js +0 -71
- package/dist/es5/utils/debug.js.map +0 -1
- package/dist/es5/utils/projection-utils.js +0 -168
- package/dist/es5/utils/projection-utils.js.map +0 -1
- package/dist/esm/brushing/brushing-extension.js +0 -68
- package/dist/esm/brushing/brushing-extension.js.map +0 -1
- package/dist/esm/brushing/shader-module.js +0 -103
- package/dist/esm/brushing/shader-module.js.map +0 -1
- package/dist/esm/clip/clip-extension.js +0 -86
- package/dist/esm/clip/clip-extension.js.map +0 -1
- package/dist/esm/collision-filter/collision-filter-effect.js +0 -246
- package/dist/esm/collision-filter/collision-filter-effect.js.map +0 -1
- package/dist/esm/collision-filter/collision-filter-extension.js +0 -75
- package/dist/esm/collision-filter/collision-filter-extension.js.map +0 -1
- package/dist/esm/collision-filter/collision-filter-pass.js +0 -30
- package/dist/esm/collision-filter/collision-filter-pass.js.map +0 -1
- package/dist/esm/collision-filter/shader-module.js +0 -104
- package/dist/esm/collision-filter/shader-module.js.map +0 -1
- package/dist/esm/data-filter/aggregator.js.map +0 -1
- package/dist/esm/data-filter/data-filter-extension.js +0 -189
- package/dist/esm/data-filter/data-filter-extension.js.map +0 -1
- package/dist/esm/data-filter/shader-module.js +0 -164
- package/dist/esm/data-filter/shader-module.js.map +0 -1
- package/dist/esm/fill-style/fill-style-extension.js +0 -156
- package/dist/esm/fill-style/fill-style-extension.js.map +0 -1
- package/dist/esm/fill-style/shaders.glsl.js +0 -108
- package/dist/esm/fill-style/shaders.glsl.js.map +0 -1
- package/dist/esm/fp64/fp64-extension.js +0 -20
- package/dist/esm/fp64/fp64-extension.js.map +0 -1
- package/dist/esm/fp64/project64.glsl.js +0 -82
- package/dist/esm/fp64/project64.glsl.js.map +0 -1
- package/dist/esm/fp64/project64.js +0 -43
- package/dist/esm/fp64/project64.js.map +0 -1
- package/dist/esm/index.js +0 -11
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/mask/mask-effect.js +0 -228
- package/dist/esm/mask/mask-effect.js.map +0 -1
- package/dist/esm/mask/mask-extension.js +0 -83
- package/dist/esm/mask/mask-extension.js.map +0 -1
- package/dist/esm/mask/mask-pass.js +0 -58
- package/dist/esm/mask/mask-pass.js.map +0 -1
- package/dist/esm/mask/shader-module.js +0 -84
- package/dist/esm/mask/shader-module.js.map +0 -1
- package/dist/esm/path-style/path-style-extension.js +0 -130
- package/dist/esm/path-style/path-style-extension.js.map +0 -1
- package/dist/esm/path-style/shaders.glsl.js +0 -84
- package/dist/esm/path-style/shaders.glsl.js.map +0 -1
- package/dist/esm/terrain/height-map-builder.js +0 -86
- package/dist/esm/terrain/height-map-builder.js.map +0 -1
- package/dist/esm/terrain/shader-module.js +0 -125
- package/dist/esm/terrain/shader-module.js.map +0 -1
- package/dist/esm/terrain/terrain-cover.js +0 -212
- package/dist/esm/terrain/terrain-cover.js.map +0 -1
- package/dist/esm/terrain/terrain-effect.js +0 -219
- package/dist/esm/terrain/terrain-effect.js.map +0 -1
- package/dist/esm/terrain/terrain-extension.js +0 -59
- package/dist/esm/terrain/terrain-extension.js.map +0 -1
- package/dist/esm/terrain/terrain-pass.js +0 -71
- package/dist/esm/terrain/terrain-pass.js.map +0 -1
- package/dist/esm/terrain/terrain-picking-pass.js +0 -73
- package/dist/esm/terrain/terrain-picking-pass.js.map +0 -1
- package/dist/esm/terrain/utils.js +0 -19
- package/dist/esm/terrain/utils.js.map +0 -1
- package/dist/esm/utils/debug.js +0 -61
- package/dist/esm/utils/debug.js.map +0 -1
- package/dist/esm/utils/projection-utils.js +0 -134
- package/dist/esm/utils/projection-utils.js.map +0 -1
- package/typed/data-filter/aggregator.d.ts.map +0 -1
- package/typed/data-filter/data-filter-extension.d.ts.map +0 -1
- package/typed/data-filter/shader-module.d.ts.map +0 -1
- package/typed/fill-style/fill-style-extension.d.ts.map +0 -1
- package/typed/fill-style/shaders.glsl.d.ts.map +0 -1
- package/typed/index.d.ts +0 -19
- package/typed/index.d.ts.map +0 -1
- package/typed/mask/mask-effect.d.ts.map +0 -1
- package/typed/terrain/height-map-builder.d.ts.map +0 -1
- package/typed/terrain/shader-module.d.ts.map +0 -1
- package/typed/terrain/terrain-cover.d.ts.map +0 -1
- package/typed/terrain/terrain-effect.d.ts.map +0 -1
- package/typed/terrain/terrain-pass.d.ts.map +0 -1
- package/typed/terrain/terrain-picking-pass.d.ts.map +0 -1
- /package/{typed → dist}/brushing/brushing-extension.d.ts +0 -0
- /package/{typed → dist}/brushing/brushing-extension.d.ts.map +0 -0
- /package/{typed → dist}/clip/clip-extension.d.ts +0 -0
- /package/{typed → dist}/collision-filter/collision-filter-effect.d.ts +0 -0
- /package/{typed → dist}/collision-filter/collision-filter-extension.d.ts +0 -0
- /package/{typed → dist}/collision-filter/collision-filter-extension.d.ts.map +0 -0
- /package/{typed → dist}/collision-filter/shader-module.d.ts +0 -0
- /package/{typed → dist}/data-filter/aggregator.d.ts +0 -0
- /package/{typed → dist}/fp64/fp64-extension.d.ts +0 -0
- /package/{typed → dist}/fp64/fp64-extension.d.ts.map +0 -0
- /package/{typed → dist}/fp64/project64.d.ts +0 -0
- /package/{typed → dist}/fp64/project64.d.ts.map +0 -0
- /package/{typed → dist}/fp64/project64.glsl.d.ts +0 -0
- /package/{typed → dist}/fp64/project64.glsl.d.ts.map +0 -0
- /package/{typed → dist}/mask/mask-extension.d.ts +0 -0
- /package/{typed → dist}/mask/mask-extension.d.ts.map +0 -0
- /package/{typed → dist}/mask/mask-pass.d.ts +0 -0
- /package/{typed → dist}/mask/shader-module.d.ts +0 -0
- /package/{typed → dist}/path-style/path-style-extension.d.ts +0 -0
- /package/{typed → dist}/path-style/path-style-extension.d.ts.map +0 -0
- /package/{typed → dist}/path-style/shaders.glsl.d.ts +0 -0
- /package/{typed → dist}/path-style/shaders.glsl.d.ts.map +0 -0
- /package/{typed → dist}/terrain/terrain-extension.d.ts +0 -0
- /package/{typed → dist}/terrain/terrain-extension.d.ts.map +0 -0
- /package/{typed → dist}/terrain/utils.d.ts +0 -0
- /package/{typed → dist}/terrain/utils.d.ts.map +0 -0
- /package/{typed → dist}/utils/debug.d.ts +0 -0
- /package/{typed → dist}/utils/projection-utils.d.ts +0 -0
- /package/{typed → dist}/utils/projection-utils.d.ts.map +0 -0
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { _PickLayersPass as PickLayersPass } from '@deck.gl/core';
|
|
2
|
-
import { withGLParameters } from '@luma.gl/webgl';
|
|
3
|
-
export class TerrainPickingPass extends PickLayersPass {
|
|
4
|
-
constructor(...args) {
|
|
5
|
-
super(...args);
|
|
6
|
-
this.drawParameters = {};
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
getRenderableLayers(viewport, opts) {
|
|
10
|
-
const {
|
|
11
|
-
layers
|
|
12
|
-
} = opts;
|
|
13
|
-
const result = [];
|
|
14
|
-
this.drawParameters = {};
|
|
15
|
-
|
|
16
|
-
this._resetColorEncoder(opts.pickZ);
|
|
17
|
-
|
|
18
|
-
const drawParamsByIndex = this._getDrawLayerParams(viewport, opts);
|
|
19
|
-
|
|
20
|
-
for (let i = 0; i < layers.length; i++) {
|
|
21
|
-
const layer = layers[i];
|
|
22
|
-
|
|
23
|
-
if (!layer.isComposite && drawParamsByIndex[i].shouldDrawLayer) {
|
|
24
|
-
result.push(layer);
|
|
25
|
-
this.drawParameters[layer.id] = drawParamsByIndex[i].layerParameters;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
return result;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
renderTerrainCover(terrainCover, opts) {
|
|
33
|
-
const target = terrainCover.getPickingFramebuffer();
|
|
34
|
-
const viewport = terrainCover.renderViewport;
|
|
35
|
-
|
|
36
|
-
if (!target || !viewport) {
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
const layers = terrainCover.filterLayers(opts.layers);
|
|
41
|
-
const terrainLayer = terrainCover.targetLayer;
|
|
42
|
-
|
|
43
|
-
if (terrainLayer.props.pickable) {
|
|
44
|
-
layers.unshift(terrainLayer);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
target.resize(viewport);
|
|
48
|
-
withGLParameters(this.device, {
|
|
49
|
-
depthTest: false
|
|
50
|
-
}, () => this.render({ ...opts,
|
|
51
|
-
pickingFBO: target,
|
|
52
|
-
pass: `terrain-cover-picking-${terrainCover.id}`,
|
|
53
|
-
layers,
|
|
54
|
-
effects: [],
|
|
55
|
-
viewports: [viewport],
|
|
56
|
-
cullRect: undefined,
|
|
57
|
-
deviceRect: viewport,
|
|
58
|
-
pickZ: false
|
|
59
|
-
}));
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
getLayerParameters(layer, layerIndex, viewport) {
|
|
63
|
-
if (this.drawParameters[layer.id]) {
|
|
64
|
-
return this.drawParameters[layer.id];
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
const parameters = super.getLayerParameters(layer, layerIndex, viewport);
|
|
68
|
-
parameters.blend = true;
|
|
69
|
-
return parameters;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
}
|
|
73
|
-
//# sourceMappingURL=terrain-picking-pass.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/terrain/terrain-picking-pass.ts"],"names":["_PickLayersPass","PickLayersPass","withGLParameters","TerrainPickingPass","drawParameters","getRenderableLayers","viewport","opts","layers","result","_resetColorEncoder","pickZ","drawParamsByIndex","_getDrawLayerParams","i","length","layer","isComposite","shouldDrawLayer","push","id","layerParameters","renderTerrainCover","terrainCover","target","getPickingFramebuffer","renderViewport","filterLayers","terrainLayer","targetLayer","props","pickable","unshift","resize","device","depthTest","render","pickingFBO","pass","effects","viewports","cullRect","undefined","deviceRect","getLayerParameters","layerIndex","parameters","blend"],"mappings":"AAAA,SAIEA,eAAe,IAAIC,cAJrB,QAKO,eALP;AAMA,SAAQC,gBAAR,QAA+B,gBAA/B;AAQA,OAAO,MAAMC,kBAAN,SAAiCF,cAAjC,CAAgD;AAAA;AAAA;AAAA,SAOrDG,cAPqD,GAOf,EAPe;AAAA;;AASrDC,EAAAA,mBAAmB,CAACC,QAAD,EAAqBC,IAArB,EAAqE;AACtF,UAAM;AAACC,MAAAA;AAAD,QAAWD,IAAjB;AACA,UAAME,MAAe,GAAG,EAAxB;AACA,SAAKL,cAAL,GAAsB,EAAtB;;AACA,SAAKM,kBAAL,CAAwBH,IAAI,CAACI,KAA7B;;AACA,UAAMC,iBAAiB,GAAG,KAAKC,mBAAL,CAAyBP,QAAzB,EAAmCC,IAAnC,CAA1B;;AACA,SAAK,IAAIO,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGN,MAAM,CAACO,MAA3B,EAAmCD,CAAC,EAApC,EAAwC;AACtC,YAAME,KAAK,GAAGR,MAAM,CAACM,CAAD,CAApB;;AACA,UAAI,CAACE,KAAK,CAACC,WAAP,IAAsBL,iBAAiB,CAACE,CAAD,CAAjB,CAAqBI,eAA/C,EAAgE;AAC9DT,QAAAA,MAAM,CAACU,IAAP,CAAYH,KAAZ;AACA,aAAKZ,cAAL,CAAoBY,KAAK,CAACI,EAA1B,IAAgCR,iBAAiB,CAACE,CAAD,CAAjB,CAAqBO,eAArD;AACD;AACF;;AAED,WAAOZ,MAAP;AACD;;AAEDa,EAAAA,kBAAkB,CAACC,YAAD,EAA6BhB,IAA7B,EAA6E;AAE7F,UAAMiB,MAAM,GAAGD,YAAY,CAACE,qBAAb,EAAf;AACA,UAAMnB,QAAQ,GAAGiB,YAAY,CAACG,cAA9B;;AAEA,QAAI,CAACF,MAAD,IAAW,CAAClB,QAAhB,EAA0B;AACxB;AACD;;AAED,UAAME,MAAM,GAAGe,YAAY,CAACI,YAAb,CAA0BpB,IAAI,CAACC,MAA/B,CAAf;AACA,UAAMoB,YAAY,GAAGL,YAAY,CAACM,WAAlC;;AACA,QAAID,YAAY,CAACE,KAAb,CAAmBC,QAAvB,EAAiC;AAC/BvB,MAAAA,MAAM,CAACwB,OAAP,CAAeJ,YAAf;AACD;;AACDJ,IAAAA,MAAM,CAACS,MAAP,CAAc3B,QAAd;AAEAJ,IAAAA,gBAAgB,CACd,KAAKgC,MADS,EAEd;AACEC,MAAAA,SAAS,EAAE;AADb,KAFc,EAKd,MACE,KAAKC,MAAL,CAAY,EACV,GAAG7B,IADO;AAEV8B,MAAAA,UAAU,EAAEb,MAFF;AAGVc,MAAAA,IAAI,EAAG,yBAAwBf,YAAY,CAACH,EAAG,EAHrC;AAIVZ,MAAAA,MAJU;AAKV+B,MAAAA,OAAO,EAAE,EALC;AAMVC,MAAAA,SAAS,EAAE,CAAClC,QAAD,CAND;AASVmC,MAAAA,QAAQ,EAAEC,SATA;AAUVC,MAAAA,UAAU,EAAErC,QAVF;AAWVK,MAAAA,KAAK,EAAE;AAXG,KAAZ,CANY,CAAhB;AAoBD;;AAESiC,EAAAA,kBAAkB,CAAC5B,KAAD,EAAe6B,UAAf,EAAmCvC,QAAnC,EAA4D;AACtF,QAAI,KAAKF,cAAL,CAAoBY,KAAK,CAACI,EAA1B,CAAJ,EAAmC;AACjC,aAAO,KAAKhB,cAAL,CAAoBY,KAAK,CAACI,EAA1B,CAAP;AACD;;AACD,UAAM0B,UAAU,GAAG,MAAMF,kBAAN,CAAyB5B,KAAzB,EAAgC6B,UAAhC,EAA4CvC,QAA5C,CAAnB;AACAwC,IAAAA,UAAU,CAACC,KAAX,GAAmB,IAAnB;AACA,WAAOD,UAAP;AACD;;AAvEoD","sourcesContent":["import {\n Layer,\n Viewport,\n LayersPassRenderOptions,\n _PickLayersPass as PickLayersPass\n} from '@deck.gl/core';\nimport {withGLParameters} from '@luma.gl/webgl';\nimport type {TerrainCover} from './terrain-cover';\n\nexport type TerrainPickingPassRenderOptions = LayersPassRenderOptions & {\n pickZ: boolean;\n};\n\n/** Renders textures used by the TerrainEffect picking pass */\nexport class TerrainPickingPass extends PickLayersPass {\n /** Save layer index for use when drawing to terrain cover.\n * When a terrain cover's picking buffer is rendered,\n * we need to make sure each layer receives a consistent index (encoded in the alpha channel)\n * so that a picked color can be decoded back to the correct layer.\n * Updated in getRenderableLayers which is called in TerrainEffect.preRender\n */\n drawParameters: Record<string, any> = {};\n\n getRenderableLayers(viewport: Viewport, opts: TerrainPickingPassRenderOptions): Layer[] {\n const {layers} = opts;\n const result: Layer[] = [];\n this.drawParameters = {};\n this._resetColorEncoder(opts.pickZ);\n const drawParamsByIndex = this._getDrawLayerParams(viewport, opts);\n for (let i = 0; i < layers.length; i++) {\n const layer = layers[i];\n if (!layer.isComposite && drawParamsByIndex[i].shouldDrawLayer) {\n result.push(layer);\n this.drawParameters[layer.id] = drawParamsByIndex[i].layerParameters;\n }\n }\n\n return result;\n }\n\n renderTerrainCover(terrainCover: TerrainCover, opts: Partial<TerrainPickingPassRenderOptions>) {\n // console.log('Updating terrain cover for picking ' + terrainCover.id)\n const target = terrainCover.getPickingFramebuffer();\n const viewport = terrainCover.renderViewport;\n\n if (!target || !viewport) {\n return;\n }\n\n const layers = terrainCover.filterLayers(opts.layers!);\n const terrainLayer = terrainCover.targetLayer;\n if (terrainLayer.props.pickable) {\n layers.unshift(terrainLayer);\n }\n target.resize(viewport);\n\n withGLParameters(\n this.device,\n {\n depthTest: false\n },\n () =>\n this.render({\n ...opts,\n pickingFBO: target,\n pass: `terrain-cover-picking-${terrainCover.id}`,\n layers,\n effects: [],\n viewports: [viewport],\n // Disable the default culling because TileLayer would cull sublayers based on the screen viewport,\n // not the viewport of the terrain cover. Culling is already done by `terrainCover.filterLayers`\n cullRect: undefined,\n deviceRect: viewport,\n pickZ: false\n })\n );\n }\n\n protected getLayerParameters(layer: Layer, layerIndex: number, viewport: Viewport): any {\n if (this.drawParameters[layer.id]) {\n return this.drawParameters[layer.id];\n }\n const parameters = super.getLayerParameters(layer, layerIndex, viewport);\n parameters.blend = true;\n return parameters;\n }\n}\n"],"file":"terrain-picking-pass.js"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { GL } from '@luma.gl/constants';
|
|
2
|
-
export function createRenderTarget(device, opts) {
|
|
3
|
-
return device.createFramebuffer({
|
|
4
|
-
id: opts.id,
|
|
5
|
-
colorAttachments: [device.createTexture({ ...(opts.float && {
|
|
6
|
-
format: device.info.type === 'webgl2' ? 'rgba32float' : 'rgba8unorm',
|
|
7
|
-
type: 5126
|
|
8
|
-
}),
|
|
9
|
-
mipmaps: false,
|
|
10
|
-
sampler: {
|
|
11
|
-
minFilter: 'linear',
|
|
12
|
-
magFilter: 'linear',
|
|
13
|
-
addressModeU: 'clamp-to-edge',
|
|
14
|
-
addressModeV: 'clamp-to-edge'
|
|
15
|
-
}
|
|
16
|
-
})]
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/terrain/utils.ts"],"names":["GL","createRenderTarget","device","opts","createFramebuffer","id","colorAttachments","createTexture","float","format","info","type","mipmaps","sampler","minFilter","magFilter","addressModeU","addressModeV"],"mappings":"AACA,SAAQA,EAAR,QAAiB,oBAAjB;AAEA,OAAO,SAASC,kBAAT,CACLC,MADK,EAELC,IAFK,EAML;AACA,SAAOD,MAAM,CAACE,iBAAP,CAAyB;AAC9BC,IAAAA,EAAE,EAAEF,IAAI,CAACE,EADqB;AAE9BC,IAAAA,gBAAgB,EAAE,CAChBJ,MAAM,CAACK,aAAP,CAAqB,EACnB,IAAIJ,IAAI,CAACK,KAAL,IAAc;AAChBC,QAAAA,MAAM,EAAEP,MAAM,CAACQ,IAAP,CAAYC,IAAZ,KAAqB,QAArB,GAAgC,aAAhC,GAAgD,YADxC;AAEhBA,QAAAA,IAAI;AAFY,OAAlB,CADmB;AAKnBC,MAAAA,OAAO,EAAE,KALU;AAMnBC,MAAAA,OAAO,EAAE;AACPC,QAAAA,SAAS,EAAE,QADJ;AAEPC,QAAAA,SAAS,EAAE,QAFJ;AAGPC,QAAAA,YAAY,EAAE,eAHP;AAIPC,QAAAA,YAAY,EAAE;AAJP;AANU,KAArB,CADgB;AAFY,GAAzB,CAAP;AAkBD","sourcesContent":["import type {Device} from '@luma.gl/core';\nimport {GL} from '@luma.gl/constants';\n\nexport function createRenderTarget(\n device: Device,\n opts: {\n id: string;\n float?: boolean;\n }\n) {\n return device.createFramebuffer({\n id: opts.id,\n colorAttachments: [\n device.createTexture({\n ...(opts.float && {\n format: device.info.type === 'webgl2' ? 'rgba32float' : 'rgba8unorm',\n type: GL.FLOAT\n }),\n mipmaps: false,\n sampler: {\n minFilter: 'linear',\n magFilter: 'linear',\n addressModeU: 'clamp-to-edge',\n addressModeV: 'clamp-to-edge'\n }\n })\n ]\n });\n}\n"],"file":"utils.js"}
|
package/dist/esm/utils/debug.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { readPixelsToArray } from '@luma.gl/webgl';
|
|
2
|
-
export const debugFBO = function (fbo, {
|
|
3
|
-
minimap,
|
|
4
|
-
opaque
|
|
5
|
-
} = {}) {
|
|
6
|
-
const color = readPixelsToArray(fbo);
|
|
7
|
-
let canvas = document.getElementById('fbo-canvas');
|
|
8
|
-
const canvasHeight = (minimap ? 2 : 1) * fbo.height;
|
|
9
|
-
|
|
10
|
-
if (!canvas) {
|
|
11
|
-
canvas = document.createElement('canvas');
|
|
12
|
-
canvas.id = 'fbo-canvas';
|
|
13
|
-
canvas.style.zIndex = '100';
|
|
14
|
-
canvas.style.position = 'absolute';
|
|
15
|
-
canvas.style.top = '0';
|
|
16
|
-
canvas.style.right = '0';
|
|
17
|
-
canvas.style.border = 'blue 1px solid';
|
|
18
|
-
canvas.style.transform = 'scaleY(-1)';
|
|
19
|
-
document.body.appendChild(canvas);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
if (canvas.width !== fbo.width || canvas.height !== canvasHeight) {
|
|
23
|
-
canvas.width = fbo.width;
|
|
24
|
-
canvas.height = canvasHeight;
|
|
25
|
-
canvas.style.width = '400px';
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
const ctx = canvas.getContext('2d');
|
|
29
|
-
const imageData = ctx.createImageData(canvas.width, canvas.height);
|
|
30
|
-
|
|
31
|
-
if (minimap) {
|
|
32
|
-
const zoom = 8;
|
|
33
|
-
const {
|
|
34
|
-
width,
|
|
35
|
-
height
|
|
36
|
-
} = canvas;
|
|
37
|
-
|
|
38
|
-
for (let y = 0; y < height; y++) {
|
|
39
|
-
for (let x = 0; x < width; x++) {
|
|
40
|
-
const d = 4 * (x + y * width);
|
|
41
|
-
const s = 4 * (Math.floor(x / zoom) + Math.floor(y / zoom) * width);
|
|
42
|
-
imageData.data[d + 0] = color[s + 0];
|
|
43
|
-
imageData.data[d + 1] = color[s + 1];
|
|
44
|
-
imageData.data[d + 2] = color[s + 2];
|
|
45
|
-
imageData.data[d + 3] = opaque ? 255 : color[s + 3];
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
const offset = minimap ? color.length : 0;
|
|
51
|
-
|
|
52
|
-
for (let i = 0; i < color.length; i += 4) {
|
|
53
|
-
imageData.data[offset + i + 0] = color[i + 0];
|
|
54
|
-
imageData.data[offset + i + 1] = color[i + 1];
|
|
55
|
-
imageData.data[offset + i + 2] = color[i + 2];
|
|
56
|
-
imageData.data[offset + i + 3] = opaque ? 255 : color[i + 3];
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
ctx.putImageData(imageData, 0, 0);
|
|
60
|
-
};
|
|
61
|
-
//# sourceMappingURL=debug.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/debug.ts"],"names":["readPixelsToArray","debugFBO","fbo","minimap","opaque","color","canvas","document","getElementById","canvasHeight","height","createElement","id","style","zIndex","position","top","right","border","transform","body","appendChild","width","ctx","getContext","imageData","createImageData","zoom","y","x","d","s","Math","floor","data","offset","length","i","putImageData"],"mappings":"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","sourcesContent":["/* global document */\n\nimport {Framebuffer} from '@luma.gl/core';\nimport {readPixelsToArray} from '@luma.gl/webgl';\n\n/** Debug utility to draw FBO contents onto screen */\n// eslint-disable-next-line\nexport const debugFBO = function (\n fbo: Framebuffer,\n {minimap, opaque}: {minimap?: boolean; opaque?: boolean} = {}\n) {\n const color = readPixelsToArray(fbo);\n let canvas = document.getElementById('fbo-canvas') as HTMLCanvasElement;\n const canvasHeight = (minimap ? 2 : 1) * fbo.height;\n if (!canvas) {\n canvas = document.createElement('canvas');\n canvas.id = 'fbo-canvas';\n canvas.style.zIndex = '100';\n canvas.style.position = 'absolute';\n canvas.style.top = '0';\n canvas.style.right = '0';\n canvas.style.border = 'blue 1px solid';\n canvas.style.transform = 'scaleY(-1)';\n document.body.appendChild(canvas);\n }\n if (canvas.width !== fbo.width || canvas.height !== canvasHeight) {\n canvas.width = fbo.width;\n canvas.height = canvasHeight;\n canvas.style.width = '400px';\n }\n const ctx = canvas.getContext('2d')!;\n const imageData = ctx.createImageData(canvas.width, canvas.height);\n\n // Minimap\n if (minimap) {\n const zoom = 8; // Zoom factor for minimap\n const {width, height} = canvas;\n for (let y = 0; y < height; y++) {\n for (let x = 0; x < width; x++) {\n const d = 4 * (x + y * width); // destination pixel\n const s = 4 * (Math.floor(x / zoom) + Math.floor(y / zoom) * width); // source\n imageData.data[d + 0] = color[s + 0];\n imageData.data[d + 1] = color[s + 1];\n imageData.data[d + 2] = color[s + 2];\n imageData.data[d + 3] = opaque ? 255 : color[s + 3];\n }\n }\n }\n\n // Full map\n const offset = minimap ? color.length : 0;\n for (let i = 0; i < color.length; i += 4) {\n imageData.data[offset + i + 0] = color[i + 0];\n imageData.data[offset + i + 1] = color[i + 1];\n imageData.data[offset + i + 2] = color[i + 2];\n imageData.data[offset + i + 3] = opaque ? 255 : color[i + 3];\n }\n\n ctx.putImageData(imageData, 0, 0);\n};\n"],"file":"debug.js"}
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
import { WebMercatorViewport, OrthographicViewport } from '@deck.gl/core';
|
|
2
|
-
export function joinLayerBounds(layers, viewport) {
|
|
3
|
-
const bounds = [Infinity, Infinity, -Infinity, -Infinity];
|
|
4
|
-
|
|
5
|
-
for (const layer of layers) {
|
|
6
|
-
const layerBounds = layer.getBounds();
|
|
7
|
-
|
|
8
|
-
if (layerBounds) {
|
|
9
|
-
const bottomLeftCommon = layer.projectPosition(layerBounds[0], {
|
|
10
|
-
viewport,
|
|
11
|
-
autoOffset: false
|
|
12
|
-
});
|
|
13
|
-
const topRightCommon = layer.projectPosition(layerBounds[1], {
|
|
14
|
-
viewport,
|
|
15
|
-
autoOffset: false
|
|
16
|
-
});
|
|
17
|
-
bounds[0] = Math.min(bounds[0], bottomLeftCommon[0]);
|
|
18
|
-
bounds[1] = Math.min(bounds[1], bottomLeftCommon[1]);
|
|
19
|
-
bounds[2] = Math.max(bounds[2], topRightCommon[0]);
|
|
20
|
-
bounds[3] = Math.max(bounds[3], topRightCommon[1]);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
if (Number.isFinite(bounds[0])) {
|
|
25
|
-
return bounds;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
return null;
|
|
29
|
-
}
|
|
30
|
-
const MAX_VIEWPORT_SIZE = 2048;
|
|
31
|
-
export function makeViewport(opts) {
|
|
32
|
-
const {
|
|
33
|
-
bounds,
|
|
34
|
-
viewport,
|
|
35
|
-
border = 0
|
|
36
|
-
} = opts;
|
|
37
|
-
const {
|
|
38
|
-
isGeospatial
|
|
39
|
-
} = viewport;
|
|
40
|
-
|
|
41
|
-
if (bounds[2] <= bounds[0] || bounds[3] <= bounds[1]) {
|
|
42
|
-
return null;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
const centerWorld = viewport.unprojectPosition([(bounds[0] + bounds[2]) / 2, (bounds[1] + bounds[3]) / 2, 0]);
|
|
46
|
-
let {
|
|
47
|
-
width,
|
|
48
|
-
height,
|
|
49
|
-
zoom
|
|
50
|
-
} = opts;
|
|
51
|
-
|
|
52
|
-
if (zoom === undefined) {
|
|
53
|
-
width = width - border * 2;
|
|
54
|
-
height = height - border * 2;
|
|
55
|
-
const scale = Math.min(width / (bounds[2] - bounds[0]), height / (bounds[3] - bounds[1]));
|
|
56
|
-
zoom = Math.min(Math.log2(scale), 20);
|
|
57
|
-
} else if (!width || !height) {
|
|
58
|
-
const scale = 2 ** zoom;
|
|
59
|
-
width = Math.round(Math.abs(bounds[2] - bounds[0]) * scale);
|
|
60
|
-
height = Math.round(Math.abs(bounds[3] - bounds[1]) * scale);
|
|
61
|
-
const maxSize = MAX_VIEWPORT_SIZE - border * 2;
|
|
62
|
-
|
|
63
|
-
if (width > maxSize || height > maxSize) {
|
|
64
|
-
const r = maxSize / Math.max(width, height);
|
|
65
|
-
width = Math.round(width * r);
|
|
66
|
-
height = Math.round(height * r);
|
|
67
|
-
zoom += Math.log2(r);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
return isGeospatial ? new WebMercatorViewport({
|
|
72
|
-
id: viewport.id,
|
|
73
|
-
x: border,
|
|
74
|
-
y: border,
|
|
75
|
-
width,
|
|
76
|
-
height,
|
|
77
|
-
longitude: centerWorld[0],
|
|
78
|
-
latitude: centerWorld[1],
|
|
79
|
-
zoom,
|
|
80
|
-
orthographic: true
|
|
81
|
-
}) : new OrthographicViewport({
|
|
82
|
-
id: viewport.id,
|
|
83
|
-
x: border,
|
|
84
|
-
y: border,
|
|
85
|
-
width,
|
|
86
|
-
height,
|
|
87
|
-
target: centerWorld,
|
|
88
|
-
zoom,
|
|
89
|
-
flipY: false
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
export function getViewportBounds(viewport, zRange) {
|
|
93
|
-
let viewportBoundsWorld;
|
|
94
|
-
|
|
95
|
-
if (zRange && zRange.length === 2) {
|
|
96
|
-
const [minZ, maxZ] = zRange;
|
|
97
|
-
const bounds0 = viewport.getBounds({
|
|
98
|
-
z: minZ
|
|
99
|
-
});
|
|
100
|
-
const bounds1 = viewport.getBounds({
|
|
101
|
-
z: maxZ
|
|
102
|
-
});
|
|
103
|
-
viewportBoundsWorld = [Math.min(bounds0[0], bounds1[0]), Math.min(bounds0[1], bounds1[1]), Math.max(bounds0[2], bounds1[2]), Math.max(bounds0[3], bounds1[3])];
|
|
104
|
-
} else {
|
|
105
|
-
viewportBoundsWorld = viewport.getBounds();
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
const viewportBottomLeftCommon = viewport.projectPosition(viewportBoundsWorld.slice(0, 2));
|
|
109
|
-
const viewportTopRightCommon = viewport.projectPosition(viewportBoundsWorld.slice(2, 4));
|
|
110
|
-
return [viewportBottomLeftCommon[0], viewportBottomLeftCommon[1], viewportTopRightCommon[0], viewportTopRightCommon[1]];
|
|
111
|
-
}
|
|
112
|
-
export function getRenderBounds(layerBounds, viewport, zRange) {
|
|
113
|
-
if (!layerBounds) {
|
|
114
|
-
return [0, 0, 1, 1];
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
const viewportBounds = getViewportBounds(viewport, zRange);
|
|
118
|
-
const paddedBounds = doubleBounds(viewportBounds);
|
|
119
|
-
|
|
120
|
-
if (layerBounds[2] - layerBounds[0] <= paddedBounds[2] - paddedBounds[0] && layerBounds[3] - layerBounds[1] <= paddedBounds[3] - paddedBounds[1]) {
|
|
121
|
-
return layerBounds;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
return [Math.max(layerBounds[0], paddedBounds[0]), Math.max(layerBounds[1], paddedBounds[1]), Math.min(layerBounds[2], paddedBounds[2]), Math.min(layerBounds[3], paddedBounds[3])];
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
function doubleBounds(bounds) {
|
|
128
|
-
const dx = bounds[2] - bounds[0];
|
|
129
|
-
const dy = bounds[3] - bounds[1];
|
|
130
|
-
const centerX = (bounds[0] + bounds[2]) / 2;
|
|
131
|
-
const centerY = (bounds[1] + bounds[3]) / 2;
|
|
132
|
-
return [centerX - dx, centerY - dy, centerX + dx, centerY + dy];
|
|
133
|
-
}
|
|
134
|
-
//# sourceMappingURL=projection-utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/projection-utils.ts"],"names":["WebMercatorViewport","OrthographicViewport","joinLayerBounds","layers","viewport","bounds","Infinity","layer","layerBounds","getBounds","bottomLeftCommon","projectPosition","autoOffset","topRightCommon","Math","min","max","Number","isFinite","MAX_VIEWPORT_SIZE","makeViewport","opts","border","isGeospatial","centerWorld","unprojectPosition","width","height","zoom","undefined","scale","log2","round","abs","maxSize","r","id","x","y","longitude","latitude","orthographic","target","flipY","getViewportBounds","zRange","viewportBoundsWorld","length","minZ","maxZ","bounds0","z","bounds1","viewportBottomLeftCommon","slice","viewportTopRightCommon","getRenderBounds","viewportBounds","paddedBounds","doubleBounds","dx","dy","centerX","centerY"],"mappings":"AAAA,SAAQA,mBAAR,EAA6BC,oBAA7B,QAAwD,eAAxD;AAUA,OAAO,SAASC,eAAT,CAELC,MAFK,EAILC,QAJK,EAKU;AAEf,QAAMC,MAAc,GAAG,CAACC,QAAD,EAAWA,QAAX,EAAqB,CAACA,QAAtB,EAAgC,CAACA,QAAjC,CAAvB;;AACA,OAAK,MAAMC,KAAX,IAAoBJ,MAApB,EAA4B;AAC1B,UAAMK,WAAW,GAAGD,KAAK,CAACE,SAAN,EAApB;;AACA,QAAID,WAAJ,EAAiB;AACf,YAAME,gBAAgB,GAAGH,KAAK,CAACI,eAAN,CAAsBH,WAAW,CAAC,CAAD,CAAjC,EAAsC;AAACJ,QAAAA,QAAD;AAAWQ,QAAAA,UAAU,EAAE;AAAvB,OAAtC,CAAzB;AACA,YAAMC,cAAc,GAAGN,KAAK,CAACI,eAAN,CAAsBH,WAAW,CAAC,CAAD,CAAjC,EAAsC;AAACJ,QAAAA,QAAD;AAAWQ,QAAAA,UAAU,EAAE;AAAvB,OAAtC,CAAvB;AAEAP,MAAAA,MAAM,CAAC,CAAD,CAAN,GAAYS,IAAI,CAACC,GAAL,CAASV,MAAM,CAAC,CAAD,CAAf,EAAoBK,gBAAgB,CAAC,CAAD,CAApC,CAAZ;AACAL,MAAAA,MAAM,CAAC,CAAD,CAAN,GAAYS,IAAI,CAACC,GAAL,CAASV,MAAM,CAAC,CAAD,CAAf,EAAoBK,gBAAgB,CAAC,CAAD,CAApC,CAAZ;AACAL,MAAAA,MAAM,CAAC,CAAD,CAAN,GAAYS,IAAI,CAACE,GAAL,CAASX,MAAM,CAAC,CAAD,CAAf,EAAoBQ,cAAc,CAAC,CAAD,CAAlC,CAAZ;AACAR,MAAAA,MAAM,CAAC,CAAD,CAAN,GAAYS,IAAI,CAACE,GAAL,CAASX,MAAM,CAAC,CAAD,CAAf,EAAoBQ,cAAc,CAAC,CAAD,CAAlC,CAAZ;AACD;AACF;;AAED,MAAII,MAAM,CAACC,QAAP,CAAgBb,MAAM,CAAC,CAAD,CAAtB,CAAJ,EAAgC;AAC9B,WAAOA,MAAP;AACD;;AACD,SAAO,IAAP;AACD;AAED,MAAMc,iBAAiB,GAAG,IAA1B;AAGA,OAAO,SAASC,YAAT,CAAsBC,IAAtB,EAaa;AAClB,QAAM;AAAChB,IAAAA,MAAD;AAASD,IAAAA,QAAT;AAAmBkB,IAAAA,MAAM,GAAG;AAA5B,MAAiCD,IAAvC;AACA,QAAM;AAACE,IAAAA;AAAD,MAAiBnB,QAAvB;;AAEA,MAAIC,MAAM,CAAC,CAAD,CAAN,IAAaA,MAAM,CAAC,CAAD,CAAnB,IAA0BA,MAAM,CAAC,CAAD,CAAN,IAAaA,MAAM,CAAC,CAAD,CAAjD,EAAsD;AACpD,WAAO,IAAP;AACD;;AAED,QAAMmB,WAAW,GAAGpB,QAAQ,CAACqB,iBAAT,CAA2B,CAC7C,CAACpB,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAAnB,IAA0B,CADmB,EAE7C,CAACA,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAAnB,IAA0B,CAFmB,EAG7C,CAH6C,CAA3B,CAApB;AAMA,MAAI;AAACqB,IAAAA,KAAD;AAAQC,IAAAA,MAAR;AAAgBC,IAAAA;AAAhB,MAAwBP,IAA5B;;AACA,MAAIO,IAAI,KAAKC,SAAb,EAAwB;AAEtBH,IAAAA,KAAK,GAAGA,KAAK,GAAIJ,MAAM,GAAG,CAA1B;AACAK,IAAAA,MAAM,GAAGA,MAAM,GAAIL,MAAM,GAAG,CAA5B;AACA,UAAMQ,KAAK,GAAGhB,IAAI,CAACC,GAAL,CAASW,KAAK,IAAIrB,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAAtB,CAAd,EAA0CsB,MAAM,IAAItB,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAAtB,CAAhD,CAAd;AACAuB,IAAAA,IAAI,GAAGd,IAAI,CAACC,GAAL,CAASD,IAAI,CAACiB,IAAL,CAAUD,KAAV,CAAT,EAA2B,EAA3B,CAAP;AACD,GAND,MAMO,IAAI,CAACJ,KAAD,IAAU,CAACC,MAAf,EAAuB;AAE5B,UAAMG,KAAK,GAAG,KAAKF,IAAnB;AACAF,IAAAA,KAAK,GAAGZ,IAAI,CAACkB,KAAL,CAAWlB,IAAI,CAACmB,GAAL,CAAS5B,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAA3B,IAAkCyB,KAA7C,CAAR;AACAH,IAAAA,MAAM,GAAGb,IAAI,CAACkB,KAAL,CAAWlB,IAAI,CAACmB,GAAL,CAAS5B,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAA3B,IAAkCyB,KAA7C,CAAT;AACA,UAAMI,OAAO,GAAGf,iBAAiB,GAAGG,MAAM,GAAG,CAA7C;;AACA,QAAII,KAAK,GAAGQ,OAAR,IAAmBP,MAAM,GAAGO,OAAhC,EAAyC;AACvC,YAAMC,CAAC,GAAGD,OAAO,GAAGpB,IAAI,CAACE,GAAL,CAASU,KAAT,EAAgBC,MAAhB,CAApB;AACAD,MAAAA,KAAK,GAAGZ,IAAI,CAACkB,KAAL,CAAWN,KAAK,GAAGS,CAAnB,CAAR;AACAR,MAAAA,MAAM,GAAGb,IAAI,CAACkB,KAAL,CAAWL,MAAM,GAAGQ,CAApB,CAAT;AACAP,MAAAA,IAAI,IAAId,IAAI,CAACiB,IAAL,CAAUI,CAAV,CAAR;AACD;AACF;;AAID,SAAOZ,YAAY,GACf,IAAIvB,mBAAJ,CAAwB;AACtBoC,IAAAA,EAAE,EAAEhC,QAAQ,CAACgC,EADS;AAEtBC,IAAAA,CAAC,EAAEf,MAFmB;AAGtBgB,IAAAA,CAAC,EAAEhB,MAHmB;AAItBI,IAAAA,KAJsB;AAKtBC,IAAAA,MALsB;AAMtBY,IAAAA,SAAS,EAAEf,WAAW,CAAC,CAAD,CANA;AAOtBgB,IAAAA,QAAQ,EAAEhB,WAAW,CAAC,CAAD,CAPC;AAQtBI,IAAAA,IARsB;AAStBa,IAAAA,YAAY,EAAE;AATQ,GAAxB,CADe,GAYf,IAAIxC,oBAAJ,CAAyB;AACvBmC,IAAAA,EAAE,EAAEhC,QAAQ,CAACgC,EADU;AAEvBC,IAAAA,CAAC,EAAEf,MAFoB;AAGvBgB,IAAAA,CAAC,EAAEhB,MAHoB;AAIvBI,IAAAA,KAJuB;AAKvBC,IAAAA,MALuB;AAMvBe,IAAAA,MAAM,EAAElB,WANe;AAOvBI,IAAAA,IAPuB;AAQvBe,IAAAA,KAAK,EAAE;AARgB,GAAzB,CAZJ;AAsBD;AAGD,OAAO,SAASC,iBAAT,CAA2BxC,QAA3B,EAA+CyC,MAA/C,EAAkF;AAEvF,MAAIC,mBAAJ;;AACA,MAAID,MAAM,IAAIA,MAAM,CAACE,MAAP,KAAkB,CAAhC,EAAmC;AACjC,UAAM,CAACC,IAAD,EAAOC,IAAP,IAAeJ,MAArB;AACA,UAAMK,OAAO,GAAG9C,QAAQ,CAACK,SAAT,CAAmB;AAAC0C,MAAAA,CAAC,EAAEH;AAAJ,KAAnB,CAAhB;AACA,UAAMI,OAAO,GAAGhD,QAAQ,CAACK,SAAT,CAAmB;AAAC0C,MAAAA,CAAC,EAAEF;AAAJ,KAAnB,CAAhB;AACAH,IAAAA,mBAAmB,GAAG,CACpBhC,IAAI,CAACC,GAAL,CAASmC,OAAO,CAAC,CAAD,CAAhB,EAAqBE,OAAO,CAAC,CAAD,CAA5B,CADoB,EAEpBtC,IAAI,CAACC,GAAL,CAASmC,OAAO,CAAC,CAAD,CAAhB,EAAqBE,OAAO,CAAC,CAAD,CAA5B,CAFoB,EAGpBtC,IAAI,CAACE,GAAL,CAASkC,OAAO,CAAC,CAAD,CAAhB,EAAqBE,OAAO,CAAC,CAAD,CAA5B,CAHoB,EAIpBtC,IAAI,CAACE,GAAL,CAASkC,OAAO,CAAC,CAAD,CAAhB,EAAqBE,OAAO,CAAC,CAAD,CAA5B,CAJoB,CAAtB;AAMD,GAVD,MAUO;AACLN,IAAAA,mBAAmB,GAAG1C,QAAQ,CAACK,SAAT,EAAtB;AACD;;AAGD,QAAM4C,wBAAwB,GAAGjD,QAAQ,CAACO,eAAT,CAAyBmC,mBAAmB,CAACQ,KAApB,CAA0B,CAA1B,EAA6B,CAA7B,CAAzB,CAAjC;AACA,QAAMC,sBAAsB,GAAGnD,QAAQ,CAACO,eAAT,CAAyBmC,mBAAmB,CAACQ,KAApB,CAA0B,CAA1B,EAA6B,CAA7B,CAAzB,CAA/B;AACA,SAAO,CACLD,wBAAwB,CAAC,CAAD,CADnB,EAELA,wBAAwB,CAAC,CAAD,CAFnB,EAGLE,sBAAsB,CAAC,CAAD,CAHjB,EAILA,sBAAsB,CAAC,CAAD,CAJjB,CAAP;AAMD;AAMD,OAAO,SAASC,eAAT,CACLhD,WADK,EAELJ,QAFK,EAGLyC,MAHK,EAIG;AACR,MAAI,CAACrC,WAAL,EAAkB;AAChB,WAAO,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,EAAU,CAAV,CAAP;AACD;;AAED,QAAMiD,cAAc,GAAGb,iBAAiB,CAACxC,QAAD,EAAWyC,MAAX,CAAxC;AAGA,QAAMa,YAAY,GAAGC,YAAY,CAACF,cAAD,CAAjC;;AAIA,MACEjD,WAAW,CAAC,CAAD,CAAX,GAAiBA,WAAW,CAAC,CAAD,CAA5B,IAAmCkD,YAAY,CAAC,CAAD,CAAZ,GAAkBA,YAAY,CAAC,CAAD,CAAjE,IACAlD,WAAW,CAAC,CAAD,CAAX,GAAiBA,WAAW,CAAC,CAAD,CAA5B,IAAmCkD,YAAY,CAAC,CAAD,CAAZ,GAAkBA,YAAY,CAAC,CAAD,CAFnE,EAGE;AACA,WAAOlD,WAAP;AACD;;AAQD,SAAO,CACLM,IAAI,CAACE,GAAL,CAASR,WAAW,CAAC,CAAD,CAApB,EAAyBkD,YAAY,CAAC,CAAD,CAArC,CADK,EAEL5C,IAAI,CAACE,GAAL,CAASR,WAAW,CAAC,CAAD,CAApB,EAAyBkD,YAAY,CAAC,CAAD,CAArC,CAFK,EAGL5C,IAAI,CAACC,GAAL,CAASP,WAAW,CAAC,CAAD,CAApB,EAAyBkD,YAAY,CAAC,CAAD,CAArC,CAHK,EAIL5C,IAAI,CAACC,GAAL,CAASP,WAAW,CAAC,CAAD,CAApB,EAAyBkD,YAAY,CAAC,CAAD,CAArC,CAJK,CAAP;AAMD;;AAED,SAASC,YAAT,CAAsBtD,MAAtB,EAA8C;AAC5C,QAAMuD,EAAE,GAAGvD,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAA7B;AACA,QAAMwD,EAAE,GAAGxD,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAA7B;AACA,QAAMyD,OAAO,GAAG,CAACzD,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAAnB,IAA0B,CAA1C;AACA,QAAM0D,OAAO,GAAG,CAAC1D,MAAM,CAAC,CAAD,CAAN,GAAYA,MAAM,CAAC,CAAD,CAAnB,IAA0B,CAA1C;AACA,SAAO,CAACyD,OAAO,GAAGF,EAAX,EAAeG,OAAO,GAAGF,EAAzB,EAA6BC,OAAO,GAAGF,EAAvC,EAA2CG,OAAO,GAAGF,EAArD,CAAP;AACD","sourcesContent":["import {WebMercatorViewport, OrthographicViewport} from '@deck.gl/core';\nimport type {Layer, Viewport} from '@deck.gl/core';\n\n/** Bounds in CARTESIAN coordinates */\nexport type Bounds = [minX: number, minY: number, maxX: number, maxY: number];\n\n/*\n * Compute the union of bounds from multiple layers\n * Returns bounds in CARTESIAN coordinates\n */\nexport function joinLayerBounds(\n /** The layers to combine */\n layers: Layer[],\n /** A Viewport instance that is used to determine the type of the view */\n viewport: Viewport\n): Bounds | null {\n // Join the bounds of layer data\n const bounds: Bounds = [Infinity, Infinity, -Infinity, -Infinity];\n for (const layer of layers) {\n const layerBounds = layer.getBounds();\n if (layerBounds) {\n const bottomLeftCommon = layer.projectPosition(layerBounds[0], {viewport, autoOffset: false});\n const topRightCommon = layer.projectPosition(layerBounds[1], {viewport, autoOffset: false});\n\n bounds[0] = Math.min(bounds[0], bottomLeftCommon[0]);\n bounds[1] = Math.min(bounds[1], bottomLeftCommon[1]);\n bounds[2] = Math.max(bounds[2], topRightCommon[0]);\n bounds[3] = Math.max(bounds[3], topRightCommon[1]);\n }\n }\n\n if (Number.isFinite(bounds[0])) {\n return bounds;\n }\n return null;\n}\n\nconst MAX_VIEWPORT_SIZE = 2048;\n\n/** Construct a viewport that just covers the target bounds. Used for rendering to common space indexed texture. */\nexport function makeViewport(opts: {\n /** The cartesian bounds of layers that will render into this texture */\n bounds: Bounds;\n /** Target width. If not specified, will be deduced from zoom */\n width?: number;\n /** Target height. If not specified, will be deduced from zoom */\n height?: number;\n /** Target zoom. If not specified, will be deduced from width and height */\n zoom?: number;\n /** Border around the viewport in pixels */\n border?: number;\n /** A viewport used to determine the output type */\n viewport: Viewport;\n}): Viewport | null {\n const {bounds, viewport, border = 0} = opts;\n const {isGeospatial} = viewport;\n\n if (bounds[2] <= bounds[0] || bounds[3] <= bounds[1]) {\n return null;\n }\n\n const centerWorld = viewport.unprojectPosition([\n (bounds[0] + bounds[2]) / 2,\n (bounds[1] + bounds[3]) / 2,\n 0\n ]);\n\n let {width, height, zoom} = opts;\n if (zoom === undefined) {\n // Use width and height to determine zoom\n width = width! - border * 2;\n height = height! - border * 2;\n const scale = Math.min(width / (bounds[2] - bounds[0]), height / (bounds[3] - bounds[1]));\n zoom = Math.min(Math.log2(scale), 20);\n } else if (!width || !height) {\n // Use zoom to determine width and height\n const scale = 2 ** zoom;\n width = Math.round(Math.abs(bounds[2] - bounds[0]) * scale);\n height = Math.round(Math.abs(bounds[3] - bounds[1]) * scale);\n const maxSize = MAX_VIEWPORT_SIZE - border * 2;\n if (width > maxSize || height > maxSize) {\n const r = maxSize / Math.max(width, height);\n width = Math.round(width * r);\n height = Math.round(height * r);\n zoom += Math.log2(r);\n }\n }\n\n // TODO - find a more generic way to construct this viewport\n // Geospatial viewports may not be web-mercator\n return isGeospatial\n ? new WebMercatorViewport({\n id: viewport.id,\n x: border,\n y: border,\n width,\n height,\n longitude: centerWorld[0],\n latitude: centerWorld[1],\n zoom,\n orthographic: true\n })\n : new OrthographicViewport({\n id: viewport.id,\n x: border,\n y: border,\n width,\n height,\n target: centerWorld,\n zoom,\n flipY: false\n });\n}\n\n/** Returns viewport bounds in CARTESIAN coordinates */\nexport function getViewportBounds(viewport: Viewport, zRange?: [number, number]): Bounds {\n // Viewport bounds in world coordinates\n let viewportBoundsWorld: Bounds;\n if (zRange && zRange.length === 2) {\n const [minZ, maxZ] = zRange;\n const bounds0 = viewport.getBounds({z: minZ});\n const bounds1 = viewport.getBounds({z: maxZ});\n viewportBoundsWorld = [\n Math.min(bounds0[0], bounds1[0]),\n Math.min(bounds0[1], bounds1[1]),\n Math.max(bounds0[2], bounds1[2]),\n Math.max(bounds0[3], bounds1[3])\n ];\n } else {\n viewportBoundsWorld = viewport.getBounds();\n }\n\n // Viewport bounds in cartesian coordinates\n const viewportBottomLeftCommon = viewport.projectPosition(viewportBoundsWorld.slice(0, 2));\n const viewportTopRightCommon = viewport.projectPosition(viewportBoundsWorld.slice(2, 4));\n return [\n viewportBottomLeftCommon[0],\n viewportBottomLeftCommon[1],\n viewportTopRightCommon[0],\n viewportTopRightCommon[1]\n ];\n}\n\n/*\n * Determine the common space bounds that best cover the given data for the given viewport\n * Returns bounds in CARTESIAN coordinates\n */\nexport function getRenderBounds(\n layerBounds: Bounds,\n viewport: Viewport,\n zRange?: [number, number]\n): Bounds {\n if (!layerBounds) {\n return [0, 0, 1, 1];\n }\n\n const viewportBounds = getViewportBounds(viewport, zRange);\n // Expand viewport bounds by 2X. Heurestically chosen to avoid masking\n // errors when mask is partially out of view\n const paddedBounds = doubleBounds(viewportBounds);\n\n // When bounds of the layers are smaller than the viewport bounds simply use\n // mask bounds, so as to maximize resolution & avoid rerenders\n if (\n layerBounds[2] - layerBounds[0] <= paddedBounds[2] - paddedBounds[0] &&\n layerBounds[3] - layerBounds[1] <= paddedBounds[3] - paddedBounds[1]\n ) {\n return layerBounds;\n }\n\n // As viewport shrinks, to avoid pixelation along mask edges\n // we need to reduce the bounds and only render the visible portion\n // of the mask.\n // We pad the viewport bounds to capture the section\n // of the mask just outside the viewport to correctly maskByInstance.\n // Intersect mask & padded viewport bounds\n return [\n Math.max(layerBounds[0], paddedBounds[0]),\n Math.max(layerBounds[1], paddedBounds[1]),\n Math.min(layerBounds[2], paddedBounds[2]),\n Math.min(layerBounds[3], paddedBounds[3])\n ];\n}\n\nfunction doubleBounds(bounds: Bounds): Bounds {\n const dx = bounds[2] - bounds[0];\n const dy = bounds[3] - bounds[1];\n const centerX = (bounds[0] + bounds[2]) / 2;\n const centerY = (bounds[1] + bounds[3]) / 2;\n return [centerX - dx, centerY - dy, centerX + dx, centerY + dy];\n}\n"],"file":"projection-utils.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aggregator.d.ts","sourceRoot":"","sources":["../../src/data-filter/aggregator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;AAClD,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAC,EAAE,EAAC,MAAM,oBAAoB,CAAC;AAqDtC,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAY3D;AAGD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,GAAG,WAAW,CAmBnF;AAGD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,cAAc,EAAE,OAAO,GAAG,KAAK,CAe3F;AAED,eAAO,MAAM,UAAU;;;;;CAKb,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"data-filter-extension.d.ts","sourceRoot":"","sources":["../../src/data-filter/data-filter-extension.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAC,MAAM,eAAe,CAAC;AACnF,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAe7C,MAAM,MAAM,wBAAwB,CAAC,KAAK,GAAG,GAAG,IAAI;IAClD;;;OAGG;IACH,cAAc,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IACpD;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACpD;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC;IAC/D;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;OAEG;IACH,qBAAqB,CAAC,EAAE,CAAC,GAAG,EAAE;QAC5B,kCAAkC;QAClC,EAAE,EAAE,MAAM,CAAC;QACX,uDAAuD;QACvD,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,IAAI,CAAC;CACZ,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,IAAI,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AASF,0IAA0I;AAC1I,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,cAAc,CAAC,0BAA0B,CAAC;IACzF,MAAM,CAAC,YAAY;;;;;;;;;;;;;;;MAAgB;IACnC,MAAM,CAAC,aAAa,SAAyB;gBAEjC,EACV,UAAc,EACd,IAAY,EACZ,UAAkB,EACnB,GAAE,OAAO,CAAC,0BAA0B,CAAM;IAQ3C,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,wBAAwB,CAAC,EAAE,SAAS,EAAE,IAAI,GAAG,GAAG;IAYvE,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,wBAAwB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI;IAyD7F,WAAW,CACT,IAAI,EAAE,KAAK,CAAC,wBAAwB,CAAC,EACrC,EAAC,KAAK,EAAE,QAAQ,EAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAgBtE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,wBAAwB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI;IA2CxE,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,wBAAwB,CAAC;CAQpD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shader-module.d.ts","sourceRoot":"","sources":["../../src/data-filter/shader-module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAC,wBAAwB,EAAC,MAAM,yBAAyB,CAAC;AAmEtE,KAAK,wBAAwB,GAAG;IAC9B,UAAU,EAAE,GAAG,EAAE,CAAC;CACnB,GAAG,wBAAwB,CAAC;AAiG7B,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,wBAAwB,CAM/D,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,YAAY,CAAC,wBAAwB,CAMjE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fill-style-extension.d.ts","sourceRoot":"","sources":["../../src/fill-style/fill-style-extension.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAI7C,OAAO,KAAK,EACV,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAoBvB,MAAM,MAAM,uBAAuB,CAAC,KAAK,GAAG,GAAG,IAAI;IACjD;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gFAAgF;IAChF,gBAAgB,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;IAC1C,wFAAwF;IACxF,kBAAkB,CAAC,EACf,MAAM,GACN,MAAM,CACJ,MAAM,EACN;QACE,gDAAgD;QAChD,CAAC,EAAE,MAAM,CAAC;QACV,+CAA+C;QAC/C,CAAC,EAAE,MAAM,CAAC;QACV,2BAA2B;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,4BAA4B;QAC5B,MAAM,EAAE,MAAM,CAAC;KAChB,CACF,CAAC;IACN;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,4CAA4C;IAC5C,cAAc,CAAC,EAAE,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACjD;;OAEG;IACH,mBAAmB,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9C;;;OAGG;IACH,oBAAoB,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC1D,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,gHAAgH;AAChH,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,cAAc,CAAC,yBAAyB,CAAC;IACvF,MAAM,CAAC,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAgB;IACnC,MAAM,CAAC,aAAa,SAAwB;gBAEhC,EAAC,OAAe,EAAC,GAAE,OAAO,CAAC,yBAAyB,CAAM;IAItE,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,uBAAuB,CAAC,GAAG,OAAO;IAIzD,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,uBAAuB,CAAC,EAAE,SAAS,EAAE,IAAI,GAAG,GAAG;IAUtE,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,uBAAuB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI;IA0D5F,WAAW,CACT,IAAI,EAAE,KAAK,CAAC,uBAAuB,CAAC,EACpC,EAAC,KAAK,EAAE,QAAQ,EAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,EACnE,SAAS,EAAE,IAAI;IAWjB,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,uBAAuB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI;IAWvE,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,uBAAuB,CAAC;IAKlD,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,uBAAuB,CAAC,EAAE,IAAI,EAAE,MAAM;CAKnE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shaders.glsl.d.ts","sourceRoot":"","sources":["../../src/fill-style/shaders.glsl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAEvD,OAAO,KAAK,EAAC,QAAQ,EAAkB,MAAM,eAAe,CAAC;AAE7D,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAwE3C,KAAK,uBAAuB,GACxB;IACE,QAAQ,EAAE,QAAQ,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,GACD;IACE,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAAC;AAoCN,eAAO,MAAM,cAAc,EAAE,YAAY,CAAC,uBAAuB,CAOhE,CAAC"}
|
package/typed/index.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export { default as BrushingExtension } from './brushing/brushing-extension';
|
|
2
|
-
export { default as DataFilterExtension } from './data-filter/data-filter-extension';
|
|
3
|
-
export { default as Fp64Extension } from './fp64/fp64-extension';
|
|
4
|
-
export { default as PathStyleExtension } from './path-style/path-style-extension';
|
|
5
|
-
export { default as FillStyleExtension } from './fill-style/fill-style-extension';
|
|
6
|
-
export { default as ClipExtension } from './clip/clip-extension';
|
|
7
|
-
export { default as CollisionFilterExtension } from './collision-filter/collision-filter-extension';
|
|
8
|
-
export { default as MaskExtension } from './mask/mask-extension';
|
|
9
|
-
export { default as _TerrainExtension } from './terrain/terrain-extension';
|
|
10
|
-
export { default as project64 } from './fp64/project64';
|
|
11
|
-
export type { BrushingExtensionProps } from './brushing/brushing-extension';
|
|
12
|
-
export type { DataFilterExtensionProps } from './data-filter/data-filter-extension';
|
|
13
|
-
export type { PathStyleExtensionProps } from './path-style/path-style-extension';
|
|
14
|
-
export type { FillStyleExtensionProps } from './fill-style/fill-style-extension';
|
|
15
|
-
export type { ClipExtensionProps } from './clip/clip-extension';
|
|
16
|
-
export type { CollisionFilterExtensionProps } from './collision-filter/collision-filter-extension';
|
|
17
|
-
export type { MaskExtensionProps } from './mask/mask-extension';
|
|
18
|
-
export type { TerrainExtensionProps } from './terrain/terrain-extension';
|
|
19
|
-
//# sourceMappingURL=index.d.ts.map
|
package/typed/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,IAAI,iBAAiB,EAAC,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,qCAAqC,CAAC;AACnF,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAC,OAAO,IAAI,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AAClG,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAC,OAAO,IAAI,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AAGzE,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAGtD,YAAY,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AAC1E,YAAY,EAAC,wBAAwB,EAAC,MAAM,qCAAqC,CAAC;AAClF,YAAY,EAAC,uBAAuB,EAAC,MAAM,mCAAmC,CAAC;AAC/E,YAAY,EAAC,uBAAuB,EAAC,MAAM,mCAAmC,CAAC;AAC/E,YAAY,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAC;AAC9D,YAAY,EAAC,6BAA6B,EAAC,MAAM,+CAA+C,CAAC;AACjG,YAAY,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAC;AAC9D,YAAY,EAAC,qBAAqB,EAAC,MAAM,6BAA6B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mask-effect.d.ts","sourceRoot":"","sources":["../../src/mask/mask-effect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,EAAM,MAAM,eAAe,CAAC;AAC/F,OAAO,KAAK,EAAC,MAAM,EAAE,OAAO,EAAC,MAAM,eAAe,CAAC;AAInD,OAAO,EAAiD,MAAM,EAAC,MAAM,2BAA2B,CAAC;AAGjG,KAAK,IAAI,GAAG;IACV,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,CAAC;AAaF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAGF,MAAM,CAAC,OAAO,OAAO,UAAW,YAAW,MAAM;IAC/C,EAAE,SAAiB;IACnB,KAAK,OAAQ;IACb,YAAY,UAAQ;IACpB,KAAK,SAAK;IAEV,OAAO,CAAC,YAAY,CAAC,CAAU;IAC/B,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,KAAK,CAAqC;IAClD,OAAO,CAAC,QAAQ,CAAC,CAAW;IAC5B,OAAO,CAAC,OAAO,CAAC,CAAU;IAC1B,OAAO,CAAC,YAAY,CAAC,CAAW;IAEhC,SAAS,CACP,MAAM,EAAE,MAAM,EACd,EAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,EAAC,EAAE,gBAAgB,GACrF,kBAAkB;IAsDrB,OAAO,CAAC,cAAc;IAgGtB;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IA4CzB,mBAAmB,IAAI;QACrB,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC;KAC3C;IAOD,OAAO,IAAI,IAAI;CAgBhB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"height-map-builder.d.ts","sourceRoot":"","sources":["../../src/terrain/height-map-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;AAClD,OAAO,EAAiD,MAAM,EAAC,MAAM,2BAA2B,CAAC;AAGjG,OAAO,KAAK,EAAC,QAAQ,EAAE,KAAK,EAAC,MAAM,eAAe,CAAC;AAInD;;;;;;GAMG;AACH,qBAAa,gBAAgB;IAC3B,6CAA6C;IAC7C,cAAc,EAAE,QAAQ,GAAG,IAAI,CAAQ;IACvC,2DAA2D;IAC3D,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE7B,SAAS,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC;IAC5B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,2BAA2B;IAC3B,OAAO,CAAC,MAAM,CAAe;IAC7B,6BAA6B;IAC7B,OAAO,CAAC,YAAY,CAAuC;IAC3D,mDAAmD;IACnD,OAAO,CAAC,kBAAkB,CAAuB;IACjD,OAAO,CAAC,YAAY,CAAyB;IAE7C,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;gBAI/B,MAAM,EAAE,MAAM;IAI1B;;OAEG;IACH,oBAAoB,IAAI,WAAW,GAAG,IAAI;IAU1C,yEAAyE;IACzE,YAAY,CAAC,EAAC,MAAM,EAAE,QAAQ,EAAC,EAAE;QAAC,MAAM,EAAE,KAAK,EAAE,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAA;KAAC,GAAG,OAAO;IAiEhF,MAAM;CAMP"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shader-module.d.ts","sourceRoot":"","sources":["../../src/terrain/shader-module.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAGvD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,2BAA2B,CAAC;AACtD,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAElD,8DAA8D;AAC9D,MAAM,MAAM,qBAAqB,GAAG;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IACnC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,YAAY;;IAEvB,6EAA6E;;IAE7E,2EAA2E;;IAE3E,6FAA6F;;IAE7F,0EAA0E;;IAE1E,mEAAmE;;CAEpE,CAAC;AAOF,eAAO,MAAM,aAAa,qCA6Hc,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terrain-cover.d.ts","sourceRoot":"","sources":["../../src/terrain/terrain-cover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C,OAAO,KAAK,EAAC,KAAK,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAGnD,OAAO,EAAiD,MAAM,EAAC,MAAM,2BAA2B,CAAC;AAMjG;;;;;;GAMG;AACH,qBAAa,YAAY;IACvB,OAAO,EAAE,OAAO,CAAQ;IACxB,sDAAsD;IACtD,WAAW,EAAE,KAAK,CAAC;IACnB,6CAA6C;IAC7C,cAAc,EAAE,QAAQ,GAAG,IAAI,CAAQ;IACvC,8DAA8D;IAC9D,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE7B,OAAO,CAAC,GAAG,CAAC,CAAc;IAC1B,OAAO,CAAC,UAAU,CAAC,CAAc;IACjC,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,IAAI,CAAoB;IAChC,gDAAgD;IAChD,OAAO,CAAC,YAAY,CAAqC;IACzD,sCAAsC;IACtC,OAAO,CAAC,kBAAkB,CAAuB;gBAErC,WAAW,EAAE,KAAK;IAK9B,IAAI,EAAE,WAEL;IAED,4EAA4E;IAC5E,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,YAAY,CAAC,EACX,WAAW,EACX,QAAQ,EACR,MAAM,EACN,gBAAgB,EACjB,EAAE;QACD,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;QACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC5C,GAAG,OAAO;IAqBX,wEAAwE;IACxE,OAAO,CAAC,aAAa;IAuBrB,4FAA4F;IAC5F,OAAO,CAAC,eAAe;IAsDvB,oBAAoB,IAAI,WAAW,GAAG,IAAI;IAU1C,qBAAqB,IAAI,WAAW,GAAG,IAAI;IAY3C,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE;IAI5B,MAAM;CAWP"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terrain-effect.d.ts","sourceRoot":"","sources":["../../src/terrain/terrain-effect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAU,MAAM,eAAe,CAAC;AAG9C,OAAO,EAAgB,qBAAqB,EAAC,MAAM,iBAAiB,CAAC;AAMrE,OAAO,KAAK,EAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAW,MAAM,eAAe,CAAC;AAE7E,qCAAqC;AACrC,qBAAa,aAAc,YAAW,MAAM;IAC1C,EAAE,SAAoB;IACtB,KAAK,OAAQ;IACb,YAAY,UAAQ;IAEpB,0CAA0C;IAC1C,OAAO,CAAC,SAAS,CAAkB;IACnC,6CAA6C;IAC7C,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,sCAAsC;IACtC,OAAO,CAAC,cAAc,CAAC,CAAU;IACjC,wGAAwG;IACxG,OAAO,CAAC,SAAS,CAAC,CAAmB;IACrC,OAAO,CAAC,WAAW,CAAe;IAClC,OAAO,CAAC,kBAAkB,CAAsB;IAChD,wFAAwF;IACxF,OAAO,CAAC,aAAa,CAAwC;IAE7D,UAAU,CAAC,MAAM,EAAE,MAAM;IAkBzB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI;IA8CvD,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,qBAAqB;IAcxD,OAAO,IAAI,IAAI;IAiBf,OAAO,CAAC,gBAAgB;IAuBxB,OAAO,CAAC,oBAAoB;IA2B5B,OAAO,CAAC,mBAAmB;IAmC3B,OAAO,CAAC,mBAAmB;CAY5B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terrain-pass.d.ts","sourceRoot":"","sources":["../../src/terrain/terrain-pass.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,IAAI,UAAU,EAAE,uBAAuB,EAAC,MAAM,eAAe,CAAC;AAClG,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAElD,MAAM,MAAM,wBAAwB,GAAG,uBAAuB,CAAC;AAE/D,6DAA6D;AAC7D,qBAAa,WAAY,SAAQ,UAAU;IACzC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,GAAG,KAAK,EAAE;IAchF,eAAe,CAAC,SAAS,EAAE,gBAAgB,EAAE,IAAI,EAAE,OAAO,CAAC,wBAAwB,CAAC;IAgCpF,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,wBAAwB,CAAC;CA6BvF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terrain-picking-pass.d.ts","sourceRoot":"","sources":["../../src/terrain/terrain-picking-pass.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,QAAQ,EACR,uBAAuB,EACvB,eAAe,IAAI,cAAc,EAClC,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAElD,MAAM,MAAM,+BAA+B,GAAG,uBAAuB,GAAG;IACtE,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,8DAA8D;AAC9D,qBAAa,kBAAmB,SAAQ,cAAc;IACpD;;;;;OAKG;IACH,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAEzC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,+BAA+B,GAAG,KAAK,EAAE;IAiBvF,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,+BAA+B,CAAC;IAsC7F,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,GAAG;CAQxF"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|