@blackglory/structures 0.3.2 → 0.3.5

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.
@@ -6,6 +6,7 @@ export declare class FiniteStateMachine<State extends string, Event extends stri
6
6
  get state(): State;
7
7
  constructor(schema: IFiniteStateMachineSchema<State, Event>, initialState: State);
8
8
  matches(state: State): boolean;
9
+ can(event: Event): boolean;
9
10
  send(event: Event): void;
10
11
  }
11
12
  export declare class BadEventError extends CustomError {
@@ -26,8 +26,11 @@ class FiniteStateMachine {
26
26
  matches(state) {
27
27
  return __classPrivateFieldGet(this, _FiniteStateMachine_state, "f") === state;
28
28
  }
29
+ can(event) {
30
+ return event in this.schema[this.state];
31
+ }
29
32
  send(event) {
30
- if (event in this.schema[this.state]) {
33
+ if (this.can(event)) {
31
34
  __classPrivateFieldSet(this, _FiniteStateMachine_state, this.schema[this.state][event], "f");
32
35
  }
33
36
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"finite-state-machine.js","sourceRoot":"","sources":["../../src/finite-state-machine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+CAAgD;AAKhD,MAAa,kBAAkB;IAM7B,YACY,MAA+C,EACzD,YAAmB;QADT,WAAM,GAAN,MAAM,CAAyC;QAN3D,4CAAa;QASX,uBAAA,IAAI,6BAAU,YAAY,MAAA,CAAA;IAC5B,CAAC;IATD,IAAI,KAAK;QACP,OAAO,uBAAA,IAAI,iCAAO,CAAA;IACpB,CAAC;IASD,OAAO,CAAC,KAAY;QAClB,OAAO,uBAAA,IAAI,iCAAO,KAAK,KAAK,CAAA;IAC9B,CAAC;IAKD,IAAI,CAAC,KAAY;QACf,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACpC,uBAAA,IAAI,6BAAU,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAE,MAAA,CAAA;SAC9C;aAAM;YACL,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;SAC3C;IACH,CAAC;CACF;AA3BD,gDA2BC;;AAED,MAAa,aAAc,SAAQ,oBAAW;IAC5C,YAAY,KAAa,EAAE,KAAa;QACtC,KAAK,CAAC,SAAS,KAAK,0BAA0B,KAAK,EAAE,CAAC,CAAA;IACxD,CAAC;CACF;AAJD,sCAIC"}
1
+ {"version":3,"file":"finite-state-machine.js","sourceRoot":"","sources":["../../src/finite-state-machine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+CAAgD;AAKhD,MAAa,kBAAkB;IAM7B,YACY,MAA+C,EACzD,YAAmB;QADT,WAAM,GAAN,MAAM,CAAyC;QAN3D,4CAAa;QASX,uBAAA,IAAI,6BAAU,YAAY,MAAA,CAAA;IAC5B,CAAC;IATD,IAAI,KAAK;QACP,OAAO,uBAAA,IAAI,iCAAO,CAAA;IACpB,CAAC;IASD,OAAO,CAAC,KAAY;QAClB,OAAO,uBAAA,IAAI,iCAAO,KAAK,KAAK,CAAA;IAC9B,CAAC;IAED,GAAG,CAAC,KAAY;QACd,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACzC,CAAC;IAKD,IAAI,CAAC,KAAY;QACf,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACnB,uBAAA,IAAI,6BAAU,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAE,MAAA,CAAA;SAC9C;aAAM;YACL,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;SAC3C;IACH,CAAC;CACF;AA/BD,gDA+BC;;AAED,MAAa,aAAc,SAAQ,oBAAW;IAC5C,YAAY,KAAa,EAAE,KAAa;QACtC,KAAK,CAAC,SAAS,KAAK,0BAA0B,KAAK,EAAE,CAAC,CAAA;IACxD,CAAC;CACF;AAJD,sCAIC"}
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAAqB;AACrB,yCAAsB;AACtB,4CAAyB;AACzB,6CAA0B;AAC1B,6CAA0B;AAC1B,0CAAuB;AACvB,4CAAyB;AACzB,kDAA+B;AAC/B,6CAA0B;AAC1B,6CAA0B;AAC1B,yDAAsC;AACtC,oEAAiD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,yCAAsB;AACtB,4CAAyB;AACzB,6CAA0B;AAC1B,6CAA0B;AAC1B,0CAAuB;AACvB,4CAAyB;AACzB,kDAA+B;AAC/B,6CAA0B;AAC1B,6CAA0B;AAC1B,yDAAsC;AACtC,oEAAiD"}
@@ -6,6 +6,7 @@ export declare class FiniteStateMachine<State extends string, Event extends stri
6
6
  get state(): State;
7
7
  constructor(schema: IFiniteStateMachineSchema<State, Event>, initialState: State);
8
8
  matches(state: State): boolean;
9
+ can(event: Event): boolean;
9
10
  send(event: Event): void;
10
11
  }
11
12
  export declare class BadEventError extends CustomError {
@@ -26,8 +26,11 @@ class FiniteStateMachine {
26
26
  matches(state) {
27
27
  return __classPrivateFieldGet(this, _FiniteStateMachine_state, "f") === state;
28
28
  }
29
+ can(event) {
30
+ return event in this.schema[this.state];
31
+ }
29
32
  send(event) {
30
- if (event in this.schema[this.state]) {
33
+ if (this.can(event)) {
31
34
  __classPrivateFieldSet(this, _FiniteStateMachine_state, this.schema[this.state][event], "f");
32
35
  }
33
36
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"finite-state-machine.js","sourceRoot":"","sources":["../../src/finite-state-machine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+CAAgD;AAKhD,MAAa,kBAAkB;IAM7B,YACY,MAA+C,EACzD,YAAmB;QADT,WAAM,GAAN,MAAM,CAAyC;QAN3D,4CAAa;QASX,uBAAA,IAAI,6BAAU,YAAY,MAAA,CAAA;IAC5B,CAAC;IATD,IAAI,KAAK;QACP,OAAO,uBAAA,IAAI,iCAAO,CAAA;IACpB,CAAC;IASD,OAAO,CAAC,KAAY;QAClB,OAAO,uBAAA,IAAI,iCAAO,KAAK,KAAK,CAAA;IAC9B,CAAC;IAKD,IAAI,CAAC,KAAY;QACf,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACpC,uBAAA,IAAI,6BAAU,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAE,MAAA,CAAA;SAC9C;aAAM;YACL,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;SAC3C;IACH,CAAC;CACF;AA3BD,gDA2BC;;AAED,MAAa,aAAc,SAAQ,oBAAW;IAC5C,YAAY,KAAa,EAAE,KAAa;QACtC,KAAK,CAAC,SAAS,KAAK,0BAA0B,KAAK,EAAE,CAAC,CAAA;IACxD,CAAC;CACF;AAJD,sCAIC"}
1
+ {"version":3,"file":"finite-state-machine.js","sourceRoot":"","sources":["../../src/finite-state-machine.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+CAAgD;AAKhD,MAAa,kBAAkB;IAM7B,YACY,MAA+C,EACzD,YAAmB;QADT,WAAM,GAAN,MAAM,CAAyC;QAN3D,4CAAa;QASX,uBAAA,IAAI,6BAAU,YAAY,MAAA,CAAA;IAC5B,CAAC;IATD,IAAI,KAAK;QACP,OAAO,uBAAA,IAAI,iCAAO,CAAA;IACpB,CAAC;IASD,OAAO,CAAC,KAAY;QAClB,OAAO,uBAAA,IAAI,iCAAO,KAAK,KAAK,CAAA;IAC9B,CAAC;IAED,GAAG,CAAC,KAAY;QACd,OAAO,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACzC,CAAC;IAKD,IAAI,CAAC,KAAY;QACf,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACnB,uBAAA,IAAI,6BAAU,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAE,MAAA,CAAA;SAC9C;aAAM;YACL,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;SAC3C;IACH,CAAC;CACF;AA/BD,gDA+BC;;AAED,MAAa,aAAc,SAAQ,oBAAW;IAC5C,YAAY,KAAa,EAAE,KAAa;QACtC,KAAK,CAAC,SAAS,KAAK,0BAA0B,KAAK,EAAE,CAAC,CAAA;IACxD,CAAC;CACF;AAJD,sCAIC"}
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAAqB;AACrB,yCAAsB;AACtB,4CAAyB;AACzB,6CAA0B;AAC1B,6CAA0B;AAC1B,0CAAuB;AACvB,4CAAyB;AACzB,kDAA+B;AAC/B,6CAA0B;AAC1B,6CAA0B;AAC1B,yDAAsC;AACtC,oEAAiD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,yCAAsB;AACtB,4CAAyB;AACzB,6CAA0B;AAC1B,6CAA0B;AAC1B,0CAAuB;AACvB,4CAAyB;AACzB,kDAA+B;AAC/B,6CAA0B;AAC1B,6CAA0B;AAC1B,yDAAsC;AACtC,oEAAiD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blackglory/structures",
3
- "version": "0.3.2",
3
+ "version": "0.3.5",
4
4
  "description": "",
5
5
  "files": [
6
6
  "lib",
@@ -41,39 +41,39 @@
41
41
  "node": ">=12"
42
42
  },
43
43
  "devDependencies": {
44
- "@blackglory/jest-matchers": "^0.2.1",
45
- "@commitlint/cli": "^16.0.1",
46
- "@commitlint/config-conventional": "^16.0.0",
47
- "@rollup/plugin-commonjs": "^21.0.1",
44
+ "@blackglory/jest-matchers": "^0.3.1",
45
+ "@commitlint/cli": "^16.2.3",
46
+ "@commitlint/config-conventional": "^16.2.1",
47
+ "@rollup/plugin-commonjs": "^21.0.2",
48
48
  "@rollup/plugin-json": "^4.1.0",
49
49
  "@rollup/plugin-node-resolve": "^13.1.3",
50
- "@rollup/plugin-replace": "^3.0.1",
51
- "@rollup/plugin-typescript": "^8.3.0",
52
- "@types/jest": "^27.4.0",
53
- "@types/node": "^16.11.12",
54
- "@typescript-eslint/eslint-plugin": "^5.9.0",
55
- "@typescript-eslint/parser": "^5.9.0",
56
- "eslint": "^8.6.0",
57
- "extra-promise": "^0.21.0",
50
+ "@rollup/plugin-replace": "^4.0.0",
51
+ "@rollup/plugin-typescript": "^8.3.1",
52
+ "@types/jest": "^27.4.1",
53
+ "@types/node": "14",
54
+ "@typescript-eslint/eslint-plugin": "^5.15.0",
55
+ "@typescript-eslint/parser": "^5.15.0",
56
+ "eslint": "^8.11.0",
57
+ "extra-promise": "^1.0.1",
58
58
  "husky": "^4.3.8",
59
- "jest": "^27.4.7",
59
+ "jest": "^27.5.1",
60
60
  "npm-run-all": "^4.1.5",
61
- "return-style": "^0.12.5",
61
+ "return-style": "^1.0.0",
62
62
  "rimraf": "^3.0.2",
63
- "rollup": "^2.63.0",
63
+ "rollup": "^2.70.1",
64
64
  "rollup-plugin-analyzer": "^4.0.0",
65
65
  "rollup-plugin-terser": "^7.0.2",
66
66
  "standard-version": "^9.3.2",
67
- "ts-jest": "^27.1.2",
67
+ "ts-jest": "^27.1.3",
68
68
  "tscpaths": "^0.0.9",
69
69
  "tslib": "^2.3.1",
70
- "typescript": "^4.5.4"
70
+ "typescript": "^4.6.2"
71
71
  },
72
72
  "dependencies": {
73
- "@blackglory/errors": "^1.1.2",
74
- "@blackglory/types": "^0.6.5",
75
- "extra-timers": "^0.2.4",
76
- "iterable-operator": "^0.14.4",
77
- "rxjs": "^7.5.1"
73
+ "@blackglory/errors": "^2.2.0",
74
+ "@blackglory/types": "^1.0.0",
75
+ "extra-timers": "^0.2.5",
76
+ "iterable-operator": "^1.0.0",
77
+ "rxjs": "^7.5.5"
78
78
  }
79
79
  }