@visactor/vrender 1.1.0-alpha.24 → 1.1.0-alpha.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/cjs/entries/bootstrap-browser-lite.d.ts +2 -0
  2. package/cjs/entries/bootstrap-browser-lite.js +27 -0
  3. package/cjs/entries/bootstrap-browser-lite.js.map +1 -0
  4. package/cjs/entries/bootstrap-browser.d.ts +2 -0
  5. package/cjs/entries/bootstrap-browser.js +19 -0
  6. package/cjs/entries/bootstrap-browser.js.map +1 -0
  7. package/cjs/entries/bootstrap-common.d.ts +3 -0
  8. package/cjs/entries/bootstrap-common.js +44 -0
  9. package/cjs/entries/bootstrap-common.js.map +1 -0
  10. package/cjs/entries/bootstrap-utils.d.ts +7 -0
  11. package/cjs/entries/bootstrap-utils.js +44 -0
  12. package/cjs/entries/bootstrap-utils.js.map +1 -0
  13. package/cjs/entries/bootstrap.js +11 -39
  14. package/cjs/entries/bootstrap.js.map +1 -1
  15. package/cjs/entries/browser.js +3 -26
  16. package/cjs/entries/browser.js.map +1 -1
  17. package/cjs/entries/shared-browser-lite.d.ts +12 -0
  18. package/cjs/entries/shared-browser-lite.js +31 -0
  19. package/cjs/entries/shared-browser-lite.js.map +1 -0
  20. package/cjs/entries/shared-browser.d.ts +12 -0
  21. package/cjs/entries/shared-browser.js +30 -0
  22. package/cjs/entries/shared-browser.js.map +1 -0
  23. package/cjs/entries/shared-registry.d.ts +16 -0
  24. package/cjs/entries/shared-registry.js +87 -0
  25. package/cjs/entries/shared-registry.js.map +1 -0
  26. package/cjs/entries/shared.d.ts +3 -7
  27. package/cjs/entries/shared.js +6 -69
  28. package/cjs/entries/shared.js.map +1 -1
  29. package/cjs/index.d.ts +1 -1
  30. package/cjs/index.js +1 -1
  31. package/cjs/index.js.map +1 -1
  32. package/dist/index.es.js +415 -1266
  33. package/dist/index.js +416 -1267
  34. package/dist/index.min.js +1 -1
  35. package/es/entries/bootstrap-browser-lite.d.ts +2 -0
  36. package/es/entries/bootstrap-browser-lite.js +51 -0
  37. package/es/entries/bootstrap-browser-lite.js.map +1 -0
  38. package/es/entries/bootstrap-browser.d.ts +2 -0
  39. package/es/entries/bootstrap-browser.js +15 -0
  40. package/es/entries/bootstrap-browser.js.map +1 -0
  41. package/es/entries/bootstrap-common.d.ts +3 -0
  42. package/es/entries/bootstrap-common.js +58 -0
  43. package/es/entries/bootstrap-common.js.map +1 -0
  44. package/es/entries/bootstrap-utils.d.ts +7 -0
  45. package/es/entries/bootstrap-utils.js +38 -0
  46. package/es/entries/bootstrap-utils.js.map +1 -0
  47. package/es/entries/bootstrap.js +4 -34
  48. package/es/entries/bootstrap.js.map +1 -1
  49. package/es/entries/browser.js +1 -3
  50. package/es/entries/browser.js.map +1 -1
  51. package/es/entries/shared-browser-lite.d.ts +12 -0
  52. package/es/entries/shared-browser-lite.js +28 -0
  53. package/es/entries/shared-browser-lite.js.map +1 -0
  54. package/es/entries/shared-browser.d.ts +12 -0
  55. package/es/entries/shared-browser.js +28 -0
  56. package/es/entries/shared-browser.js.map +1 -0
  57. package/es/entries/shared-registry.d.ts +16 -0
  58. package/es/entries/shared-registry.js +79 -0
  59. package/es/entries/shared-registry.js.map +1 -0
  60. package/es/entries/shared.d.ts +3 -7
  61. package/es/entries/shared.js +6 -69
  62. package/es/entries/shared.js.map +1 -1
  63. package/es/index.d.ts +1 -1
  64. package/es/index.js +1 -1
  65. package/es/index.js.map +1 -1
  66. package/package.json +21 -7
package/dist/index.es.js CHANGED
@@ -163,7 +163,7 @@ class EventListenerManager {
163
163
  }
164
164
  }
165
165
 
166
- var __awaiter$8 = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
166
+ var __awaiter$7 = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
167
167
  return new (P || (P = Promise))(function (resolve, reject) {
168
168
  function fulfilled(value) {
169
169
  try {
@@ -332,7 +332,7 @@ class DefaultGlobal extends EventListenerManager {
332
332
  return this._env || this.setEnv("browser"), this.envContribution.loadBlob(url);
333
333
  }
334
334
  loadFont(name, source, descriptors) {
335
- return __awaiter$8(this, void 0, void 0, function* () {
335
+ return __awaiter$7(this, void 0, void 0, function* () {
336
336
  return this._env || this.setEnv("browser"), this.envContribution.loadFont(name, source, descriptors);
337
337
  });
338
338
  }
@@ -718,14 +718,14 @@ var isObject$1 = isObject;
718
718
  const isObjectLike = value => "object" == typeof value && null !== value;
719
719
  var isObjectLike$1 = isObjectLike;
720
720
 
721
- const isPlainObject$3 = function (value) {
721
+ const isPlainObject$2 = function (value) {
722
722
  if (!isObjectLike$1(value) || !isType$1(value, "Object")) return !1;
723
723
  if (null === Object.getPrototypeOf(value)) return !0;
724
724
  let proto = value;
725
725
  for (; null !== Object.getPrototypeOf(proto);) proto = Object.getPrototypeOf(proto);
726
726
  return Object.getPrototypeOf(value) === proto;
727
727
  };
728
- var isPlainObject$4 = isPlainObject$3;
728
+ var isPlainObject$3 = isPlainObject$2;
729
729
 
730
730
  const isUndefined = value => void 0 === value;
731
731
  var isUndefined$1 = isUndefined;
@@ -840,7 +840,7 @@ function baseMergeDeep(target, source, key, shallowArray = !1, skipTargetArray =
840
840
  const length = objValue.length;
841
841
  for (; ++index < length;) newValue[index] = objValue[index];
842
842
  }
843
- } else isPlainObject$4(srcValue) ? (newValue = null != objValue ? objValue : {}, "function" != typeof objValue && "object" == typeof objValue || (newValue = {})) : isCommon = !1;
843
+ } else isPlainObject$3(srcValue) ? (newValue = null != objValue ? objValue : {}, "function" != typeof objValue && "object" == typeof objValue || (newValue = {})) : isCommon = !1;
844
844
  isCommon && baseMerge(newValue, srcValue, shallowArray, skipTargetArray), assignMergeValue(target, key, newValue);
845
845
  }
846
846
  function assignMergeValue(target, key, value) {
@@ -877,7 +877,7 @@ function isEqual(a, b, options) {
877
877
  for (let i = a.length - 1; i >= 0; i--) if (!isEqual(a[i], b[i], options)) return !1;
878
878
  return !0;
879
879
  }
880
- if (!isPlainObject$4(a)) return !1;
880
+ if (!isPlainObject$3(a)) return !1;
881
881
  const ka = objectKeys(a),
882
882
  kb = objectKeys(b);
883
883
  if (ka.length !== kb.length) return !1;
@@ -2662,7 +2662,7 @@ const styleStringToObject = (styleStr = "") => {
2662
2662
  };
2663
2663
  const lowerCamelCaseToMiddle = str => str.replace(/([A-Z])/g, "-$1").toLowerCase();
2664
2664
 
2665
- var __awaiter$7 = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
2665
+ var __awaiter$6 = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
2666
2666
  return new (P || (P = Promise))(function (resolve, reject) {
2667
2667
  function fulfilled(value) {
2668
2668
  try {
@@ -2712,6 +2712,7 @@ class Node extends EventEmitter {
2712
2712
  constructor() {
2713
2713
  super(), this._uid = Generator.GenAutoIncrementId(), this._firstChild = null, this._lastChild = null, this.parent = null, this._count = 1;
2714
2714
  }
2715
+ onParentSharedStateTreeChanged(_stage, _layer) {}
2715
2716
  forEachChildren(cb, reverse = !1) {
2716
2717
  if (reverse) {
2717
2718
  let child = this._lastChild,
@@ -2730,7 +2731,7 @@ class Node extends EventEmitter {
2730
2731
  }
2731
2732
  }
2732
2733
  forEachChildrenAsync(cb, reverse = !1) {
2733
- return __awaiter$7(this, void 0, void 0, function* () {
2734
+ return __awaiter$6(this, void 0, void 0, function* () {
2734
2735
  if (reverse) {
2735
2736
  let child = this._lastChild,
2736
2737
  i = 0;
@@ -6287,7 +6288,7 @@ function isXML(str) {
6287
6288
  return str.startsWith("<");
6288
6289
  }
6289
6290
 
6290
- var __awaiter$6 = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
6291
+ var __awaiter$5 = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
6291
6292
  return new (P || (P = Promise))(function (resolve, reject) {
6292
6293
  function fulfilled(value) {
6293
6294
  try {
@@ -6316,7 +6317,7 @@ function incrementalAddTo(group, graphic) {
6316
6317
  group.incrementalAppendChild(graphic);
6317
6318
  }
6318
6319
  function waitForAllSubLayers(stage) {
6319
- return __awaiter$6(this, void 0, void 0, function* () {
6320
+ return __awaiter$5(this, void 0, void 0, function* () {
6320
6321
  const promiseList = [],
6321
6322
  layers = stage.getChildren();
6322
6323
  yield new Promise(resolve => {
@@ -7898,8 +7899,8 @@ function createConicalGradient(context, stops, x, y, deltaAngle, startAngle, end
7898
7899
  return conicalCanvas.width = imageData.width, conicalCanvas.height = imageData.height, conicalCtx.putImageData(imageData, 0, 0), pattern = context.createPattern(conicalCanvas, "no-repeat"), pattern && ConicalPatternStore.Set(stops, x, y, startAngle, endAngle, pattern, width, height), pattern;
7899
7900
  }
7900
7901
 
7901
- const FULL_DEFINITION_KEYS$1 = new Set(["name", "patch", "priority", "exclude", "suppress", "resolver", "declaredAffectedKeys"]);
7902
- function isPlainObject$2(value) {
7902
+ const FULL_DEFINITION_KEYS = new Set(["name", "patch", "priority", "exclude", "suppress", "resolver", "declaredAffectedKeys"]);
7903
+ function isPlainObject$1(value) {
7903
7904
  return null != value && "object" == typeof value && !Array.isArray(value);
7904
7905
  }
7905
7906
  function normalizePatch(value) {
@@ -7945,12 +7946,11 @@ class StateDefinitionCompiler {
7945
7946
  priority: 0,
7946
7947
  patch: void 0
7947
7948
  };
7948
- if ((isPlainObject$2(value) ? Object.keys(value) : []).some(key => FULL_DEFINITION_KEYS$1.has(key))) {
7949
+ if ((isPlainObject$1(value) ? Object.keys(value) : []).some(key => FULL_DEFINITION_KEYS.has(key))) {
7949
7950
  const definition = value;
7950
7951
  return {
7951
7952
  name: null !== (_a = definition.name) && void 0 !== _a ? _a : name,
7952
7953
  priority: null !== (_b = definition.priority) && void 0 !== _b ? _b : 0,
7953
- rank: definition.rank,
7954
7954
  patch: normalizePatch(definition.patch),
7955
7955
  resolver: definition.resolver,
7956
7956
  declaredAffectedKeys: definition.declaredAffectedKeys,
@@ -7970,281 +7970,40 @@ class StateDefinitionCompiler {
7970
7970
  rawRelationMap.set(name, new Set(definition[relation]));
7971
7971
  }), compiled.forEach((definition, origin) => {
7972
7972
  const closure = new Set(),
7973
- walk = (stateName, stack) => {
7973
+ walk = (stateName, visiting) => {
7974
7974
  const nextStates = rawRelationMap.get(stateName);
7975
7975
  nextStates && nextStates.size && nextStates.forEach(nextState => {
7976
- nextState !== origin ? stack.includes(nextState) ? console.warn(`[StateDefinitionCompiler] circular ${relation} relation detected: ${stack.join(" -> ")} -> ${nextState}`) : closure.has(nextState) || (closure.add(nextState), walk(nextState, stack.concat(nextState))) : console.warn(`[StateDefinitionCompiler] circular ${relation} relation detected: ${stack.join(" -> ")} -> ${origin}`);
7976
+ nextState === origin || visiting.has(nextState) || closure.has(nextState) || (closure.add(nextState), visiting.add(nextState), walk(nextState, visiting), visiting.delete(nextState));
7977
7977
  });
7978
7978
  };
7979
- walk(origin, [origin]), definition[relation] = closure;
7979
+ walk(origin, new Set([origin])), definition[relation] = closure;
7980
7980
  });
7981
7981
  }
7982
7982
  }
7983
7983
 
7984
- var UpdateCategory;
7985
- !function (UpdateCategory) {
7986
- UpdateCategory[UpdateCategory.NONE = 0] = "NONE", UpdateCategory[UpdateCategory.PAINT = 1] = "PAINT", UpdateCategory[UpdateCategory.SHAPE = 2] = "SHAPE", UpdateCategory[UpdateCategory.BOUNDS = 4] = "BOUNDS", UpdateCategory[UpdateCategory.TRANSFORM = 8] = "TRANSFORM", UpdateCategory[UpdateCategory.LAYOUT = 16] = "LAYOUT", UpdateCategory[UpdateCategory.PICK = 32] = "PICK";
7987
- }(UpdateCategory || (UpdateCategory = {}));
7988
- const ATTRIBUTE_CATEGORY = {
7989
- fill: UpdateCategory.PAINT,
7990
- opacity: UpdateCategory.PAINT,
7991
- fillOpacity: UpdateCategory.PAINT,
7992
- strokeOpacity: UpdateCategory.PAINT,
7993
- lineDash: UpdateCategory.PAINT,
7994
- lineDashOffset: UpdateCategory.PAINT,
7995
- lineCap: UpdateCategory.PAINT,
7996
- lineJoin: UpdateCategory.PAINT,
7997
- miterLimit: UpdateCategory.PAINT,
7998
- shadowColor: UpdateCategory.PAINT,
7999
- x: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8000
- y: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8001
- scaleX: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8002
- scaleY: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8003
- angle: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8004
- anchor: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8005
- anchor3d: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8006
- postMatrix: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8007
- layout: UpdateCategory.LAYOUT,
8008
- zIndex: UpdateCategory.PAINT,
8009
- visible: UpdateCategory.PAINT | UpdateCategory.PICK,
8010
- lineWidth: UpdateCategory.SHAPE | UpdateCategory.BOUNDS | UpdateCategory.PICK,
8011
- width: UpdateCategory.SHAPE | UpdateCategory.BOUNDS,
8012
- height: UpdateCategory.SHAPE | UpdateCategory.BOUNDS
8013
- };
8014
- const ATTRIBUTE_DELTA_CLASSIFIER = {
8015
- stroke: (prev, next) => (null != prev && !1 !== prev) !== (null != next && !1 !== next) ? UpdateCategory.PAINT | UpdateCategory.BOUNDS | UpdateCategory.PICK : UpdateCategory.PAINT,
8016
- shadowBlur: (prev, next) => {
8017
- const prevBlur = Number(null != prev ? prev : 0),
8018
- nextBlur = Number(null != next ? next : 0);
8019
- return prevBlur !== nextBlur && (prevBlur > 0 || nextBlur > 0) ? UpdateCategory.PAINT | UpdateCategory.BOUNDS : UpdateCategory.PAINT;
8020
- }
8021
- };
8022
- function classifyAttributeDelta(key, prev, next) {
8023
- var _a;
8024
- const dynamicClassifier = ATTRIBUTE_DELTA_CLASSIFIER[key];
8025
- return dynamicClassifier ? dynamicClassifier(prev, next) : null !== (_a = ATTRIBUTE_CATEGORY[key]) && void 0 !== _a ? _a : UpdateCategory.PAINT;
8026
- }
8027
- function classifyAffectedKeyConservatively(key) {
8028
- var _a;
8029
- return "stroke" === key ? UpdateCategory.PAINT | UpdateCategory.BOUNDS | UpdateCategory.PICK : "shadowBlur" === key ? UpdateCategory.PAINT | UpdateCategory.BOUNDS : null !== (_a = ATTRIBUTE_CATEGORY[key]) && void 0 !== _a ? _a : UpdateCategory.PAINT;
8030
- }
8031
- function classifyAffectedKeys(keys) {
8032
- let category = UpdateCategory.NONE;
8033
- for (const key of keys) category |= classifyAffectedKeyConservatively(key);
8034
- return category;
8035
- }
8036
-
8037
- const STAGE_PERF_MONITOR = Symbol("vrender.statePerfMonitor");
8038
- function createReasonBreakdown() {
8039
- return {
8040
- config_disabled: 0,
8041
- context_disabled: 0,
8042
- non_batch_operation: 0,
8043
- mixed_update_category: 0,
8044
- resolver_unstable_keys: 0,
8045
- graphic_unavailable: 0
8046
- };
8047
- }
8048
- function createEmptyStatePerfSnapshot() {
8049
- return {
8050
- counters: {
8051
- stateCommits: 0,
8052
- sharedRefreshCommits: 0,
8053
- deferredJobsCreated: 0,
8054
- deferredJobsCompleted: 0,
8055
- deferredJobsCancelled: 0,
8056
- deferredJobsCoalesced: 0,
8057
- deferredGraphicsCommitted: 0,
8058
- deferredBudgetYields: 0,
8059
- deferredIneligibleGraphics: 0
8060
- },
8061
- deferredIneligibleByReason: createReasonBreakdown(),
8062
- categoryBreakdown: {
8063
- paint: 0,
8064
- transform: 0,
8065
- shape: 0,
8066
- bounds: 0,
8067
- layout: 0,
8068
- pick: 0
8069
- },
8070
- refresh: {
8071
- queuedGraphics: 0,
8072
- flushedGraphics: 0,
8073
- ensureFreshCalls: 0,
8074
- renderScheduled: 0
8075
- },
8076
- resolver: {
8077
- cacheHits: 0,
8078
- cacheMisses: 0,
8079
- invalidations: 0
8080
- },
8081
- cost: {
8082
- resolverTotalMs: 0,
8083
- resolverMaxMs: 0,
8084
- patchTotalMs: 0,
8085
- patchMaxMs: 0,
8086
- sharedRefreshTotalMs: 0,
8087
- sharedRefreshMaxMs: 0,
8088
- batchSliceTotalMs: 0,
8089
- batchSliceMaxMs: 0
8090
- },
8091
- allocationHints: {
8092
- patchObjectsCreated: 0,
8093
- batchEntriesCreated: 0,
8094
- refreshQueuePushes: 0
8095
- },
8096
- batch: {
8097
- pendingJobs: 0,
8098
- maxPendingJobs: 0,
8099
- maxGraphicsInJob: 0,
8100
- maxFrameSliceCost: 0
8101
- },
8102
- events: []
8103
- };
8104
- }
8105
- function cloneSnapshot(snapshot) {
8106
- return {
8107
- counters: Object.assign({}, snapshot.counters),
8108
- deferredIneligibleByReason: Object.assign({}, snapshot.deferredIneligibleByReason),
8109
- categoryBreakdown: Object.assign({}, snapshot.categoryBreakdown),
8110
- refresh: Object.assign({}, snapshot.refresh),
8111
- resolver: Object.assign({}, snapshot.resolver),
8112
- cost: Object.assign({}, snapshot.cost),
8113
- allocationHints: Object.assign({}, snapshot.allocationHints),
8114
- batch: Object.assign({}, snapshot.batch),
8115
- events: snapshot.events ? snapshot.events.slice() : []
8116
- };
8117
- }
8118
- function isDeferredStateContextConfig(value) {
8119
- return !!value && (Object.prototype.hasOwnProperty.call(value, "deferred") || Object.prototype.hasOwnProperty.call(value, "localEnabled"));
8120
- }
8121
- function normalizeDeferredStateOwnerConfig(value) {
8122
- if (value) return isDeferredStateContextConfig(value) ? value : {
8123
- deferred: value
8124
- };
8125
- }
8126
- function normalizeDeferredStateConfig(config) {
8127
- var _a, _b, _c;
8128
- return {
8129
- enabled: null !== (_a = null == config ? void 0 : config.enabled) && void 0 !== _a && _a,
8130
- frameBudget: null !== (_b = null == config ? void 0 : config.frameBudget) && void 0 !== _b ? _b : 8,
8131
- maxGraphicsPerFrame: null !== (_c = null == config ? void 0 : config.maxGraphicsPerFrame) && void 0 !== _c ? _c : 100
8132
- };
8133
- }
8134
- function fingerprintDeferredStateConfig(config) {
8135
- return `${config.enabled ? 1 : 0}:${config.frameBudget}:${config.maxGraphicsPerFrame}`;
8136
- }
8137
- class StatePerfMonitor {
8138
- constructor(configSource) {
8139
- this.configSource = configSource, this.snapshot = createEmptyStatePerfSnapshot();
8140
- }
8141
- setConfig(config) {
8142
- this.configSource = config;
8143
- }
8144
- getSnapshot() {
8145
- return cloneSnapshot(this.snapshot);
8146
- }
8147
- reset() {
8148
- const next = createEmptyStatePerfSnapshot();
8149
- Object.assign(this.snapshot.counters, next.counters), Object.assign(this.snapshot.deferredIneligibleByReason, next.deferredIneligibleByReason), Object.assign(this.snapshot.categoryBreakdown, next.categoryBreakdown), Object.assign(this.snapshot.refresh, next.refresh), Object.assign(this.snapshot.resolver, next.resolver), Object.assign(this.snapshot.cost, next.cost), Object.assign(this.snapshot.allocationHints, next.allocationHints), Object.assign(this.snapshot.batch, next.batch), this.snapshot.events = [];
8150
- }
8151
- incrementCounter(key, delta = 1) {
8152
- this.isEnabled() && (this.snapshot.counters[key] += delta);
8153
- }
8154
- recordDeferredIneligible(reason, delta = 1) {
8155
- this.isEnabled() && (this.snapshot.deferredIneligibleByReason[reason] += delta, this.snapshot.counters.deferredIneligibleGraphics += delta, this.recordEvent("deferred-ineligible", {
8156
- reason: reason,
8157
- count: delta
8158
- }));
8159
- }
8160
- recordCategory(category) {
8161
- this.isEnabled() && (category & UpdateCategory.PAINT && (this.snapshot.categoryBreakdown.paint += 1), category & UpdateCategory.TRANSFORM && (this.snapshot.categoryBreakdown.transform += 1), category & UpdateCategory.SHAPE && (this.snapshot.categoryBreakdown.shape += 1), category & UpdateCategory.BOUNDS && (this.snapshot.categoryBreakdown.bounds += 1), category & UpdateCategory.LAYOUT && (this.snapshot.categoryBreakdown.layout += 1), category & UpdateCategory.PICK && (this.snapshot.categoryBreakdown.pick += 1));
8162
- }
8163
- recordRefresh(key, delta = 1) {
8164
- this.isEnabled() && (this.snapshot.refresh[key] += delta);
8165
- }
8166
- recordResolver(key, delta = 1) {
8167
- this.isEnabled() && (this.snapshot.resolver[key] += delta);
8168
- }
8169
- recordCost(kind, durationMs) {
8170
- if (this.isEnabled()) {
8171
- if ("resolver" === kind) return this.snapshot.cost.resolverTotalMs += durationMs, void (this.snapshot.cost.resolverMaxMs = Math.max(this.snapshot.cost.resolverMaxMs, durationMs));
8172
- if ("patch" === kind) return this.snapshot.cost.patchTotalMs += durationMs, void (this.snapshot.cost.patchMaxMs = Math.max(this.snapshot.cost.patchMaxMs, durationMs));
8173
- if ("sharedRefresh" === kind) return this.snapshot.cost.sharedRefreshTotalMs += durationMs, void (this.snapshot.cost.sharedRefreshMaxMs = Math.max(this.snapshot.cost.sharedRefreshMaxMs, durationMs));
8174
- this.snapshot.cost.batchSliceTotalMs += durationMs, this.snapshot.cost.batchSliceMaxMs = Math.max(this.snapshot.cost.batchSliceMaxMs, durationMs), this.snapshot.batch.maxFrameSliceCost = Math.max(this.snapshot.batch.maxFrameSliceCost, durationMs);
8175
- }
8176
- }
8177
- recordAllocation(key, delta = 1) {
8178
- this.isEnabled() && (this.snapshot.allocationHints[key] += delta);
8179
- }
8180
- updateBatchPending(pendingJobs) {
8181
- this.isEnabled() && (this.snapshot.batch.pendingJobs = pendingJobs, this.snapshot.batch.maxPendingJobs = Math.max(this.snapshot.batch.maxPendingJobs, pendingJobs));
8182
- }
8183
- updateMaxGraphicsInJob(count) {
8184
- this.isEnabled() && (this.snapshot.batch.maxGraphicsInJob = Math.max(this.snapshot.batch.maxGraphicsInJob, count));
8185
- }
8186
- recordEvent(type, detail) {
8187
- var _a, _b, _c;
8188
- if (!this.shouldRecordEvents()) return;
8189
- const events = null !== (_a = this.snapshot.events) && void 0 !== _a ? _a : this.snapshot.events = [];
8190
- events.push({
8191
- type: type,
8192
- at: Date.now(),
8193
- detail: detail
8194
- });
8195
- const max = null !== (_c = null === (_b = this.getConfig()) || void 0 === _b ? void 0 : _b.maxEventRecords) && void 0 !== _c ? _c : 100;
8196
- events.length > max && events.splice(0, events.length - max);
8197
- }
8198
- isEnabled() {
8199
- var _a;
8200
- return !0 === (null === (_a = this.getConfig()) || void 0 === _a ? void 0 : _a.enabled);
8201
- }
8202
- shouldRecordEvents() {
8203
- const config = this.getConfig();
8204
- return !!(null == config ? void 0 : config.enabled) && !!config.recordEvents;
8205
- }
8206
- getConfig() {
8207
- return "function" == typeof this.configSource ? this.configSource() : this.configSource;
8208
- }
8209
- }
8210
- function ensureStageStatePerfMonitor(stage) {
8211
- const stageAny = stage;
8212
- return stageAny[STAGE_PERF_MONITOR] || (stageAny[STAGE_PERF_MONITOR] = new StatePerfMonitor(() => stage.statePerfConfig)), stageAny[STAGE_PERF_MONITOR];
8213
- }
8214
- function getStageStatePerfMonitor(stage) {
8215
- if (stage) return stage[STAGE_PERF_MONITOR];
8216
- }
8217
- function getActiveStageStatePerfMonitor(stage) {
8218
- var _a;
8219
- if (!stage) return;
8220
- const current = getStageStatePerfMonitor(stage);
8221
- return current || (!0 === (null === (_a = stage.statePerfConfig) || void 0 === _a ? void 0 : _a.enabled) ? ensureStageStatePerfMonitor(stage) : void 0);
8222
- }
8223
-
8224
- function isPlainObject$1(value) {
7984
+ function isPlainObject(value) {
8225
7985
  return null != value && "object" == typeof value && !Array.isArray(value);
8226
7986
  }
8227
- function cloneValue$1(value) {
8228
- if (!isPlainObject$1(value)) return value;
7987
+ function cloneValue(value) {
7988
+ if (!isPlainObject(value)) return value;
8229
7989
  const clone = {};
8230
7990
  return Object.keys(value).forEach(key => {
8231
- clone[key] = cloneValue$1(value[key]);
7991
+ clone[key] = cloneValue(value[key]);
8232
7992
  }), clone;
8233
7993
  }
8234
- function deepMerge$1(base, value) {
7994
+ function deepMerge(base, value) {
8235
7995
  var _a;
8236
- const result = null !== (_a = cloneValue$1(base)) && void 0 !== _a ? _a : {};
7996
+ const result = null !== (_a = cloneValue(base)) && void 0 !== _a ? _a : {};
8237
7997
  return Object.keys(value).forEach(key => {
8238
7998
  const nextValue = value[key],
8239
7999
  previousValue = result[key];
8240
- isPlainObject$1(previousValue) && isPlainObject$1(nextValue) ? result[key] = deepMerge$1(previousValue, nextValue) : result[key] = cloneValue$1(nextValue);
8000
+ isPlainObject(previousValue) && isPlainObject(nextValue) ? result[key] = deepMerge(previousValue, nextValue) : result[key] = cloneValue(nextValue);
8241
8001
  }), result;
8242
8002
  }
8243
- const FULL_DEFINITION_KEYS = new Set(["name", "patch", "priority", "exclude", "suppress", "resolver", "declaredAffectedKeys"]);
8244
8003
  class StateEngine {
8245
8004
  constructor(options) {
8246
8005
  var _a;
8247
- this._activeStates = [], this._effectiveStates = [], this._suppressed = [], this._resolvedPatch = {}, this.resolverPatchCache = new Map(), this.resolverCacheKey = "", this.resolverCacheValid = !1, this.baseAttributes = {}, this.compiledDefinitions = options.compiledDefinitions, this.stateSort = options.stateSort, this.stateProxy = options.stateProxy, this.stateProxyEligibility = options.stateProxyEligibility, this.states = options.states, this.mergeMode = null !== (_a = options.mergeMode) && void 0 !== _a ? _a : "shallow";
8006
+ this._activeStates = [], this._effectiveStates = [], this._suppressed = [], this._resolvedPatch = {}, this.resolverPatchCache = new Map(), this.resolverCacheKey = "", this.resolverCacheValid = !1, this.baseAttributes = {}, this.compiledDefinitions = options.compiledDefinitions, this.stateSort = options.stateSort, this.mergeMode = null !== (_a = options.mergeMode) && void 0 !== _a ? _a : "shallow";
8248
8007
  }
8249
8008
  get activeStates() {
8250
8009
  return this._activeStates;
@@ -8314,23 +8073,11 @@ class StateEngine {
8314
8073
  };
8315
8074
  }
8316
8075
  invalidateResolverCache() {
8317
- var _a, _b;
8318
- this.resolverPatchCache.clear(), this.resolverCacheKey = "", this.resolverCacheValid = !1, null === (_b = getActiveStageStatePerfMonitor(null === (_a = this.graphic) || void 0 === _a ? void 0 : _a.stage)) || void 0 === _b || _b.recordResolver("invalidations");
8076
+ this.resolverPatchCache.clear(), this.resolverCacheKey = "", this.resolverCacheValid = !1;
8319
8077
  }
8320
8078
  hasState(stateName) {
8321
8079
  return !!this._activeStates.length && (null == stateName || this._activeStates.includes(stateName));
8322
8080
  }
8323
- getCompatPatch(stateName) {
8324
- var _a, _b, _c;
8325
- const targetStates = this._activeStates.length ? this._activeStates : this._effectiveStates,
8326
- canUseStateProxy = this.canUseStateProxy(stateName),
8327
- proxyPatch = canUseStateProxy ? null === (_a = this.stateProxy) || void 0 === _a ? void 0 : _a.call(this, stateName, targetStates) : void 0;
8328
- if (this.stateProxy && canUseStateProxy) return null != proxyPatch ? proxyPatch : void 0;
8329
- const value = null === (_b = this.states) || void 0 === _b ? void 0 : _b[stateName];
8330
- if (null == value) return;
8331
- if (!isPlainObject$1(value)) return value;
8332
- return Object.keys(value).some(key => FULL_DEFINITION_KEYS.has(key)) ? cloneValue$1(null !== (_c = value.patch) && void 0 !== _c ? _c : void 0) : value;
8333
- }
8334
8081
  sortStates(states) {
8335
8082
  const withDefinition = [],
8336
8083
  withoutDefinition = [];
@@ -8361,68 +8108,33 @@ class StateEngine {
8361
8108
  };
8362
8109
  }
8363
8110
  recomputePatch(effectiveStates) {
8364
- var _a;
8365
- const perfMonitor = getActiveStageStatePerfMonitor(null === (_a = this.graphic) || void 0 === _a ? void 0 : _a.stage),
8366
- patchStart = perfMonitor ? performance.now() : 0;
8367
- let resolverCost = 0;
8368
8111
  const cacheKey = effectiveStates.join(","),
8369
- nextPatch = {};
8370
- if (null == perfMonitor || perfMonitor.recordAllocation("patchObjectsCreated"), this.resolverCacheValid && this.resolverCacheKey === cacheKey ? effectiveStates.forEach(stateName => {
8112
+ nextPatch = {},
8113
+ useResolverCache = this.resolverCacheValid && this.resolverCacheKey === cacheKey;
8114
+ useResolverCache || (this.resolverPatchCache.clear(), this.resolverCacheKey = cacheKey), effectiveStates.forEach(stateName => {
8371
8115
  var _a;
8372
- const canUseStateProxy = this.canUseStateProxy(stateName),
8373
- proxyPatch = canUseStateProxy ? null === (_a = this.stateProxy) || void 0 === _a ? void 0 : _a.call(this, stateName, effectiveStates) : void 0;
8374
- if (this.stateProxy && canUseStateProxy) return void (null != proxyPatch && this.mergeInto(nextPatch, proxyPatch));
8375
8116
  const definition = this.compiledDefinitions.get(stateName);
8376
- if (definition) {
8377
- if (definition.patch && this.mergeInto(nextPatch, definition.patch), definition.hasResolver) {
8378
- const cachedPatch = this.resolverPatchCache.get(stateName);
8379
- cachedPatch && (null == perfMonitor || perfMonitor.recordResolver("cacheHits"), this.mergeInto(nextPatch, cachedPatch));
8380
- }
8381
- } else {
8382
- const compatPatch = this.getCompatPatch(stateName);
8383
- compatPatch && this.mergeInto(nextPatch, compatPatch);
8384
- }
8385
- }) : (this.resolverPatchCache.clear(), this.resolverCacheKey = cacheKey, effectiveStates.forEach(stateName => {
8386
- var _a;
8387
- const canUseStateProxy = this.canUseStateProxy(stateName),
8388
- proxyPatch = canUseStateProxy ? null === (_a = this.stateProxy) || void 0 === _a ? void 0 : _a.call(this, stateName, effectiveStates) : void 0;
8389
- if (this.stateProxy && canUseStateProxy) return void (null != proxyPatch && this.mergeInto(nextPatch, proxyPatch));
8390
- const definition = this.compiledDefinitions.get(stateName);
8391
- if (definition) {
8392
- if (definition.patch && this.mergeInto(nextPatch, definition.patch), definition.hasResolver && definition.resolver) {
8393
- null == perfMonitor || perfMonitor.recordResolver("cacheMisses");
8394
- const resolverStart = perfMonitor ? performance.now() : 0,
8395
- resolverPatch = definition.resolver({
8396
- graphic: this.graphic,
8397
- activeStates: this._activeStates,
8398
- effectiveStates: this._effectiveStates,
8399
- baseAttributes: this.baseAttributes,
8400
- resolvedPatch: nextPatch
8401
- });
8402
- if (perfMonitor) {
8403
- const duration = performance.now() - resolverStart;
8404
- resolverCost += duration, perfMonitor.recordCost("resolver", duration);
8405
- }
8406
- resolverPatch && (this.resolverPatchCache.set(stateName, resolverPatch), this.mergeInto(nextPatch, resolverPatch));
8407
- }
8408
- } else {
8409
- const compatPatch = this.getCompatPatch(stateName);
8410
- compatPatch && this.mergeInto(nextPatch, compatPatch);
8117
+ if (definition && (definition.patch && this.mergeInto(nextPatch, definition.patch), definition.hasResolver)) {
8118
+ const resolverPatch = useResolverCache ? this.resolverPatchCache.get(stateName) : null === (_a = definition.resolver) || void 0 === _a ? void 0 : _a.call(definition, {
8119
+ graphic: this.graphic,
8120
+ activeStates: this._activeStates,
8121
+ effectiveStates: this._effectiveStates,
8122
+ baseAttributes: this.baseAttributes,
8123
+ resolvedPatch: nextPatch
8124
+ });
8125
+ resolverPatch && (useResolverCache || this.resolverPatchCache.set(stateName, resolverPatch), this.mergeInto(nextPatch, resolverPatch));
8411
8126
  }
8412
- }), this.resolverCacheValid = !0), this._resolvedPatch = nextPatch, perfMonitor) {
8413
- const totalCost = performance.now() - patchStart;
8414
- perfMonitor.recordCost("patch", Math.max(0, totalCost - resolverCost));
8415
- }
8127
+ }), useResolverCache || (this.resolverCacheValid = !0), this._resolvedPatch = nextPatch;
8416
8128
  }
8417
8129
  mergeInto(target, patch) {
8418
8130
  "deep" !== this.mergeMode ? Object.keys(patch).forEach(key => {
8419
- target[key] = cloneValue$1(patch[key]);
8131
+ target[key] = cloneValue(patch[key]);
8420
8132
  }) : Object.keys(patch).forEach(key => {
8421
8133
  var _a;
8422
8134
  const nextValue = patch[key],
8423
8135
  previousValue = target[key],
8424
8136
  baseValue = null === (_a = this.baseAttributes) || void 0 === _a ? void 0 : _a[key];
8425
- isPlainObject$1(previousValue) && isPlainObject$1(nextValue) ? target[key] = deepMerge$1(previousValue, nextValue) : !isPlainObject$1(previousValue) && isPlainObject$1(baseValue) && isPlainObject$1(nextValue) ? target[key] = deepMerge$1(baseValue, nextValue) : target[key] = cloneValue$1(nextValue);
8137
+ isPlainObject(previousValue) && isPlainObject(nextValue) ? target[key] = deepMerge(previousValue, nextValue) : !isPlainObject(previousValue) && isPlainObject(baseValue) && isPlainObject(nextValue) ? target[key] = deepMerge(baseValue, nextValue) : target[key] = cloneValue(nextValue);
8426
8138
  });
8427
8139
  }
8428
8140
  sameArray(left, right) {
@@ -8430,186 +8142,50 @@ class StateEngine {
8430
8142
  for (let index = 0; index < left.length; index++) if (left[index] !== right[index]) return !1;
8431
8143
  return !0;
8432
8144
  }
8433
- canUseStateProxy(stateName) {
8434
- return !!this.stateProxy && (!this.stateProxyEligibility || this.stateProxyEligibility(stateName));
8435
- }
8436
- }
8437
-
8438
- class StateModel {
8439
- constructor(options = {}) {
8440
- var _a;
8441
- this.exclusiveGroupMap = new Map(), this.exclusiveGroups = new Map(), this.states = options.states, this.currentStates = options.currentStates ? [...options.currentStates] : void 0, this.stateSort = options.stateSort, this.stateProxy = options.stateProxy, this.stateEngine = options.stateEngine, this.stateEngine && options.currentStates && !this.sameStates(this.stateEngine.activeStates, options.currentStates) && this.stateEngine.applyStates(options.currentStates);
8442
- const exclusiveGroups = null !== (_a = options.exclusiveGroups) && void 0 !== _a ? _a : {};
8443
- for (const groupName in exclusiveGroups) Object.prototype.hasOwnProperty.call(exclusiveGroups, groupName) && this.registerExclusiveGroup(groupName, exclusiveGroups[groupName]);
8444
- }
8445
- getCurrentStates() {
8446
- return this.currentStates ? [...this.currentStates] : [];
8447
- }
8448
- hasState(stateName) {
8449
- return this.stateEngine ? this.stateEngine.hasState(stateName) : !(!this.currentStates || !this.currentStates.length) && (null == stateName || this.currentStates.includes(stateName));
8450
- }
8451
- getState(stateName) {
8452
- var _a;
8453
- return null === (_a = this.states) || void 0 === _a ? void 0 : _a[stateName];
8454
- }
8455
- useStates(states) {
8456
- var _a;
8457
- if (this.stateEngine) {
8458
- const result = this.stateEngine.applyStates(states);
8459
- return this.currentStates = [...result.activeStates], {
8460
- changed: result.changed,
8461
- states: [...result.activeStates],
8462
- effectiveStates: [...result.effectiveStates]
8463
- };
8464
- }
8465
- if (!states.length) return this.clearStates();
8466
- const previousStates = null !== (_a = this.currentStates) && void 0 !== _a ? _a : [],
8467
- changed = previousStates.length !== states.length || states.some((stateName, index) => previousStates[index] !== stateName),
8468
- nextStates = this.sortStates(states);
8469
- return changed && (this.currentStates = nextStates), {
8470
- changed: changed,
8471
- states: changed ? [...nextStates] : [...previousStates]
8472
- };
8473
- }
8474
- clearStates() {
8475
- if (this.stateEngine) {
8476
- const result = this.stateEngine.clearStates();
8477
- return this.currentStates = [], {
8478
- changed: result.changed,
8479
- states: [],
8480
- effectiveStates: []
8481
- };
8482
- }
8483
- const changed = this.hasState();
8484
- return this.currentStates = [], {
8485
- changed: changed,
8486
- states: []
8487
- };
8488
- }
8489
- addState(stateName, keepCurrentStates) {
8490
- var _a;
8491
- if (this.stateEngine) {
8492
- const result = this.stateEngine.addState(stateName, keepCurrentStates);
8493
- return this.currentStates = [...result.activeStates], {
8494
- changed: result.changed,
8495
- states: [...result.activeStates],
8496
- effectiveStates: [...result.effectiveStates]
8497
- };
8498
- }
8499
- if (this.currentStates && this.currentStates.includes(stateName) && (keepCurrentStates || 1 === this.currentStates.length)) return {
8500
- changed: !1,
8501
- states: this.getCurrentStates()
8502
- };
8503
- const nextStates = keepCurrentStates && (null === (_a = this.currentStates) || void 0 === _a ? void 0 : _a.length) ? this.currentStates.concat([stateName]) : [stateName];
8504
- return this.useStates(nextStates);
8505
- }
8506
- removeState(stateName) {
8507
- if (this.stateEngine) {
8508
- const result = this.stateEngine.removeState(stateName);
8509
- return this.currentStates = [...result.activeStates], {
8510
- changed: result.changed,
8511
- states: [...result.activeStates],
8512
- effectiveStates: [...result.effectiveStates]
8513
- };
8514
- }
8515
- if (!this.currentStates) return {
8516
- changed: !1,
8517
- states: []
8518
- };
8519
- const filter = Array.isArray(stateName) ? s => !stateName.includes(s) : s => s !== stateName,
8520
- nextStates = this.currentStates.filter(filter);
8521
- return nextStates.length === this.currentStates.length ? {
8522
- changed: !1,
8523
- states: this.getCurrentStates()
8524
- } : this.useStates(nextStates);
8525
- }
8526
- toggleState(stateName) {
8527
- if (this.stateEngine) {
8528
- const result = this.stateEngine.toggleState(stateName);
8529
- return this.currentStates = [...result.activeStates], {
8530
- changed: result.changed,
8531
- states: [...result.activeStates],
8532
- effectiveStates: [...result.effectiveStates]
8533
- };
8534
- }
8535
- if (this.hasState(stateName)) return this.removeState(stateName);
8536
- const nextStates = this.currentStates ? this.currentStates.slice() : [];
8537
- return nextStates.includes(stateName) || nextStates.push(stateName), this.useStates(nextStates);
8538
- }
8539
- sortStates(states) {
8540
- return this.stateEngine ? [...this.stateEngine.activeStates] : this.stateSort ? [...states].sort(this.stateSort) : [...states];
8541
- }
8542
- registerExclusiveGroup(groupName, states) {
8543
- const uniqueStates = Array.from(new Set(states));
8544
- this.exclusiveGroups.set(groupName, uniqueStates), uniqueStates.forEach(stateName => this.exclusiveGroupMap.set(stateName, groupName));
8545
- }
8546
- getExclusiveGroup(stateName) {
8547
- return this.exclusiveGroupMap.get(stateName);
8548
- }
8549
- getMutuallyExclusiveStates(stateName) {
8550
- var _a;
8551
- const groupName = this.getExclusiveGroup(stateName);
8552
- return groupName ? (null !== (_a = this.exclusiveGroups.get(groupName)) && void 0 !== _a ? _a : []).filter(name => name !== stateName) : [];
8553
- }
8554
- isMutuallyExclusive(stateA, stateB) {
8555
- const groupName = this.getExclusiveGroup(stateA);
8556
- return !!groupName && groupName === this.getExclusiveGroup(stateB) && stateA !== stateB;
8557
- }
8558
- get effectiveStates() {
8559
- var _a, _b, _c;
8560
- return null !== (_c = null !== (_b = null === (_a = this.stateEngine) || void 0 === _a ? void 0 : _a.effectiveStates) && void 0 !== _b ? _b : this.currentStates) && void 0 !== _c ? _c : [];
8561
- }
8562
- get resolvedPatch() {
8563
- var _a;
8564
- return null === (_a = this.stateEngine) || void 0 === _a ? void 0 : _a.resolvedPatch;
8565
- }
8566
- sameStates(left, right) {
8567
- if (left.length !== right.length) return !1;
8568
- for (let index = 0; index < left.length; index++) if (left[index] !== right[index]) return !1;
8569
- return !0;
8570
- }
8571
8145
  }
8572
8146
 
8573
- function isPlainObject(value) {
8574
- return null != value && "object" == typeof value && !Array.isArray(value);
8575
- }
8576
- function cloneValue(value) {
8577
- if (!isPlainObject(value)) return value;
8578
- const clone = {};
8579
- for (const key in value) Object.prototype.hasOwnProperty.call(value, key) && (clone[key] = cloneValue(value[key]));
8580
- return clone;
8581
- }
8582
- function deepMerge(base, value) {
8583
- const result = cloneValue(base) || {};
8584
- for (const key in value) {
8585
- if (!Object.prototype.hasOwnProperty.call(value, key)) continue;
8586
- const nextValue = value[key],
8587
- previousValue = result[key];
8588
- isPlainObject(previousValue) && isPlainObject(nextValue) ? result[key] = deepMerge(previousValue, nextValue) : result[key] = cloneValue(nextValue);
8589
- }
8590
- return result;
8591
- }
8592
- class StateStyleResolver {
8593
- constructor(options = {}) {
8594
- this.options = options;
8595
- }
8596
- resolve(normalAttrs, states, stateProxy, currentStates, stateSort) {
8597
- var _a;
8598
- const mergeMode = null !== (_a = this.options.mergeMode) && void 0 !== _a ? _a : "shallow",
8599
- sortedStates = stateSort ? currentStates.slice().sort(stateSort) : currentStates.slice(),
8600
- resolvedAttrs = {};
8601
- return sortedStates.forEach(stateName => {
8602
- const attrs = stateProxy ? stateProxy(stateName, sortedStates) : null == states ? void 0 : states[stateName];
8603
- if (null != attrs) for (const key in attrs) {
8604
- if (!Object.prototype.hasOwnProperty.call(attrs, key)) continue;
8605
- const nextValue = attrs[key];
8606
- if ("deep" === mergeMode && isPlainObject(nextValue) && (isPlainObject(resolvedAttrs[key]) || isPlainObject(normalAttrs[key]))) {
8607
- const baseValue = isPlainObject(resolvedAttrs[key]) ? resolvedAttrs[key] : isPlainObject(normalAttrs[key]) ? normalAttrs[key] : {};
8608
- resolvedAttrs[key] = deepMerge(baseValue, nextValue);
8609
- } else resolvedAttrs[key] = cloneValue(nextValue);
8610
- }
8611
- }), resolvedAttrs;
8147
+ var UpdateCategory;
8148
+ !function (UpdateCategory) {
8149
+ UpdateCategory[UpdateCategory.NONE = 0] = "NONE", UpdateCategory[UpdateCategory.PAINT = 1] = "PAINT", UpdateCategory[UpdateCategory.SHAPE = 2] = "SHAPE", UpdateCategory[UpdateCategory.BOUNDS = 4] = "BOUNDS", UpdateCategory[UpdateCategory.TRANSFORM = 8] = "TRANSFORM", UpdateCategory[UpdateCategory.LAYOUT = 16] = "LAYOUT", UpdateCategory[UpdateCategory.PICK = 32] = "PICK";
8150
+ }(UpdateCategory || (UpdateCategory = {}));
8151
+ const ATTRIBUTE_CATEGORY = {
8152
+ fill: UpdateCategory.PAINT,
8153
+ opacity: UpdateCategory.PAINT,
8154
+ fillOpacity: UpdateCategory.PAINT,
8155
+ strokeOpacity: UpdateCategory.PAINT,
8156
+ lineDash: UpdateCategory.PAINT,
8157
+ lineDashOffset: UpdateCategory.PAINT,
8158
+ lineCap: UpdateCategory.PAINT,
8159
+ lineJoin: UpdateCategory.PAINT,
8160
+ miterLimit: UpdateCategory.PAINT,
8161
+ shadowColor: UpdateCategory.PAINT,
8162
+ x: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8163
+ y: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8164
+ scaleX: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8165
+ scaleY: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8166
+ angle: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8167
+ anchor: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8168
+ anchor3d: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8169
+ postMatrix: UpdateCategory.TRANSFORM | UpdateCategory.BOUNDS,
8170
+ layout: UpdateCategory.LAYOUT,
8171
+ zIndex: UpdateCategory.PAINT,
8172
+ visible: UpdateCategory.PAINT | UpdateCategory.PICK,
8173
+ lineWidth: UpdateCategory.SHAPE | UpdateCategory.BOUNDS | UpdateCategory.PICK,
8174
+ width: UpdateCategory.SHAPE | UpdateCategory.BOUNDS,
8175
+ height: UpdateCategory.SHAPE | UpdateCategory.BOUNDS
8176
+ };
8177
+ const ATTRIBUTE_DELTA_CLASSIFIER = {
8178
+ stroke: (prev, next) => (null != prev && !1 !== prev) !== (null != next && !1 !== next) ? UpdateCategory.PAINT | UpdateCategory.BOUNDS | UpdateCategory.PICK : UpdateCategory.PAINT,
8179
+ shadowBlur: (prev, next) => {
8180
+ const prevBlur = Number(null != prev ? prev : 0),
8181
+ nextBlur = Number(null != next ? next : 0);
8182
+ return prevBlur !== nextBlur && (prevBlur > 0 || nextBlur > 0) ? UpdateCategory.PAINT | UpdateCategory.BOUNDS : UpdateCategory.PAINT;
8612
8183
  }
8184
+ };
8185
+ function classifyAttributeDelta(key, prev, next) {
8186
+ var _a;
8187
+ const dynamicClassifier = ATTRIBUTE_DELTA_CLASSIFIER[key];
8188
+ return dynamicClassifier ? dynamicClassifier(prev, next) : null !== (_a = ATTRIBUTE_CATEGORY[key]) && void 0 !== _a ? _a : UpdateCategory.PAINT;
8613
8189
  }
8614
8190
 
8615
8191
  function hasOwnKeys(value) {
@@ -8619,25 +8195,22 @@ function normalizeNoAnimateAttrConfig(config) {
8619
8195
  return config ? Array.isArray(config) ? config.reduce((acc, key) => (acc[key] = 1, acc), {}) : Object.keys(config).reduce((acc, key) => (config[key] && (acc[key] = 1), acc), {}) : {};
8620
8196
  }
8621
8197
  class StateTransitionOrchestrator {
8622
- analyzeTransition(_currentAttrs, targetAttrs, stateNames, hasAnimation, options = {}) {
8198
+ analyzeTransition(targetAttrs, hasAnimation, options = {}) {
8623
8199
  var _a, _b;
8624
8200
  const plan = {
8625
- stateNames: stateNames,
8626
8201
  targetAttrs: Object.assign({}, targetAttrs),
8627
8202
  animateAttrs: {},
8628
- jumpAttrs: {},
8629
8203
  noAnimateAttrs: {}
8630
8204
  };
8631
8205
  if (!hasAnimation) return plan;
8632
8206
  const noWorkAnimateAttr = Object.assign(Object.assign({}, null !== (_a = options.noWorkAnimateAttr) && void 0 !== _a ? _a : {}), normalizeNoAnimateAttrConfig(null === (_b = options.animateConfig) || void 0 === _b ? void 0 : _b.noAnimateAttrs)),
8633
8207
  isClear = !0 === options.isClear,
8634
- getDefaultAttribute = options.getDefaultAttribute,
8208
+ readDefaultAttribute = options.getDefaultAttribute,
8635
8209
  shouldSkipDefaultAttribute = options.shouldSkipDefaultAttribute,
8636
8210
  assignTransitionAttr = (key, value) => {
8637
- if (noWorkAnimateAttr[key]) return plan.jumpAttrs[key] = value, void (plan.noAnimateAttrs[key] = value);
8638
- if (isClear && void 0 === value) {
8211
+ if (noWorkAnimateAttr[key]) plan.noAnimateAttrs[key] = value;else if (isClear && void 0 === value) {
8639
8212
  if (null == shouldSkipDefaultAttribute ? void 0 : shouldSkipDefaultAttribute(key, targetAttrs)) return;
8640
- plan.animateAttrs[key] = getDefaultAttribute ? getDefaultAttribute(key) : value;
8213
+ plan.animateAttrs[key] = readDefaultAttribute(key);
8641
8214
  } else plan.animateAttrs[key] = value;
8642
8215
  };
8643
8216
  for (const key in targetAttrs) {
@@ -8673,13 +8246,13 @@ class StateTransitionOrchestrator {
8673
8246
  type: AttributeUpdateType.STATE
8674
8247
  }), plan;
8675
8248
  }
8676
- applyClearTransition(graphic, targetAttrs, hasAnimation, stateNames, options = {}) {
8677
- var _a, _b, _c, _d;
8678
- const plan = this.analyzeTransition({}, targetAttrs, stateNames, hasAnimation, {
8679
- noWorkAnimateAttr: null === (_a = graphic.getNoWorkAnimateAttr) || void 0 === _a ? void 0 : _a.call(graphic),
8249
+ applyClearTransition(graphic, targetAttrs, hasAnimation, options = {}) {
8250
+ var _a;
8251
+ const plan = this.analyzeTransition(targetAttrs, hasAnimation, {
8252
+ noWorkAnimateAttr: graphic.getNoWorkAnimateAttr(),
8680
8253
  isClear: !0,
8681
- getDefaultAttribute: null === (_b = graphic.getDefaultAttribute) || void 0 === _b ? void 0 : _b.bind(graphic),
8682
- shouldSkipDefaultAttribute: null !== (_c = options.shouldSkipDefaultAttribute) && void 0 !== _c ? _c : null === (_d = graphic.shouldSkipStateTransitionDefaultAttribute) || void 0 === _d ? void 0 : _d.bind(graphic),
8254
+ getDefaultAttribute: graphic.getDefaultAttribute.bind(graphic),
8255
+ shouldSkipDefaultAttribute: null !== (_a = options.shouldSkipDefaultAttribute) && void 0 !== _a ? _a : graphic.shouldSkipStateTransitionDefaultAttribute.bind(graphic),
8683
8256
  animateConfig: options.animateConfig,
8684
8257
  extraAnimateAttrs: options.extraAnimateAttrs
8685
8258
  });
@@ -8688,23 +8261,11 @@ class StateTransitionOrchestrator {
8688
8261
  }
8689
8262
 
8690
8263
  const compiler = new StateDefinitionCompiler();
8691
- function copyDefinitions(definitions) {
8692
- return definitions ? Object.assign({}, definitions) : {};
8693
- }
8694
8264
  function buildEffectiveSourceDefinitions(parentScope, localStateDefinitions, themeStateDefinitions) {
8695
- const merged = copyDefinitions(parentScope ? parentScope.effectiveSourceDefinitions : themeStateDefinitions);
8696
- return localStateDefinitions && Object.keys(localStateDefinitions).forEach(stateName => {
8697
- merged[stateName] = localStateDefinitions[stateName];
8698
- }), merged;
8699
- }
8700
- function initializeScope(scope, revision = 0) {
8701
- var _a;
8702
- const effectiveSourceDefinitions = buildEffectiveSourceDefinitions(scope.parentScope, scope.localStateDefinitions, scope.themeStateDefinitions);
8703
- return scope.effectiveSourceDefinitions = effectiveSourceDefinitions, scope.effectiveCompiledDefinitions = compiler.compile(effectiveSourceDefinitions), scope.parentRevisionAtBuild = null === (_a = scope.parentScope) || void 0 === _a ? void 0 : _a.revision, scope.revision = revision, scope.dirty = !1, scope;
8265
+ return Object.assign({}, parentScope ? parentScope.effectiveSourceDefinitions : themeStateDefinitions, localStateDefinitions);
8704
8266
  }
8705
8267
  function createRootSharedStateScope(stage, themeStateDefinitions) {
8706
- return initializeScope({
8707
- ownerKind: "root",
8268
+ return rebuildSharedStateScope({
8708
8269
  ownerStage: stage,
8709
8270
  themeStateDefinitions: themeStateDefinitions,
8710
8271
  effectiveSourceDefinitions: {},
@@ -8715,9 +8276,7 @@ function createRootSharedStateScope(stage, themeStateDefinitions) {
8715
8276
  }, 0);
8716
8277
  }
8717
8278
  function createGroupSharedStateScope(group, parentScope, localStateDefinitions) {
8718
- return initializeScope({
8719
- ownerKind: "group",
8720
- ownerGroup: group,
8279
+ return rebuildSharedStateScope({
8721
8280
  ownerStage: group.stage,
8722
8281
  parentScope: parentScope,
8723
8282
  localStateDefinitions: localStateDefinitions,
@@ -8737,14 +8296,13 @@ function setSharedStateScopeLocalDefinitions(scope, localStateDefinitions) {
8737
8296
  function setRootSharedStateScopeThemeDefinitions(scope, themeStateDefinitions) {
8738
8297
  return scope.themeStateDefinitions !== themeStateDefinitions && (scope.themeStateDefinitions = themeStateDefinitions, rebuildSharedStateScope(scope), !0);
8739
8298
  }
8740
- function rebuildSharedStateScope(scope) {
8299
+ function rebuildSharedStateScope(scope, revision = scope.revision + 1) {
8741
8300
  var _a;
8742
8301
  const effectiveSourceDefinitions = buildEffectiveSourceDefinitions(scope.parentScope, scope.localStateDefinitions, scope.themeStateDefinitions);
8743
- return scope.effectiveSourceDefinitions = effectiveSourceDefinitions, scope.effectiveCompiledDefinitions = compiler.compile(effectiveSourceDefinitions), scope.parentRevisionAtBuild = null === (_a = scope.parentScope) || void 0 === _a ? void 0 : _a.revision, scope.revision += 1, scope.dirty = !1, scope;
8302
+ return scope.effectiveSourceDefinitions = effectiveSourceDefinitions, scope.effectiveCompiledDefinitions = compiler.compile(effectiveSourceDefinitions), scope.parentRevisionAtBuild = null === (_a = scope.parentScope) || void 0 === _a ? void 0 : _a.revision, scope.revision = revision, scope.dirty = !1, scope;
8744
8303
  }
8745
8304
  function ensureSharedStateScopeFresh(scope) {
8746
- var _a;
8747
- if (scope) return null === (_a = getActiveStageStatePerfMonitor(scope.ownerStage)) || void 0 === _a || _a.recordRefresh("ensureFreshCalls"), scope.parentScope && ensureSharedStateScopeFresh(scope.parentScope), (scope.dirty || scope.parentScope && scope.parentRevisionAtBuild !== scope.parentScope.revision) && rebuildSharedStateScope(scope), scope;
8305
+ if (scope) return scope.parentScope && ensureSharedStateScopeFresh(scope.parentScope), (scope.dirty || scope.parentScope && scope.parentRevisionAtBuild !== scope.parentScope.revision) && rebuildSharedStateScope(scope), scope;
8748
8306
  }
8749
8307
  function collectSharedStateScopeChain(scope) {
8750
8308
  const chain = [];
@@ -8754,43 +8312,27 @@ function collectSharedStateScopeChain(scope) {
8754
8312
  }
8755
8313
 
8756
8314
  function scheduleStageSharedStateRefresh(stage) {
8757
- var _a;
8758
- stage && "released" !== stage.releaseStatus && (null === (_a = getActiveStageStatePerfMonitor(stage)) || void 0 === _a || _a.recordRefresh("renderScheduled"), stage.renderNextFrame());
8315
+ stage && "released" !== stage.releaseStatus && stage.renderNextFrame();
8759
8316
  }
8760
8317
  function enqueueGraphicSharedStateRefresh(stage, graphic) {
8761
8318
  var _a;
8762
8319
  if (!stage) return;
8763
- const pending = null !== (_a = stage._pendingSharedStateRefreshGraphics) && void 0 !== _a ? _a : stage._pendingSharedStateRefreshGraphics = new Set();
8764
- if (!pending.has(graphic)) {
8765
- pending.add(graphic);
8766
- const perfMonitor = getActiveStageStatePerfMonitor(stage);
8767
- null == perfMonitor || perfMonitor.recordRefresh("queuedGraphics"), null == perfMonitor || perfMonitor.recordAllocation("refreshQueuePushes");
8768
- }
8320
+ (null !== (_a = stage._pendingSharedStateRefreshGraphics) && void 0 !== _a ? _a : stage._pendingSharedStateRefreshGraphics = new Set()).add(graphic);
8769
8321
  }
8770
8322
  function markScopeActiveDescendantsDirty(scope, stage) {
8771
- let marked = !1;
8772
- scope.subtreeActiveDescendants.forEach(graphic => {
8323
+ scope.subtreeActiveDescendants.size && (scope.subtreeActiveDescendants.forEach(graphic => {
8773
8324
  var _a;
8774
8325
  graphic.sharedStateDirty = !0;
8775
- enqueueGraphicSharedStateRefresh(null !== (_a = null != stage ? stage : graphic.stage) && void 0 !== _a ? _a : scope.ownerStage, graphic), marked = !0;
8776
- }), marked && scheduleStageSharedStateRefresh(null != stage ? stage : scope.ownerStage);
8326
+ enqueueGraphicSharedStateRefresh(null !== (_a = null != stage ? stage : graphic.stage) && void 0 !== _a ? _a : scope.ownerStage, graphic);
8327
+ }), scheduleStageSharedStateRefresh(null != stage ? stage : scope.ownerStage));
8777
8328
  }
8778
8329
  function flushStageSharedStateRefresh(stage) {
8779
8330
  const pending = stage._pendingSharedStateRefreshGraphics;
8780
8331
  if (!pending || !pending.size) return;
8781
- const perfMonitor = getActiveStageStatePerfMonitor(stage),
8782
- start = perfMonitor ? performance.now() : 0,
8783
- graphics = Array.from(pending.values());
8784
- pending.clear(), null == perfMonitor || perfMonitor.recordRefresh("flushedGraphics", graphics.length), graphics.forEach(graphic => {
8785
- if ("released" === graphic.releaseStatus) return;
8786
- if (graphic.stage !== stage) return;
8787
- if (!graphic.sharedStateDirty) return;
8788
- const refresh = graphic.refreshSharedStateBeforeRender;
8789
- "function" == typeof refresh && (refresh.call(graphic), null == perfMonitor || perfMonitor.incrementCounter("sharedRefreshCommits"));
8790
- }), perfMonitor && (perfMonitor.recordCost("sharedRefresh", performance.now() - start), perfMonitor.recordEvent("shared-refresh-flush", {
8791
- stageId: stage._uid,
8792
- flushedGraphics: graphics.length
8793
- }));
8332
+ const graphics = Array.from(pending.values());
8333
+ pending.clear(), graphics.forEach(graphic => {
8334
+ "released" !== graphic.releaseStatus && graphic.stage === stage && graphic.sharedStateDirty && graphic.refreshSharedStateBeforeRender();
8335
+ });
8794
8336
  }
8795
8337
 
8796
8338
  const _tempBounds$1 = new AABBBounds(),
@@ -8801,10 +8343,8 @@ const tempConstantXYKey = ["x", "y"],
8801
8343
  tempConstantScaleXYKey = ["scaleX", "scaleY"],
8802
8344
  tempConstantAngleKey = ["angle"],
8803
8345
  builtinTextureTypes = new Set(["circle", "diamond", "rect", "vertical-line", "horizontal-line", "bias-lr", "bias-rl", "grid", "wave"]),
8804
- FULL_STATE_DEFINITION_KEYS = new Set(["name", "patch", "priority", "exclude", "suppress", "resolver", "declaredAffectedKeys"]),
8805
8346
  point = new Point(),
8806
8347
  EMPTY_STATE_NAMES = [],
8807
- deprecatedLocalStateFallbackWarningStateNames = new Set(),
8808
8348
  BROAD_UPDATE_CATEGORY = UpdateCategory.PAINT | UpdateCategory.SHAPE | UpdateCategory.BOUNDS | UpdateCategory.TRANSFORM | UpdateCategory.LAYOUT;
8809
8349
  function isPlainObjectValue(value) {
8810
8350
  return "object" == typeof value && null != value && !Array.isArray(value);
@@ -8918,11 +8458,6 @@ class Graphic extends Node {
8918
8458
  getAttributes() {
8919
8459
  return this.attribute;
8920
8460
  }
8921
- getStateStyleResolver(mergeMode) {
8922
- return "deep" === mergeMode ? (this.deepStateStyleResolver || (this.deepStateStyleResolver = new StateStyleResolver({
8923
- mergeMode: "deep"
8924
- })), this.deepStateStyleResolver) : (this.stateStyleResolver || (this.stateStyleResolver = new StateStyleResolver()), this.stateStyleResolver);
8925
- }
8926
8461
  getStateTransitionOrchestrator() {
8927
8462
  return this.stateTransitionOrchestrator || (this.stateTransitionOrchestrator = new StateTransitionOrchestrator()), this.stateTransitionOrchestrator;
8928
8463
  }
@@ -8938,7 +8473,7 @@ class Graphic extends Node {
8938
8473
  syncSharedStateScopeBindingFromTree(markDirty = !0) {
8939
8474
  var _a;
8940
8475
  const nextScope = this.resolveBoundSharedStateScope();
8941
- return this.boundSharedStateScope === nextScope ? (this.syncSharedStateActiveRegistrations(), !1) : (this.boundSharedStateScope = nextScope, this.boundSharedStateRevision = void 0, this.localFallbackCompiledDefinitions = void 0, this.compiledStateDefinitions = void 0, this.compiledStateDefinitionsCacheKey = void 0, this.stateEngine = void 0, this.stateEngineCompiledDefinitions = void 0, this.stateEngineStateProxyModeKey = void 0, this.syncSharedStateActiveRegistrations(), markDirty && (null === (_a = this.currentStates) || void 0 === _a ? void 0 : _a.length) && this.markSharedStateDirty(), !0);
8476
+ return this.boundSharedStateScope === nextScope ? (this.syncSharedStateActiveRegistrations(), !1) : (this.boundSharedStateScope = nextScope, this.boundSharedStateRevision = void 0, this.compiledStateDefinitions = void 0, this.compiledStateDefinitionsCacheKey = void 0, this.stateEngine = void 0, this.stateEngineCompiledDefinitions = void 0, this.syncSharedStateActiveRegistrations(), markDirty && (null === (_a = this.currentStates) || void 0 === _a ? void 0 : _a.length) && this.markSharedStateDirty(), !0);
8942
8477
  }
8943
8478
  syncSharedStateScopeBindingOnTreeChange(markDirty = !0) {
8944
8479
  var _a, _b;
@@ -8977,13 +8512,7 @@ class Graphic extends Node {
8977
8512
  }
8978
8513
  getLocalStatesVersion() {
8979
8514
  var _a, _b;
8980
- return this.localStateDefinitionsSource !== this.states && (this.localStateDefinitionsSource = this.states, this.localFallbackVersion = (null !== (_a = this.localFallbackVersion) && void 0 !== _a ? _a : 0) + 1), null !== (_b = this.localFallbackVersion) && void 0 !== _b ? _b : 0;
8981
- }
8982
- warnDeprecatedLocalStatesFallback(stateNames) {
8983
- for (let index = 0; index < stateNames.length; index++) {
8984
- const stateName = stateNames[index];
8985
- deprecatedLocalStateFallbackWarningStateNames.has(stateName) || (deprecatedLocalStateFallbackWarningStateNames.add(stateName), console.warn(`[VRender] graphic.states fallback for missing shared state definition "${stateName}" is deprecated. Move the state definition to sharedStateDefinitions or use stateProxy for dynamic per-graphic styles.`));
8986
- }
8515
+ return this.localStateDefinitionsSource !== this.states && (this.localStateDefinitionsSource = this.states, this.localStateDefinitionsVersion = (null !== (_a = this.localStateDefinitionsVersion) && void 0 !== _a ? _a : 0) + 1), null !== (_b = this.localStateDefinitionsVersion) && void 0 !== _b ? _b : 0;
8987
8516
  }
8988
8517
  resolveEffectiveCompiledDefinitions() {
8989
8518
  this.syncSharedStateScopeBindingFromTree(!1);
@@ -8992,50 +8521,24 @@ class Graphic extends Node {
8992
8521
  const hasStates = !!this.states && Object.keys(this.states).length > 0;
8993
8522
  if (!boundScope) {
8994
8523
  if (!hasStates) return {
8995
- compiledDefinitions: void 0,
8996
- stateProxyModeKey: "none"
8524
+ compiledDefinitions: void 0
8997
8525
  };
8998
8526
  const cacheKey = `local:${this.getLocalStatesVersion()}`;
8999
8527
  return this.compiledStateDefinitions && this.compiledStateDefinitionsCacheKey === cacheKey || (this.compiledStateDefinitions = new StateDefinitionCompiler().compile(this.states), this.compiledStateDefinitionsCacheKey = cacheKey), {
9000
- compiledDefinitions: this.compiledStateDefinitions,
9001
- stateProxyModeKey: this.stateProxy ? "legacy-all" : "none"
8528
+ compiledDefinitions: this.compiledStateDefinitions
9002
8529
  };
9003
8530
  }
9004
- const sharedCompiledDefinitions = boundScope.effectiveCompiledDefinitions,
9005
- sharedStateProxyModeKey = this.stateProxy ? "shared-missing-only" : "none",
9006
- sharedStateProxyEligibility = this.stateProxy ? stateName => !sharedCompiledDefinitions.has(stateName) : void 0;
9007
- if (!hasStates) return this.localFallbackCompiledDefinitions = void 0, {
9008
- compiledDefinitions: sharedCompiledDefinitions,
9009
- stateProxyModeKey: sharedStateProxyModeKey,
9010
- stateProxyEligibility: sharedStateProxyEligibility
9011
- };
9012
- const localStates = this.states,
9013
- missingLocalStateDefinitions = {},
9014
- missingStateNames = [];
9015
- if (Object.keys(localStates).forEach(stateName => {
9016
- sharedCompiledDefinitions.has(stateName) || (missingLocalStateDefinitions[stateName] = localStates[stateName], missingStateNames.push(stateName));
9017
- }), !missingStateNames.length) return this.localFallbackCompiledDefinitions = void 0, {
9018
- compiledDefinitions: sharedCompiledDefinitions,
9019
- stateProxyModeKey: sharedStateProxyModeKey,
9020
- stateProxyEligibility: sharedStateProxyEligibility
9021
- };
9022
- this.warnDeprecatedLocalStatesFallback(missingStateNames);
9023
- const localStatesVersion = this.getLocalStatesVersion(),
9024
- stateProxyModeKey = this.stateProxy ? `missing:${missingStateNames.sort().join("|")}` : "none",
9025
- cacheKey = `shared:${boundScope.revision}:fallback:${localStatesVersion}:${stateProxyModeKey}`;
9026
- return this.localFallbackCompiledDefinitions && this.compiledStateDefinitionsCacheKey === cacheKey || (this.localFallbackCompiledDefinitions = new StateDefinitionCompiler().compile(Object.assign(Object.assign({}, boundScope.effectiveSourceDefinitions), missingLocalStateDefinitions)), this.compiledStateDefinitionsCacheKey = cacheKey), {
9027
- compiledDefinitions: this.localFallbackCompiledDefinitions,
9028
- stateProxyModeKey: stateProxyModeKey,
9029
- stateProxyEligibility: sharedStateProxyEligibility
8531
+ return {
8532
+ compiledDefinitions: boundScope.effectiveCompiledDefinitions
9030
8533
  };
9031
8534
  }
9032
8535
  recomputeCurrentStatePatch() {
9033
8536
  var _a, _b;
9034
8537
  if (!(null === (_a = this.currentStates) || void 0 === _a ? void 0 : _a.length)) return this.effectiveStates = [], this.resolvedStatePatch = void 0, void this.syncSharedStateActiveRegistrations();
9035
8538
  const stateResolveBaseAttrs = this.getStateResolveBaseAttrs(),
9036
- transition = this.createStateModel(stateResolveBaseAttrs).useStates(this.currentStates),
8539
+ transition = this.resolveUseStatesTransition(this.currentStates, stateResolveBaseAttrs),
9037
8540
  effectiveStates = null !== (_b = transition.effectiveStates) && void 0 !== _b ? _b : transition.states,
9038
- resolvedStateAttrs = this.stateEngine && this.compiledStateDefinitions ? Object.assign({}, this.stateEngine.resolvedPatch) : this.getStateStyleResolver(this.stateMergeMode).resolve(stateResolveBaseAttrs, this.states, this.stateProxy, transition.states, this.stateSort);
8541
+ resolvedStateAttrs = this.stateEngine && this.compiledStateDefinitions ? Object.assign({}, this.stateEngine.resolvedPatch) : {};
9039
8542
  this.currentStates = transition.states, this.effectiveStates = [...effectiveStates], this.resolvedStatePatch = resolvedStateAttrs, this.syncSharedStateActiveRegistrations();
9040
8543
  }
9041
8544
  buildStaticAttributeSnapshot() {
@@ -9099,12 +8602,7 @@ class Graphic extends Node {
9099
8602
  return nextCategory & UpdateCategory.PICK && (nextCategory |= UpdateCategory.BOUNDS), nextCategory === UpdateCategory.PAINT && this.needUpdateTag(key) && (nextCategory = UpdateCategory.SHAPE | UpdateCategory.BOUNDS), category | nextCategory;
9100
8603
  }
9101
8604
  submitUpdateByCategory(category, forceUpdateTag = !1) {
9102
- var _a;
9103
8605
  if (forceUpdateTag) return this.addUpdateShapeAndBoundsTag(), this.addUpdatePositionTag(), void this.addUpdateLayoutTag();
9104
- if (category !== UpdateCategory.NONE) {
9105
- const stage = this.stage;
9106
- stage && (null === (_a = getActiveStageStatePerfMonitor(stage)) || void 0 === _a || _a.recordCategory(category));
9107
- }
9108
8606
  (category & BROAD_UPDATE_CATEGORY) !== BROAD_UPDATE_CATEGORY ? (category & UpdateCategory.SHAPE ? this.addUpdateShapeAndBoundsTag() : category & UpdateCategory.BOUNDS && this.addUpdateBoundTag(), category & UpdateCategory.PAINT && this.addUpdatePaintTag(), category & UpdateCategory.TRANSFORM && this.addUpdatePositionTag(), category & UpdateCategory.LAYOUT && this.addUpdateLayoutTag()) : this.addBroadUpdateTag();
9109
8607
  }
9110
8608
  submitUpdateByDelta(delta, forceUpdateTag = !1) {
@@ -9643,103 +9141,94 @@ class Graphic extends Node {
9643
9141
  var _a;
9644
9142
  return null === (_a = this.stateEngine) || void 0 === _a || _a.setResolveContext(this, stateResolveBaseAttrs), stateResolveBaseAttrs;
9645
9143
  }
9646
- createStateModel(stateResolveBaseAttrs = this.getStateResolveBaseAttrs()) {
9144
+ ensureStateEngine(stateResolveBaseAttrs = this.getStateResolveBaseAttrs()) {
9647
9145
  const {
9648
- compiledDefinitions: compiledDefinitions,
9649
- stateProxyEligibility: stateProxyEligibility,
9650
- stateProxyModeKey: stateProxyModeKey
9146
+ compiledDefinitions: compiledDefinitions
9651
9147
  } = this.resolveEffectiveCompiledDefinitions();
9652
- return this.compiledStateDefinitions = compiledDefinitions, compiledDefinitions ? this.stateEngine && this.stateEngineCompiledDefinitions === compiledDefinitions && this.stateEngineStateProxy === this.stateProxy && this.stateEngineStateSort === this.stateSort && this.stateEngineMergeMode === this.stateMergeMode && this.stateEngineStateProxyModeKey === stateProxyModeKey || (this.stateEngine = new StateEngine({
9148
+ return this.compiledStateDefinitions = compiledDefinitions, compiledDefinitions ? this.stateEngine && this.stateEngineCompiledDefinitions === compiledDefinitions && this.stateEngineStateSort === this.stateSort && this.stateEngineMergeMode === this.stateMergeMode || (this.stateEngine = new StateEngine({
9653
9149
  compiledDefinitions: compiledDefinitions,
9654
9150
  stateSort: this.stateSort,
9655
- stateProxy: this.stateProxy,
9656
- stateProxyEligibility: stateProxyEligibility,
9657
- states: this.states,
9658
9151
  mergeMode: this.stateMergeMode
9659
- }), this.stateEngineCompiledDefinitions = compiledDefinitions, this.stateEngineStateProxy = this.stateProxy, this.stateEngineStateSort = this.stateSort, this.stateEngineMergeMode = this.stateMergeMode, this.stateEngineStateProxyModeKey = stateProxyModeKey) : (this.stateEngine = void 0, this.stateEngineCompiledDefinitions = void 0, this.stateEngineStateProxyModeKey = void 0), this.syncStateResolveContext(stateResolveBaseAttrs), new StateModel({
9660
- states: this.states,
9661
- currentStates: this.currentStates,
9662
- stateSort: this.stateSort,
9663
- stateProxy: this.stateProxy,
9664
- stateEngine: this.stateEngine
9665
- });
9152
+ }), this.stateEngineCompiledDefinitions = compiledDefinitions, this.stateEngineStateSort = this.stateSort, this.stateEngineMergeMode = this.stateMergeMode) : (this.stateEngine = void 0, this.stateEngineCompiledDefinitions = void 0), this.syncStateResolveContext(stateResolveBaseAttrs), this.stateEngine && this.currentStates && !this.sameStateNames(this.stateEngine.activeStates, this.currentStates) && this.stateEngine.applyStates(this.currentStates), this.stateEngine;
9153
+ }
9154
+ toGraphicStateTransition(result) {
9155
+ return {
9156
+ changed: result.changed,
9157
+ states: [...result.activeStates],
9158
+ effectiveStates: [...result.effectiveStates]
9159
+ };
9666
9160
  }
9667
- resolveSimpleLocalStateTransition(states, previousStates) {
9161
+ sortLocalStates(states) {
9162
+ return this.stateSort ? [...states].sort(this.stateSort) : [...states];
9163
+ }
9164
+ resolveLocalUseStatesTransition(states) {
9668
9165
  var _a;
9669
- if (!this.states || this.stateProxy || this.stateSort || "deep" === this.stateMergeMode || this.parent || (null === (_a = this.stage) || void 0 === _a ? void 0 : _a.rootSharedStateScope) || this.boundSharedStateScope) return null;
9670
- if (1 === states.length) {
9671
- const stateName = states[0],
9672
- hasDefinition = Object.prototype.hasOwnProperty.call(this.states, stateName),
9673
- nextStates = [stateName],
9674
- changed = !this.sameStateNames(previousStates, nextStates),
9675
- resolvedStateAttrs = {};
9676
- if (hasDefinition) {
9677
- const attrs = this.states[stateName];
9678
- if (null != attrs) {
9679
- if (!isPlainObjectValue(attrs)) return null;
9680
- const keys = Object.keys(attrs);
9681
- for (let keyIndex = 0; keyIndex < keys.length; keyIndex++) {
9682
- const key = keys[keyIndex];
9683
- if (FULL_STATE_DEFINITION_KEYS.has(key)) return null;
9684
- const attrValue = attrs[key];
9685
- resolvedStateAttrs[key] = isPlainObjectValue(attrValue) ? cloneAttributeValue(attrValue) : attrValue;
9686
- }
9687
- }
9688
- }
9689
- return {
9690
- changed: changed,
9691
- states: nextStates,
9692
- effectiveStates: nextStates,
9693
- resolvedStateAttrs: resolvedStateAttrs
9694
- };
9695
- }
9696
- const uniqueStates = Array.from(new Set(states)),
9697
- withDefinition = [],
9698
- withoutDefinition = [];
9699
- for (let i = 0; i < uniqueStates.length; i++) {
9700
- const stateName = uniqueStates[i];
9701
- Object.prototype.hasOwnProperty.call(this.states, stateName) ? withDefinition.push(stateName) : withoutDefinition.push(stateName);
9702
- }
9703
- withDefinition.sort((left, right) => left.localeCompare(right));
9704
- const nextStates = withDefinition.concat(withoutDefinition),
9705
- changed = !this.sameStateNames(previousStates, nextStates),
9706
- resolvedStateAttrs = {};
9707
- for (let i = 0; i < nextStates.length; i++) {
9708
- const stateName = nextStates[i];
9709
- if (!Object.prototype.hasOwnProperty.call(this.states, stateName)) continue;
9710
- const attrs = this.states[stateName];
9711
- if (null == attrs) continue;
9712
- if (!isPlainObjectValue(attrs)) return null;
9713
- const keys = Object.keys(attrs);
9714
- for (let keyIndex = 0; keyIndex < keys.length; keyIndex++) {
9715
- const key = keys[keyIndex];
9716
- if (FULL_STATE_DEFINITION_KEYS.has(key)) return null;
9717
- const attrValue = attrs[key];
9718
- resolvedStateAttrs[key] = isPlainObjectValue(attrValue) ? cloneAttributeValue(attrValue) : attrValue;
9719
- }
9720
- }
9166
+ if (!states.length) return this.resolveLocalClearStatesTransition();
9167
+ const previousStates = null !== (_a = this.currentStates) && void 0 !== _a ? _a : EMPTY_STATE_NAMES,
9168
+ changed = previousStates.length !== states.length || states.some((stateName, index) => previousStates[index] !== stateName),
9169
+ nextStates = this.sortLocalStates(states);
9721
9170
  return {
9722
9171
  changed: changed,
9723
- states: nextStates,
9724
- effectiveStates: nextStates,
9725
- resolvedStateAttrs: resolvedStateAttrs
9172
+ states: changed ? nextStates : [...previousStates]
9726
9173
  };
9727
9174
  }
9728
- resolveGraphicStateTransition(states, previousStates, forceResolverRefresh = !1) {
9729
- var _a, _b;
9730
- let transition = this.resolveSimpleLocalStateTransition(states, previousStates);
9731
- const isSimpleLocalTransition = !!transition;
9732
- let resolvedStateAttrs;
9733
- if (transition) resolvedStateAttrs = transition.resolvedStateAttrs;else {
9734
- const stateResolveBaseAttrs = this.getStateResolveBaseAttrs(),
9735
- stateModel = this.createStateModel(stateResolveBaseAttrs);
9736
- forceResolverRefresh && (null === (_a = this.stateEngine) || void 0 === _a || _a.invalidateResolverCache()), transition = stateModel.useStates(states), resolvedStateAttrs = this.stateEngine && this.compiledStateDefinitions ? Object.assign({}, this.stateEngine.resolvedPatch) : this.getStateStyleResolver(this.stateMergeMode).resolve(stateResolveBaseAttrs, this.states, this.stateProxy, transition.states, this.stateSort);
9737
- }
9175
+ resolveLocalClearStatesTransition() {
9176
+ return {
9177
+ changed: this.hasState(),
9178
+ states: []
9179
+ };
9180
+ }
9181
+ resolveUseStatesTransition(states, stateResolveBaseAttrs = this.getStateResolveBaseAttrs()) {
9182
+ const stateEngine = this.ensureStateEngine(stateResolveBaseAttrs);
9183
+ return stateEngine ? this.toGraphicStateTransition(stateEngine.applyStates(states)) : this.resolveLocalUseStatesTransition(states);
9184
+ }
9185
+ resolveClearStatesTransition() {
9186
+ const stateEngine = this.ensureStateEngine();
9187
+ return stateEngine ? this.toGraphicStateTransition(stateEngine.clearStates()) : this.resolveLocalClearStatesTransition();
9188
+ }
9189
+ resolveAddStateTransition(stateName, keepCurrentStates) {
9190
+ var _a;
9191
+ const stateEngine = this.ensureStateEngine();
9192
+ if (stateEngine) return this.toGraphicStateTransition(stateEngine.addState(stateName, keepCurrentStates));
9193
+ if (this.currentStates && this.currentStates.includes(stateName) && (keepCurrentStates || 1 === this.currentStates.length)) return {
9194
+ changed: !1,
9195
+ states: [...this.currentStates]
9196
+ };
9197
+ const nextStates = keepCurrentStates && (null === (_a = this.currentStates) || void 0 === _a ? void 0 : _a.length) ? this.currentStates.concat([stateName]) : [stateName];
9198
+ return this.resolveLocalUseStatesTransition(nextStates);
9199
+ }
9200
+ resolveRemoveStateTransition(stateName) {
9201
+ const stateEngine = this.ensureStateEngine();
9202
+ if (stateEngine) return this.toGraphicStateTransition(stateEngine.removeState(stateName));
9203
+ if (!this.currentStates) return {
9204
+ changed: !1,
9205
+ states: []
9206
+ };
9207
+ const filter = Array.isArray(stateName) ? s => !stateName.includes(s) : s => s !== stateName,
9208
+ nextStates = this.currentStates.filter(filter);
9209
+ return nextStates.length === this.currentStates.length ? {
9210
+ changed: !1,
9211
+ states: [...this.currentStates]
9212
+ } : this.resolveLocalUseStatesTransition(nextStates);
9213
+ }
9214
+ resolveToggleStateTransition(stateName) {
9215
+ const stateEngine = this.ensureStateEngine();
9216
+ if (stateEngine) return this.toGraphicStateTransition(stateEngine.toggleState(stateName));
9217
+ if (this.hasState(stateName)) return this.resolveRemoveStateTransition(stateName);
9218
+ const nextStates = this.currentStates ? this.currentStates.slice() : [];
9219
+ return nextStates.push(stateName), this.resolveLocalUseStatesTransition(nextStates);
9220
+ }
9221
+ resolveGraphicStateTransition(states, forceResolverRefresh = !1) {
9222
+ var _a;
9223
+ const stateResolveBaseAttrs = this.getStateResolveBaseAttrs(),
9224
+ stateEngine = this.ensureStateEngine(stateResolveBaseAttrs);
9225
+ forceResolverRefresh && (null == stateEngine || stateEngine.invalidateResolverCache());
9226
+ const transition = stateEngine ? this.toGraphicStateTransition(stateEngine.applyStates(states)) : this.resolveLocalUseStatesTransition(states),
9227
+ resolvedStateAttrs = this.stateEngine && this.compiledStateDefinitions ? Object.assign({}, this.stateEngine.resolvedPatch) : {};
9738
9228
  return {
9739
9229
  transition: transition,
9740
- effectiveStates: null !== (_b = transition.effectiveStates) && void 0 !== _b ? _b : transition.states,
9741
- resolvedStateAttrs: resolvedStateAttrs,
9742
- isSimpleLocalTransition: isSimpleLocalTransition
9230
+ effectiveStates: null !== (_a = transition.effectiveStates) && void 0 !== _a ? _a : transition.states,
9231
+ resolvedStateAttrs: resolvedStateAttrs
9743
9232
  };
9744
9233
  }
9745
9234
  normalizeSetStatesOptions(options) {
@@ -9770,24 +9259,14 @@ class Graphic extends Node {
9770
9259
  {
9771
9260
  transition: transition,
9772
9261
  effectiveStates: effectiveStates,
9773
- resolvedStateAttrs: resolvedStateAttrs,
9774
- isSimpleLocalTransition: isSimpleLocalTransition
9775
- } = this.resolveGraphicStateTransition(states, previousStates, !0),
9262
+ resolvedStateAttrs: resolvedStateAttrs
9263
+ } = this.resolveGraphicStateTransition(states, !0),
9776
9264
  patchChanged = !this.sameStatePatches(previousResolvedStatePatch, resolvedStateAttrs);
9777
- if ((!patchChanged || this.beforeStateUpdate(resolvedStateAttrs, previousStates, transition.states, hasAnimation, !1)) && (this.currentStates = transition.states, this.effectiveStates = isSimpleLocalTransition ? effectiveStates : [...effectiveStates], this.resolvedStatePatch = resolvedStateAttrs, this.sharedStateDirty = !1, this.syncSharedStateActiveRegistrations(), patchChanged)) {
9778
- if (this.stage) {
9779
- const perfMonitor = getActiveStageStatePerfMonitor(this.stage);
9780
- null == perfMonitor || perfMonitor.incrementCounter("stateCommits"), null == perfMonitor || perfMonitor.recordEvent("state-commit", {
9781
- graphicId: this._uid,
9782
- targetStates: [...transition.states]
9783
- });
9784
- }
9785
- hasAnimation && animateSameStatePatchChange ? (this._syncFinalAttributeFromStaticTruth(), this.applyStateAttrs(resolvedStateAttrs, transition.states, hasAnimation, !1, void 0, this.buildRemovedStateAnimationAttrs(resolvedStateAttrs, previousResolvedStatePatch))) : (this.stopStateAnimates(), this.attributeMayContainTransientAttrs ? this._restoreAttributeFromStaticTruth({
9786
- type: AttributeUpdateType.STATE
9787
- }) : this.restoreAttributeFromStatePatchDelta(previousResolvedStatePatch, this.resolvedStatePatch, {
9788
- type: AttributeUpdateType.STATE
9789
- }), this.emitStateUpdateEvent());
9790
- }
9265
+ patchChanged && !this.beforeStateUpdate(resolvedStateAttrs, previousStates, transition.states, hasAnimation, !1) || (this.currentStates = transition.states, this.effectiveStates = [...effectiveStates], this.resolvedStatePatch = resolvedStateAttrs, this.sharedStateDirty = !1, this.syncSharedStateActiveRegistrations(), patchChanged && (hasAnimation && animateSameStatePatchChange ? (this._syncFinalAttributeFromStaticTruth(), this.applyStateAttrs(resolvedStateAttrs, transition.states, hasAnimation, !1, void 0, this.buildRemovedStateAnimationAttrs(resolvedStateAttrs, previousResolvedStatePatch))) : (this.stopStateAnimates(), this.attributeMayContainTransientAttrs ? this._restoreAttributeFromStaticTruth({
9266
+ type: AttributeUpdateType.STATE
9267
+ }) : this.restoreAttributeFromStatePatchDelta(previousResolvedStatePatch, this.resolvedStatePatch, {
9268
+ type: AttributeUpdateType.STATE
9269
+ }), this.emitStateUpdateEvent())));
9791
9270
  }
9792
9271
  resolveStateAnimateConfig(animateConfig) {
9793
9272
  var _a, _b, _c;
@@ -9800,8 +9279,8 @@ class Graphic extends Node {
9800
9279
  extraAnimateAttrs: extraAnimateAttrs,
9801
9280
  shouldSkipDefaultAttribute: this.shouldSkipStateTransitionDefaultAttribute.bind(this)
9802
9281
  } : void 0;
9803
- if (isClear) return void this.getStateTransitionOrchestrator().applyClearTransition(this, attrs, hasAnimation, stateNames, transitionOptions);
9804
- const plan = this.getStateTransitionOrchestrator().analyzeTransition({}, attrs, stateNames, hasAnimation, {
9282
+ if (isClear) return void this.getStateTransitionOrchestrator().applyClearTransition(this, attrs, hasAnimation, transitionOptions);
9283
+ const plan = this.getStateTransitionOrchestrator().analyzeTransition(attrs, hasAnimation, {
9805
9284
  noWorkAnimateAttr: this.getNoWorkAnimateAttr(),
9806
9285
  animateConfig: resolvedAnimateConfig,
9807
9286
  extraAnimateAttrs: extraAnimateAttrs,
@@ -9825,43 +9304,29 @@ class Graphic extends Node {
9825
9304
  animate.stateNames && stateAnimates.push(animate);
9826
9305
  }), stateAnimates.forEach(animate => animate.stop(type));
9827
9306
  }
9828
- getNormalAttribute(key) {
9829
- var _a, _b;
9830
- const value = this.attribute[key];
9831
- return this.hasAnyTrackedAnimate() ? null === (_a = this.finalAttribute) || void 0 === _a ? void 0 : _a[key] : null != value ? value : null === (_b = this.finalAttribute) || void 0 === _b ? void 0 : _b[key];
9832
- }
9833
9307
  clearStates(hasAnimation) {
9834
9308
  var _a, _b, _c;
9835
9309
  const previousStates = null !== (_a = this.currentStates) && void 0 !== _a ? _a : EMPTY_STATE_NAMES,
9836
9310
  previousResolvedStatePatch = this.resolvedStatePatch,
9837
- transition = this.createStateModel().clearStates();
9311
+ transition = this.resolveClearStatesTransition();
9838
9312
  if (!transition.changed && 0 === previousStates.length) return this.currentStates = [], this.effectiveStates = [], this.resolvedStatePatch = void 0, this.sharedStateDirty = !1, void this.clearSharedStateActiveRegistrations();
9839
9313
  const resolvedStateAttrs = hasAnimation || this.hasCustomEvent("beforeStateUpdate") ? cloneAttributeValue(null !== (_b = this.baseAttributes) && void 0 !== _b ? _b : {}) : null !== (_c = this.baseAttributes) && void 0 !== _c ? _c : {};
9840
- if (!transition.changed || this.beforeStateUpdate(resolvedStateAttrs, previousStates, transition.states, hasAnimation, !0)) {
9841
- if (this.currentStates = transition.states, this.effectiveStates = [], this.resolvedStatePatch = void 0, this.sharedStateDirty = !1, this.clearSharedStateActiveRegistrations(), this.stage) {
9842
- const perfMonitor = getActiveStageStatePerfMonitor(this.stage);
9843
- null == perfMonitor || perfMonitor.incrementCounter("stateCommits"), null == perfMonitor || perfMonitor.recordEvent("state-commit", {
9844
- graphicId: this._uid,
9845
- targetStates: []
9846
- });
9847
- }
9848
- hasAnimation ? (this._syncFinalAttributeFromStaticTruth(), this.applyStateAttrs(resolvedStateAttrs, transition.states, hasAnimation, !0, void 0, this.buildRemovedStateAnimationAttrs(resolvedStateAttrs, previousResolvedStatePatch))) : (this.stopStateAnimates(), this.attributeMayContainTransientAttrs ? this._restoreAttributeFromStaticTruth({
9849
- type: AttributeUpdateType.STATE
9850
- }) : this.restoreAttributeFromStatePatchDelta(previousResolvedStatePatch, void 0, {
9851
- type: AttributeUpdateType.STATE
9852
- }), this.emitStateUpdateEvent());
9853
- }
9314
+ transition.changed && !this.beforeStateUpdate(resolvedStateAttrs, previousStates, transition.states, hasAnimation, !0) || (this.currentStates = transition.states, this.effectiveStates = [], this.resolvedStatePatch = void 0, this.sharedStateDirty = !1, this.clearSharedStateActiveRegistrations(), hasAnimation ? (this._syncFinalAttributeFromStaticTruth(), this.applyStateAttrs(resolvedStateAttrs, transition.states, hasAnimation, !0, void 0, this.buildRemovedStateAnimationAttrs(resolvedStateAttrs, previousResolvedStatePatch))) : (this.stopStateAnimates(), this.attributeMayContainTransientAttrs ? this._restoreAttributeFromStaticTruth({
9315
+ type: AttributeUpdateType.STATE
9316
+ }) : this.restoreAttributeFromStatePatchDelta(previousResolvedStatePatch, void 0, {
9317
+ type: AttributeUpdateType.STATE
9318
+ }), this.emitStateUpdateEvent()));
9854
9319
  }
9855
9320
  removeState(stateName, hasAnimation) {
9856
- const transition = this.createStateModel().removeState(stateName);
9321
+ const transition = this.resolveRemoveStateTransition(stateName);
9857
9322
  transition.changed && this.useStates(transition.states, hasAnimation);
9858
9323
  }
9859
9324
  toggleState(stateName, hasAnimation) {
9860
- const transition = this.createStateModel().toggleState(stateName);
9325
+ const transition = this.resolveToggleStateTransition(stateName);
9861
9326
  transition.changed && this.useStates(transition.states, hasAnimation);
9862
9327
  }
9863
9328
  addState(stateName, keepCurrentStates, hasAnimation) {
9864
- const transition = this.createStateModel().addState(stateName, keepCurrentStates);
9329
+ const transition = this.resolveAddStateTransition(stateName, keepCurrentStates);
9865
9330
  transition.changed && this.useStates(transition.states, hasAnimation);
9866
9331
  }
9867
9332
  setStates(states, options) {
@@ -9889,23 +9354,13 @@ class Graphic extends Node {
9889
9354
  {
9890
9355
  transition: transition,
9891
9356
  effectiveStates: effectiveStates,
9892
- resolvedStateAttrs: resolvedStateAttrs,
9893
- isSimpleLocalTransition: isSimpleLocalTransition
9894
- } = this.resolveGraphicStateTransition(states, previousStates);
9895
- if ((transition.changed || !this.sameStateNames(previousStates, transition.states)) && this.beforeStateUpdate(resolvedStateAttrs, previousStates, transition.states, hasAnimation, !1)) {
9896
- if (this.currentStates = transition.states, this.effectiveStates = isSimpleLocalTransition ? effectiveStates : [...effectiveStates], this.resolvedStatePatch = resolvedStateAttrs, this.sharedStateDirty = !1, this.syncSharedStateActiveRegistrations(), this.stage) {
9897
- const perfMonitor = getActiveStageStatePerfMonitor(this.stage);
9898
- null == perfMonitor || perfMonitor.incrementCounter("stateCommits"), null == perfMonitor || perfMonitor.recordEvent("state-commit", {
9899
- graphicId: this._uid,
9900
- targetStates: [...transition.states]
9901
- });
9902
- }
9903
- hasAnimation ? (this._syncFinalAttributeFromStaticTruth(), this.applyStateAttrs(resolvedStateAttrs, transition.states, hasAnimation, !1, void 0, this.buildRemovedStateAnimationAttrs(resolvedStateAttrs, previousResolvedStatePatch))) : (this.stopStateAnimates(), this.attributeMayContainTransientAttrs ? this._restoreAttributeFromStaticTruth({
9904
- type: AttributeUpdateType.STATE
9905
- }) : this.restoreAttributeFromStatePatchDelta(previousResolvedStatePatch, this.resolvedStatePatch, {
9906
- type: AttributeUpdateType.STATE
9907
- }), this.emitStateUpdateEvent());
9908
- }
9357
+ resolvedStateAttrs: resolvedStateAttrs
9358
+ } = this.resolveGraphicStateTransition(states);
9359
+ !transition.changed && this.sameStateNames(previousStates, transition.states) || this.beforeStateUpdate(resolvedStateAttrs, previousStates, transition.states, hasAnimation, !1) && (this.currentStates = transition.states, this.effectiveStates = [...effectiveStates], this.resolvedStatePatch = resolvedStateAttrs, this.sharedStateDirty = !1, this.syncSharedStateActiveRegistrations(), hasAnimation ? (this._syncFinalAttributeFromStaticTruth(), this.applyStateAttrs(resolvedStateAttrs, transition.states, hasAnimation, !1, void 0, this.buildRemovedStateAnimationAttrs(resolvedStateAttrs, previousResolvedStatePatch))) : (this.stopStateAnimates(), this.attributeMayContainTransientAttrs ? this._restoreAttributeFromStaticTruth({
9360
+ type: AttributeUpdateType.STATE
9361
+ }) : this.restoreAttributeFromStatePatchDelta(previousResolvedStatePatch, this.resolvedStatePatch, {
9362
+ type: AttributeUpdateType.STATE
9363
+ }), this.emitStateUpdateEvent()));
9909
9364
  }
9910
9365
  invalidateResolver() {
9911
9366
  var _a, _b;
@@ -10051,7 +9506,7 @@ class Graphic extends Node {
10051
9506
  }
10052
9507
  detachStageForRelease() {
10053
9508
  var _a, _b, _c;
10054
- (null === (_a = this.registeredActiveScopes) || void 0 === _a ? void 0 : _a.size) && this.clearSharedStateActiveRegistrations(), (this.mayHaveTrackedAnimates() || this.shadowRoot) && this.stopAnimates(), this.boundSharedStateScope = void 0, this.boundSharedStateRevision = void 0, this.localFallbackCompiledDefinitions = void 0, this.compiledStateDefinitions = void 0, this.compiledStateDefinitionsCacheKey = void 0, this.stateEngine = void 0, this.stateEngineCompiledDefinitions = void 0, this.stateEngineStateProxyModeKey = void 0, this.sharedStateDirty = !1, this.stage = null, this.layer = null, this.shadowRoot && (null === (_c = (_b = this.shadowRoot).detachStageForRelease) || void 0 === _c || _c.call(_b));
9509
+ (null === (_a = this.registeredActiveScopes) || void 0 === _a ? void 0 : _a.size) && this.clearSharedStateActiveRegistrations(), (this.mayHaveTrackedAnimates() || this.shadowRoot) && this.stopAnimates(), this.boundSharedStateScope = void 0, this.boundSharedStateRevision = void 0, this.compiledStateDefinitions = void 0, this.compiledStateDefinitionsCacheKey = void 0, this.stateEngine = void 0, this.stateEngineCompiledDefinitions = void 0, this.sharedStateDirty = !1, this.stage = null, this.layer = null, this.shadowRoot && (null === (_c = (_b = this.shadowRoot).detachStageForRelease) || void 0 === _c || _c.call(_b));
10055
9510
  }
10056
9511
  setStageToShadowRoot(stage, layer) {
10057
9512
  this.shadowRoot && this.shadowRoot.setStage(stage, layer);
@@ -11564,15 +11019,11 @@ class Glyph extends Graphic {
11564
11019
  const previousStates = this.currentStates ? this.currentStates.slice() : [];
11565
11020
  if (!((null === (_a = this.currentStates) || void 0 === _a ? void 0 : _a.length) !== states.length || states.some((stateName, index) => this.currentStates[index] !== stateName))) return;
11566
11021
  this.stopStateAnimates(), this.stateSort && (states = states.sort(this.stateSort));
11567
- const stateAttrs = {},
11568
- subAttrs = this.subGraphic.map(() => ({}));
11022
+ const stateAttrs = {};
11569
11023
  states.forEach(stateName => {
11570
- var _a;
11571
11024
  const attrs = this.glyphStateProxy ? this.glyphStateProxy(stateName, states) : this.glyphStates[stateName];
11572
- attrs && (Object.assign(stateAttrs, attrs.attributes), (null === (_a = attrs.subAttributes) || void 0 === _a ? void 0 : _a.length) && subAttrs.forEach((subAttrs, index) => {
11573
- Object.assign(subAttrs, attrs.subAttributes[index]);
11574
- }));
11575
- }), this.beforeStateUpdate(stateAttrs, previousStates, states, hasAnimation, !1) && (this.updateNormalAttrs(stateAttrs), this.currentStates = states, this.applyStateAttrs(stateAttrs, states, hasAnimation));
11025
+ attrs && Object.assign(stateAttrs, attrs.attributes);
11026
+ }), this.beforeStateUpdate(stateAttrs, previousStates, states, hasAnimation, !1) && (this.currentStates = states, this.applyStateAttrs(stateAttrs, states, hasAnimation));
11576
11027
  }
11577
11028
  clearStates(hasAnimation) {
11578
11029
  this.stopStateAnimates();
@@ -11581,7 +11032,6 @@ class Glyph extends Graphic {
11581
11032
  if (!this.beforeStateUpdate(this.normalAttrs, previousStates, [], hasAnimation, !0)) return;
11582
11033
  this.currentStates = [], this.applyStateAttrs(this.normalAttrs, this.currentStates, hasAnimation, !0);
11583
11034
  } else this.currentStates = [];
11584
- this.normalAttrs = null;
11585
11035
  }
11586
11036
  clone() {
11587
11037
  const glyph = new Glyph(Object.assign({}, this.attribute));
@@ -13172,7 +12622,7 @@ var GroupUpdateAABBBoundsMode;
13172
12622
  }(GroupUpdateAABBBoundsMode || (GroupUpdateAABBBoundsMode = {}));
13173
12623
  class Group extends Graphic {
13174
12624
  constructor(params) {
13175
- super(params), this.type = "group", this.parent = null, this.isContainer = !0, this._hasSharedStateDefinitions = !1, this.numberType = GROUP_NUMBER_TYPE, this._childUpdateTag = UpdateTag.UPDATE_BOUNDS;
12625
+ super(params), this.type = "group", this.parent = null, this.isContainer = !0, this.numberType = GROUP_NUMBER_TYPE, this._childUpdateTag = UpdateTag.UPDATE_BOUNDS;
13176
12626
  }
13177
12627
  get sharedStateDefinitions() {
13178
12628
  return this._sharedStateDefinitions;
@@ -13180,7 +12630,7 @@ class Group extends Graphic {
13180
12630
  set sharedStateDefinitions(value) {
13181
12631
  if (this._sharedStateDefinitions === value) return;
13182
12632
  const previousScope = this.sharedStateScope;
13183
- this._sharedStateDefinitions = value, this._hasSharedStateDefinitions = !!value && Object.keys(value).length > 0, this.ensureSharedStateScopeBound(), this.sharedStateScope && (setSharedStateScopeLocalDefinitions(this.sharedStateScope, value), markScopeActiveDescendantsDirty(this.sharedStateScope, this.stage)), previousScope !== this.sharedStateScope && this.notifyChildrenSharedStateTreeChanged();
12633
+ this._sharedStateDefinitions = value, this.ensureSharedStateScopeBound(), this.sharedStateScope && (setSharedStateScopeLocalDefinitions(this.sharedStateScope, value), markScopeActiveDescendantsDirty(this.sharedStateScope, this.stage)), previousScope !== this.sharedStateScope && this.notifyChildrenSharedStateTreeChanged();
13184
12634
  }
13185
12635
  setMode(mode) {
13186
12636
  "3d" === mode ? this.set3dMode() : this.set2dMode();
@@ -13284,17 +12734,17 @@ class Group extends Graphic {
13284
12734
  }
13285
12735
  incrementalAppendChild(node) {
13286
12736
  const data = super.appendChild(node);
13287
- return data && (!this.stage || data.stage === this.stage && data.layer === this.layer ? data.onParentSharedStateTreeChanged && data.onParentSharedStateTreeChanged(this.stage, this.layer) : data.setStage(this.stage, this.layer)), this.addUpdateBoundTag(), this.getGraphicService().onAddIncremental(node, this, this.stage), data;
12737
+ return data && this.syncChildSharedStateTreeBinding(data), this.addUpdateBoundTag(), this.getGraphicService().onAddIncremental(node, this, this.stage), data;
13288
12738
  }
13289
12739
  incrementalClearChild() {
13290
12740
  super.removeAllChild(), this.addUpdateBoundTag(), this.getGraphicService().onClearIncremental(this, this.stage);
13291
12741
  }
13292
12742
  _updateChildToStage(child) {
13293
- return child && (!this.stage || child.stage === this.stage && child.layer === this.layer ? child.onParentSharedStateTreeChanged && child.onParentSharedStateTreeChanged(this.stage, this.layer) : child.setStage(this.stage, this.layer)), this.addUpdateBoundTag(), child;
12743
+ return child && this.syncChildSharedStateTreeBinding(child), this.addUpdateBoundTag(), child;
13294
12744
  }
13295
12745
  appendChild(node, addStage = !0) {
13296
12746
  const data = super.appendChild(node);
13297
- return data && (addStage && this.stage && (data.stage !== this.stage || data.layer !== this.layer) ? data.setStage(this.stage, this.layer) : data.onParentSharedStateTreeChanged && data.onParentSharedStateTreeChanged(this.stage, this.layer)), this.addUpdateBoundTag(), data;
12747
+ return data && addStage && this.syncChildSharedStateTreeBinding(data), this.addUpdateBoundTag(), data;
13298
12748
  }
13299
12749
  insertBefore(newNode, referenceNode) {
13300
12750
  return this._updateChildToStage(super.insertBefore(newNode, referenceNode));
@@ -13306,9 +12756,8 @@ class Group extends Graphic {
13306
12756
  return this._updateChildToStage(super.insertInto(newNode, idx));
13307
12757
  }
13308
12758
  removeChild(child, highPerformance = !1) {
13309
- var _a;
13310
12759
  const data = super.removeChild(child);
13311
- return data ? highPerformance ? (null === (_a = child.detachStageForRelease) || void 0 === _a || _a.call(child), data) : (this.getGraphicService().onRemove(child), child.setStage(null, null), this.addUpdateBoundTag(), data) : data;
12760
+ return data ? highPerformance ? (child.detachStageForRelease(), data) : (this.getGraphicService().onRemove(child), child.setStage(null, null), this.addUpdateBoundTag(), data) : data;
13312
12761
  }
13313
12762
  removeAllChild(deep = !1) {
13314
12763
  const children = this.children.slice();
@@ -13321,14 +12770,10 @@ class Group extends Graphic {
13321
12770
  setStage(stage, layer) {
13322
12771
  var _a, _b, _c, _d, _e, _f;
13323
12772
  const graphicService = null !== (_c = null !== (_a = null == stage ? void 0 : stage.graphicService) && void 0 !== _a ? _a : null === (_b = this.stage) || void 0 === _b ? void 0 : _b.graphicService) && void 0 !== _c ? _c : application.graphicService,
13324
- needsSharedStateTreeSync = this._hasSharedStateDefinitions || this.sharedStateScope || (null === (_d = this.currentStates) || void 0 === _d ? void 0 : _d.length) || this.boundSharedStateScope || (null === (_e = this.registeredActiveScopes) || void 0 === _e ? void 0 : _e.size) || this.sharedStateDirty;
13325
- if (this.stage !== stage) return this.stage = stage, this.layer = layer, needsSharedStateTreeSync && (this.ensureSharedStateScopeBound(), this.syncSharedStateScopeBindingOnTreeChange(!0)), this.setStageToShadowRoot(stage, layer), this._onSetStage && this._onSetStage(this, stage, layer), null === (_f = null == graphicService ? void 0 : graphicService.onSetStage) || void 0 === _f || _f.call(graphicService, this, stage), void this.forEachChildren(item => {
13326
- item.setStage(stage, this.layer);
13327
- });
12773
+ needsSharedStateTreeSync = this.hasSharedStateDefinitions() || this.sharedStateScope || (null === (_d = this.currentStates) || void 0 === _d ? void 0 : _d.length) || this.boundSharedStateScope || (null === (_e = this.registeredActiveScopes) || void 0 === _e ? void 0 : _e.size) || this.sharedStateDirty;
12774
+ if (this.stage !== stage) return this.stage = stage, this.layer = layer, needsSharedStateTreeSync && (this.ensureSharedStateScopeBound(), this.syncSharedStateScopeBindingOnTreeChange(!0)), this.setStageToShadowRoot(stage, layer), this._onSetStage && this._onSetStage(this, stage, layer), null === (_f = null == graphicService ? void 0 : graphicService.onSetStage) || void 0 === _f || _f.call(graphicService, this, stage), void this.notifyChildrenSharedStateTreeChanged();
13328
12775
  const layerChanged = this.layer !== layer;
13329
- layerChanged && (this.layer = layer), needsSharedStateTreeSync ? (this.ensureSharedStateScopeBound(), this.syncSharedStateScopeBindingOnTreeChange(!0), this.notifyChildrenSharedStateTreeChanged()) : layerChanged && this.forEachChildren(item => {
13330
- item.onParentSharedStateTreeChanged && item.onParentSharedStateTreeChanged(stage, this.layer);
13331
- });
12776
+ layerChanged && (this.layer = layer), needsSharedStateTreeSync ? (this.ensureSharedStateScopeBound(), this.syncSharedStateScopeBindingOnTreeChange(!0), this.notifyChildrenSharedStateTreeChanged()) : layerChanged && this.notifyChildrenSharedStateTreeChanged();
13332
12777
  }
13333
12778
  addUpdatePositionTag() {
13334
12779
  super.addUpdatePositionTag(), this.forEachChildren(g => {
@@ -13375,24 +12820,26 @@ class Group extends Graphic {
13375
12820
  }
13376
12821
  detachStageForRelease() {
13377
12822
  super.detachStageForRelease(), this.sharedStateScope = void 0, this.forEachChildren(item => {
13378
- var _a;
13379
- null === (_a = item.detachStageForRelease) || void 0 === _a || _a.call(item);
12823
+ item.detachStageForRelease();
13380
12824
  });
13381
12825
  }
13382
12826
  ensureSharedStateScopeBound() {
13383
12827
  var _a, _b, _c;
13384
12828
  if (!this.hasSharedStateDefinitions()) return void (this.sharedStateScope = void 0);
13385
12829
  const parentScope = null !== (_b = null === (_a = this.parent) || void 0 === _a ? void 0 : _a.sharedStateScope) && void 0 !== _b ? _b : null === (_c = this.stage) || void 0 === _c ? void 0 : _c.rootSharedStateScope;
13386
- this.sharedStateScope ? (this.sharedStateScope.ownerGroup = this, this.sharedStateScope.ownerStage = this.stage, setSharedStateScopeParent(this.sharedStateScope, parentScope), this.sharedStateScope.localStateDefinitions !== this._sharedStateDefinitions && setSharedStateScopeLocalDefinitions(this.sharedStateScope, this._sharedStateDefinitions)) : this.sharedStateScope = createGroupSharedStateScope(this, parentScope, this._sharedStateDefinitions);
12830
+ this.sharedStateScope ? (this.sharedStateScope.ownerStage = this.stage, setSharedStateScopeParent(this.sharedStateScope, parentScope), this.sharedStateScope.localStateDefinitions !== this._sharedStateDefinitions && setSharedStateScopeLocalDefinitions(this.sharedStateScope, this._sharedStateDefinitions)) : this.sharedStateScope = createGroupSharedStateScope(this, parentScope, this._sharedStateDefinitions);
13387
12831
  }
13388
12832
  hasSharedStateDefinitions() {
13389
- return this._hasSharedStateDefinitions;
12833
+ return !!this._sharedStateDefinitions && Object.keys(this._sharedStateDefinitions).length > 0;
13390
12834
  }
13391
12835
  notifyChildrenSharedStateTreeChanged() {
13392
12836
  this.forEachChildren(item => {
13393
- item.onParentSharedStateTreeChanged && item.onParentSharedStateTreeChanged(this.stage, this.layer);
12837
+ this.syncChildSharedStateTreeBinding(item);
13394
12838
  });
13395
12839
  }
12840
+ syncChildSharedStateTreeBinding(child) {
12841
+ child.onParentSharedStateTreeChanged(this.stage, this.layer);
12842
+ }
13396
12843
  onParentSharedStateTreeChanged(stage, layer) {
13397
12844
  var _a;
13398
12845
  this.stage === stage && this.layer === layer ? (this.ensureSharedStateScopeBound(), this.syncSharedStateScopeBindingOnTreeChange(!!(null === (_a = this.currentStates) || void 0 === _a ? void 0 : _a.length)), this.notifyChildrenSharedStateTreeChanged()) : this.setStage(stage, layer);
@@ -14307,7 +13754,7 @@ class DefaultGlobalPickerService {
14307
13754
  }
14308
13755
  }
14309
13756
 
14310
- var __awaiter$5 = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
13757
+ var __awaiter$4 = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
14311
13758
  return new (P || (P = Promise))(function (resolve, reject) {
14312
13759
  function fulfilled(value) {
14313
13760
  try {
@@ -14377,7 +13824,7 @@ function foreach(graphic, defaultZIndex, cb, reverse = !1, sort3d = !1) {
14377
13824
  } else graphic.forEachChildren(cb, reverse);
14378
13825
  }
14379
13826
  function foreachAsync(graphic, defaultZIndex, cb, reverse = !1) {
14380
- return __awaiter$5(this, void 0, void 0, function* () {
13827
+ return __awaiter$4(this, void 0, void 0, function* () {
14381
13828
  yield graphic.forEachChildrenAsync(cb, reverse);
14382
13829
  });
14383
13830
  }
@@ -14950,9 +14397,6 @@ class RendererRegistry {
14950
14397
  register(key, renderer) {
14951
14398
  this.entries.set(key, renderer), this.cache.delete(key);
14952
14399
  }
14953
- registerMany(entries) {
14954
- for (const [key, renderer] of entries) this.register(key, renderer);
14955
- }
14956
14400
  get(key) {
14957
14401
  if (this.cache.has(key)) return this.cache.get(key);
14958
14402
  const entry = this.entries.get(key);
@@ -14975,9 +14419,6 @@ class PickerRegistry {
14975
14419
  register(key, picker) {
14976
14420
  this.entries.set(key, picker);
14977
14421
  }
14978
- registerMany(entries) {
14979
- for (const [key, picker] of entries) this.register(key, picker);
14980
- }
14981
14422
  get(key) {
14982
14423
  return this.entries.get(key);
14983
14424
  }
@@ -15019,9 +14460,6 @@ class ContributionRegistry {
15019
14460
  const current = null !== (_a = this.entries.get(key)) && void 0 !== _a ? _a : [];
15020
14461
  current.push(contribution), this.entries.set(key, current);
15021
14462
  }
15022
- registerMany(entries) {
15023
- for (const [key, contribution] of entries) this.register(key, contribution);
15024
- }
15025
14463
  get(key) {
15026
14464
  var _a;
15027
14465
  return [...(null !== (_a = this.entries.get(key)) && void 0 !== _a ? _a : [])];
@@ -15039,8 +14477,8 @@ const EMPTY_AUTO_ENABLE_PROVIDER = {
15039
14477
  };
15040
14478
  class DefaultPluginService {
15041
14479
  constructor(autoEnablePlugins = EMPTY_AUTO_ENABLE_PROVIDER, deps = {}) {
15042
- var _a, _b, _c;
15043
- this.autoEnablePlugins = autoEnablePlugins, this.onStartupFinishedPlugin = [], this.onRegisterPlugin = [], this.actived = !1, this.pluginRegistry = null !== (_a = deps.pluginRegistry) && void 0 !== _a ? _a : new PluginRegistry(), this.autoEnablePlugins = null !== (_c = null !== (_b = deps.autoEnablePlugins) && void 0 !== _b ? _b : this.autoEnablePlugins) && void 0 !== _c ? _c : EMPTY_AUTO_ENABLE_PROVIDER;
14480
+ var _a;
14481
+ this.autoEnablePlugins = autoEnablePlugins, this.onStartupFinishedPlugin = [], this.onRegisterPlugin = [], this.actived = !1, this.pluginRegistry = null !== (_a = deps.pluginRegistry) && void 0 !== _a ? _a : new PluginRegistry();
15044
14482
  }
15045
14483
  active(stage, params) {
15046
14484
  this.stage = stage, this.actived = !0;
@@ -15189,29 +14627,28 @@ const globalBounds = new AABBBounds();
15189
14627
  class DirtyBoundsPlugin {
15190
14628
  constructor() {
15191
14629
  this.name = "DirtyBoundsPlugin", this.activeEvent = "onRegister", this._uid = Generator.GenAutoIncrementId(), this.key = this.name + this._uid, this.dirtyBoundsHooksRegistered = !1, this.handlePaintOnlyUpdate = graphic => {
15192
- var _a, _b, _c, _d;
14630
+ var _a;
15193
14631
  const stage = this.pluginService.stage;
15194
14632
  if (!stage || stage !== graphic.stage || !stage.renderCount) return;
15195
14633
  const owner = null !== (_a = graphic.glyphHost) && void 0 !== _a ? _a : graphic;
15196
14634
  if (!(owner._updateTag & UpdateTag.UPDATE_PAINT) || owner._updateTag & UpdateTag.UPDATE_BOUNDS) return;
15197
14635
  const ownerBounds = this.ensurePaintDirtyBoundsCache(owner);
15198
- ownerBounds && !ownerBounds.empty() && stage.dirty(ownerBounds), null === (_b = owner.clearUpdatePaintTag) || void 0 === _b || _b.call(owner);
14636
+ ownerBounds && !ownerBounds.empty() && stage.dirty(ownerBounds), owner.clearUpdatePaintTag();
15199
14637
  const shadowRoot = owner.shadowRoot;
15200
14638
  if (!shadowRoot) return;
15201
14639
  const shadowBounds = this.ensurePaintDirtyBoundsCache(shadowRoot);
15202
- shadowBounds && !shadowBounds.empty() && stage.dirty(shadowBounds), null === (_d = (_c = shadowRoot).clearUpdatePaintTag) || void 0 === _d || _d.call(_c);
14640
+ shadowBounds && !shadowBounds.empty() && stage.dirty(shadowBounds), shadowRoot.clearUpdatePaintTag();
15203
14641
  };
15204
14642
  }
15205
14643
  ensurePaintDirtyBoundsCache(graphic) {
15206
- var _a, _b;
14644
+ var _a;
15207
14645
  const owner = graphic;
15208
- owner._AABBBounds && "function" == typeof owner._AABBBounds.empty && !owner._AABBBounds.empty() || "function" != typeof owner.doUpdateAABBBounds || owner.doUpdateAABBBounds("imprecise" === (null === (_a = owner.attribute) || void 0 === _a ? void 0 : _a.boundsMode));
15209
- return owner._globalAABBBounds && "function" == typeof owner._globalAABBBounds.empty && !owner._globalAABBBounds.empty() || "function" != typeof owner.tryUpdateGlobalAABBBounds || owner.tryUpdateGlobalAABBBounds(), null !== (_b = owner._globalAABBBounds) && void 0 !== _b ? _b : owner.globalAABBBounds;
14646
+ return owner._AABBBounds.empty() && owner.doUpdateAABBBounds("imprecise" === (null === (_a = owner.attribute) || void 0 === _a ? void 0 : _a.boundsMode)), owner._globalAABBBounds && !owner._globalAABBBounds.empty() || owner.tryUpdateGlobalAABBBounds(), owner._globalAABBBounds;
15210
14647
  }
15211
14648
  getRemoveDirtyBounds(graphic) {
15212
14649
  var _a;
15213
14650
  const cachedBounds = (null !== (_a = graphic.glyphHost) && void 0 !== _a ? _a : graphic)._globalAABBBounds;
15214
- if (cachedBounds && "function" == typeof cachedBounds.empty && !cachedBounds.empty()) return cachedBounds;
14651
+ if (cachedBounds && !cachedBounds.empty()) return cachedBounds;
15215
14652
  }
15216
14653
  registerDirtyBoundsHooks(stage) {
15217
14654
  this.dirtyBoundsHooksRegistered || (stage.graphicService.hooks.onAttributeUpdate.tap(this.key, this.handlePaintOnlyUpdate), stage.graphicService.hooks.beforeUpdateAABBBounds.tap(this.key, (graphic, stage, willUpdate, bounds) => {
@@ -15264,256 +14701,6 @@ function getCurrentEnv() {
15264
14701
  return isBrowserEnv() ? "browser" : "node";
15265
14702
  }
15266
14703
 
15267
- var __awaiter$4 = undefined && undefined.__awaiter || function (thisArg, _arguments, P, generator) {
15268
- return new (P || (P = Promise))(function (resolve, reject) {
15269
- function fulfilled(value) {
15270
- try {
15271
- step(generator.next(value));
15272
- } catch (e) {
15273
- reject(e);
15274
- }
15275
- }
15276
- function rejected(value) {
15277
- try {
15278
- step(generator.throw(value));
15279
- } catch (e) {
15280
- reject(e);
15281
- }
15282
- }
15283
- function step(result) {
15284
- var value;
15285
- result.done ? resolve(result.value) : (value = result.value, value instanceof P ? value : new P(function (resolve) {
15286
- resolve(value);
15287
- })).then(fulfilled, rejected);
15288
- }
15289
- step((generator = generator.apply(thisArg, _arguments || [])).next());
15290
- });
15291
- };
15292
- function isRenderableGraphic(graphic) {
15293
- return !!graphic.stage && "released" !== graphic.releaseStatus;
15294
- }
15295
- function createTargetStatesKey(targetStates) {
15296
- return targetStates.length ? targetStates.join("|") : "__clear__";
15297
- }
15298
- function createIntentKey(contextOwnerId, configFingerprint, targetStatesKey) {
15299
- return `${contextOwnerId}:${configFingerprint}:${targetStatesKey}`;
15300
- }
15301
- function hasMeaningfulDeferredConfig(config) {
15302
- const normalized = normalizeDeferredStateOwnerConfig(config);
15303
- return !!normalized && (null != normalized.localEnabled || null != normalized.deferred);
15304
- }
15305
- function getGraphicCompiledDefinitions(graphic) {
15306
- const graphicAny = graphic;
15307
- if ("function" == typeof graphicAny.resolveEffectiveCompiledDefinitions) {
15308
- const result = graphicAny.resolveEffectiveCompiledDefinitions();
15309
- return {
15310
- compiledDefinitions: result.compiledDefinitions,
15311
- stateProxyEligibility: result.stateProxyEligibility
15312
- };
15313
- }
15314
- return {};
15315
- }
15316
- function getCurrentStateNames(graphic) {
15317
- var _a, _b;
15318
- return null !== (_b = null === (_a = graphic.currentStates) || void 0 === _a ? void 0 : _a.slice()) && void 0 !== _b ? _b : [];
15319
- }
15320
- class StateBatchScheduler {
15321
- constructor(stage, perfMonitor) {
15322
- this.stage = stage, this.perfMonitor = perfMonitor, this.jobsByIntentKey = new Map(), this.pendingIntentByGraphic = new Map(), this.nextJobId = 1, this.runningJobs = new Map();
15323
- }
15324
- schedule(graphics, targetStates) {
15325
- const batchOperation = graphics.length > 1;
15326
- graphics.forEach(graphic => {
15327
- const eligibility = this.resolveEligibility(graphic, targetStates, batchOperation, !0);
15328
- if ("reason" in eligibility) return this.removeGraphicFromPending(graphic), void ("graphic_unavailable" !== eligibility.reason && this.commitSynchronously(graphic, targetStates));
15329
- this.enqueueDeferredIntent(graphic, targetStates, eligibility.context, eligibility.targetStatesKey);
15330
- });
15331
- }
15332
- release() {
15333
- var _a;
15334
- this.jobsByIntentKey.forEach(job => {
15335
- job.status = "cancelled";
15336
- }), this.jobsByIntentKey.clear(), this.pendingIntentByGraphic.clear(), this.runningJobs.clear(), null === (_a = this.perfMonitor) || void 0 === _a || _a.updateBatchPending(0);
15337
- }
15338
- resolveEligibility(graphic, targetStates, batchOperation, recordObservability) {
15339
- var _a, _b, _c, _d, _e, _f;
15340
- if (!isRenderableGraphic(graphic)) return recordObservability && (null === (_a = this.perfMonitor) || void 0 === _a || _a.recordDeferredIneligible("graphic_unavailable")), {
15341
- eligible: !1,
15342
- reason: "graphic_unavailable"
15343
- };
15344
- if (!batchOperation) return recordObservability && (null === (_b = this.perfMonitor) || void 0 === _b || _b.recordDeferredIneligible("non_batch_operation")), {
15345
- eligible: !1,
15346
- reason: "non_batch_operation"
15347
- };
15348
- const context = this.resolveDeferredContext(graphic);
15349
- if (!context) return recordObservability && (null === (_c = this.perfMonitor) || void 0 === _c || _c.recordDeferredIneligible("graphic_unavailable")), {
15350
- eligible: !1,
15351
- reason: "graphic_unavailable"
15352
- };
15353
- if (!context.config.enabled) {
15354
- const normalizedOwnerConfig = normalizeDeferredStateOwnerConfig(context.contextOwner.deferredStateConfig),
15355
- reason = !1 === (null == normalizedOwnerConfig ? void 0 : normalizedOwnerConfig.localEnabled) ? "context_disabled" : "config_disabled";
15356
- return recordObservability && (null === (_d = this.perfMonitor) || void 0 === _d || _d.recordDeferredIneligible(reason)), {
15357
- eligible: !1,
15358
- reason: reason
15359
- };
15360
- }
15361
- const classification = this.classifyGraphicTargetStates(graphic, targetStates);
15362
- return classification.reason ? (recordObservability && (null === (_e = this.perfMonitor) || void 0 === _e || _e.recordDeferredIneligible(classification.reason)), {
15363
- eligible: !1,
15364
- reason: classification.reason
15365
- }) : classification.category !== UpdateCategory.PAINT ? (recordObservability && (null === (_f = this.perfMonitor) || void 0 === _f || _f.recordDeferredIneligible("mixed_update_category")), {
15366
- eligible: !1,
15367
- reason: "mixed_update_category"
15368
- }) : {
15369
- eligible: !0,
15370
- context: context,
15371
- targetStatesKey: createTargetStatesKey(targetStates)
15372
- };
15373
- }
15374
- resolveDeferredContext(graphic) {
15375
- var _a;
15376
- const stage = graphic.stage;
15377
- if (!stage) return;
15378
- let owner = stage,
15379
- config = normalizeDeferredStateConfig(void 0);
15380
- const ownerConfigs = [stage],
15381
- parents = [];
15382
- let parent = graphic.parent;
15383
- for (; parent && parent !== stage;) parents.push(parent), parent = parent.parent;
15384
- parents.reverse().forEach(current => ownerConfigs.push(current)), ownerConfigs.forEach(current => {
15385
- const deferredStateConfig = normalizeDeferredStateOwnerConfig(current.deferredStateConfig);
15386
- deferredStateConfig && (deferredStateConfig.deferred && (config = Object.assign(Object.assign({}, config), deferredStateConfig.deferred)), null != deferredStateConfig.localEnabled && (config.enabled = deferredStateConfig.localEnabled), hasMeaningfulDeferredConfig(current.deferredStateConfig) && (owner = current));
15387
- });
15388
- const normalized = normalizeDeferredStateConfig(config);
15389
- return {
15390
- contextOwner: owner,
15391
- contextOwnerId: null !== (_a = owner._uid) && void 0 !== _a ? _a : 0,
15392
- config: normalized,
15393
- configFingerprint: fingerprintDeferredStateConfig(normalized)
15394
- };
15395
- }
15396
- classifyGraphicTargetStates(graphic, targetStates) {
15397
- const {
15398
- compiledDefinitions: compiledDefinitions,
15399
- stateProxyEligibility: stateProxyEligibility
15400
- } = getGraphicCompiledDefinitions(graphic),
15401
- candidateStates = Array.from(new Set([...getCurrentStateNames(graphic), ...targetStates]));
15402
- let category = UpdateCategory.NONE;
15403
- return candidateStates.forEach(stateName => {
15404
- if (null == stateProxyEligibility ? void 0 : stateProxyEligibility(stateName)) return void (category = UpdateCategory.NONE);
15405
- const definition = null == compiledDefinitions ? void 0 : compiledDefinitions.get(stateName);
15406
- definition && (definition.hasResolver && 0 === definition.affectedKeys.size ? category = UpdateCategory.NONE : category |= classifyAffectedKeys(definition.affectedKeys));
15407
- }), candidateStates.some(stateName => null == stateProxyEligibility ? void 0 : stateProxyEligibility(stateName)) || candidateStates.some(stateName => {
15408
- const definition = null == compiledDefinitions ? void 0 : compiledDefinitions.get(stateName);
15409
- return !!(null == definition ? void 0 : definition.hasResolver) && 0 === definition.affectedKeys.size;
15410
- }) ? {
15411
- category: UpdateCategory.NONE,
15412
- reason: "resolver_unstable_keys"
15413
- } : {
15414
- category: category === UpdateCategory.NONE ? UpdateCategory.PAINT : category
15415
- };
15416
- }
15417
- enqueueDeferredIntent(graphic, targetStates, context, targetStatesKey) {
15418
- var _a, _b, _c, _d, _e, _f;
15419
- const nextIntentKey = createIntentKey(context.contextOwnerId, context.configFingerprint, targetStatesKey),
15420
- prevIntentKey = this.pendingIntentByGraphic.get(graphic);
15421
- if (prevIntentKey === nextIntentKey) return void (null === (_a = this.perfMonitor) || void 0 === _a || _a.incrementCounter("deferredJobsCoalesced"));
15422
- prevIntentKey && this.removeGraphicFromIntentJob(graphic, prevIntentKey);
15423
- let job = this.jobsByIntentKey.get(nextIntentKey);
15424
- job ? null === (_d = this.perfMonitor) || void 0 === _d || _d.incrementCounter("deferredJobsCoalesced") : (job = {
15425
- id: this.nextJobId++,
15426
- kind: "apply_states",
15427
- intentKey: nextIntentKey,
15428
- status: "pending",
15429
- targetStates: [...targetStates],
15430
- targetStatesKey: targetStatesKey,
15431
- pendingGraphics: new Set(),
15432
- orderedGraphics: [],
15433
- config: context.config,
15434
- contextOwner: context.contextOwner,
15435
- contextOwnerId: context.contextOwnerId,
15436
- configFingerprint: context.configFingerprint,
15437
- createdAt: Date.now(),
15438
- processedCount: 0
15439
- }, this.jobsByIntentKey.set(nextIntentKey, job), null === (_b = this.perfMonitor) || void 0 === _b || _b.incrementCounter("deferredJobsCreated"), null === (_c = this.perfMonitor) || void 0 === _c || _c.updateBatchPending(this.jobsByIntentKey.size)), job.pendingGraphics.has(graphic) || (job.pendingGraphics.add(graphic), job.orderedGraphics.push(graphic), this.pendingIntentByGraphic.set(graphic, nextIntentKey), null === (_e = this.perfMonitor) || void 0 === _e || _e.recordAllocation("batchEntriesCreated"), null === (_f = this.perfMonitor) || void 0 === _f || _f.updateMaxGraphicsInJob(job.pendingGraphics.size)), this.ensureJobRunning(job);
15440
- }
15441
- removeGraphicFromPending(graphic) {
15442
- const prevIntentKey = this.pendingIntentByGraphic.get(graphic);
15443
- prevIntentKey && this.removeGraphicFromIntentJob(graphic, prevIntentKey);
15444
- }
15445
- removeGraphicFromIntentJob(graphic, intentKey) {
15446
- var _a, _b, _c;
15447
- const job = this.jobsByIntentKey.get(intentKey);
15448
- job ? (job.pendingGraphics.delete(graphic), this.pendingIntentByGraphic.get(graphic) === intentKey && this.pendingIntentByGraphic.delete(graphic), 0 === job.pendingGraphics.size && "completed" !== job.status && (job.status = "cancelled", this.jobsByIntentKey.delete(intentKey), null === (_a = this.perfMonitor) || void 0 === _a || _a.incrementCounter("deferredJobsCancelled"), null === (_b = this.perfMonitor) || void 0 === _b || _b.recordEvent("deferred-job-cancel", {
15449
- intentKey: intentKey,
15450
- jobId: job.id
15451
- }), null === (_c = this.perfMonitor) || void 0 === _c || _c.updateBatchPending(this.jobsByIntentKey.size))) : this.pendingIntentByGraphic.delete(graphic);
15452
- }
15453
- ensureJobRunning(job) {
15454
- if (this.runningJobs.has(job.intentKey)) return;
15455
- const runner = this.runJob(job).then(() => {
15456
- this.runningJobs.delete(job.intentKey);
15457
- }, () => {
15458
- this.runningJobs.delete(job.intentKey);
15459
- });
15460
- this.runningJobs.set(job.intentKey, runner);
15461
- }
15462
- runJob(job) {
15463
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
15464
- return __awaiter$4(this, void 0, void 0, function* () {
15465
- if ("cancelled" === job.status) return;
15466
- if (yield this.waitForNextFrame(), "cancelled" === job.status) return;
15467
- job.status = "running", null === (_a = this.perfMonitor) || void 0 === _a || _a.recordEvent("deferred-job-start", {
15468
- intentKey: job.intentKey,
15469
- jobId: job.id
15470
- });
15471
- let index = 0,
15472
- frameStart = performance.now(),
15473
- processedInFrame = 0,
15474
- committedInSlice = 0;
15475
- for (; index < job.orderedGraphics.length;) {
15476
- if ("cancelled" === job.status) return;
15477
- processedInFrame > 0 && (processedInFrame >= job.config.maxGraphicsPerFrame || performance.now() - frameStart >= job.config.frameBudget) && (null === (_b = this.perfMonitor) || void 0 === _b || _b.incrementCounter("deferredBudgetYields"), null === (_c = this.perfMonitor) || void 0 === _c || _c.recordCost("batchSlice", performance.now() - frameStart), null === (_d = this.perfMonitor) || void 0 === _d || _d.recordEvent("deferred-job-yield", {
15478
- intentKey: job.intentKey,
15479
- jobId: job.id,
15480
- processedInFrame: processedInFrame
15481
- }), committedInSlice > 0 && this.stage.renderNextFrame(), yield this.waitForNextFrame(), frameStart = performance.now(), processedInFrame = 0, committedInSlice = 0);
15482
- const graphic = job.orderedGraphics[index++];
15483
- if (!job.pendingGraphics.has(graphic)) continue;
15484
- if (!isRenderableGraphic(graphic)) {
15485
- job.pendingGraphics.delete(graphic), this.pendingIntentByGraphic.get(graphic) === job.intentKey && this.pendingIntentByGraphic.delete(graphic);
15486
- continue;
15487
- }
15488
- if (this.pendingIntentByGraphic.get(graphic) !== job.intentKey) {
15489
- job.pendingGraphics.delete(graphic);
15490
- continue;
15491
- }
15492
- const nextEligibility = this.resolveEligibility(graphic, job.targetStates, !0, !1);
15493
- if (!nextEligibility.eligible) {
15494
- job.pendingGraphics.delete(graphic), this.pendingIntentByGraphic.delete(graphic), this.commitSynchronously(graphic, job.targetStates);
15495
- continue;
15496
- }
15497
- createIntentKey(nextEligibility.context.contextOwnerId, nextEligibility.context.configFingerprint, nextEligibility.targetStatesKey) === job.intentKey ? (this.commitSynchronously(graphic, job.targetStates), job.pendingGraphics.delete(graphic), this.pendingIntentByGraphic.delete(graphic), job.processedCount += 1, processedInFrame += 1, committedInSlice += 1, null === (_e = this.perfMonitor) || void 0 === _e || _e.incrementCounter("deferredGraphicsCommitted")) : (job.pendingGraphics.delete(graphic), this.pendingIntentByGraphic.delete(graphic), this.enqueueDeferredIntent(graphic, job.targetStates, nextEligibility.context, nextEligibility.targetStatesKey));
15498
- }
15499
- processedInFrame > 0 && (null === (_f = this.perfMonitor) || void 0 === _f || _f.recordCost("batchSlice", performance.now() - frameStart), this.stage.renderNextFrame()), 0 === job.pendingGraphics.size && this.jobsByIntentKey.get(job.intentKey) === job && (job.status = "completed", this.jobsByIntentKey.delete(job.intentKey), null === (_g = this.perfMonitor) || void 0 === _g || _g.incrementCounter("deferredJobsCompleted"), null === (_h = this.perfMonitor) || void 0 === _h || _h.recordEvent("deferred-job-complete", {
15500
- intentKey: job.intentKey,
15501
- jobId: job.id,
15502
- processedCount: job.processedCount
15503
- }), null === (_j = this.perfMonitor) || void 0 === _j || _j.updateBatchPending(this.jobsByIntentKey.size));
15504
- });
15505
- }
15506
- waitForNextFrame() {
15507
- const stageGlobal = this.stage.global;
15508
- return (null == stageGlobal ? void 0 : stageGlobal.getSpecifiedPerformanceRAF) ? stageGlobal.getSpecifiedPerformanceRAF(this.stage.rafId).wait() : new Promise(resolve => {
15509
- null == stageGlobal || stageGlobal.getSpecifiedRequestAnimationFrame(this.stage.rafId)(() => resolve());
15510
- });
15511
- }
15512
- commitSynchronously(graphic, targetStates) {
15513
- isRenderableGraphic(graphic) && (targetStates.length ? graphic.useStates(targetStates, !1) : graphic.clearStates(!1));
15514
- }
15515
- }
15516
-
15517
14704
  const DefaultConfig = {
15518
14705
  WIDTH: 500,
15519
14706
  HEIGHT: 500,
@@ -15630,10 +14817,9 @@ class Stage extends Group {
15630
14817
  main: !0
15631
14818
  })), this.nextFrameRenderLayerSet = new Set(), this.willNextFrameRender = !1, this.theme.onStateDefinitionsChange = () => {
15632
14819
  var _a;
15633
- const definitions = null === (_a = this.theme) || void 0 === _a ? void 0 : _a.stateDefinitions;
15634
- if (!definitions || !Object.keys(definitions).length) return void (this.rootSharedStateScope && (setRootSharedStateScopeThemeDefinitions(this.rootSharedStateScope, definitions), markScopeActiveDescendantsDirty(this.rootSharedStateScope, this)));
15635
- const rootScope = this.ensureRootSharedStateScope(definitions);
15636
- setRootSharedStateScopeThemeDefinitions(rootScope, definitions), markScopeActiveDescendantsDirty(rootScope, this);
14820
+ const definitions = null === (_a = this.theme) || void 0 === _a ? void 0 : _a.stateDefinitions,
14821
+ rootScope = definitions && Object.keys(definitions).length ? this.ensureRootSharedStateScope(definitions) : this.rootSharedStateScope;
14822
+ rootScope && (setRootSharedStateScopeThemeDefinitions(rootScope, definitions), markScopeActiveDescendantsDirty(rootScope, this));
15637
14823
  }, this.renderStyle = params.renderStyle, params.autoRender && this.enableAutoRender(), params.autoRefresh && this.enableAutoRefresh(), !1 === params.disableDirtyBounds && this.enableDirtyBounds(), params.enableHtmlAttribute && this.enableHtmlAttribute(params.enableHtmlAttribute), params.ReactDOM && this.enableReactAttribute(params.ReactDOM), params.enableLayout && this.enableLayout(), this.hooks.beforeRender.tap("constructor", this.beforeRender), this.hooks.afterRender.tap("constructor", this.afterRender), params.beforeRender && this._beforeRenderList.push(params.beforeRender), params.afterRender && this._afterRenderList.push(params.afterRender), this.hooks.afterClearScreen.tap("constructor", this.afterClearScreen), this.hooks.afterClearRect.tap("constructor", this.afterClearRect), this._afterClearScreen = params.afterClearScreen, this._afterClearRect = params.afterClearRect, this.supportInteractiveLayer = !1 !== params.interactiveLayer, params.optimize || (params.optimize = {
15638
14824
  tickRenderMode: "effect"
15639
14825
  }), this.optmize(params.optimize), params.background && isString$1(this._background) && this._background.includes("/") && this.setAttributes({
@@ -15901,18 +15087,6 @@ class Stage extends Group {
15901
15087
  ensureRootSharedStateScope(themeStateDefinitions) {
15902
15088
  return this.rootSharedStateScope ? (this.rootSharedStateScope.ownerStage = this, this.rootSharedStateScope) : (this.rootSharedStateScope = createRootSharedStateScope(this, themeStateDefinitions), this.rootSharedStateScope);
15903
15089
  }
15904
- getStateBatchScheduler() {
15905
- return this._stateBatchScheduler || (this._stateBatchScheduler = new StateBatchScheduler(this, ensureStageStatePerfMonitor(this))), this._stateBatchScheduler;
15906
- }
15907
- scheduleStateBatch(graphics, targetStates) {
15908
- this.getStateBatchScheduler().schedule(graphics, targetStates);
15909
- }
15910
- getStatePerfSnapshot() {
15911
- return ensureStageStatePerfMonitor(this).getSnapshot();
15912
- }
15913
- resetStatePerfSnapshot() {
15914
- ensureStageStatePerfMonitor(this).reset();
15915
- }
15916
15090
  _doRenderInThisFrame() {
15917
15091
  if ("released" === this.releaseStatus) return;
15918
15092
  this.startAnimate();
@@ -15988,12 +15162,12 @@ class Stage extends Group {
15988
15162
  throw new Error("暂不支持");
15989
15163
  }
15990
15164
  release() {
15991
- var _a, _b, _d, _e;
15992
- null === (_a = this._stateBatchScheduler) || void 0 === _a || _a.release(), super.release(), this.hooks.beforeRender.unTap("constructor", this.beforeRender), this.hooks.afterRender.unTap("constructor", this.afterRender), this.eventSystem && this.eventSystem.release(), this.layerService.releaseStage(this), this.pluginService.release(), this.forEach(layer => {
15165
+ var _a, _b, _d;
15166
+ super.release(), this.hooks.beforeRender.unTap("constructor", this.beforeRender), this.hooks.afterRender.unTap("constructor", this.afterRender), this.eventSystem && this.eventSystem.release(), this.layerService.releaseStage(this), this.pluginService.release(), this.forEach(layer => {
15993
15167
  layer.release();
15994
15168
  }), this.interactiveLayer && (this.interactiveLayer.forEachChildren(item => {
15995
15169
  item.setStage && item.setStage(null, null), this.interactiveLayer.removeChild(item);
15996
- }), this.interactiveLayer.release()), this.window.release(), null === (_b = this._ticker) || void 0 === _b || _b.remTimeline(null == this ? void 0 : this.timeline), null === (_d = this._ticker) || void 0 === _d || _d.removeListener("tick", this.afterTickCb), this.params.ticker || null === (_e = this._ticker) || void 0 === _e || _e.release(), this.renderService.renderTreeRoots = [];
15170
+ }), this.interactiveLayer.release()), this.window.release(), null === (_a = this._ticker) || void 0 === _a || _a.remTimeline(null == this ? void 0 : this.timeline), null === (_b = this._ticker) || void 0 === _b || _b.removeListener("tick", this.afterTickCb), this.params.ticker || null === (_d = this._ticker) || void 0 === _d || _d.release(), this.renderService.renderTreeRoots = [];
15997
15171
  }
15998
15172
  setStage(stage) {}
15999
15173
  dirty(b, matrix) {
@@ -20389,24 +19563,16 @@ class BrowserEntry {
20389
19563
  this.context.release();
20390
19564
  }
20391
19565
  }
20392
- function createBrowserApp$1(options = {}) {
19566
+ function createBrowserApp(options = {}) {
20393
19567
  return new BrowserEntry(options);
20394
19568
  }
20395
19569
 
20396
- class NodeEntry extends BrowserEntry {
20397
- constructor(options = {}) {
20398
- super(options);
20399
- }
20400
- }
19570
+ class NodeEntry extends BrowserEntry {}
20401
19571
  function createNodeApp$1(options = {}) {
20402
19572
  return new NodeEntry(options);
20403
19573
  }
20404
19574
 
20405
- class MiniappEntry extends BrowserEntry {
20406
- constructor(options = {}) {
20407
- super(options);
20408
- }
20409
- }
19575
+ class MiniappEntry extends BrowserEntry {}
20410
19576
  function createMiniappApp$1(options = {}) {
20411
19577
  return new MiniappEntry(options);
20412
19578
  }
@@ -23808,11 +22974,11 @@ var VRenderCore = /*#__PURE__*/Object.freeze({
23808
22974
  configureRuntimeApplicationForApp: configureRuntimeApplicationForApp,
23809
22975
  container: container,
23810
22976
  cornerTangents: cornerTangents,
23811
- createApp: createBrowserApp$1,
22977
+ createApp: createBrowserApp,
23812
22978
  createArc: createArc,
23813
22979
  createArc3d: createArc3d,
23814
22980
  createArea: createArea,
23815
- createBrowserApp: createBrowserApp$1,
22981
+ createBrowserApp: createBrowserApp,
23816
22982
  createCanvasEventTransformer: createCanvasEventTransformer,
23817
22983
  createCircle: createCircle,
23818
22984
  createColor: createColor,
@@ -31571,21 +30737,20 @@ function flatten(list, out) {
31571
30737
  function jsx(type, config, ...children) {
31572
30738
  const _a = config || {},
31573
30739
  {
31574
- key: key,
31575
30740
  name: name,
31576
30741
  id: id,
31577
30742
  attribute: attribute,
31578
- stateProxy: stateProxy,
30743
+ states: states,
31579
30744
  animation: animation,
31580
30745
  timeline: timeline
31581
30746
  } = _a,
31582
- props = __rest$e(_a, ["key", "name", "id", "attribute", "stateProxy", "animation", "timeline"]);
30747
+ props = __rest$e(_a, ["name", "id", "attribute", "states", "animation", "timeline"]);
31583
30748
  let c = type;
31584
30749
  isString$1(type) && (c = graphicCreator$1[type]);
31585
30750
  const childrenList = [];
31586
30751
  children.length && flatten(1 === children.length ? children[0] : children, childrenList);
31587
30752
  const g = "Group" === c.name ? new c(attribute) : c(config);
31588
- if (parseToGraphic$1(g, childrenList, props), stateProxy && (g.stateProxy = stateProxy), name && (g.name = name), isArray$1(animation)) {
30753
+ if (parseToGraphic$1(g, childrenList, props), name && (g.name = name), id && (g.id = id), states && (g.states = states), isArray$1(animation)) {
31589
30754
  const animate = g.animate();
31590
30755
  timeline && animate.setTimeline(timeline), animation.forEach(item => {
31591
30756
  animate[item[0]](...item.slice(1));
@@ -31621,7 +30786,7 @@ function decodeReactDom(dom) {
31621
30786
  {
31622
30787
  attribute: attribute,
31623
30788
  children: children,
31624
- stateProxy: stateProxy,
30789
+ states: states,
31625
30790
  id: id,
31626
30791
  name: name
31627
30792
  } = dom.props,
@@ -31629,7 +30794,7 @@ function decodeReactDom(dom) {
31629
30794
  attribute: attribute
31630
30795
  }),
31631
30796
  out = parseToGraphic(g, dom.props, children);
31632
- return out || (stateProxy && (g.stateProxy = stateProxy), g.id = id, g.name = name, parseChildren(children, g), g);
30797
+ return out || (g.id = id, g.name = name, states && (g.states = states), parseChildren(children, g), g);
31633
30798
  }
31634
30799
  function parseChildren(children, g) {
31635
30800
  isArray$1(children) ? children.forEach(item => {
@@ -33264,11 +32429,10 @@ function getAnimationContext(type) {
33264
32429
  }
33265
32430
  function prepareAnimationFrameAttribute(target) {
33266
32431
  const transientTarget = target;
33267
- return transientTarget.attribute || (transientTarget.attribute = {}), transientTarget.attribute === transientTarget.baseAttributes && "function" == typeof transientTarget.detachAttributeFromBaseAttributes && transientTarget.detachAttributeFromBaseAttributes(), transientTarget.attributeMayContainTransientAttrs = !0, transientTarget.attribute;
32432
+ return transientTarget.attribute || (transientTarget.attribute = {}), transientTarget.attribute === transientTarget.baseAttributes && transientTarget.detachAttributeFromBaseAttributes(), transientTarget.attributeMayContainTransientAttrs = !0, transientTarget.attribute;
33268
32433
  }
33269
32434
  function commitAnimationFrameAttribute(target) {
33270
- var _a, _b;
33271
- null === (_b = (_a = target).onAttributeUpdate) || void 0 === _b || _b.call(_a, animateUpdateContext);
32435
+ target.onAttributeUpdate(animateUpdateContext);
33272
32436
  }
33273
32437
  function applyAnimationFrameAttributes(target, attributes) {
33274
32438
  if (!attributes) return;
@@ -33285,11 +32449,9 @@ function applyAnimationFrameNumberAttributes(target, keys, from, to, ratio) {
33285
32449
  commitAnimationFrameAttribute(target);
33286
32450
  }
33287
32451
  function applyAnimationTransientAttributes(target, attributes, type = AttributeUpdateType.ANIMATE_UPDATE) {
33288
- var _a;
33289
32452
  if (!attributes) return;
33290
- const context = getAnimationContext(type),
33291
- transientTarget = target;
33292
- "function" != typeof transientTarget.applyAnimationTransientAttributes ? "function" != typeof transientTarget.applyTransientAttributes ? "function" != typeof transientTarget.setAttributesAndPreventAnimate ? (transientTarget.attribute || (transientTarget.attribute = {}), Object.assign(transientTarget.attribute, attributes), null === (_a = transientTarget.onAttributeUpdate) || void 0 === _a || _a.call(transientTarget, context)) : transientTarget.setAttributesAndPreventAnimate(attributes, !1, context) : transientTarget.applyTransientAttributes(attributes, !1, context) : transientTarget.applyAnimationTransientAttributes(attributes, !1, context);
32453
+ const context = getAnimationContext(type);
32454
+ target.applyAnimationTransientAttributes(attributes, !1, context);
33293
32455
  }
33294
32456
  function applyAppearStartAttributes(target, attributes) {
33295
32457
  applyAnimationTransientAttributes(target, attributes, AttributeUpdateType.ANIMATE_BIND);
@@ -33304,8 +32466,7 @@ class Step {
33304
32466
  constructor(type, props, duration, easing) {
33305
32467
  var _a;
33306
32468
  this._startTime = 0, this._hasFirstRun = !1, this._syncAttributeUpdate = () => {
33307
- var _a, _b, _c, _d, _e, _f;
33308
- null === (_b = (_a = this.target).addUpdateShapeAndBoundsTag) || void 0 === _b || _b.call(_a), null === (_d = (_c = this.target).addUpdatePositionTag) || void 0 === _d || _d.call(_c), null === (_f = (_e = this.target).onAttributeUpdate) || void 0 === _f || _f.call(_e, {
32469
+ this.target.addUpdateShapeAndBoundsTag(), this.target.addUpdatePositionTag(), this.target.onAttributeUpdate({
33309
32470
  type: AttributeUpdateType.ANIMATE_UPDATE
33310
32471
  });
33311
32472
  }, this.type = type, this.props = props, this.duration = duration, this.easing = easing ? "function" == typeof easing ? easing : null !== (_a = Easing[easing]) && void 0 !== _a ? _a : Easing.linear : Easing.linear, "wait" === type && (this.onUpdate = noop), this.id = Generator.GenAutoIncrementId(), this.syncAttributeUpdate = noop;
@@ -33378,15 +32539,10 @@ class Step {
33378
32539
  }
33379
32540
  }
33380
32541
  tryPreventConflict() {
33381
- var _a, _b;
33382
32542
  const animate = this.animate,
33383
32543
  target = this.target,
33384
- forEachTrackedAnimate = null !== (_b = null === (_a = target.forEachTrackedAnimate) || void 0 === _a ? void 0 : _a.bind(target)) && void 0 !== _b ? _b : cb => {
33385
- var _a;
33386
- null === (_a = target.animates) || void 0 === _a || _a.forEach(cb);
33387
- },
33388
32544
  propKeys = this.propKeys;
33389
- forEachTrackedAnimate(a => {
32545
+ target.forEachTrackedAnimate(a => {
33390
32546
  if (a === animate || a.priority > animate.priority || a.priority === 1 / 0) return;
33391
32547
  const fromProps = a.getStartProps();
33392
32548
  let conflictKeys = null;
@@ -33613,19 +32769,13 @@ class FromTo extends ACustomAnimate {
33613
32769
  super(from, to, duration, easing, params), this.from = null != from ? from : {};
33614
32770
  }
33615
32771
  applyTransientFromAttributes() {
33616
- var _a, _b;
33617
- const target = this.target;
33618
- "function" != typeof target.applyTransientAttributes ? (Object.assign(null !== (_a = target.attribute) && void 0 !== _a ? _a : {}, this.from), null === (_b = target.onAttributeUpdate) || void 0 === _b || _b.call(target, {
33619
- type: AttributeUpdateType.ANIMATE_START
33620
- })) : target.applyTransientAttributes(this.from, !1, {
33621
- type: AttributeUpdateType.ANIMATE_START
33622
- });
32772
+ applyAnimationTransientAttributes(this.target, this.from, AttributeUpdateType.ANIMATE_START);
33623
32773
  }
33624
32774
  onBind() {
33625
- var _a, _b, _c, _d, _e;
32775
+ var _a, _b, _c;
33626
32776
  super.onBind(), Object.keys(this.from).forEach(key => {
33627
32777
  null == this.props[key] && (this.props[key] = this.target.getGraphicAttribute(key));
33628
- }), "appear" === (null === (_a = this.target.context) || void 0 === _a ? void 0 : _a.animationState) && (null === (_c = (_b = this.target).applyFinalAttributeToAttribute) || void 0 === _c || _c.call(_b)), !1 !== (null === (_e = null === (_d = this.params) || void 0 === _d ? void 0 : _d.controlOptions) || void 0 === _e ? void 0 : _e.immediatelyApply) && this.applyTransientFromAttributes();
32778
+ }), "appear" === (null === (_a = this.target.context) || void 0 === _a ? void 0 : _a.animationState) && this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_c = null === (_b = this.params) || void 0 === _b ? void 0 : _b.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && this.applyTransientFromAttributes();
33629
32779
  }
33630
32780
  onFirstRun() {
33631
32781
  this.from = Object.assign(Object.assign({}, this.getLastProps()), this.from);
@@ -33686,8 +32836,8 @@ class Animate {
33686
32836
  bind(target) {
33687
32837
  this.target = target;
33688
32838
  const trackerTarget = this.target;
33689
- return "function" == typeof trackerTarget.detachAttributeFromBaseAttributes && trackerTarget.detachAttributeFromBaseAttributes(), "function" == typeof trackerTarget.trackAnimate ? trackerTarget.trackAnimate(this) : (this.target.animates || (this.target.animates = new Map()), this.target.animates.set(this.id, this)), this.onRemove(() => {
33690
- this.stop(), this.__skipRestoreStaticAttributeOnRemove || "function" != typeof trackerTarget.restoreStaticAttribute || trackerTarget.restoreStaticAttribute(), "function" == typeof trackerTarget.untrackAnimate ? trackerTarget.untrackAnimate(this.id) : this.target.animates.delete(this.id);
32839
+ return trackerTarget.detachAttributeFromBaseAttributes(), trackerTarget.trackAnimate(this), this.onRemove(() => {
32840
+ this.stop(), this.__skipRestoreStaticAttributeOnRemove || trackerTarget.restoreStaticAttribute(), trackerTarget.untrackAnimate(this.id);
33691
32841
  }), this.target.onAnimateBind && !this.slience && this.target.onAnimateBind(this), this.target.animationAttribute || (this.target.animationAttribute = {}), this;
33692
32842
  }
33693
32843
  to(props, duration = 300, easing = "linear") {
@@ -33824,8 +32974,7 @@ class Animate {
33824
32974
  if (nextTime < this._startTime) return void (this.currentTime = nextTime);
33825
32975
  if (nextTime >= this._startTime + this._totalDuration) {
33826
32976
  null === (_a = this._lastStep) || void 0 === _a || _a.onUpdate(!0, 1, {}), null === (_b = this._lastStep) || void 0 === _b || _b.onEnd(), this.onEnd(), this.status = AnimateStatus.END;
33827
- const trackerTarget = this.target;
33828
- return "function" == typeof (null == trackerTarget ? void 0 : trackerTarget.restoreStaticAttribute) && trackerTarget.restoreStaticAttribute(), void (this.__skipRestoreStaticAttributeOnRemove = !0);
32977
+ return this.target.restoreStaticAttribute(), void (this.__skipRestoreStaticAttributeOnRemove = !0);
33829
32978
  }
33830
32979
  this.status = AnimateStatus.RUNNING, this.currentTime <= this._startTime && this.onStart(), this.currentTime = nextTime;
33831
32980
  let cycleTime = nextTime - this._startTime,
@@ -34517,9 +33666,8 @@ class AnimateExecutor {
34517
33666
  }
34518
33667
  syncFinalAttrsFromContext(graphic) {
34519
33668
  var _a;
34520
- const finalAttrs = null === (_a = graphic.context) || void 0 === _a ? void 0 : _a.finalAttrs,
34521
- setFinalAttributes = graphic.setFinalAttributes;
34522
- finalAttrs && "function" == typeof setFinalAttributes && setFinalAttributes.call(graphic, finalAttrs);
33669
+ const finalAttrs = null === (_a = graphic.context) || void 0 === _a ? void 0 : _a.finalAttrs;
33670
+ finalAttrs && graphic.setFinalAttributes(finalAttrs);
34523
33671
  }
34524
33672
  executeItem(params, graphic, index = 0, count = 1) {
34525
33673
  if (Array.isArray(params)) {
@@ -34772,8 +33920,7 @@ class GraphicStateExtension {
34772
33920
 
34773
33921
  class AnimateExtension {
34774
33922
  visitTrackedAnimates(cb) {
34775
- const target = this;
34776
- "function" != typeof target.forEachTrackedAnimate ? target.animates && target.animates.forEach(cb) : target.forEachTrackedAnimate(cb);
33923
+ this.forEachTrackedAnimate(cb);
34777
33924
  }
34778
33925
  getAttributes(final = !1) {
34779
33926
  return final && this.finalAttribute ? this.finalAttribute : this.attribute;
@@ -34809,15 +33956,12 @@ class AnimateExtension {
34809
33956
  applyFinalAttributeToAttribute() {
34810
33957
  const finalAttribute = this.getFinalAttribute();
34811
33958
  if (!finalAttribute) return;
34812
- const target = this;
34813
- "function" != typeof target.setAttributesAndPreventAnimate ? console.warn("[AnimateExtension] applyFinalAttributeToAttribute requires target.setAttributesAndPreventAnimate() to avoid committing finalAttribute into base attributes.") : target.setAttributesAndPreventAnimate(finalAttribute, !1, {
33959
+ this.setAttributesAndPreventAnimate(finalAttribute, !1, {
34814
33960
  type: AttributeUpdateType.ANIMATE_BIND
34815
33961
  });
34816
33962
  }
34817
33963
  restoreStaticAttribute() {
34818
- const target = this;
34819
- if ("function" != typeof target._restoreAttributeFromStaticTruth) return "function" == typeof target.onStop ? (console.warn("[AnimateExtension] restoreStaticAttribute is using deprecated target.onStop(); implement _restoreAttributeFromStaticTruth() for explicit transient restore semantics."), void target.onStop()) : void console.warn("[AnimateExtension] restoreStaticAttribute requires target._restoreAttributeFromStaticTruth() or an equivalent transient restore path.");
34820
- target._restoreAttributeFromStaticTruth({
33964
+ this._restoreAttributeFromStaticTruth({
34821
33965
  type: AttributeUpdateType.ANIMATE_END
34822
33966
  });
34823
33967
  }
@@ -35490,7 +34634,7 @@ function buildAnimationStaticCommitAttrs(target, keys, animate, fallbackAttrs) {
35490
34634
  var _a;
35491
34635
  const commitTarget = target,
35492
34636
  contextFinalAttrs = null === (_a = commitTarget.context) || void 0 === _a ? void 0 : _a.finalAttrs,
35493
- finalAttribute = "function" == typeof commitTarget.getFinalAttribute ? commitTarget.getFinalAttribute() : commitTarget.finalAttribute;
34637
+ finalAttribute = commitTarget.getFinalAttribute();
35494
34638
  let commitAttrs = null;
35495
34639
  for (let i = 0; i < keys.length; i++) {
35496
34640
  const key = keys[i];
@@ -35499,9 +34643,8 @@ function buildAnimationStaticCommitAttrs(target, keys, animate, fallbackAttrs) {
35499
34643
  return commitAttrs;
35500
34644
  }
35501
34645
  function commitAnimationStaticAttrs(target, keys, animate, fallbackAttrs) {
35502
- var _a, _b;
35503
34646
  const commitAttrs = buildAnimationStaticCommitAttrs(target, keys, animate, fallbackAttrs);
35504
- return !!commitAttrs && (null === (_b = (_a = target).setFinalAttributes) || void 0 === _b || _b.call(_a, commitAttrs), target.setAttributes(commitAttrs, !1, {
34647
+ return !!commitAttrs && (target.setFinalAttributes(commitAttrs), target.setAttributes(commitAttrs, !1, {
35505
34648
  type: AttributeUpdateType.ANIMATE_END
35506
34649
  }), !0);
35507
34650
  }
@@ -35612,7 +34755,7 @@ class CommonIn extends ACustomAnimate {
35612
34755
  super(from, to, duration, easing, params);
35613
34756
  }
35614
34757
  onBind() {
35615
- var _a, _b, _c, _d, _e;
34758
+ var _a, _b, _c;
35616
34759
  super.onBind();
35617
34760
  const attrs = this.target.getFinalAttribute(),
35618
34761
  fromAttrs = null !== (_a = this.target.attribute) && void 0 !== _a ? _a : {},
@@ -35621,7 +34764,7 @@ class CommonIn extends ACustomAnimate {
35621
34764
  this.keys.forEach(key => {
35622
34765
  var _a, _b, _c;
35623
34766
  to[key] = null !== (_a = null == attrs ? void 0 : attrs[key]) && void 0 !== _a ? _a : 1, from[key] = null !== (_c = null !== (_b = from[key]) && void 0 !== _b ? _b : fromAttrs[key]) && void 0 !== _c ? _c : 0;
35624
- }), null === (_d = (_c = this.target).applyFinalAttributeToAttribute) || void 0 === _d || _d.call(_c), this.props = to, this.propKeys = this.keys, this.from = from, this.to = to, !1 !== (null === (_e = this.params.controlOptions) || void 0 === _e ? void 0 : _e.immediatelyApply) && applyAppearStartAttributes(this.target, from);
34767
+ }), this.target.applyFinalAttributeToAttribute(), this.props = to, this.propKeys = this.keys, this.from = from, this.to = to, !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, from);
35625
34768
  }
35626
34769
  onUpdate(end, ratio, out) {
35627
34770
  const attrs = {};
@@ -35673,8 +34816,7 @@ class RotateBySphereAnimate extends ACustomAnimate {
35673
34816
  super.onBind(), this.propKeys = ["x", "y", "z", "alpha", "zIndex"];
35674
34817
  }
35675
34818
  onFirstRun() {
35676
- var _a, _b;
35677
- super.onFirstRun(), null === (_b = (_a = this.target).applyFinalAttributeToAttribute) || void 0 === _b || _b.call(_a);
34819
+ super.onFirstRun(), this.target.applyFinalAttributeToAttribute();
35678
34820
  }
35679
34821
  onStart() {
35680
34822
  var _a, _b;
@@ -35683,7 +34825,7 @@ class RotateBySphereAnimate extends ACustomAnimate {
35683
34825
  center: center,
35684
34826
  r: r
35685
34827
  } = "function" == typeof this.params ? this.params() : this.params,
35686
- source = null !== (_a = this.target.finalAttribute) && void 0 !== _a ? _a : this.target.attribute,
34828
+ source = null !== (_a = this.target.getFinalAttribute()) && void 0 !== _a ? _a : this.target.attribute,
35687
34829
  startX = source.x,
35688
34830
  startY = source.y,
35689
34831
  startZ = null !== (_b = source.z) && void 0 !== _b ? _b : 0,
@@ -35882,14 +35024,14 @@ class GrowAngleBase extends ACustomAnimate {
35882
35024
  }
35883
35025
  class GrowAngleIn extends GrowAngleBase {
35884
35026
  onBind() {
35885
- var _a, _b, _c, _d, _e;
35027
+ var _a, _b, _c;
35886
35028
  super.onBind();
35887
35029
  const {
35888
35030
  from: from,
35889
35031
  to: to
35890
35032
  } = growAngleIn(this.target, this.params.options, this.params),
35891
35033
  fromAttrs = null !== (_b = null === (_a = this.target.context) || void 0 === _a ? void 0 : _a.lastAttrs) && void 0 !== _b ? _b : from;
35892
- this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to, null === (_d = (_c = this.target).applyFinalAttributeToAttribute) || void 0 === _d || _d.call(_c), !1 !== (null === (_e = this.params.controlOptions) || void 0 === _e ? void 0 : _e.immediatelyApply) && applyAppearStartAttributes(this.target, fromAttrs), this.determineUpdateFunction();
35034
+ this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to, this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, fromAttrs), this.determineUpdateFunction();
35893
35035
  }
35894
35036
  }
35895
35037
  class GrowAngleOut extends GrowAngleBase {
@@ -36032,14 +35174,14 @@ class GrowCenterIn extends ACustomAnimate {
36032
35174
  super(from, to, duration, easing, params);
36033
35175
  }
36034
35176
  onBind() {
36035
- var _a, _b, _c, _d, _e;
35177
+ var _a, _b, _c;
36036
35178
  super.onBind();
36037
35179
  const {
36038
35180
  from: from,
36039
35181
  to: to
36040
35182
  } = growCenterIn(this.target, this.params.options, this.params),
36041
35183
  fromAttrs = null !== (_b = null === (_a = this.target.context) || void 0 === _a ? void 0 : _a.lastAttrs) && void 0 !== _b ? _b : from;
36042
- this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to, null === (_d = (_c = this.target).applyFinalAttributeToAttribute) || void 0 === _d || _d.call(_c), !1 !== (null === (_e = this.params.controlOptions) || void 0 === _e ? void 0 : _e.immediatelyApply) && applyAppearStartAttributes(this.target, fromAttrs);
35184
+ this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to, this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, fromAttrs);
36043
35185
  }
36044
35186
  onEnd(cb) {
36045
35187
  super.onEnd(cb);
@@ -36137,14 +35279,14 @@ class GrowHeightIn extends ACustomAnimate {
36137
35279
  super(from, to, duration, easing, params);
36138
35280
  }
36139
35281
  onBind() {
36140
- var _a, _b, _c, _d, _e;
35282
+ var _a, _b, _c;
36141
35283
  super.onBind();
36142
35284
  const {
36143
35285
  from: from,
36144
35286
  to: to
36145
35287
  } = growHeightIn(this.target, this.params.options, this.params),
36146
35288
  fromAttrs = null !== (_b = null === (_a = this.target.context) || void 0 === _a ? void 0 : _a.lastAttrs) && void 0 !== _b ? _b : from;
36147
- this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to, null === (_d = (_c = this.target).applyFinalAttributeToAttribute) || void 0 === _d || _d.call(_c), !1 !== (null === (_e = this.params.controlOptions) || void 0 === _e ? void 0 : _e.immediatelyApply) && applyAppearStartAttributes(this.target, fromAttrs);
35289
+ this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to, this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, fromAttrs);
36148
35290
  }
36149
35291
  onEnd(cb) {
36150
35292
  super.onEnd(cb);
@@ -36248,13 +35390,13 @@ class GworPointsBase extends ACustomAnimate {
36248
35390
  }
36249
35391
  class GrowPointsIn extends GworPointsBase {
36250
35392
  onBind() {
36251
- var _a, _b, _c;
35393
+ var _a;
36252
35394
  if (super.onBind(), ["area", "line", "polygon"].includes(this.target.type)) {
36253
35395
  const {
36254
35396
  from: from,
36255
35397
  to: to
36256
35398
  } = growPointsIn(this.target, this.params.options, this.params);
36257
- this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = from, this.to = to, null === (_b = (_a = this.target).applyFinalAttributeToAttribute) || void 0 === _b || _b.call(_a), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, from);
35399
+ this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = from, this.to = to, this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_a = this.params.controlOptions) || void 0 === _a ? void 0 : _a.immediatelyApply) && applyAppearStartAttributes(this.target, from);
36258
35400
  } else this.valid = !1;
36259
35401
  }
36260
35402
  }
@@ -36310,13 +35452,13 @@ const changePointsX = (graphic, options, animationParameters) => graphic.getFina
36310
35452
  };
36311
35453
  class GrowPointsXIn extends GworPointsBase {
36312
35454
  onBind() {
36313
- var _a, _b, _c;
35455
+ var _a;
36314
35456
  if (super.onBind(), ["area", "line", "polygon"].includes(this.target.type)) {
36315
35457
  const {
36316
35458
  from: from,
36317
35459
  to: to
36318
35460
  } = growPointsXIn(this.target, this.params.options, this.params);
36319
- this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = from, this.to = to, null === (_b = (_a = this.target).applyFinalAttributeToAttribute) || void 0 === _b || _b.call(_a), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, from);
35461
+ this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = from, this.to = to, this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_a = this.params.controlOptions) || void 0 === _a ? void 0 : _a.immediatelyApply) && applyAppearStartAttributes(this.target, from);
36320
35462
  } else this.valid = !1;
36321
35463
  }
36322
35464
  }
@@ -36372,13 +35514,13 @@ const changePointsY = (graphic, options, animationParameters) => graphic.getFina
36372
35514
  };
36373
35515
  class GrowPointsYIn extends GworPointsBase {
36374
35516
  onBind() {
36375
- var _a, _b, _c;
35517
+ var _a;
36376
35518
  if (super.onBind(), ["area", "line", "polygon"].includes(this.target.type)) {
36377
35519
  const {
36378
35520
  from: from,
36379
35521
  to: to
36380
35522
  } = growPointsYIn(this.target, this.params.options, this.params);
36381
- this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = from, this.to = to, null === (_b = (_a = this.target).applyFinalAttributeToAttribute) || void 0 === _b || _b.call(_a), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, from);
35523
+ this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = from, this.to = to, this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_a = this.params.controlOptions) || void 0 === _a ? void 0 : _a.immediatelyApply) && applyAppearStartAttributes(this.target, from);
36382
35524
  } else this.valid = !1;
36383
35525
  }
36384
35526
  }
@@ -36483,14 +35625,14 @@ class GrowPointsBase extends ACustomAnimate {
36483
35625
  }
36484
35626
  class GrowRadiusIn extends GrowPointsBase {
36485
35627
  onBind() {
36486
- var _a, _b, _c, _d, _e;
35628
+ var _a, _b, _c;
36487
35629
  super.onBind();
36488
35630
  const {
36489
35631
  from: from,
36490
35632
  to: to
36491
35633
  } = growRadiusIn(this.target, this.params.options, this.params),
36492
35634
  fromAttrs = null !== (_b = null === (_a = this.target.context) || void 0 === _a ? void 0 : _a.lastAttrs) && void 0 !== _b ? _b : from;
36493
- this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to, null === (_d = (_c = this.target).applyFinalAttributeToAttribute) || void 0 === _d || _d.call(_c), !1 !== (null === (_e = this.params.controlOptions) || void 0 === _e ? void 0 : _e.immediatelyApply) && applyAppearStartAttributes(this.target, fromAttrs);
35635
+ this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to, this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, fromAttrs);
36494
35636
  }
36495
35637
  }
36496
35638
  class GrowRadiusOut extends GrowPointsBase {
@@ -36605,14 +35747,14 @@ class GrowWidthIn extends ACustomAnimate {
36605
35747
  super(from, to, duration, easing, params);
36606
35748
  }
36607
35749
  onBind() {
36608
- var _a, _b, _c, _d, _e;
35750
+ var _a, _b, _c;
36609
35751
  super.onBind();
36610
35752
  const {
36611
35753
  from: from,
36612
35754
  to: to
36613
35755
  } = growWidthIn(this.target, this.params.options, this.params),
36614
35756
  fromAttrs = null !== (_b = null === (_a = this.target.context) || void 0 === _a ? void 0 : _a.lastAttrs) && void 0 !== _b ? _b : from;
36615
- this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to, null === (_d = (_c = this.target).applyFinalAttributeToAttribute) || void 0 === _d || _d.call(_c), !1 !== (null === (_e = this.params.controlOptions) || void 0 === _e ? void 0 : _e.immediatelyApply) && applyAppearStartAttributes(this.target, fromAttrs);
35757
+ this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to, this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, fromAttrs);
36616
35758
  }
36617
35759
  onEnd(cb) {
36618
35760
  super.onEnd(cb);
@@ -37376,7 +36518,7 @@ class ScaleIn extends ACustomAnimate {
37376
36518
  super(from, to, duration, easing, params);
37377
36519
  }
37378
36520
  onBind() {
37379
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0;
36521
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
37380
36522
  let from, to;
37381
36523
  super.onBind();
37382
36524
  const attrs = this.target.getFinalAttribute(),
@@ -37409,7 +36551,7 @@ class ScaleIn extends ACustomAnimate {
37409
36551
  scaleY: null !== (_x = null == attrs ? void 0 : attrs.scaleY) && void 0 !== _x ? _x : 1
37410
36552
  }, this._updateFunction = this.updateXY;
37411
36553
  }
37412
- null === (_z = (_y = this.target).applyFinalAttributeToAttribute) || void 0 === _z || _z.call(_y), this.props = to, this.from = from, this.to = to, !1 !== (null === (_0 = this.params.controlOptions) || void 0 === _0 ? void 0 : _0.immediatelyApply) && applyAppearStartAttributes(this.target, from);
36554
+ this.target.applyFinalAttributeToAttribute(), this.props = to, this.from = from, this.to = to, !1 !== (null === (_y = this.params.controlOptions) || void 0 === _y ? void 0 : _y.immediatelyApply) && applyAppearStartAttributes(this.target, from);
37413
36555
  }
37414
36556
  onEnd(cb) {
37415
36557
  super.onEnd(cb);
@@ -37976,9 +37118,7 @@ class Update extends ACustomAnimate {
37976
37118
  const {
37977
37119
  options: options
37978
37120
  } = this.params;
37979
- diffAttrs = filterExcludedChannels(diffAttrs, null == options ? void 0 : options.excludeChannels), this.props = diffAttrs;
37980
- const consumeTransientFromAttrs = this.target.consumeTransientFromAttrsBeforePreventAnimate;
37981
- this.updateFromAttrs = "function" == typeof consumeTransientFromAttrs ? consumeTransientFromAttrs.call(this.target, diffAttrs) : null, this.clipPathSyncKeys = Object.keys(diffAttrs).filter(key => clipPathGeometryAttrs[key]), this.clipPathSyncDisabled = !this.clipPathSyncKeys.length, this.syncParentClipPathToTarget();
37121
+ diffAttrs = filterExcludedChannels(diffAttrs, null == options ? void 0 : options.excludeChannels), this.props = diffAttrs, this.updateFromAttrs = this.target.consumeTransientFromAttrsBeforePreventAnimate(diffAttrs), this.clipPathSyncKeys = Object.keys(diffAttrs).filter(key => clipPathGeometryAttrs[key]), this.clipPathSyncDisabled = !this.clipPathSyncKeys.length, this.syncParentClipPathToTarget();
37982
37122
  }
37983
37123
  trySyncStartProps() {
37984
37124
  const updateFromAttrs = this.updateFromAttrs;
@@ -37996,7 +37136,7 @@ class Update extends ACustomAnimate {
37996
37136
  this.runInterpolateUpdate(this.fromProps, this.props, easedRatio), this.syncParentClipPathToTarget(), this.onUpdate(end, easedRatio, out);
37997
37137
  }
37998
37138
  syncParentClipPathToTarget() {
37999
- var _a, _b, _c, _d;
37139
+ var _a, _b;
38000
37140
  if (this.clipPathSyncDisabled) return;
38001
37141
  const target = this.target,
38002
37142
  parent = target.parent,
@@ -38007,20 +37147,19 @@ class Update extends ACustomAnimate {
38007
37147
  const clipGraphic = path[childIndex];
38008
37148
  if (!(null == clipGraphic ? void 0 : clipGraphic.attribute) || clipGraphic.type !== target.type || !this.isClipPathStaticTarget(clipGraphic)) return;
38009
37149
  const syncAttrs = this.buildClipPathTransientAttrs(clipGraphic);
38010
- syncAttrs && (applyAnimationFrameAttributes(clipGraphic, syncAttrs), null === (_c = clipGraphic.addUpdatePositionTag) || void 0 === _c || _c.call(clipGraphic), null === (_d = clipGraphic.addUpdateShapeAndBoundsTag) || void 0 === _d || _d.call(clipGraphic));
37150
+ syncAttrs && (applyAnimationFrameAttributes(clipGraphic, syncAttrs), clipGraphic.addUpdatePositionTag(), clipGraphic.addUpdateShapeAndBoundsTag());
38011
37151
  }
38012
37152
  getClipPathSyncChildIndex(parent) {
38013
- var _a;
38014
37153
  if (this.clipPathSyncParent === parent && this.clipPathSyncChildIndex >= 0) return this.clipPathSyncChildIndex;
38015
37154
  const target = this.target;
38016
37155
  let childIndex = -1;
38017
- return null === (_a = parent.forEachChildren) || void 0 === _a || _a.call(parent, (child, index) => child === target && (childIndex = index, !0)), this.clipPathSyncParent = parent, this.clipPathSyncChildIndex = childIndex, childIndex;
37156
+ return parent.forEachChildren((child, index) => child === target && (childIndex = index, !0)), this.clipPathSyncParent = parent, this.clipPathSyncChildIndex = childIndex, childIndex;
38018
37157
  }
38019
37158
  isClipPathStaticTarget(clipGraphic) {
38020
37159
  var _a, _b;
38021
37160
  const target = this.target,
38022
37161
  targetFinalAttrs = this.getTargetFinalAttrs(),
38023
- clipGraphicFinalAttrs = "function" == typeof clipGraphic.getFinalAttribute ? clipGraphic.getFinalAttribute() : clipGraphic.finalAttribute,
37162
+ clipGraphicFinalAttrs = clipGraphic.getFinalAttribute(),
38024
37163
  clipFinalAttrs = null !== (_a = null != clipGraphicFinalAttrs ? clipGraphicFinalAttrs : clipGraphic.baseAttributes) && void 0 !== _a ? _a : clipGraphic.attribute,
38025
37164
  keys = null !== (_b = this.clipPathSyncKeys) && void 0 !== _b ? _b : [];
38026
37165
  return !!(keys.length && targetFinalAttrs && clipFinalAttrs) && keys.every(key => {
@@ -38031,7 +37170,7 @@ class Update extends ACustomAnimate {
38031
37170
  getTargetFinalAttrs() {
38032
37171
  var _a, _b, _c;
38033
37172
  const target = this.target;
38034
- return null !== (_c = null !== (_b = null === (_a = target.context) || void 0 === _a ? void 0 : _a.finalAttrs) && void 0 !== _b ? _b : "function" == typeof target.getFinalAttribute ? target.getFinalAttribute() : target.finalAttribute) && void 0 !== _c ? _c : null;
37173
+ return null !== (_c = null !== (_b = null === (_a = target.context) || void 0 === _a ? void 0 : _a.finalAttrs) && void 0 !== _b ? _b : target.getFinalAttribute()) && void 0 !== _c ? _c : null;
38035
37174
  }
38036
37175
  isSameClipPathValue(a, b) {
38037
37176
  return "number" == typeof a && "number" == typeof b ? Math.abs(a - b) < 1e-8 : a === b;
@@ -38159,13 +37298,13 @@ class MoveBase extends ACustomAnimate {
38159
37298
  }
38160
37299
  class MoveIn extends MoveBase {
38161
37300
  onBind() {
38162
- var _a, _b, _c;
37301
+ var _a;
38163
37302
  super.onBind();
38164
37303
  const {
38165
37304
  from: from,
38166
37305
  to: to
38167
37306
  } = moveIn(this.target, this.params.options, this.params);
38168
- this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = from, this.to = to, null === (_b = (_a = this.target).applyFinalAttributeToAttribute) || void 0 === _b || _b.call(_a), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, from);
37307
+ this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = from, this.to = to, this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_a = this.params.controlOptions) || void 0 === _a ? void 0 : _a.immediatelyApply) && applyAppearStartAttributes(this.target, from);
38169
37308
  }
38170
37309
  }
38171
37310
  class MoveOut extends MoveBase {
@@ -38218,13 +37357,13 @@ class RotateBase extends ACustomAnimate {
38218
37357
  }
38219
37358
  class RotateIn extends RotateBase {
38220
37359
  onBind() {
38221
- var _a, _b, _c;
37360
+ var _a;
38222
37361
  super.onBind();
38223
37362
  const {
38224
37363
  from: from,
38225
37364
  to: to
38226
37365
  } = rotateIn(this.target, this.params.options);
38227
- this.props = to, this.propKeys = ["angle"], this.from = from, this.to = to, null === (_b = (_a = this.target).applyFinalAttributeToAttribute) || void 0 === _b || _b.call(_a), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && applyAppearStartAttributes(this.target, from);
37366
+ this.props = to, this.propKeys = ["angle"], this.from = from, this.to = to, this.target.applyFinalAttributeToAttribute(), !1 !== (null === (_a = this.params.controlOptions) || void 0 === _a ? void 0 : _a.immediatelyApply) && applyAppearStartAttributes(this.target, from);
38228
37367
  }
38229
37368
  }
38230
37369
  class RotateOut extends RotateBase {
@@ -39731,7 +38870,7 @@ class AbstractComponent extends Group {
39731
38870
  [key]: value
39732
38871
  }, this.attribute, key, context);
39733
38872
  if (params) return this._setAttributes(params, forceUpdateTag);
39734
- isPlainObject$4(this.attribute[key]) && isPlainObject$4(value) && !isFunction$1(this.attribute[key]) && !isFunction$1(value) ? merge(this.attribute[key], value) : this.attribute[key] = value, this._skipRenderAttributes.includes(key) || this.render(), this.valid = this.isValid(), this.updateShapeAndBoundsTagSetted() || !forceUpdateTag && !this.needUpdateTag(key) ? this.addUpdateBoundTag() : this.addUpdateShapeAndBoundsTag(), this.addUpdatePositionTag(), this.onAttributeUpdate();
38873
+ isPlainObject$3(this.attribute[key]) && isPlainObject$3(value) && !isFunction$1(this.attribute[key]) && !isFunction$1(value) ? merge(this.attribute[key], value) : this.attribute[key] = value, this._skipRenderAttributes.includes(key) || this.render(), this.valid = this.isValid(), this.updateShapeAndBoundsTagSetted() || !forceUpdateTag && !this.needUpdateTag(key) ? this.addUpdateBoundTag() : this.addUpdateShapeAndBoundsTag(), this.addUpdatePositionTag(), this.onAttributeUpdate();
39735
38874
  }
39736
38875
  setAttributes(params, forceUpdateTag, context) {
39737
38876
  return params = this.onBeforeAttributeUpdate && this.onBeforeAttributeUpdate(params, this.attribute, null, context) || params, this._setAttributes(params, forceUpdateTag);
@@ -39744,7 +38883,7 @@ class AbstractComponent extends Group {
39744
38883
  isNil$1(keys) && (keys = Object.keys(params));
39745
38884
  for (let i = 0; i < keys.length; i++) {
39746
38885
  const key = keys[i];
39747
- !isPlainObject$4(this.attribute[key]) || isFunction$1(this.attribute[key]) || isFunction$1(params[key]) ? this.attribute[key] = params[key] : merge(this.attribute[key], params[key]);
38886
+ !isPlainObject$3(this.attribute[key]) || isFunction$1(this.attribute[key]) || isFunction$1(params[key]) ? this.attribute[key] = params[key] : merge(this.attribute[key], params[key]);
39748
38887
  }
39749
38888
  }
39750
38889
  bindEvents() {}
@@ -43804,7 +42943,7 @@ const getCartesianLabelBounds = (scale, domain, op) => {
43804
42943
  for (let i = 0; i < domain.length; i++) {
43805
42944
  const v = domain[i],
43806
42945
  str = labelFormatter ? labelFormatter(v) : `${v}`;
43807
- if (isPlainObject$4(str)) {
42946
+ if (isPlainObject$3(str)) {
43808
42947
  labelBoundsList = void 0;
43809
42948
  break;
43810
42949
  }
@@ -55709,47 +54848,6 @@ TableSeriesNumber.defaultAttributes = {
55709
54848
  };
55710
54849
 
55711
54850
  const BOOTSTRAP_STATE = Symbol.for('vrender.bootstrap.state');
55712
- const installBrowserEnvToAppWithParams = installBrowserEnvToApp;
55713
- const installNodeEnvToAppWithParams = installNodeEnvToApp;
55714
- const miniEnvBootstraps = {
55715
- taro: { installEnv: installTaroEnvToApp, loadEnv: loadTaroEnv },
55716
- feishu: { installEnv: installFeishuEnvToApp, loadEnv: loadFeishuEnv },
55717
- tt: { installEnv: installTTEnvToApp, loadEnv: loadTTEnv },
55718
- wx: { installEnv: installWxEnvToApp, loadEnv: loadWxEnv },
55719
- lynx: { installEnv: installLynxEnvToApp, loadEnv: loadLynxEnv },
55720
- harmony: { installEnv: installHarmonyEnvToApp, loadEnv: loadHarmonyEnv }
55721
- };
55722
- const pluginRegistrations = [
55723
- registerFlexLayoutPlugin,
55724
- registerViewTransform3dPlugin,
55725
- registerHtmlAttributePlugin,
55726
- registerReactAttributePlugin,
55727
- registerDirectionalLight,
55728
- registerOrthoCamera
55729
- ];
55730
- const animationRegistrations = [registerCustomAnimate, registerAnimate];
55731
- const legacyGraphicRegistrations = [
55732
- registerArc,
55733
- registerArc3d,
55734
- registerArea,
55735
- registerCircle,
55736
- registerGlyph,
55737
- registerGifImage,
55738
- registerGroup,
55739
- registerImage,
55740
- registerLine,
55741
- registerPath,
55742
- registerPolygon,
55743
- registerPyramid3d,
55744
- registerRect,
55745
- registerRect3d,
55746
- registerRichtext,
55747
- registerShadowRoot,
55748
- registerSymbol,
55749
- registerText,
55750
- registerWrapText,
55751
- registerStar
55752
- ];
55753
54851
  function ensureBootstrap(target, key) {
55754
54852
  var _a;
55755
54853
  const state = (_a = target[BOOTSTRAP_STATE]) !== null && _a !== void 0 ? _a : new Set();
@@ -55760,10 +54858,6 @@ function ensureBootstrap(target, key) {
55760
54858
  state.add(key);
55761
54859
  return true;
55762
54860
  }
55763
- function registerDefaultPipeline() {
55764
- pluginRegistrations.forEach(register => register());
55765
- animationRegistrations.forEach(register => register());
55766
- }
55767
54861
  function createBootstrapEntryKey(entry, prefix) {
55768
54862
  var _a, _b, _c, _d;
55769
54863
  const type = (_a = entry === null || entry === void 0 ? void 0 : entry.type) !== null && _a !== void 0 ? _a : 'unknown';
@@ -55807,6 +54901,52 @@ function syncLegacyPickersToApp(app, pickerContribution) {
55807
54901
  app.registry.picker.register(key, picker);
55808
54902
  });
55809
54903
  }
54904
+
54905
+ const installBrowserEnvToAppWithParams = installBrowserEnvToApp;
54906
+ const installNodeEnvToAppWithParams = installNodeEnvToApp;
54907
+ const miniEnvBootstraps = {
54908
+ taro: { installEnv: installTaroEnvToApp, loadEnv: loadTaroEnv },
54909
+ feishu: { installEnv: installFeishuEnvToApp, loadEnv: loadFeishuEnv },
54910
+ tt: { installEnv: installTTEnvToApp, loadEnv: loadTTEnv },
54911
+ wx: { installEnv: installWxEnvToApp, loadEnv: loadWxEnv },
54912
+ lynx: { installEnv: installLynxEnvToApp, loadEnv: loadLynxEnv },
54913
+ harmony: { installEnv: installHarmonyEnvToApp, loadEnv: loadHarmonyEnv }
54914
+ };
54915
+ const pluginRegistrations = [
54916
+ registerFlexLayoutPlugin,
54917
+ registerViewTransform3dPlugin,
54918
+ registerHtmlAttributePlugin,
54919
+ registerReactAttributePlugin,
54920
+ registerDirectionalLight,
54921
+ registerOrthoCamera
54922
+ ];
54923
+ const animationRegistrations = [registerCustomAnimate, registerAnimate];
54924
+ const legacyGraphicRegistrations = [
54925
+ registerArc,
54926
+ registerArc3d,
54927
+ registerArea,
54928
+ registerCircle,
54929
+ registerGlyph,
54930
+ registerGifImage,
54931
+ registerGroup,
54932
+ registerImage,
54933
+ registerLine,
54934
+ registerPath,
54935
+ registerPolygon,
54936
+ registerPyramid3d,
54937
+ registerRect,
54938
+ registerRect3d,
54939
+ registerRichtext,
54940
+ registerShadowRoot,
54941
+ registerSymbol,
54942
+ registerText,
54943
+ registerWrapText,
54944
+ registerStar
54945
+ ];
54946
+ function registerDefaultPipeline() {
54947
+ pluginRegistrations.forEach(register => register());
54948
+ animationRegistrations.forEach(register => register());
54949
+ }
55810
54950
  function bootstrapVRenderBrowserApp(app, envParams) {
55811
54951
  const target = app;
55812
54952
  if (!ensureBootstrap(target, 'browser')) {
@@ -55908,7 +55048,6 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
55908
55048
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
55909
55049
  };
55910
55050
 
55911
- const { createBrowserApp } = VRenderCore;
55912
55051
  function createBrowserVRenderApp(options = {}) {
55913
55052
  const { envParams } = options, entryOptions = __rest(options, ["envParams"]);
55914
55053
  return bootstrapVRenderBrowserApp(createBrowserApp(entryOptions), envParams);
@@ -55944,8 +55083,8 @@ function createNodeVRenderApp(options = {}) {
55944
55083
  return bootstrapVRenderNodeApp(createNodeApp(entryOptions), envParams);
55945
55084
  }
55946
55085
 
55947
- const SHARED_APP_REGISTRY_KEY = Symbol.for('visactor.vrender.sharedAppRegistry');
55948
55086
  const DEFAULT_SHARED_APP_KEY = 'default';
55087
+ const SHARED_APP_REGISTRY_KEY = Symbol.for('visactor.vrender.sharedAppRegistry');
55949
55088
  function getSharedAppRegistry() {
55950
55089
  var _a;
55951
55090
  const target = globalThis;
@@ -55985,36 +55124,8 @@ function releaseSharedAppRecord(env, key, record) {
55985
55124
  removeSharedAppRecord(env, key, record);
55986
55125
  record.releaseApp();
55987
55126
  }
55988
- function createAppForSharedEnv(options) {
55989
- const { env } = options;
55990
- const entryOptions = Object.assign({}, options);
55991
- delete entryOptions.env;
55992
- delete entryOptions.key;
55993
- if (env === 'browser') {
55994
- return createBrowserVRenderApp(entryOptions);
55995
- }
55996
- if (env === 'node') {
55997
- return createNodeVRenderApp(entryOptions);
55998
- }
55999
- if (env === 'taro') {
56000
- return createTaroVRenderApp(entryOptions);
56001
- }
56002
- if (env === 'feishu') {
56003
- return createFeishuVRenderApp(entryOptions);
56004
- }
56005
- if (env === 'tt') {
56006
- return createTTVRenderApp(entryOptions);
56007
- }
56008
- if (env === 'wx') {
56009
- return createWxVRenderApp(entryOptions);
56010
- }
56011
- if (env === 'lynx') {
56012
- return createLynxVRenderApp(entryOptions);
56013
- }
56014
- return createHarmonyVRenderApp(entryOptions);
56015
- }
56016
- function createSharedAppRecord(env, key, options) {
56017
- const app = createAppForSharedEnv(options);
55127
+ function createSharedAppRecord(env, key, options, createApp) {
55128
+ const app = createApp(options);
56018
55129
  const originalRelease = app.release.bind(app);
56019
55130
  const record = {
56020
55131
  app,
@@ -56025,45 +55136,45 @@ function createSharedAppRecord(env, key, options) {
56025
55136
  app.release = () => releaseSharedAppRecord(env, key, record);
56026
55137
  return record;
56027
55138
  }
56028
- function createSharedAppHandle(env, key, record) {
55139
+ function createSharedAppHandle(registryEnv, handleEnv, key, record) {
56029
55140
  let released = false;
56030
55141
  return {
56031
55142
  app: record.app,
56032
- env,
55143
+ env: handleEnv,
56033
55144
  key,
56034
55145
  release() {
56035
55146
  if (released) {
56036
55147
  return;
56037
55148
  }
56038
55149
  released = true;
56039
- const envRegistry = getSharedAppEnvRegistry(env, false);
55150
+ const envRegistry = getSharedAppEnvRegistry(registryEnv, false);
56040
55151
  if ((envRegistry === null || envRegistry === void 0 ? void 0 : envRegistry.get(key)) !== record || record.released) {
56041
55152
  return;
56042
55153
  }
56043
55154
  record.refCount -= 1;
56044
55155
  if (record.refCount <= 0) {
56045
- releaseSharedAppRecord(env, key, record);
55156
+ releaseSharedAppRecord(registryEnv, key, record);
56046
55157
  }
56047
55158
  }
56048
55159
  };
56049
55160
  }
56050
- function acquireSharedVRenderApp(options) {
55161
+ function acquireSharedApp(registryEnv, options, createApp, handleEnv = registryEnv) {
56051
55162
  var _a;
56052
55163
  const key = (_a = options.key) !== null && _a !== void 0 ? _a : DEFAULT_SHARED_APP_KEY;
56053
- const envRegistry = getOrCreateSharedAppEnvRegistry(options.env);
55164
+ const envRegistry = getOrCreateSharedAppEnvRegistry(registryEnv);
56054
55165
  let record = envRegistry.get(key);
56055
55166
  if (record === null || record === void 0 ? void 0 : record.app.released) {
56056
- releaseSharedAppRecord(options.env, key, record);
55167
+ releaseSharedAppRecord(registryEnv, key, record);
56057
55168
  record = undefined;
56058
55169
  }
56059
55170
  if (!record) {
56060
- record = createSharedAppRecord(options.env, key, options);
55171
+ record = createSharedAppRecord(registryEnv, key, options, createApp);
56061
55172
  envRegistry.set(key, record);
56062
55173
  }
56063
55174
  record.refCount += 1;
56064
- return createSharedAppHandle(options.env, key, record);
55175
+ return createSharedAppHandle(registryEnv, handleEnv, key, record);
56065
55176
  }
56066
- function getSharedVRenderApp(env, key = DEFAULT_SHARED_APP_KEY) {
55177
+ function getSharedApp(env, key = DEFAULT_SHARED_APP_KEY) {
56067
55178
  var _a;
56068
55179
  const record = (_a = getSharedAppEnvRegistry(env, false)) === null || _a === void 0 ? void 0 : _a.get(key);
56069
55180
  if (!record || record.released || record.app.released) {
@@ -56071,7 +55182,7 @@ function getSharedVRenderApp(env, key = DEFAULT_SHARED_APP_KEY) {
56071
55182
  }
56072
55183
  return record.app;
56073
55184
  }
56074
- function releaseSharedVRenderApp(env, key = DEFAULT_SHARED_APP_KEY) {
55185
+ function releaseSharedApp(env, key = DEFAULT_SHARED_APP_KEY) {
56075
55186
  var _a;
56076
55187
  const record = (_a = getSharedAppEnvRegistry(env, false)) === null || _a === void 0 ? void 0 : _a.get(key);
56077
55188
  if (record) {
@@ -56079,6 +55190,44 @@ function releaseSharedVRenderApp(env, key = DEFAULT_SHARED_APP_KEY) {
56079
55190
  }
56080
55191
  }
56081
55192
 
55193
+ function createAppForSharedEnv(options) {
55194
+ const { env } = options;
55195
+ const entryOptions = Object.assign({}, options);
55196
+ delete entryOptions.env;
55197
+ delete entryOptions.key;
55198
+ if (env === 'browser') {
55199
+ return createBrowserVRenderApp(entryOptions);
55200
+ }
55201
+ if (env === 'node') {
55202
+ return createNodeVRenderApp(entryOptions);
55203
+ }
55204
+ if (env === 'taro') {
55205
+ return createTaroVRenderApp(entryOptions);
55206
+ }
55207
+ if (env === 'feishu') {
55208
+ return createFeishuVRenderApp(entryOptions);
55209
+ }
55210
+ if (env === 'tt') {
55211
+ return createTTVRenderApp(entryOptions);
55212
+ }
55213
+ if (env === 'wx') {
55214
+ return createWxVRenderApp(entryOptions);
55215
+ }
55216
+ if (env === 'lynx') {
55217
+ return createLynxVRenderApp(entryOptions);
55218
+ }
55219
+ return createHarmonyVRenderApp(entryOptions);
55220
+ }
55221
+ function acquireSharedVRenderApp(options) {
55222
+ return acquireSharedApp(options.env, options, createAppForSharedEnv, options.env);
55223
+ }
55224
+ function getSharedVRenderApp(env, key = DEFAULT_SHARED_APP_KEY) {
55225
+ return getSharedApp(env, key);
55226
+ }
55227
+ function releaseSharedVRenderApp(env, key = DEFAULT_SHARED_APP_KEY) {
55228
+ releaseSharedApp(env, key);
55229
+ }
55230
+
56082
55231
  let browserApp;
56083
55232
  let nodeApp;
56084
55233
  function resolveLegacyApp() {
@@ -56093,6 +55242,6 @@ function createStage(params) {
56093
55242
  return resolveLegacyApp().createStage(params);
56094
55243
  }
56095
55244
 
56096
- const version = "1.1.0-alpha.24";
55245
+ const version = "1.1.0-alpha.25";
56097
55246
 
56098
- export { AComponentAnimate, ACustomAnimate, ARC3D_NUMBER_TYPE, ARC_NUMBER_TYPE, AREA_NUMBER_TYPE, AStageAnimate, AXIS_ELEMENT_NAME, AbstractComponent, AbstractGraphicRender, Animate, AnimateExecutor, AnimateMode, AnimateStatus, Step as AnimateStep, AnimateStepType, AnimationStateManager, AnimationStateStore, AnimationStates, AnimationTransitionRegistry, AppContext, Application, Arc, Arc3d, Arc3dRender, ArcInfo, ArcLabel, ArcRender, ArcRenderContribution, ArcSegment, Area, AreaRender, AreaRenderContribution, AttributeUpdateType, AutoEnablePlugins, AxisStateValue, BaseCanvas, BaseEnvContribution, BasePlayer, BaseRender, BaseRenderContributionTime, BaseWindowHandlerContribution, Basis, BeforeRenderConstribution, BoundsContext, BoundsPicker, BrowserEntry, BrowserEnvContribution, Brush, CIRCLE_NUMBER_TYPE, Canvas3DDrawItemInterceptor, Canvas3DPickItemInterceptor, CanvasArc3dPicker, CanvasArcPicker, CanvasAreaPicker, CanvasCirclePicker, CanvasFactory, CanvasGifImagePicker, CanvasGlyphPicker, CanvasGroupPicker, CanvasImagePicker, CanvasLinePicker, CanvasLottiePicker, CanvasPathPicker, CanvasPickerContribution, CanvasPolygonPicker, CanvasPyramid3dPicker, CanvasRect3dPicker, CanvasRectPicker, CanvasRichTextPicker, CanvasStarPicker, CanvasSymbolPicker, CanvasTextLayout, CanvasTextPicker, CheckBox, Circle, CircleAxis, CircleAxisGrid, CircleCrosshair, CircleRender, CircleRenderContribution, ClipAngleAnimate, ClipDirectionAnimate, ClipGraphicAnimate, ClipIn, ClipOut, ClipRadiusAnimate, ColorContinuousLegend, ColorInterpolate, ColorStore, ColorType, CommonDrawItemInterceptorContribution, CommonRenderContribution, ComponentAnimator, Context2dFactory, ContinuousPlayer, ContributionProvider, ContributionRegistry, ContributionStore, CubicBezierCurve, CurveContext, CurveTypeEnum, CustomEvent, CustomPath2D, CustomSymbolClass, DEFAULT_ITEM_SPACE_COL, DEFAULT_ITEM_SPACE_ROW, DEFAULT_LABEL_SPACE, DEFAULT_PAGER_SPACE, DEFAULT_SHAPE_SIZE, DEFAULT_SHAPE_SPACE, DEFAULT_STATES$1 as DEFAULT_STATES, DEFAULT_TEXT_FONT_FAMILY$1 as DEFAULT_TEXT_FONT_FAMILY, DEFAULT_TITLE_SPACE, DEFAULT_VALUE_SPACE, DataLabel, DataZoom, DataZoomActiveTag, DebugDrawItemInterceptorContribution, DefaultArcAllocate, DefaultArcAttribute, DefaultArcRenderContribution, DefaultAreaAllocate, DefaultAreaAttribute, DefaultAreaTextureRenderContribution, DefaultAttribute, DefaultBaseBackgroundRenderContribution, DefaultBaseClipRenderAfterContribution, DefaultBaseClipRenderBeforeContribution, DefaultBaseInteractiveRenderContribution, DefaultBaseTextureRenderContribution, DefaultCanvasAllocate, DefaultCanvasArcRender, DefaultCanvasAreaRender, DefaultCanvasCircleRender, DefaultCanvasGroupRender, DefaultCanvasImageRender, DefaultCanvasLineRender, DefaultCanvasPathRender, DefaultCanvasPolygonRender, DefaultCanvasRectRender, DefaultCanvasSymbolRender, DefaultCanvasTextRender, DefaultCircleAllocate, DefaultCircleAttribute, DefaultCircleRenderContribution, DefaultConnectAttribute, DefaultDebugAttribute, DefaultFillStyle, DefaultGlobal, DefaultGlobalPickerService, DefaultGlyphAttribute, DefaultGraphicAllocate, DefaultGraphicMemoryManager, DefaultGraphicService, DefaultGraphicUtil, DefaultGroupAttribute, DefaultGroupBackgroundRenderContribution, DefaultImageAttribute, DefaultImageRenderContribution, DefaultLayerService, DefaultLayout, DefaultLineAllocate, DefaultLineAttribute, DefaultMat4Allocate, DefaultMatrixAllocate, DefaultPathAllocate, DefaultPathAttribute, DefaultPickService, DefaultPickStyle, DefaultPolygonAttribute, DefaultRect3dAttribute, DefaultRectAllocate, DefaultRectAttribute, DefaultRectRenderContribution, DefaultRenderService, DefaultRichTextAttribute, DefaultRichTextIconAttribute, DefaultStarAttribute, DefaultStrokeStyle, DefaultStyle, DefaultSymbolAllocate, DefaultSymbolAttribute, DefaultSymbolClipRangeStrokeRenderContribution, DefaultSymbolRenderContribution, DefaultTextAllocate, DefaultTextAttribute, DefaultTextMeasureContribution, DefaultTextStyle, DefaultTicker, DefaultTimeline, DefaultTransform, DefaultTransformUtil, DefaultWindow, Direction, DirectionEnum, DirectionalLight, DiscreteLegend, DiscretePlayer, Dissolve, Distortion, DragNDrop, DrawContribution, DrawItemInterceptor, DynamicLayerHandlerContribution, Easing, Edge, EditModule, EmptyContext2d, EmptyTip, EnvContribution, EventManager, EventSystem, EventTarget, FORMAT_ALL_TEXT_COMMAND, FORMAT_ELEMENT_COMMAND, FORMAT_TEXT_COMMAND, Factory, FadeIn, FadeOut, FederatedEvent, FederatedMouseEvent, FederatedPointerEvent, FederatedWheelEvent, FlexLayoutPlugin, Fragment, FromTo, GLYPH_NUMBER_TYPE, GRAPHIC_UPDATE_TAG_KEY, GROUP_NUMBER_TYPE, GaussianBlur, Generator, Gesture, GifImage, Glitch, GlobalPickerService, Glyph, GlyphRender, GradientParser, Graphic, GraphicCreator$1 as GraphicCreator, GraphicFactory, GraphicPicker, GraphicRender, GraphicService, GraphicStateExtension, GraphicUtil, Grayscale, Group, GroupFadeIn, GroupFadeOut, GroupRender, GroupRenderContribution, GroupTransition, GroupUpdateAABBBoundsMode, GrowAngleIn, GrowAngleOut, GrowCenterIn, GrowCenterOut, GrowHeightIn, GrowHeightOut, GrowIn, GrowOut, GrowPointsIn, GrowPointsOut, GrowPointsXIn, GrowPointsXOut, GrowPointsYIn, GrowPointsYOut, GrowRadiusIn, GrowRadiusOut, GrowWidthIn, GrowWidthOut, HtmlAttributePlugin, IContainPointMode, IDataZoomEvent, IDataZoomInteractiveEvent, IMAGE_NUMBER_TYPE, IMarkAreaLabelPosition, IMarkCommonArcLabelPosition, IMarkLineLabelPosition, IMarkPointItemPosition, IOperateType, Image$1 as Image, ImageRender, ImageRenderContribution, IncreaseCount, IncrementalDrawContribution, Indicator, InputRichText, InputText, InteractiveDrawItemInterceptorContribution, InteractivePickItemInterceptorContribution, InteractiveSubRenderContribution, LEGEND_ELEMENT_NAME, LINE_NUMBER_TYPE, LabelBase, LabelItemAppear, LabelItemDisappear, Layer, LayerFactory, LayerService, LegendEvent, LegendStateValue, Line$1 as Line, LineAxis, LineAxisGrid, LineCrosshair, LineLabel, LineRender, Linear, LinearClosed, LinkPath, Lottie, ManualTicker, MarkArcArea, MarkArcLine, MarkArea, MarkLine, MarkPoint, Mat4Allocate, MathArcPicker, MathAreaPicker, MathCirclePicker, MathGlyphPicker, MathImagePicker, MathLinePicker, MathPathPicker, MathPickerContribution, MathPolygonPicker, MathRectPicker, MathRichTextPicker, MathSymbolPicker, MathTextPicker, MatrixAllocate, MeasureModeEnum, MiniappEntry, MonotoneX, MonotoneY, MorphingPath, MotionPath, MoveIn, MoveOut, MoveRotateIn, MoveRotateOut, MoveScaleIn, MoveScaleOut, MultiToOneMorphingPath, NOWORK_ANIMATE_ATTR, Node, NodeEntry, OrthoCamera, OutputRichText, PATH_NUMBER_TYPE, POLYGON_NUMBER_TYPE, PURE_STYLE_KEY, PYRAMID3D_NUMBER_TYPE, Pager, Particle, Path, PathRender, PathRenderContribution, PerformanceRAF, PickItemInterceptor, PickServiceInterceptor, PickerRegistry, PickerService, Pixelation, PlayerEventEnum, PluginRegistry, PluginService, Polygon, PolygonCrosshair, PolygonRender, PolygonRenderContribution, PolygonSectorCrosshair, PopTip, PoptipAppear, PoptipDisappear, PulseAnimate, Pyramid3d, Pyramid3dRender, REACT_TO_CANOPUS_EVENTS, REACT_TO_CANOPUS_EVENTS_LIST, RECT3D_NUMBER_TYPE, RECT_NUMBER_TYPE, RICHTEXT_NUMBER_TYPE, Radio, RafBasedSTO, ReactAttributePlugin, Rect, Rect3DRender, Rect3d, RectCrosshair, RectLabel, RectRender, RectRenderContribution, ReflectSegContext, RenderSelector, RenderService, RendererRegistry, ResourceLoader, RichText, RichTextEditPlugin, RichTextRender, RotateBySphereAnimate, RotateIn, RotateOut, SLIDER_ELEMENT_NAME, STAR_NUMBER_TYPE, STATUS$1 as STATUS, SVG_ATTRIBUTE_MAP, SVG_ATTRIBUTE_MAP_KEYS, SVG_PARSE_ATTRIBUTE_MAP, SVG_PARSE_ATTRIBUTE_MAP_KEYS, SYMBOL_NUMBER_TYPE, ScaleIn, ScaleOut, ScrollBar, SectorCrosshair, SegContext, Segment, SeriesNumberCellStateValue, SeriesNumberEvent, ShadowPickServiceInterceptorContribution, ShadowRoot, ShadowRootDrawItemInterceptorContribution, ShadowRootPickItemInterceptorContribution, SizeContinuousLegend, SlideIn, SlideOut, SlideOutRichText, SlideRichText, Slider, SpinIn, SpinOut, SplitRectAfterRenderContribution, SplitRectBeforeRenderContribution, Stage, StageFactory, Star, StarRender, StarRenderContribution, State, StateDefinitionCompiler, StateEngine, StaticLayerHandlerContribution, Step$1 as Step, StepClosed, StoryLabelItem, StreamLight, StrokeIn, StrokeOut, Switch, Symbol$1 as Symbol, SymbolLabel, SymbolRender, SymbolRenderContribution, TEXT_NUMBER_TYPE, TableSeriesNumber, Tag, TagPointsUpdate, Text, TextDirection, TextMeasureContribution, TextRender, TextRenderContribution, Theme, Timeline, Title, Tooltip, TopZIndex, TransformUtil, Update, UpdateTag, VArc, VArc3d, VArea, VCircle, VGlobal, VGlyph, VGroup, VImage, VLine, VPath, VPolygon, VPyramid3d, VRect, VRect3d, VRichText, VSymbol, VTag, VText, VWindow, ViewTransform3dPlugin, VirtualLayerHandlerContribution, WILDCARD, WeatherBox, WindowHandlerContribution, WrapText, XMLParser, _calculateLineHeight, _interpolateColor, _registerArc, acquireSharedVRenderApp, addArcToBezierPath$1 as addArcToBezierPath, addAttributeToPrototype, alignBezierCurves, alignSubpath, alignTextInLine, alternatingWave, angle, angleLabelOrientAttribute, angleTo, application, applyTransformOnBezierCurves, arc3dModule, arcModule, areaModule, bezier, bezierCurversToPath, binarySplitPolygon, bindArc3dCanvasPickerContribution, bindArc3dRenderModule, bindArcCanvasPickerContribution, bindArcMathPickerContribution, bindArcRenderModule, bindAreaCanvasPickerContribution, bindAreaMathPickerContribution, bindAreaRenderModule, bindBrowserEnv, bindCircleCanvasPickerContribution, bindCircleMathPickerContribution, bindCircleRenderModule, bindContributionProvider, bindContributionProviderNoSingletonScope, bindFeishuEnv, bindGifImageCanvasPickerContribution, bindGifImageRenderContribution, bindGlyphCanvasPickerContribution, bindGlyphMathPickerContribution, bindGlyphRenderModule, bindHarmonyEnv, bindImageCanvasPickerContribution, bindImageMathPickerContribution, bindImageRenderModule, bindLineCanvasPickerContribution, bindLineMathPickerContribution, bindLineRenderModule, bindLottieCanvasPickerContribution, bindLottieRenderContribution, bindLynxEnv, bindMathPicker, bindNodeEnv, bindPathCanvasPickerContribution, bindPathMathPickerContribution, bindPathRenderModule, bindPolygonCanvasPickerContribution, bindPolygonMathPickerContribution, bindPolygonRenderModule, bindPyramid3dCanvasPickerContribution, bindPyramid3dRenderModule, bindRect3dCanvasPickerContribution, bindRect3dRenderModule, bindRectCanvasPickerContribution, bindRectMathPickerContribution, bindRectRenderModule, bindRichTextMathPickerContribution, bindRichtextCanvasPickerContribution, bindRichtextRenderModule, bindStarRenderModule, bindSymbolCanvasPickerContribution, bindSymbolMathPickerContribution, bindSymbolRenderModule, bindTTEnv, bindTaroEnv, bindTextCanvasPickerContribution, bindTextMathPickerContribution, bindTextRenderModule, bindWxEnv, bootstrapLegacyVRenderRuntime, bootstrapVRenderBrowserApp, bootstrapVRenderMiniApp, bootstrapVRenderNodeApp, boundStroke, builtInSymbolStrMap, builtinSymbols, builtinSymbolsMap, calcLineCache, calculateArcCornerRadius, calculateLineHeight, canvasAllocate, cartesianTicks, centerToCorner, centroidOfSubpath, circleBounds, circleModule, clampRadian, clock, colorEqual, colorStringInterpolationToStr, columnCenterToEdge, columnEdgeToCenter, columnLeftToRight, columnRightToLeft, computeOffsetForlimit, configureRuntimeApplicationForApp, container, continuousTicks, contrastAccessibilityChecker, convertDomainToTickData, cornerTangents, cornerToCenter, createBrowserApp$1 as createApp, createArc, createArc3d, createArea, createBrowserApp$1 as createBrowserApp, createBrowserVRenderApp, createCanvasEventTransformer, createCircle, createColor, createComponentAnimator, createConicalGradient, createContributionProvider$1 as createContributionProvider, createEventTransformer, createFeishuVRenderApp, createGifImage, createGlyph, createGraphic$1 as createGraphic, createGroup, createHarmonyVRenderApp, createImage, createImageElement$1 as createImageElement, createLine, createLottie, createLynxVRenderApp, createMat4, createMiniappApp$1 as createMiniappApp, createNodeApp$1 as createNodeApp, createNodeVRenderApp, createPath, createPolygon, createPyramid3d, createRect, createRect3d, createRectPath, createRichText, createShadowRoot, createStage, createStar, createSymbol, createTTVRenderApp, createTaroVRenderApp, createText, createTextGraphicByType, createWrapText, createWxVRenderApp, cubicCalc, cubicLength, cubicPointAt, cubicSubdivide, decodeReactDom, defaultArcAllocate, defaultArcBackgroundRenderContribution, defaultArcRenderContribution, defaultArcTextureRenderContribution, defaultAreaAllocate, defaultBaseBackgroundRenderContribution, defaultBaseClipRenderAfterContribution, defaultBaseClipRenderBeforeContribution, defaultBaseTextureRenderContribution, defaultCircleAllocate, defaultCircleBackgroundRenderContribution, defaultCircleRenderContribution, defaultCircleTextureRenderContribution, defaultGraphicMemoryManager, defaultGroupBackgroundRenderContribution, defaultImageBackgroundRenderContribution, defaultImageRenderContribution, defaultLineAllocate, defaultPathAllocate, defaultRectAllocate, defaultRectBackgroundRenderContribution, defaultRectRenderContribution, defaultRectTextureRenderContribution, defaultStarBackgroundRenderContribution, defaultStarTextureRenderContribution, defaultSymbolAllocate, defaultSymbolBackgroundRenderContribution, defaultSymbolClipRangeStrokeRenderContribution, defaultSymbolRenderContribution, defaultSymbolTextureRenderContribution, defaultTextAllocate, defaultTicker, defaultTimeline, deltaXYToAngle, diagonalCenterToEdge, diagonalTopLeftToBottomRight, diff, divideCubic, drawArc, drawArcPath$1 as drawArcPath, drawAreaSegments, drawBackgroundImage, drawImageWithLayout, drawIncrementalAreaSegments, drawIncrementalSegments, drawSegments, enumCommandMap, fillVisible, findBestMorphingRotation, findConfigIndexByCursorIdx, findCursorIdxByConfigIndex, findNextGraphic, flatten_simplify, foreach, foreachAsync, fuzzyEqualNumber, genBasisSegments, genBasisTypeSegments, genLinearClosedSegments, genLinearClosedTypeSegments, genLinearSegments, genLinearTypeSegments, genMonotoneXSegments, genMonotoneXTypeSegments, genMonotoneYSegments, genMonotoneYTypeSegments, genNumberType, genStepClosedSegments, genStepSegments, genStepTypeSegments, generatorPathEasingFunc, getAttributeFromDefaultAttrList, getAxisBreakSymbolAttrs, getBackgroundImage, getCircleLabelPosition, getCirclePoints, getCircleVerticalVector, getConicGradientAt, getCurrentEnv, getDefaultCharacterConfig, getElMap, getExtraModelMatrix, getHorizontalPath, getLegacyBindingContext, getMarksByName, getModelMatrix, getNoneGroupMarksByName, getPolarAngleLabelPosition, getPolygonPath, getRichTextBounds, getRuntimeInstallerBindingContext, getRuntimeInstallerGlobal, getScaledStroke, getSharedVRenderApp, getSizeHandlerPath, getTextAlignAttrOfVerticalDir, getTextBounds, getTextType, getTheme, getThemeFromGroup, getVerticalCoord, getVerticalPath, globalTheme, glyphModule, graphicCreator$1 as graphicCreator, graphicService, graphicUtil, hasOverlap, htmlAttributeTransform, identityMat4, imageModule, incrementalAddTo, initAllEnv, initBrowserEnv, initFeishuEnv, initHarmonyEnv, initLynxEnv, initNodeEnv, initTTEnv, initTaroEnv, initTextMeasure, initWxEnv, installBrowserEnvToApp, installBrowserPickersToApp, installDefaultGraphicsToApp, installFeishuEnvToApp, installHarmonyEnvToApp, installLynxEnvToApp, installMathPickersToApp, installNodeEnvToApp, installNodePickersToApp, installPoptipToApp, installRuntimeDrawContributionsToApp, installRuntimeGraphicRenderersToApp, installRuntimePickersToApp, installScrollbarToApp, installTTEnvToApp, installTaroEnvToApp, installWxEnvToApp, interpolateColor, interpolateGradientConicalColor, interpolateGradientLinearColor, interpolateGradientRadialColor, interpolatePureColorArray, interpolatePureColorArrayToStr, intersect, isBrowserEnv, isInRange, isNoRepeatSizingMode, isNodeEnv, isPostiveXAxis, isRichText, isSvg, isVisible, isXML, jsx, labelSmartInvert, layerService, length, limitShapeInBounds, lineModule, linearDiscreteTicks, loadAllEnv, loadAllModule, loadBrowserEnv, loadFeishuEnv, loadHarmonyEnv, loadLynxEnv, loadMathPicker, loadNodeEnv, loadPoptip, loadScrollbar, loadTTEnv, loadTaroEnv, loadWxEnv, lookAt, mapToCanvasPointForCanvas, mat3Tomat4, mat4Allocate, matrixAllocate, measureTextSize, morphPath, multiToOneMorph, multiplyMat4Mat3, multiplyMat4Mat4, newThemeObj, normalize$1 as normalize, oneToMultiMorph, ortho, parsePadding, parseStroke, parseSvgPath, particleEffect, pathModule, pathToBezierCurves, point$3 as point, pointEqual, pointInterpolation, pointInterpolationHighPerformance, pointsEqual, pointsInterpolation, polarAngleAxisDiscreteTicks, polarTicks, polygonModule, preLoadAllModule, pulseWave, pyramid3dModule, quadCalc, quadLength, quadPointAt, rafBasedSto, randomOpacity, reactAttributeTransform, rect3dModule, rectFillVisible, rectModule, rectStrokeVisible, recursiveCallBinarySplit, refreshRuntimeInstallerContributions, registerAnimate, registerArc, registerArc3d, registerArc3dGraphic, registerArcDataLabel, registerArcGraphic, registerArea, registerAreaGraphic, registerCircle, registerCircleGraphic, registerCustomAnimate, registerDirectionalLight, registerFlexLayoutPlugin, registerGifGraphic, registerGifImage, registerGlobalEventTransformer, registerGlyph, registerGlyphGraphic, registerGraphic, registerGroup, registerGroupGraphic, registerHtmlAttributePlugin, registerImage, registerImageGraphic, registerLine, registerLineDataLabel, registerLineGraphic, registerMarkArcAreaAnimate, registerMarkArcLineAnimate, registerMarkAreaAnimate, registerMarkLineAnimate, registerMarkPointAnimate, registerOrthoCamera, registerPath, registerPathGraphic, registerPolygon, registerPolygonGraphic, registerPyramid3d, registerPyramid3dGraphic, registerReactAttributePlugin, registerRect, registerRect3d, registerRect3dGraphic, registerRectDataLabel, registerRectGraphic, registerRichtext, registerRichtextGraphic, registerShadowRoot, registerShadowRootGraphic, registerStar, registerStarGraphic, registerSymbol, registerSymbolDataLabel, registerSymbolGraphic, registerText, registerTextGraphic, registerViewTransform3dPlugin, registerWindowEventTransformer, registerWrapText, registerWrapTextGraphic, releaseSharedVRenderApp, removeRepeatPoint, renderCommandList, resolveBackgroundDrawMode, resolveBackgroundParamsByImageSizing, resolveBackgroundPosition, resolveBackgroundSizing, resolveContainerBinding$1 as resolveContainerBinding, resolveImageMode, resolveImageRepeatMode, resolveRenderableImageSize, rewriteProto, richTextAttributeTransform, richtextModule, rippleEffect, rotateX, rotateY, rotateZ, rotationScan, roughModule, rowBottomToTop, rowCenterToEdge, rowEdgeToCenter, rowTopToBottom, runFill, runStroke, scale, scaleMat4, segments, setPoptipTheme, shouldClipImageByLayout, shouldUseMat4, smartInvertStrategy, snakeWave, snapLength, spiralEffect, splitArc, splitArea, splitCircle, splitLine, splitPath, splitPolygon, splitRect, splitToGrids, starModule, strCommandMap, strokeVisible, symbolModule, tan2AngleToAngle, textAttributesToStyle, textDrawOffsetX, textDrawOffsetY, textIntersect, textLayoutOffsetY, textModule, ticks, transformMat4, transformPointForCanvas, transformUtil, transitionRegistry, translate, traverseGroup, version, verticalLayout, vglobal, waitForAllSubLayers, wrapCanvas, wrapContext, xul };
55247
+ export { AComponentAnimate, ACustomAnimate, ARC3D_NUMBER_TYPE, ARC_NUMBER_TYPE, AREA_NUMBER_TYPE, AStageAnimate, AXIS_ELEMENT_NAME, AbstractComponent, AbstractGraphicRender, Animate, AnimateExecutor, AnimateMode, AnimateStatus, Step as AnimateStep, AnimateStepType, AnimationStateManager, AnimationStateStore, AnimationStates, AnimationTransitionRegistry, AppContext, Application, Arc, Arc3d, Arc3dRender, ArcInfo, ArcLabel, ArcRender, ArcRenderContribution, ArcSegment, Area, AreaRender, AreaRenderContribution, AttributeUpdateType, AutoEnablePlugins, AxisStateValue, BaseCanvas, BaseEnvContribution, BasePlayer, BaseRender, BaseRenderContributionTime, BaseWindowHandlerContribution, Basis, BeforeRenderConstribution, BoundsContext, BoundsPicker, BrowserEntry, BrowserEnvContribution, Brush, CIRCLE_NUMBER_TYPE, Canvas3DDrawItemInterceptor, Canvas3DPickItemInterceptor, CanvasArc3dPicker, CanvasArcPicker, CanvasAreaPicker, CanvasCirclePicker, CanvasFactory, CanvasGifImagePicker, CanvasGlyphPicker, CanvasGroupPicker, CanvasImagePicker, CanvasLinePicker, CanvasLottiePicker, CanvasPathPicker, CanvasPickerContribution, CanvasPolygonPicker, CanvasPyramid3dPicker, CanvasRect3dPicker, CanvasRectPicker, CanvasRichTextPicker, CanvasStarPicker, CanvasSymbolPicker, CanvasTextLayout, CanvasTextPicker, CheckBox, Circle, CircleAxis, CircleAxisGrid, CircleCrosshair, CircleRender, CircleRenderContribution, ClipAngleAnimate, ClipDirectionAnimate, ClipGraphicAnimate, ClipIn, ClipOut, ClipRadiusAnimate, ColorContinuousLegend, ColorInterpolate, ColorStore, ColorType, CommonDrawItemInterceptorContribution, CommonRenderContribution, ComponentAnimator, Context2dFactory, ContinuousPlayer, ContributionProvider, ContributionRegistry, ContributionStore, CubicBezierCurve, CurveContext, CurveTypeEnum, CustomEvent, CustomPath2D, CustomSymbolClass, DEFAULT_ITEM_SPACE_COL, DEFAULT_ITEM_SPACE_ROW, DEFAULT_LABEL_SPACE, DEFAULT_PAGER_SPACE, DEFAULT_SHAPE_SIZE, DEFAULT_SHAPE_SPACE, DEFAULT_STATES$1 as DEFAULT_STATES, DEFAULT_TEXT_FONT_FAMILY$1 as DEFAULT_TEXT_FONT_FAMILY, DEFAULT_TITLE_SPACE, DEFAULT_VALUE_SPACE, DataLabel, DataZoom, DataZoomActiveTag, DebugDrawItemInterceptorContribution, DefaultArcAllocate, DefaultArcAttribute, DefaultArcRenderContribution, DefaultAreaAllocate, DefaultAreaAttribute, DefaultAreaTextureRenderContribution, DefaultAttribute, DefaultBaseBackgroundRenderContribution, DefaultBaseClipRenderAfterContribution, DefaultBaseClipRenderBeforeContribution, DefaultBaseInteractiveRenderContribution, DefaultBaseTextureRenderContribution, DefaultCanvasAllocate, DefaultCanvasArcRender, DefaultCanvasAreaRender, DefaultCanvasCircleRender, DefaultCanvasGroupRender, DefaultCanvasImageRender, DefaultCanvasLineRender, DefaultCanvasPathRender, DefaultCanvasPolygonRender, DefaultCanvasRectRender, DefaultCanvasSymbolRender, DefaultCanvasTextRender, DefaultCircleAllocate, DefaultCircleAttribute, DefaultCircleRenderContribution, DefaultConnectAttribute, DefaultDebugAttribute, DefaultFillStyle, DefaultGlobal, DefaultGlobalPickerService, DefaultGlyphAttribute, DefaultGraphicAllocate, DefaultGraphicMemoryManager, DefaultGraphicService, DefaultGraphicUtil, DefaultGroupAttribute, DefaultGroupBackgroundRenderContribution, DefaultImageAttribute, DefaultImageRenderContribution, DefaultLayerService, DefaultLayout, DefaultLineAllocate, DefaultLineAttribute, DefaultMat4Allocate, DefaultMatrixAllocate, DefaultPathAllocate, DefaultPathAttribute, DefaultPickService, DefaultPickStyle, DefaultPolygonAttribute, DefaultRect3dAttribute, DefaultRectAllocate, DefaultRectAttribute, DefaultRectRenderContribution, DefaultRenderService, DefaultRichTextAttribute, DefaultRichTextIconAttribute, DefaultStarAttribute, DefaultStrokeStyle, DefaultStyle, DefaultSymbolAllocate, DefaultSymbolAttribute, DefaultSymbolClipRangeStrokeRenderContribution, DefaultSymbolRenderContribution, DefaultTextAllocate, DefaultTextAttribute, DefaultTextMeasureContribution, DefaultTextStyle, DefaultTicker, DefaultTimeline, DefaultTransform, DefaultTransformUtil, DefaultWindow, Direction, DirectionEnum, DirectionalLight, DiscreteLegend, DiscretePlayer, Dissolve, Distortion, DragNDrop, DrawContribution, DrawItemInterceptor, DynamicLayerHandlerContribution, Easing, Edge, EditModule, EmptyContext2d, EmptyTip, EnvContribution, EventManager, EventSystem, EventTarget, FORMAT_ALL_TEXT_COMMAND, FORMAT_ELEMENT_COMMAND, FORMAT_TEXT_COMMAND, Factory, FadeIn, FadeOut, FederatedEvent, FederatedMouseEvent, FederatedPointerEvent, FederatedWheelEvent, FlexLayoutPlugin, Fragment, FromTo, GLYPH_NUMBER_TYPE, GRAPHIC_UPDATE_TAG_KEY, GROUP_NUMBER_TYPE, GaussianBlur, Generator, Gesture, GifImage, Glitch, GlobalPickerService, Glyph, GlyphRender, GradientParser, Graphic, GraphicCreator$1 as GraphicCreator, GraphicFactory, GraphicPicker, GraphicRender, GraphicService, GraphicStateExtension, GraphicUtil, Grayscale, Group, GroupFadeIn, GroupFadeOut, GroupRender, GroupRenderContribution, GroupTransition, GroupUpdateAABBBoundsMode, GrowAngleIn, GrowAngleOut, GrowCenterIn, GrowCenterOut, GrowHeightIn, GrowHeightOut, GrowIn, GrowOut, GrowPointsIn, GrowPointsOut, GrowPointsXIn, GrowPointsXOut, GrowPointsYIn, GrowPointsYOut, GrowRadiusIn, GrowRadiusOut, GrowWidthIn, GrowWidthOut, HtmlAttributePlugin, IContainPointMode, IDataZoomEvent, IDataZoomInteractiveEvent, IMAGE_NUMBER_TYPE, IMarkAreaLabelPosition, IMarkCommonArcLabelPosition, IMarkLineLabelPosition, IMarkPointItemPosition, IOperateType, Image$1 as Image, ImageRender, ImageRenderContribution, IncreaseCount, IncrementalDrawContribution, Indicator, InputRichText, InputText, InteractiveDrawItemInterceptorContribution, InteractivePickItemInterceptorContribution, InteractiveSubRenderContribution, LEGEND_ELEMENT_NAME, LINE_NUMBER_TYPE, LabelBase, LabelItemAppear, LabelItemDisappear, Layer, LayerFactory, LayerService, LegendEvent, LegendStateValue, Line$1 as Line, LineAxis, LineAxisGrid, LineCrosshair, LineLabel, LineRender, Linear, LinearClosed, LinkPath, Lottie, ManualTicker, MarkArcArea, MarkArcLine, MarkArea, MarkLine, MarkPoint, Mat4Allocate, MathArcPicker, MathAreaPicker, MathCirclePicker, MathGlyphPicker, MathImagePicker, MathLinePicker, MathPathPicker, MathPickerContribution, MathPolygonPicker, MathRectPicker, MathRichTextPicker, MathSymbolPicker, MathTextPicker, MatrixAllocate, MeasureModeEnum, MiniappEntry, MonotoneX, MonotoneY, MorphingPath, MotionPath, MoveIn, MoveOut, MoveRotateIn, MoveRotateOut, MoveScaleIn, MoveScaleOut, MultiToOneMorphingPath, NOWORK_ANIMATE_ATTR, Node, NodeEntry, OrthoCamera, OutputRichText, PATH_NUMBER_TYPE, POLYGON_NUMBER_TYPE, PURE_STYLE_KEY, PYRAMID3D_NUMBER_TYPE, Pager, Particle, Path, PathRender, PathRenderContribution, PerformanceRAF, PickItemInterceptor, PickServiceInterceptor, PickerRegistry, PickerService, Pixelation, PlayerEventEnum, PluginRegistry, PluginService, Polygon, PolygonCrosshair, PolygonRender, PolygonRenderContribution, PolygonSectorCrosshair, PopTip, PoptipAppear, PoptipDisappear, PulseAnimate, Pyramid3d, Pyramid3dRender, REACT_TO_CANOPUS_EVENTS, REACT_TO_CANOPUS_EVENTS_LIST, RECT3D_NUMBER_TYPE, RECT_NUMBER_TYPE, RICHTEXT_NUMBER_TYPE, Radio, RafBasedSTO, ReactAttributePlugin, Rect, Rect3DRender, Rect3d, RectCrosshair, RectLabel, RectRender, RectRenderContribution, ReflectSegContext, RenderSelector, RenderService, RendererRegistry, ResourceLoader, RichText, RichTextEditPlugin, RichTextRender, RotateBySphereAnimate, RotateIn, RotateOut, SLIDER_ELEMENT_NAME, STAR_NUMBER_TYPE, STATUS$1 as STATUS, SVG_ATTRIBUTE_MAP, SVG_ATTRIBUTE_MAP_KEYS, SVG_PARSE_ATTRIBUTE_MAP, SVG_PARSE_ATTRIBUTE_MAP_KEYS, SYMBOL_NUMBER_TYPE, ScaleIn, ScaleOut, ScrollBar, SectorCrosshair, SegContext, Segment, SeriesNumberCellStateValue, SeriesNumberEvent, ShadowPickServiceInterceptorContribution, ShadowRoot, ShadowRootDrawItemInterceptorContribution, ShadowRootPickItemInterceptorContribution, SizeContinuousLegend, SlideIn, SlideOut, SlideOutRichText, SlideRichText, Slider, SpinIn, SpinOut, SplitRectAfterRenderContribution, SplitRectBeforeRenderContribution, Stage, StageFactory, Star, StarRender, StarRenderContribution, State, StateDefinitionCompiler, StateEngine, StaticLayerHandlerContribution, Step$1 as Step, StepClosed, StoryLabelItem, StreamLight, StrokeIn, StrokeOut, Switch, Symbol$1 as Symbol, SymbolLabel, SymbolRender, SymbolRenderContribution, TEXT_NUMBER_TYPE, TableSeriesNumber, Tag, TagPointsUpdate, Text, TextDirection, TextMeasureContribution, TextRender, TextRenderContribution, Theme, Timeline, Title, Tooltip, TopZIndex, TransformUtil, Update, UpdateTag, VArc, VArc3d, VArea, VCircle, VGlobal, VGlyph, VGroup, VImage, VLine, VPath, VPolygon, VPyramid3d, VRect, VRect3d, VRichText, VSymbol, VTag, VText, VWindow, ViewTransform3dPlugin, VirtualLayerHandlerContribution, WILDCARD, WeatherBox, WindowHandlerContribution, WrapText, XMLParser, _calculateLineHeight, _interpolateColor, _registerArc, acquireSharedVRenderApp, addArcToBezierPath$1 as addArcToBezierPath, addAttributeToPrototype, alignBezierCurves, alignSubpath, alignTextInLine, alternatingWave, angle, angleLabelOrientAttribute, angleTo, application, applyTransformOnBezierCurves, arc3dModule, arcModule, areaModule, bezier, bezierCurversToPath, binarySplitPolygon, bindArc3dCanvasPickerContribution, bindArc3dRenderModule, bindArcCanvasPickerContribution, bindArcMathPickerContribution, bindArcRenderModule, bindAreaCanvasPickerContribution, bindAreaMathPickerContribution, bindAreaRenderModule, bindBrowserEnv, bindCircleCanvasPickerContribution, bindCircleMathPickerContribution, bindCircleRenderModule, bindContributionProvider, bindContributionProviderNoSingletonScope, bindFeishuEnv, bindGifImageCanvasPickerContribution, bindGifImageRenderContribution, bindGlyphCanvasPickerContribution, bindGlyphMathPickerContribution, bindGlyphRenderModule, bindHarmonyEnv, bindImageCanvasPickerContribution, bindImageMathPickerContribution, bindImageRenderModule, bindLineCanvasPickerContribution, bindLineMathPickerContribution, bindLineRenderModule, bindLottieCanvasPickerContribution, bindLottieRenderContribution, bindLynxEnv, bindMathPicker, bindNodeEnv, bindPathCanvasPickerContribution, bindPathMathPickerContribution, bindPathRenderModule, bindPolygonCanvasPickerContribution, bindPolygonMathPickerContribution, bindPolygonRenderModule, bindPyramid3dCanvasPickerContribution, bindPyramid3dRenderModule, bindRect3dCanvasPickerContribution, bindRect3dRenderModule, bindRectCanvasPickerContribution, bindRectMathPickerContribution, bindRectRenderModule, bindRichTextMathPickerContribution, bindRichtextCanvasPickerContribution, bindRichtextRenderModule, bindStarRenderModule, bindSymbolCanvasPickerContribution, bindSymbolMathPickerContribution, bindSymbolRenderModule, bindTTEnv, bindTaroEnv, bindTextCanvasPickerContribution, bindTextMathPickerContribution, bindTextRenderModule, bindWxEnv, bootstrapLegacyVRenderRuntime, bootstrapVRenderBrowserApp, bootstrapVRenderMiniApp, bootstrapVRenderNodeApp, boundStroke, builtInSymbolStrMap, builtinSymbols, builtinSymbolsMap, calcLineCache, calculateArcCornerRadius, calculateLineHeight, canvasAllocate, cartesianTicks, centerToCorner, centroidOfSubpath, circleBounds, circleModule, clampRadian, clock, colorEqual, colorStringInterpolationToStr, columnCenterToEdge, columnEdgeToCenter, columnLeftToRight, columnRightToLeft, computeOffsetForlimit, configureRuntimeApplicationForApp, container, continuousTicks, contrastAccessibilityChecker, convertDomainToTickData, cornerTangents, cornerToCenter, createBrowserApp as createApp, createArc, createArc3d, createArea, createBrowserApp, createBrowserVRenderApp, createCanvasEventTransformer, createCircle, createColor, createComponentAnimator, createConicalGradient, createContributionProvider$1 as createContributionProvider, createEventTransformer, createFeishuVRenderApp, createGifImage, createGlyph, createGraphic$1 as createGraphic, createGroup, createHarmonyVRenderApp, createImage, createImageElement$1 as createImageElement, createLine, createLottie, createLynxVRenderApp, createMat4, createMiniappApp$1 as createMiniappApp, createNodeApp$1 as createNodeApp, createNodeVRenderApp, createPath, createPolygon, createPyramid3d, createRect, createRect3d, createRectPath, createRichText, createShadowRoot, createStage, createStar, createSymbol, createTTVRenderApp, createTaroVRenderApp, createText, createTextGraphicByType, createWrapText, createWxVRenderApp, cubicCalc, cubicLength, cubicPointAt, cubicSubdivide, decodeReactDom, defaultArcAllocate, defaultArcBackgroundRenderContribution, defaultArcRenderContribution, defaultArcTextureRenderContribution, defaultAreaAllocate, defaultBaseBackgroundRenderContribution, defaultBaseClipRenderAfterContribution, defaultBaseClipRenderBeforeContribution, defaultBaseTextureRenderContribution, defaultCircleAllocate, defaultCircleBackgroundRenderContribution, defaultCircleRenderContribution, defaultCircleTextureRenderContribution, defaultGraphicMemoryManager, defaultGroupBackgroundRenderContribution, defaultImageBackgroundRenderContribution, defaultImageRenderContribution, defaultLineAllocate, defaultPathAllocate, defaultRectAllocate, defaultRectBackgroundRenderContribution, defaultRectRenderContribution, defaultRectTextureRenderContribution, defaultStarBackgroundRenderContribution, defaultStarTextureRenderContribution, defaultSymbolAllocate, defaultSymbolBackgroundRenderContribution, defaultSymbolClipRangeStrokeRenderContribution, defaultSymbolRenderContribution, defaultSymbolTextureRenderContribution, defaultTextAllocate, defaultTicker, defaultTimeline, deltaXYToAngle, diagonalCenterToEdge, diagonalTopLeftToBottomRight, diff, divideCubic, drawArc, drawArcPath$1 as drawArcPath, drawAreaSegments, drawBackgroundImage, drawImageWithLayout, drawIncrementalAreaSegments, drawIncrementalSegments, drawSegments, enumCommandMap, fillVisible, findBestMorphingRotation, findConfigIndexByCursorIdx, findCursorIdxByConfigIndex, findNextGraphic, flatten_simplify, foreach, foreachAsync, fuzzyEqualNumber, genBasisSegments, genBasisTypeSegments, genLinearClosedSegments, genLinearClosedTypeSegments, genLinearSegments, genLinearTypeSegments, genMonotoneXSegments, genMonotoneXTypeSegments, genMonotoneYSegments, genMonotoneYTypeSegments, genNumberType, genStepClosedSegments, genStepSegments, genStepTypeSegments, generatorPathEasingFunc, getAttributeFromDefaultAttrList, getAxisBreakSymbolAttrs, getBackgroundImage, getCircleLabelPosition, getCirclePoints, getCircleVerticalVector, getConicGradientAt, getCurrentEnv, getDefaultCharacterConfig, getElMap, getExtraModelMatrix, getHorizontalPath, getLegacyBindingContext, getMarksByName, getModelMatrix, getNoneGroupMarksByName, getPolarAngleLabelPosition, getPolygonPath, getRichTextBounds, getRuntimeInstallerBindingContext, getRuntimeInstallerGlobal, getScaledStroke, getSharedVRenderApp, getSizeHandlerPath, getTextAlignAttrOfVerticalDir, getTextBounds, getTextType, getTheme, getThemeFromGroup, getVerticalCoord, getVerticalPath, globalTheme, glyphModule, graphicCreator$1 as graphicCreator, graphicService, graphicUtil, hasOverlap, htmlAttributeTransform, identityMat4, imageModule, incrementalAddTo, initAllEnv, initBrowserEnv, initFeishuEnv, initHarmonyEnv, initLynxEnv, initNodeEnv, initTTEnv, initTaroEnv, initTextMeasure, initWxEnv, installBrowserEnvToApp, installBrowserPickersToApp, installDefaultGraphicsToApp, installFeishuEnvToApp, installHarmonyEnvToApp, installLynxEnvToApp, installMathPickersToApp, installNodeEnvToApp, installNodePickersToApp, installPoptipToApp, installRuntimeDrawContributionsToApp, installRuntimeGraphicRenderersToApp, installRuntimePickersToApp, installScrollbarToApp, installTTEnvToApp, installTaroEnvToApp, installWxEnvToApp, interpolateColor, interpolateGradientConicalColor, interpolateGradientLinearColor, interpolateGradientRadialColor, interpolatePureColorArray, interpolatePureColorArrayToStr, intersect, isBrowserEnv, isInRange, isNoRepeatSizingMode, isNodeEnv, isPostiveXAxis, isRichText, isSvg, isVisible, isXML, jsx, labelSmartInvert, layerService, length, limitShapeInBounds, lineModule, linearDiscreteTicks, loadAllEnv, loadAllModule, loadBrowserEnv, loadFeishuEnv, loadHarmonyEnv, loadLynxEnv, loadMathPicker, loadNodeEnv, loadPoptip, loadScrollbar, loadTTEnv, loadTaroEnv, loadWxEnv, lookAt, mapToCanvasPointForCanvas, mat3Tomat4, mat4Allocate, matrixAllocate, measureTextSize, morphPath, multiToOneMorph, multiplyMat4Mat3, multiplyMat4Mat4, newThemeObj, normalize$1 as normalize, oneToMultiMorph, ortho, parsePadding, parseStroke, parseSvgPath, particleEffect, pathModule, pathToBezierCurves, point$3 as point, pointEqual, pointInterpolation, pointInterpolationHighPerformance, pointsEqual, pointsInterpolation, polarAngleAxisDiscreteTicks, polarTicks, polygonModule, preLoadAllModule, pulseWave, pyramid3dModule, quadCalc, quadLength, quadPointAt, rafBasedSto, randomOpacity, reactAttributeTransform, rect3dModule, rectFillVisible, rectModule, rectStrokeVisible, recursiveCallBinarySplit, refreshRuntimeInstallerContributions, registerAnimate, registerArc, registerArc3d, registerArc3dGraphic, registerArcDataLabel, registerArcGraphic, registerArea, registerAreaGraphic, registerCircle, registerCircleGraphic, registerCustomAnimate, registerDirectionalLight, registerFlexLayoutPlugin, registerGifGraphic, registerGifImage, registerGlobalEventTransformer, registerGlyph, registerGlyphGraphic, registerGraphic, registerGroup, registerGroupGraphic, registerHtmlAttributePlugin, registerImage, registerImageGraphic, registerLine, registerLineDataLabel, registerLineGraphic, registerMarkArcAreaAnimate, registerMarkArcLineAnimate, registerMarkAreaAnimate, registerMarkLineAnimate, registerMarkPointAnimate, registerOrthoCamera, registerPath, registerPathGraphic, registerPolygon, registerPolygonGraphic, registerPyramid3d, registerPyramid3dGraphic, registerReactAttributePlugin, registerRect, registerRect3d, registerRect3dGraphic, registerRectDataLabel, registerRectGraphic, registerRichtext, registerRichtextGraphic, registerShadowRoot, registerShadowRootGraphic, registerStar, registerStarGraphic, registerSymbol, registerSymbolDataLabel, registerSymbolGraphic, registerText, registerTextGraphic, registerViewTransform3dPlugin, registerWindowEventTransformer, registerWrapText, registerWrapTextGraphic, releaseSharedVRenderApp, removeRepeatPoint, renderCommandList, resolveBackgroundDrawMode, resolveBackgroundParamsByImageSizing, resolveBackgroundPosition, resolveBackgroundSizing, resolveContainerBinding$1 as resolveContainerBinding, resolveImageMode, resolveImageRepeatMode, resolveRenderableImageSize, rewriteProto, richTextAttributeTransform, richtextModule, rippleEffect, rotateX, rotateY, rotateZ, rotationScan, roughModule, rowBottomToTop, rowCenterToEdge, rowEdgeToCenter, rowTopToBottom, runFill, runStroke, scale, scaleMat4, segments, setPoptipTheme, shouldClipImageByLayout, shouldUseMat4, smartInvertStrategy, snakeWave, snapLength, spiralEffect, splitArc, splitArea, splitCircle, splitLine, splitPath, splitPolygon, splitRect, splitToGrids, starModule, strCommandMap, strokeVisible, symbolModule, tan2AngleToAngle, textAttributesToStyle, textDrawOffsetX, textDrawOffsetY, textIntersect, textLayoutOffsetY, textModule, ticks, transformMat4, transformPointForCanvas, transformUtil, transitionRegistry, translate, traverseGroup, version, verticalLayout, vglobal, waitForAllSubLayers, wrapCanvas, wrapContext, xul };