pixi-watchface-engine 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -60,6 +60,13 @@ export interface EngineEventMap {
60
60
  'state:loaded': {
61
61
  json: string;
62
62
  };
63
+ 'viewport:zoomed': {
64
+ zoom: number;
65
+ };
66
+ 'viewport:moved': {
67
+ x: number;
68
+ y: number;
69
+ };
63
70
  }
64
71
  type Handler<T> = T extends void ? () => void : (data: T) => void;
65
72
  export declare class EventBus {
@@ -1 +1 @@
1
- {"version":3,"file":"EventBus.d.ts","sourceRoot":"","sources":["../src/EventBus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,WAAW,cAAc;IAC7B,cAAc,EAAE,IAAI,CAAC;IACrB,gBAAgB,EAAE,IAAI,CAAC;IAEvB,eAAe,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IAC1C,iBAAiB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IAC5C,iBAAiB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IACpG,kBAAkB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAEzE,mBAAmB,EAAE;QAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;KAAE,CAAC;IACjD,mBAAmB,EAAE,IAAI,CAAC;IAE1B,uBAAuB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACtF,sBAAsB,EAAE;QAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,qBAAqB,EAAE;QAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;KAAE,CAAC;IACnD,yBAAyB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IACpD,uBAAuB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IAClD,yBAAyB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IACpD,uBAAuB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IAElD,kBAAkB,EAAE;QAAE,MAAM,EAAE,cAAc,CAAA;KAAE,CAAC;IAE/C,aAAa,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,cAAc,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC;AAED,KAAK,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,GAAG,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;AAElE,qBAAa,QAAQ;IACnB,OAAO,CAAC,SAAS,CAAoC;IAErD,EAAE,CAAC,CAAC,SAAS,MAAM,cAAc,EAC/B,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAClC,MAAM,IAAI;IAQb,IAAI,CAAC,CAAC,SAAS,MAAM,cAAc,EACjC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GACjE,IAAI;IAIP,GAAG,CAAC,CAAC,SAAS,MAAM,cAAc,EAChC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAClC,IAAI;IAIP,kBAAkB,IAAI,IAAI;CAG3B"}
1
+ {"version":3,"file":"EventBus.d.ts","sourceRoot":"","sources":["../src/EventBus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,WAAW,cAAc;IAC7B,cAAc,EAAE,IAAI,CAAC;IACrB,gBAAgB,EAAE,IAAI,CAAC;IAEvB,eAAe,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IAC1C,iBAAiB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IAC5C,iBAAiB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IACpG,kBAAkB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAEzE,mBAAmB,EAAE;QAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;KAAE,CAAC;IACjD,mBAAmB,EAAE,IAAI,CAAC;IAE1B,uBAAuB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACtF,sBAAsB,EAAE;QAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,qBAAqB,EAAE;QAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;KAAE,CAAC;IACnD,yBAAyB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IACpD,uBAAuB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IAClD,yBAAyB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IACpD,uBAAuB,EAAE;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IAElD,kBAAkB,EAAE;QAAE,MAAM,EAAE,cAAc,CAAA;KAAE,CAAC;IAE/C,aAAa,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,cAAc,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAEjC,iBAAiB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACpC,gBAAgB,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5C;AAED,KAAK,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,GAAG,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;AAElE,qBAAa,QAAQ;IACnB,OAAO,CAAC,SAAS,CAAoC;IAErD,EAAE,CAAC,CAAC,SAAS,MAAM,cAAc,EAC/B,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAClC,MAAM,IAAI;IAQb,IAAI,CAAC,CAAC,SAAS,MAAM,cAAc,EACjC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GACjE,IAAI;IAIP,GAAG,CAAC,CAAC,SAAS,MAAM,cAAc,EAChC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAClC,IAAI;IAIP,kBAAkB,IAAI,IAAI;CAG3B"}
@@ -5,6 +5,7 @@ import { ZOrderManager } from './managers/ZOrderManager.ts';
5
5
  import { SerializationManager } from './managers/SerializationManager.ts';
6
6
  import { SelectionManager } from './selection/SelectionManager.ts';
7
7
  import { PluginManager } from './plugins/PluginManager.ts';
8
+ import type { CoordinateOrigin } from './types.ts';
8
9
  export interface WatchfaceEngineOptions {
9
10
  width: number;
10
11
  height: number;
@@ -12,6 +13,13 @@ export interface WatchfaceEngineOptions {
12
13
  selectionHandleColor?: number;
13
14
  selectionHandleFillColor?: number;
14
15
  selectionHandleSize?: number;
16
+ /**
17
+ * Where (0, 0) is placed on the canvas.
18
+ * - `'top-left'` (default) — standard screen coordinates.
19
+ * - `'center'` — origin is the center of the canvas; useful for watchface
20
+ * layouts where elements are positioned relative to the watch center.
21
+ */
22
+ coordinateOrigin?: CoordinateOrigin;
15
23
  }
16
24
  export declare class WatchfaceEngine {
17
25
  readonly app: Application;
@@ -25,6 +33,12 @@ export declare class WatchfaceEngine {
25
33
  private elementsLayer;
26
34
  private selectionLayer;
27
35
  private overlayLayer;
36
+ /**
37
+ * Single container that holds all four layers. Plugins (e.g. ViewportPlugin)
38
+ * should move this container rather than individual layers.
39
+ * @internal
40
+ */
41
+ private _contentRoot;
28
42
  private interaction;
29
43
  private _options;
30
44
  private _initialized;
@@ -34,6 +48,16 @@ export declare class WatchfaceEngine {
34
48
  init(container: HTMLDivElement, options: WatchfaceEngineOptions): Promise<void>;
35
49
  get options(): Readonly<WatchfaceEngineOptions>;
36
50
  get initialized(): boolean;
51
+ /**
52
+ * The offset applied to the content root based on `coordinateOrigin`.
53
+ * `{ x: 0, y: 0 }` for `'top-left'`, `{ x: width/2, y: height/2 }` for `'center'`.
54
+ */
55
+ get originOffset(): {
56
+ x: number;
57
+ y: number;
58
+ };
59
+ /** The container that holds all layers. Plugins should add this to viewports. */
60
+ getContentRoot(): Container;
37
61
  getBackgroundLayer(): Container;
38
62
  getElementsLayer(): Container;
39
63
  getSelectionLayer(): Container;
@@ -1 +1 @@
1
- {"version":3,"file":"WatchfaceEngine.d.ts","sourceRoot":"","sources":["../src/WatchfaceEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG3D,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,eAAe;IAC1B,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAE/B,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,WAAW,CAAqB;IAExC,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,YAAY,CAAS;IAE7B,qFAAqF;IACrF,gBAAgB,UAAS;;IAqBnB,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IA8CrF,IAAI,OAAO,IAAI,QAAQ,CAAC,sBAAsB,CAAC,CAE9C;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,kBAAkB,IAAI,SAAS;IAI/B,gBAAgB,IAAI,SAAS;IAI7B,iBAAiB,IAAI,SAAS;IAI9B,eAAe,IAAI,SAAS;IAI5B,OAAO,IAAI,IAAI;CAUhB"}
1
+ {"version":3,"file":"WatchfaceEngine.d.ts","sourceRoot":"","sources":["../src/WatchfaceEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAgB,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEjE,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,qBAAa,eAAe;IAC1B,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAE/B,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,YAAY,CAAa;IAEjC;;;;OAIG;IACH,OAAO,CAAC,YAAY,CAAa;IAEjC,OAAO,CAAC,WAAW,CAAqB;IAExC,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,YAAY,CAAS;IAE7B,qFAAqF;IACrF,gBAAgB,UAAS;;IAqBnB,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuDrF,IAAI,OAAO,IAAI,QAAQ,CAAC,sBAAsB,CAAC,CAE9C;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;;OAGG;IACH,IAAI,YAAY,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAK3C;IAED,iFAAiF;IACjF,cAAc,IAAI,SAAS;IAI3B,kBAAkB,IAAI,SAAS;IAI/B,gBAAgB,IAAI,SAAS;IAI7B,iBAAiB,IAAI,SAAS;IAI9B,eAAe,IAAI,SAAS;IAI5B,OAAO,IAAI,IAAI;CAUhB"}
package/dist/index.d.ts CHANGED
@@ -16,11 +16,13 @@ export type { AutosavePluginOptions } from './plugins/AutosavePlugin.ts';
16
16
  export { UndoRedoPlugin } from './plugins/UndoRedoPlugin.ts';
17
17
  export type { UndoRedoPluginOptions } from './plugins/UndoRedoPlugin.ts';
18
18
  export { KeyboardShortcutsPlugin } from './plugins/KeyboardShortcutsPlugin.ts';
19
+ export { ViewportPlugin } from './plugins/ViewportPlugin.ts';
20
+ export type { ViewportPluginOptions } from './plugins/ViewportPlugin.ts';
19
21
  export { ElementManager } from './managers/ElementManager.ts';
20
22
  export { ZOrderManager } from './managers/ZOrderManager.ts';
21
23
  export { SelectionManager } from './selection/SelectionManager.ts';
22
24
  export { SerializationManager } from './managers/SerializationManager.ts';
23
- export type { FillDirection, ShapeType, ElementType, SerializedElement, WatchfaceState, UndoableAction, HandleConfig, Bounds, } from './types.ts';
25
+ export type { FillDirection, ShapeType, ElementType, CoordinateOrigin, SerializedElement, WatchfaceState, UndoableAction, HandleConfig, Bounds, } from './types.ts';
24
26
  export { EventBus } from './EventBus.ts';
25
27
  export type { EngineEventMap } from './EventBus.ts';
26
28
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,YAAY,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAG/E,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAG1E,YAAY,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,YAAY,EACZ,MAAM,GACP,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAGnE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,YAAY,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAGzE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAG1E,YAAY,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,YAAY,EACZ,MAAM,GACP,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}