@jolly-pixel/engine 1.1.0 → 1.1.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Actor.d.ts","sourceRoot":"","sources":["../../src/actor/Actor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Actor.d.ts","sourceRoot":"","sources":["../../src/actor/Actor.ts"],"names":[],"mappings":"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"}
@@ -46,13 +46,6 @@ export class Actor extends ActorTree {
46
46
  registerComponent(componentClass, ...args) {
47
47
  const [options, callback] = args;
48
48
  const component = new componentClass(this, options);
49
- if (this.components.indexOf(component) === -1) {
50
- this.components.push(component);
51
- }
52
- const index = this.gameInstance.scene.componentsToBeStarted.indexOf(component);
53
- if (index === -1) {
54
- this.gameInstance.scene.componentsToBeStarted.push(component);
55
- }
56
49
  callback?.(component);
57
50
  if (this.awoken) {
58
51
  component.awake?.();
@@ -62,13 +55,6 @@ export class Actor extends ActorTree {
62
55
  registerComponentAndGet(componentClass, ...args) {
63
56
  const [options] = args;
64
57
  const component = new componentClass(this, options);
65
- if (this.components.indexOf(component) === -1) {
66
- this.components.push(component);
67
- }
68
- const index = this.gameInstance.scene.componentsToBeStarted.indexOf(component);
69
- if (index === -1) {
70
- this.gameInstance.scene.componentsToBeStarted.push(component);
71
- }
72
58
  if (this.awoken) {
73
59
  component.awake?.();
74
60
  }
@@ -86,7 +72,9 @@ export class Actor extends ActorTree {
86
72
  return this.pendingForDestruction;
87
73
  }
88
74
  destroy() {
89
- this.components.forEach((component) => component.destroy?.());
75
+ for (let i = this.components.length - 1; i >= 0; i--) {
76
+ this.components[i].destroy?.();
77
+ }
90
78
  if (this.parent === null) {
91
79
  this.gameInstance.scene.tree.remove(this);
92
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Actor.js","sourceRoot":"","sources":["../../src/actor/Actor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Actor.js","sourceRoot":"","sources":["../../src/actor/Actor.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,10 @@ export type ActorComponentEvents = {
10
10
  };
11
11
  export declare class ActorComponent extends EventEmitter<ActorComponentEvents> implements Component {
12
12
  #private;
13
+ protected static Id: number;
14
+ static generateNextId(): number;
15
+ static clearId(): void;
16
+ id: number;
13
17
  actor: Actor;
14
18
  typeName: FreeComponentEnum;
15
19
  pendingForDestruction: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ActorComponent.d.ts","sourceRoot":"","sources":["../../src/actor/ActorComponent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,KAAK,EACV,SAAS,EACT,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,mBAAmB,EAAE,EAAE,CAAC;CACzB,CAAC;AAEF,qBAAa,cAAe,SAAQ,YAAY,CAAC,oBAAoB,CAAE,YAAW,SAAS;;IACzF,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,iBAAiB,CAAC;IAE5B,qBAAqB,UAAS;gBAG5B,OAAO,EAAE,qBAAqB;IA0BhC,WAAW;IAIX,OAAO;CAWR"}
1
+ {"version":3,"file":"ActorComponent.d.ts","sourceRoot":"","sources":["../../src/actor/ActorComponent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,KAAK,EACV,SAAS,EACT,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,mBAAmB,EAAE,EAAE,CAAC;CACzB,CAAC;AAEF,qBAAa,cAAe,SAAQ,YAAY,CAAC,oBAAoB,CAAE,YAAW,SAAS;;IACzF,SAAS,CAAC,MAAM,CAAC,EAAE,SAAK;IAExB,MAAM,CAAC,cAAc;IAIrB,MAAM,CAAC,OAAO;IAId,EAAE,SAAmC;IACrC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,iBAAiB,CAAC;IAE5B,qBAAqB,UAAS;gBAG5B,OAAO,EAAE,qBAAqB;IA0BhC,WAAW;IAIX,OAAO;CAWR"}
@@ -4,6 +4,14 @@ import { EventEmitter } from "@posva/event-emitter";
4
4
  import { Actor } from "./Actor.js";
5
5
  import { getSignalMetadata, SignalEvent } from "./Signal.js";
6
6
  export class ActorComponent extends EventEmitter {
7
+ static Id = 0;
8
+ static generateNextId() {
9
+ return this.Id++;
10
+ }
11
+ static clearId() {
12
+ this.Id = 0;
13
+ }
14
+ id = ActorComponent.generateNextId();
7
15
  actor;
8
16
  typeName;
9
17
  pendingForDestruction = false;
@@ -1 +1 @@
1
- {"version":3,"file":"ActorComponent.js","sourceRoot":"","sources":["../../src/actor/ActorComponent.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,+BAA+B;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAe7D,MAAM,OAAO,cAAe,SAAQ,YAAkC;IACpE,KAAK,CAAQ;IACb,QAAQ,CAAoB;IAE5B,qBAAqB,GAAG,KAAK,CAAC;IAE9B,YACE,OAA8B;QAE9B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAEjC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/D,0DAA0D;QAC1D,mDAAmD;QACnD,cAAc,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,qBAAqB;QACnB,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAE1C,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,MAAM,YAAY,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBAC5C,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC;YACzC,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACnC,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,OAAO;QACL,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrF,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"ActorComponent.js","sourceRoot":"","sources":["../../src/actor/ActorComponent.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,+BAA+B;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAe7D,MAAM,OAAO,cAAe,SAAQ,YAAkC;IAC1D,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;IAExB,MAAM,CAAC,cAAc;QACnB,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IACd,CAAC;IAED,EAAE,GAAG,cAAc,CAAC,cAAc,EAAE,CAAC;IACrC,KAAK,CAAQ;IACb,QAAQ,CAAoB;IAE5B,qBAAqB,GAAG,KAAK,CAAC;IAE9B,YACE,OAA8B;QAE9B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAEjC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/D,0DAA0D;QAC1D,mDAAmD;QACnD,cAAc,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,qBAAqB;QACnB,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAE1C,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,MAAM,YAAY,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBAC5C,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC;YACzC,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACnC,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,OAAO;QACL,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrF,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACzC,CAAC;IACH,CAAC"}
@@ -5,6 +5,7 @@ export interface TimerAdapter {
5
5
  export declare class FixedTimeStep {
6
6
  static MaxFramesPerSecond: number;
7
7
  framesPerSecond: number;
8
+ timestep: number;
8
9
  clock: TimerAdapter;
9
10
  constructor(clock?: TimerAdapter);
10
11
  setFps(framesPerSecond: number | undefined): void;
@@ -1 +1 @@
1
- {"version":3,"file":"FixedTimeStep.d.ts","sourceRoot":"","sources":["../../src/systems/FixedTimeStep.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,MAAM,CAAC;CACxB;AAED,qBAAa,aAAa;IACxB,MAAM,CAAC,kBAAkB,SAAM;IAE/B,eAAe,SAAM;IACrB,KAAK,EAAE,YAAY,CAAC;gBAGlB,KAAK,GAAE,YAAgC;IAKzC,MAAM,CACJ,eAAe,EAAE,MAAM,GAAG,SAAS,GAClC,IAAI;IAYP,IAAI,CACF,eAAe,EAAE,MAAM,EACvB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,GACxC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;KAAE;CA4B1C"}
1
+ {"version":3,"file":"FixedTimeStep.d.ts","sourceRoot":"","sources":["../../src/systems/FixedTimeStep.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,MAAM,CAAC;CACxB;AAED,qBAAa,aAAa;IACxB,MAAM,CAAC,kBAAkB,SAAM;IAE/B,eAAe,SAAM;IACrB,QAAQ,SAA+B;IACvC,KAAK,EAAE,YAAY,CAAC;gBAGlB,KAAK,GAAE,YAAgC;IAKzC,MAAM,CACJ,eAAe,EAAE,MAAM,GAAG,SAAS,GAClC,IAAI;IAaP,IAAI,CACF,eAAe,EAAE,MAAM,EACvB,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,GACxC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;KAAE;CA4B1C"}
@@ -3,6 +3,7 @@ import * as THREE from "three";
3
3
  export class FixedTimeStep {
4
4
  static MaxFramesPerSecond = 60;
5
5
  framesPerSecond = 60;
6
+ timestep = 1000 / this.framesPerSecond;
6
7
  clock;
7
8
  constructor(clock = new THREE.Timer()) {
8
9
  this.clock = clock;
@@ -12,10 +13,11 @@ export class FixedTimeStep {
12
13
  return;
13
14
  }
14
15
  this.framesPerSecond = THREE.MathUtils.clamp(framesPerSecond, 1, FixedTimeStep.MaxFramesPerSecond);
16
+ this.timestep = 1000 / this.framesPerSecond;
15
17
  }
16
18
  tick(accumulatedTime, callback) {
17
19
  this.clock.update();
18
- const updateInterval = 1000 / this.framesPerSecond;
20
+ const updateInterval = this.timestep;
19
21
  let newAccumulatedTime = accumulatedTime;
20
22
  // Limit how many update()s to try and catch up,
21
23
  // to avoid falling into the "black pit of despair" aka "doom spiral".
@@ -29,7 +31,7 @@ export class FixedTimeStep {
29
31
  // Update
30
32
  let updates = 0;
31
33
  while (newAccumulatedTime >= updateInterval) {
32
- if (callback?.(this.clock.getDelta())) {
34
+ if (callback?.(updateInterval)) {
33
35
  break;
34
36
  }
35
37
  newAccumulatedTime -= updateInterval;
@@ -1 +1 @@
1
- {"version":3,"file":"FixedTimeStep.js","sourceRoot":"","sources":["../../src/systems/FixedTimeStep.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,MAAM,OAAO,aAAa;IACxB,MAAM,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAE/B,eAAe,GAAG,EAAE,CAAC;IACrB,KAAK,CAAe;IAEpB,YACE,QAAsB,IAAI,KAAK,CAAC,KAAK,EAAE;QAEvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,MAAM,CACJ,eAAmC;QAEnC,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAC1C,eAAe,EACf,CAAC,EACD,aAAa,CAAC,kBAAkB,CACjC,CAAC;IACJ,CAAC;IAED,IAAI,CACF,eAAuB,EACvB,QAAyC;QAEzC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAEpB,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC;QACnD,IAAI,kBAAkB,GAAG,eAAe,CAAC;QAEzC,gDAAgD;QAChD,sEAAsE;QACtE,uDAAuD;QACvD,+HAA+H;QAC/H,MAAM,qBAAqB,GAAG,CAAC,CAAC;QAChC,MAAM,kBAAkB,GAAG,qBAAqB,GAAG,cAAc,CAAC;QAClE,IAAI,kBAAkB,GAAG,kBAAkB,EAAE,CAAC;YAC5C,kBAAkB,GAAG,kBAAkB,CAAC;QAC1C,CAAC;QAED,SAAS;QACT,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,OAAO,kBAAkB,IAAI,cAAc,EAAE,CAAC;YAC5C,IAAI,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;gBACtC,MAAM;YACR,CAAC;YACD,kBAAkB,IAAI,cAAc,CAAC;YACrC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IACnD,CAAC"}
1
+ {"version":3,"file":"FixedTimeStep.js","sourceRoot":"","sources":["../../src/systems/FixedTimeStep.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,MAAM,OAAO,aAAa;IACxB,MAAM,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAE/B,eAAe,GAAG,EAAE,CAAC;IACrB,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC;IACvC,KAAK,CAAe;IAEpB,YACE,QAAsB,IAAI,KAAK,CAAC,KAAK,EAAE;QAEvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,MAAM,CACJ,eAAmC;QAEnC,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAC1C,eAAe,EACf,CAAC,EACD,aAAa,CAAC,kBAAkB,CACjC,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC;IAC9C,CAAC;IAED,IAAI,CACF,eAAuB,EACvB,QAAyC;QAEzC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAEpB,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC;QACrC,IAAI,kBAAkB,GAAG,eAAe,CAAC;QAEzC,gDAAgD;QAChD,sEAAsE;QACtE,uDAAuD;QACvD,+HAA+H;QAC/H,MAAM,qBAAqB,GAAG,CAAC,CAAC;QAChC,MAAM,kBAAkB,GAAG,qBAAqB,GAAG,cAAc,CAAC;QAClE,IAAI,kBAAkB,GAAG,kBAAkB,EAAE,CAAC;YAC5C,kBAAkB,GAAG,kBAAkB,CAAC;QAC1C,CAAC;QAED,SAAS;QACT,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,OAAO,kBAAkB,IAAI,cAAc,EAAE,CAAC;YAC5C,IAAI,QAAQ,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC/B,MAAM;YACR,CAAC;YACD,kBAAkB,IAAI,cAAc,CAAC;YACrC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IACnD,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@jolly-pixel/engine",
3
3
  "description": "Minimal and opiniated ECS framework on top of three.js.",
4
- "version": "1.1.0",
4
+ "version": "1.1.1",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",