@deck.gl/extensions 9.2.8 → 9.2.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.
@@ -5,7 +5,7 @@ export type BrushingExtensionProps<DataT = any> = {
5
5
  * Called to retrieve an arbitrary position for each object that it will be filtered by.
6
6
  * Only effective if `brushingTarget` is set to `custom`.
7
7
  */
8
- getBrushingTarget?: Accessor<DataT, [number, number]>;
8
+ getBrushingTarget?: Accessor<DataT, Readonly<[number, number]>>;
9
9
  /**
10
10
  * Enable/disable brushing. If brushing is disabled, all objects are rendered.
11
11
  * @default true
@@ -1 +1 @@
1
- {"version":3,"file":"brushing-extension.d.ts","sourceRoot":"","sources":["../../src/brushing/brushing-extension.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAG7C,OAAO,KAAK,EAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAUjE,MAAM,MAAM,sBAAsB,CAAC,KAAK,GAAG,GAAG,IAAI;IAChD;;;OAGG;IACH,iBAAiB,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;OAEG;IACH,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,eAAe,GAAG,QAAQ,CAAC;IAClE;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,8IAA8I;AAC9I,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,cAAc;IAC3D,MAAM,CAAC,YAAY;;;;;;;;MAAgB;IACnC,MAAM,CAAC,aAAa,SAAuB;IAE3C,UAAU,IAAI,GAAG;IAMjB,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,sBAAsB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI;IA2B3F,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,sBAAsB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI;IAYzF,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,sBAAsB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI;CAYvE"}
1
+ {"version":3,"file":"brushing-extension.d.ts","sourceRoot":"","sources":["../../src/brushing/brushing-extension.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAG7C,OAAO,KAAK,EAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAUjE,MAAM,MAAM,sBAAsB,CAAC,KAAK,GAAG,GAAG,IAAI;IAChD;;;OAGG;IACH,iBAAiB,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAChE;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;OAEG;IACH,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,eAAe,GAAG,QAAQ,CAAC;IAClE;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,8IAA8I;AAC9I,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,cAAc;IAC3D,MAAM,CAAC,YAAY;;;;;;;;MAAgB;IACnC,MAAM,CAAC,aAAa,SAAuB;IAE3C,UAAU,IAAI,GAAG;IAMjB,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,sBAAsB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI;IA2B3F,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,sBAAsB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI;IAYzF,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,sBAAsB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI;CAYvE"}
@@ -5,7 +5,7 @@ export type ClipExtensionProps = {
5
5
  /** Rectangular bounds to be used for clipping the rendered region, in `[left, bottom, right, top]`.
6
6
  * @default [0, 0, 1, 1]
7
7
  */
8
- clipBounds?: [number, number, number, number];
8
+ clipBounds?: Readonly<[number, number, number, number]>;
9
9
  /**
10
10
  * Controls whether an object is clipped by its anchor (e.g. icon, point) or by its geometry (e.g. path, polygon).
11
11
  * If not specified, it is automatically deduced from the layer.
@@ -13,7 +13,7 @@ export type ClipExtensionProps = {
13
13
  clipByInstance?: boolean;
14
14
  };
15
15
  export type ClipModuleProps = {
16
- bounds: [number, number, number, number];
16
+ bounds: Readonly<[number, number, number, number]>;
17
17
  };
18
18
  /** Adds support for clipping rendered layers by rectangular bounds. */
19
19
  export default class ClipExtension extends LayerExtension {
@@ -1 +1 @@
1
- {"version":3,"file":"clip-extension.d.ts","sourceRoot":"","sources":["../../src/clip/clip-extension.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAC;AAOzC,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAYF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C,CAAC;AAwDF,uEAAuE;AACvE,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,cAAc;IACvD,MAAM,CAAC,YAAY;;;MAAgB;IACnC,MAAM,CAAC,aAAa,SAAmB;IAEvC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,kBAAkB,CAAC;;;;;;;;;IAwB1C,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,GAAG,IAAI;CAmBtD"}
1
+ {"version":3,"file":"clip-extension.d.ts","sourceRoot":"","sources":["../../src/clip/clip-extension.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAC;AAOzC,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACxD;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAYF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACpD,CAAC;AAwDF,uEAAuE;AACvE,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,cAAc;IACvD,MAAM,CAAC,YAAY;;;MAAgB;IACnC,MAAM,CAAC,aAAa,SAAmB;IAEvC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,kBAAkB,CAAC;;;;;;;;;IAwB1C,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,GAAG,IAAI;CAmBtD"}
@@ -22,13 +22,13 @@ export type DataFilterExtensionProps<DataT = any> = {
22
22
  * If an object's filtered value is within the bounds, the object will be rendered; otherwise it will be hidden.
23
23
  * @default [-1, 1]
24
24
  */
25
- filterRange?: [number, number] | [number, number][];
25
+ filterRange?: Readonly<[number, number]> | Readonly<[number, number]>[];
26
26
  /**
27
27
  * If specified, objects will be faded in/out instead of abruptly shown/hidden.
28
28
  * When the filtered value is outside of the bounds defined by `filterSoftRange` but still within the bounds defined by `filterRange`, the object will be rendered as "faded."
29
29
  * @default null
30
30
  */
31
- filterSoftRange?: [number, number] | [number, number][] | null;
31
+ filterSoftRange?: Readonly<[number, number]> | Readonly<[number, number]>[] | null;
32
32
  /**
33
33
  * When an object is "faded", manipulate its size so that it appears smaller or thinner. Only works if `filterSoftRange` is specified.
34
34
  * @default true
@@ -1 +1 @@
1
- {"version":3,"file":"data-filter-extension.d.ts","sourceRoot":"","sources":["../../src/data-filter/data-filter-extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-filter-extension.d.ts","sourceRoot":"","sources":["../../src/data-filter/data-filter-extension.ts"],"names":[],"mappings":"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"}
package/dist/dist.dev.js CHANGED
@@ -2445,13 +2445,19 @@ vec4 project_position_to_clipspace(
2445
2445
  inject: {
2446
2446
  "vs:#decl": `
2447
2447
  in vec2 instanceDashArrays;
2448
+ #ifdef HIGH_PRECISION_DASH
2448
2449
  in float instanceDashOffsets;
2450
+ #endif
2449
2451
  out vec2 vDashArray;
2450
2452
  out float vDashOffset;
2451
2453
  `,
2452
2454
  "vs:#main-end": `
2453
2455
  vDashArray = instanceDashArrays;
2456
+ #ifdef HIGH_PRECISION_DASH
2454
2457
  vDashOffset = instanceDashOffsets / width.x;
2458
+ #else
2459
+ vDashOffset = 0.0;
2460
+ #endif
2455
2461
  `,
2456
2462
  "fs:#decl": `
2457
2463
  uniform pathStyleUniforms {
@@ -2558,8 +2564,12 @@ in float instanceOffsets;
2558
2564
  return null;
2559
2565
  }
2560
2566
  let result = {};
2567
+ const defines = {};
2561
2568
  if (extension.opts.dash) {
2562
2569
  result = (0, import_core7._mergeShaders)(result, dashShaders);
2570
+ if (extension.opts.highPrecisionDash) {
2571
+ defines.HIGH_PRECISION_DASH = true;
2572
+ }
2563
2573
  }
2564
2574
  if (extension.opts.offset) {
2565
2575
  result = (0, import_core7._mergeShaders)(result, offsetShaders);
@@ -2574,7 +2584,8 @@ in float instanceOffsets;
2574
2584
  }
2575
2585
  };
2576
2586
  return {
2577
- modules: [pathStyle]
2587
+ modules: [pathStyle],
2588
+ defines
2578
2589
  };
2579
2590
  }
2580
2591
  initializeState(context, extension) {
@@ -2585,17 +2596,13 @@ in float instanceOffsets;
2585
2596
  if (extension.opts.dash) {
2586
2597
  attributeManager.addInstanced({
2587
2598
  instanceDashArrays: { size: 2, accessor: "getDashArray" },
2588
- instanceDashOffsets: extension.opts.highPrecisionDash ? {
2589
- size: 1,
2590
- accessor: "getPath",
2591
- transform: extension.getDashOffsets.bind(this)
2592
- } : {
2593
- size: 1,
2594
- update: (attribute) => {
2595
- attribute.constant = true;
2596
- attribute.value = [0];
2599
+ ...extension.opts.highPrecisionDash ? {
2600
+ instanceDashOffsets: {
2601
+ size: 1,
2602
+ accessor: "getPath",
2603
+ transform: extension.getDashOffsets.bind(this)
2597
2604
  }
2598
- }
2605
+ } : {}
2599
2606
  });
2600
2607
  }
2601
2608
  if (extension.opts.offset) {
@@ -33,7 +33,7 @@ export type FillStyleExtensionProps<DataT = any> = {
33
33
  * Accessor for the offset of the pattern, relative to the original size. Offset `[0.5, 0.5]` shifts the pattern alignment by half.
34
34
  * @default [0, 0]
35
35
  */
36
- getFillPatternOffset?: Accessor<DataT, [number, number]>;
36
+ getFillPatternOffset?: Accessor<DataT, Readonly<[number, number]>>;
37
37
  };
38
38
  export type FillStyleExtensionOptions = {
39
39
  /** If `true`, adds the ability to tile the filled area with a pattern.
@@ -1 +1 @@
1
- {"version":3,"file":"fill-style-extension.d.ts","sourceRoot":"","sources":["../../src/fill-style/fill-style-extension.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAI7C,OAAO,KAAK,EACV,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAkBvB,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,MAAM,MAAM,yBAAyB,GAAG;IACtC;;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,6CAAgB;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;IAqC5F,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;IAevE,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,uBAAuB,CAAC;IAKlD,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,uBAAuB,CAAC,EAAE,IAAI,EAAE,MAAM;CAKnE"}
1
+ {"version":3,"file":"fill-style-extension.d.ts","sourceRoot":"","sources":["../../src/fill-style/fill-style-extension.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAI7C,OAAO,KAAK,EACV,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAkBvB,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,QAAQ,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;CACpE,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC;;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,6CAAgB;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;IAqC5F,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;IAevE,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,uBAAuB,CAAC;IAKlD,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,uBAAuB,CAAC,EAAE,IAAI,EAAE,MAAM;CAKnE"}
package/dist/index.cjs CHANGED
@@ -971,13 +971,19 @@ var dashShaders = {
971
971
  inject: {
972
972
  "vs:#decl": `
973
973
  in vec2 instanceDashArrays;
974
+ #ifdef HIGH_PRECISION_DASH
974
975
  in float instanceDashOffsets;
976
+ #endif
975
977
  out vec2 vDashArray;
976
978
  out float vDashOffset;
977
979
  `,
978
980
  "vs:#main-end": `
979
981
  vDashArray = instanceDashArrays;
982
+ #ifdef HIGH_PRECISION_DASH
980
983
  vDashOffset = instanceDashOffsets / width.x;
984
+ #else
985
+ vDashOffset = 0.0;
986
+ #endif
981
987
  `,
982
988
  "fs:#decl": `
983
989
  uniform pathStyleUniforms {
@@ -1074,8 +1080,12 @@ var PathStyleExtension = class extends import_core6.LayerExtension {
1074
1080
  return null;
1075
1081
  }
1076
1082
  let result = {};
1083
+ const defines = {};
1077
1084
  if (extension.opts.dash) {
1078
1085
  result = (0, import_core6._mergeShaders)(result, dashShaders);
1086
+ if (extension.opts.highPrecisionDash) {
1087
+ defines.HIGH_PRECISION_DASH = true;
1088
+ }
1079
1089
  }
1080
1090
  if (extension.opts.offset) {
1081
1091
  result = (0, import_core6._mergeShaders)(result, offsetShaders);
@@ -1090,7 +1100,8 @@ var PathStyleExtension = class extends import_core6.LayerExtension {
1090
1100
  }
1091
1101
  };
1092
1102
  return {
1093
- modules: [pathStyle]
1103
+ modules: [pathStyle],
1104
+ defines
1094
1105
  };
1095
1106
  }
1096
1107
  initializeState(context, extension) {
@@ -1101,17 +1112,13 @@ var PathStyleExtension = class extends import_core6.LayerExtension {
1101
1112
  if (extension.opts.dash) {
1102
1113
  attributeManager.addInstanced({
1103
1114
  instanceDashArrays: { size: 2, accessor: "getDashArray" },
1104
- instanceDashOffsets: extension.opts.highPrecisionDash ? {
1105
- size: 1,
1106
- accessor: "getPath",
1107
- transform: extension.getDashOffsets.bind(this)
1108
- } : {
1109
- size: 1,
1110
- update: (attribute) => {
1111
- attribute.constant = true;
1112
- attribute.value = [0];
1115
+ ...extension.opts.highPrecisionDash ? {
1116
+ instanceDashOffsets: {
1117
+ size: 1,
1118
+ accessor: "getPath",
1119
+ transform: extension.getDashOffsets.bind(this)
1113
1120
  }
1114
- }
1121
+ } : {}
1115
1122
  });
1116
1123
  }
1117
1124
  if (extension.opts.offset) {