sportident.js 1.3.0 → 1.3.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.
- package/SiCard/BaseSiCard.js +45 -8
- package/SiCard/BaseSiCard.js.map +1 -1
- package/SiCard/BaseSiCard.test.js +66 -64
- package/SiCard/BaseSiCard.test.js.map +1 -1
- package/SiCard/IRaceResultData.js +2 -1
- package/SiCard/ISiCard.js +2 -1
- package/SiCard/ISiCardExamples.js +2 -1
- package/SiCard/index.js +20 -2
- package/SiCard/index.js.map +1 -1
- package/SiCard/raceResultTools.js +52 -10
- package/SiCard/raceResultTools.js.map +1 -1
- package/SiCard/raceResultTools.test.js +51 -49
- package/SiCard/raceResultTools.test.js.map +1 -1
- package/SiCard/types/FCard.js +41 -4
- package/SiCard/types/FCard.js.map +1 -1
- package/SiCard/types/FCard.test.js +13 -11
- package/SiCard/types/FCard.test.js.map +1 -1
- package/SiCard/types/ModernSiCard.js +67 -25
- package/SiCard/types/ModernSiCard.js.map +1 -1
- package/SiCard/types/ModernSiCard.test.js +104 -69
- package/SiCard/types/ModernSiCard.test.js.map +1 -1
- package/SiCard/types/PCard.js +41 -4
- package/SiCard/types/PCard.js.map +1 -1
- package/SiCard/types/PCard.test.js +13 -11
- package/SiCard/types/PCard.test.js.map +1 -1
- package/SiCard/types/SIAC.js +8 -4
- package/SiCard/types/SIAC.js.map +1 -1
- package/SiCard/types/SIAC.test.js +73 -38
- package/SiCard/types/SIAC.test.js.map +1 -1
- package/SiCard/types/SiCard10.js +8 -4
- package/SiCard/types/SiCard10.js.map +1 -1
- package/SiCard/types/SiCard10.test.js +76 -41
- package/SiCard/types/SiCard10.test.js.map +1 -1
- package/SiCard/types/SiCard11.js +8 -4
- package/SiCard/types/SiCard11.js.map +1 -1
- package/SiCard/types/SiCard11.test.js +73 -38
- package/SiCard/types/SiCard11.test.js.map +1 -1
- package/SiCard/types/SiCard5.js +55 -16
- package/SiCard/types/SiCard5.js.map +1 -1
- package/SiCard/types/SiCard5.test.js +116 -81
- package/SiCard/types/SiCard5.test.js.map +1 -1
- package/SiCard/types/SiCard6.js +56 -17
- package/SiCard/types/SiCard6.js.map +1 -1
- package/SiCard/types/SiCard6.test.js +114 -79
- package/SiCard/types/SiCard6.test.js.map +1 -1
- package/SiCard/types/SiCard8.js +54 -16
- package/SiCard/types/SiCard8.js.map +1 -1
- package/SiCard/types/SiCard8.test.js +104 -69
- package/SiCard/types/SiCard8.test.js.map +1 -1
- package/SiCard/types/SiCard9.js +53 -15
- package/SiCard/types/SiCard9.js.map +1 -1
- package/SiCard/types/SiCard9.test.js +100 -65
- package/SiCard/types/SiCard9.test.js.map +1 -1
- package/SiCard/types/TCard.js +41 -4
- package/SiCard/types/TCard.js.map +1 -1
- package/SiCard/types/TCard.test.js +13 -11
- package/SiCard/types/TCard.test.js.map +1 -1
- package/SiCard/types/index.js +33 -15
- package/SiCard/types/index.js.map +1 -1
- package/SiCard/types/index.test.js +48 -13
- package/SiCard/types/index.test.js.map +1 -1
- package/SiCard/types/modernSiCardExamples.js +58 -21
- package/SiCard/types/modernSiCardExamples.js.map +1 -1
- package/SiCard/types/siCard5Examples.js +43 -6
- package/SiCard/types/siCard5Examples.js.map +1 -1
- package/SiCard/types/siCard6Examples.js +47 -10
- package/SiCard/types/siCard6Examples.js.map +1 -1
- package/SiCard/types/siCard8Examples.js +45 -8
- package/SiCard/types/siCard8Examples.js.map +1 -1
- package/SiCard/types/siCard9Examples.js +45 -8
- package/SiCard/types/siCard9Examples.js.map +1 -1
- package/SiDevice/ISiDevice.js +45 -6
- package/SiDevice/ISiDevice.js.map +1 -1
- package/SiDevice/ISiDeviceDriver.js +41 -3
- package/SiDevice/ISiDeviceDriver.js.map +1 -1
- package/SiDevice/SiDevice.js +57 -20
- package/SiDevice/SiDevice.js.map +1 -1
- package/SiDevice/SiDevice.test.js +138 -103
- package/SiDevice/SiDevice.test.js.map +1 -1
- package/SiDevice/WebSerialSiDeviceDriver.js +49 -11
- package/SiDevice/WebSerialSiDeviceDriver.js.map +1 -1
- package/SiDevice/WebUsbSiDeviceDriver.js +49 -11
- package/SiDevice/WebUsbSiDeviceDriver.js.map +1 -1
- package/SiDevice/index.js +5 -1
- package/SiDevice/index.js.map +1 -1
- package/SiDevice/testUtils/index.js +7 -2
- package/SiDevice/testUtils/index.js.map +1 -1
- package/SiDevice/testUtils/testISiDeviceDriver.js +47 -10
- package/SiDevice/testUtils/testISiDeviceDriver.js.map +1 -1
- package/SiDevice/testUtils/testISiDeviceDriverWithAutodetection.js +52 -15
- package/SiDevice/testUtils/testISiDeviceDriverWithAutodetection.js.map +1 -1
- package/SiStation/BaseSiStation.js +55 -18
- package/SiStation/BaseSiStation.js.map +1 -1
- package/SiStation/BaseSiStation.test.js +95 -60
- package/SiStation/BaseSiStation.test.js.map +1 -1
- package/SiStation/CoupledSiStation.js +53 -16
- package/SiStation/CoupledSiStation.js.map +1 -1
- package/SiStation/CoupledSiStation.test.js +62 -27
- package/SiStation/CoupledSiStation.test.js.map +1 -1
- package/SiStation/ISiMainStation.js +43 -4
- package/SiStation/ISiMainStation.js.map +1 -1
- package/SiStation/ISiSendTask.js +5 -2
- package/SiStation/ISiSendTask.js.map +1 -1
- package/SiStation/ISiStation.js +8 -5
- package/SiStation/ISiStation.js.map +1 -1
- package/SiStation/ISiTargetMultiplexer.js +45 -6
- package/SiStation/ISiTargetMultiplexer.js.map +1 -1
- package/SiStation/SiMainStation.js +56 -19
- package/SiStation/SiMainStation.js.map +1 -1
- package/SiStation/SiMainStation.test.js +123 -88
- package/SiStation/SiMainStation.test.js.map +1 -1
- package/SiStation/SiSendTask.js +48 -11
- package/SiStation/SiSendTask.js.map +1 -1
- package/SiStation/SiTargetMultiplexer.js +83 -46
- package/SiStation/SiTargetMultiplexer.js.map +1 -1
- package/SiStation/SiTargetMultiplexer.targeting.test.js +77 -42
- package/SiStation/SiTargetMultiplexer.targeting.test.js.map +1 -1
- package/SiStation/SiTargetMultiplexer.test.js +236 -201
- package/SiStation/SiTargetMultiplexer.test.js.map +1 -1
- package/SiStation/index.js +13 -5
- package/SiStation/index.js.map +1 -1
- package/SiStation/siStationExamples.js +43 -6
- package/SiStation/siStationExamples.js.map +1 -1
- package/constants.js +7 -4
- package/constants.js.map +1 -1
- package/constants.test.js +47 -12
- package/constants.test.js.map +1 -1
- package/fakes/FakeSiCard/BaseFakeSiCard.js +5 -1
- package/fakes/FakeSiCard/BaseFakeSiCard.js.map +1 -1
- package/fakes/FakeSiCard/BaseFakeSiCard.test.js +41 -6
- package/fakes/FakeSiCard/BaseFakeSiCard.test.js.map +1 -1
- package/fakes/FakeSiCard/IFakeSiCard.js +2 -1
- package/fakes/FakeSiCard/index.js +20 -2
- package/fakes/FakeSiCard/index.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeModernSiCard.js +49 -12
- package/fakes/FakeSiCard/types/FakeModernSiCard.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeModernSiCard.test.js +60 -25
- package/fakes/FakeSiCard/types/FakeModernSiCard.test.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSIAC.js +12 -8
- package/fakes/FakeSiCard/types/FakeSIAC.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard10.js +12 -8
- package/fakes/FakeSiCard/types/FakeSiCard10.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard11.js +12 -8
- package/fakes/FakeSiCard/types/FakeSiCard11.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard5.js +49 -12
- package/fakes/FakeSiCard/types/FakeSiCard5.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard5.test.js +55 -20
- package/fakes/FakeSiCard/types/FakeSiCard5.test.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard6.js +49 -12
- package/fakes/FakeSiCard/types/FakeSiCard6.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard6.test.js +60 -25
- package/fakes/FakeSiCard/types/FakeSiCard6.test.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard8.js +11 -7
- package/fakes/FakeSiCard/types/FakeSiCard8.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard9.js +11 -7
- package/fakes/FakeSiCard/types/FakeSiCard9.js.map +1 -1
- package/fakes/FakeSiCard/types/index.js +17 -7
- package/fakes/FakeSiCard/types/index.js.map +1 -1
- package/fakes/FakeSiDeviceDriver.js +47 -10
- package/fakes/FakeSiDeviceDriver.js.map +1 -1
- package/fakes/FakeSiMainStation.js +66 -29
- package/fakes/FakeSiMainStation.js.map +1 -1
- package/fakes/FakeSiMainStation.test.js +78 -43
- package/fakes/FakeSiMainStation.test.js.map +1 -1
- package/fakes/IFakeSiMainStation.js +39 -2
- package/fakes/IFakeSiMainStation.js.map +1 -1
- package/fakes/index.js +20 -2
- package/fakes/index.js.map +1 -1
- package/index.js +46 -10
- package/index.js.map +1 -1
- package/package.json +2 -3
- package/siProtocol.js +83 -36
- package/siProtocol.js.map +1 -1
- package/siProtocol.test.js +345 -308
- package/siProtocol.test.js.map +1 -1
- package/storage/SiArray.js +8 -4
- package/storage/SiArray.js.map +1 -1
- package/storage/SiArray.test.js +58 -56
- package/storage/SiArray.test.js.map +1 -1
- package/storage/SiBool.js +9 -5
- package/storage/SiBool.js.map +1 -1
- package/storage/SiBool.test.js +65 -63
- package/storage/SiBool.test.js.map +1 -1
- package/storage/SiDataType.js +14 -9
- package/storage/SiDataType.js.map +1 -1
- package/storage/SiDataType.test.js +25 -23
- package/storage/SiDataType.test.js.map +1 -1
- package/storage/SiDict.js +8 -4
- package/storage/SiDict.js.map +1 -1
- package/storage/SiDict.test.js +54 -52
- package/storage/SiDict.test.js.map +1 -1
- package/storage/SiEnum.js +44 -7
- package/storage/SiEnum.js.map +1 -1
- package/storage/SiEnum.test.js +61 -59
- package/storage/SiEnum.test.js.map +1 -1
- package/storage/SiFieldValue.js +8 -4
- package/storage/SiFieldValue.js.map +1 -1
- package/storage/SiFieldValue.test.js +27 -25
- package/storage/SiFieldValue.test.js.map +1 -1
- package/storage/SiInt.js +9 -5
- package/storage/SiInt.js.map +1 -1
- package/storage/SiInt.test.js +65 -63
- package/storage/SiInt.test.js.map +1 -1
- package/storage/SiModified.js +9 -5
- package/storage/SiModified.js.map +1 -1
- package/storage/SiModified.test.js +77 -75
- package/storage/SiModified.test.js.map +1 -1
- package/storage/SiStorage.js +9 -4
- package/storage/SiStorage.js.map +1 -1
- package/storage/SiStorage.test.js +67 -32
- package/storage/SiStorage.test.js.map +1 -1
- package/storage/index.js +28 -11
- package/storage/index.js.map +1 -1
- package/storage/index.test.js +128 -93
- package/storage/index.test.js.map +1 -1
- package/storage/interfaces.js +41 -3
- package/storage/interfaces.js.map +1 -1
- package/storage/siStringEncoding.js +5 -1
- package/storage/siStringEncoding.js.map +1 -1
- package/testUtils.js +28 -16
- package/testUtils.js.map +1 -1
- package/testUtils.test.js +100 -65
- package/testUtils.test.js.map +1 -1
- package/utils/NumberRange.js +6 -2
- package/utils/NumberRange.js.map +1 -1
- package/utils/NumberRange.test.js +56 -54
- package/utils/NumberRange.test.js.map +1 -1
- package/utils/NumberRangeRegistry.js +42 -5
- package/utils/NumberRangeRegistry.js.map +1 -1
- package/utils/NumberRangeRegistry.test.js +37 -35
- package/utils/NumberRangeRegistry.test.js.map +1 -1
- package/utils/bytes.js +22 -11
- package/utils/bytes.js.map +1 -1
- package/utils/bytes.test.js +133 -98
- package/utils/bytes.test.js.map +1 -1
- package/utils/errors.js +11 -4
- package/utils/errors.js.map +1 -1
- package/utils/errors.test.js +51 -16
- package/utils/errors.test.js.map +1 -1
- package/utils/events.js +41 -3
- package/utils/events.js.map +1 -1
- package/utils/events.test.js +56 -21
- package/utils/events.test.js.map +1 -1
- package/utils/general.js +11 -4
- package/utils/general.js.map +1 -1
- package/utils/general.test.js +112 -77
- package/utils/general.test.js.map +1 -1
- package/utils/index.js +24 -8
- package/utils/index.js.map +1 -1
- package/utils/mixins.js +5 -1
- package/utils/mixins.js.map +1 -1
- package/utils/mixins.test.js +48 -13
- package/utils/mixins.test.js.map +1 -1
- package/utils/typed.js +4 -1
- package/utils/typed.js.map +1 -1
package/SiCard/BaseSiCard.js
CHANGED
|
@@ -1,8 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = 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);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.BaseSiCard = void 0;
|
|
37
|
+
const constants_1 = require("../constants");
|
|
38
|
+
const utils = __importStar(require("../utils"));
|
|
39
|
+
const raceResultTools_1 = require("./raceResultTools");
|
|
4
40
|
const initialRegistry = new utils.NumberRangeRegistry();
|
|
5
|
-
|
|
41
|
+
class BaseSiCard {
|
|
6
42
|
static resetNumberRangeRegistry() {
|
|
7
43
|
this.cardNumberRangeRegistry = new utils.NumberRangeRegistry();
|
|
8
44
|
}
|
|
@@ -36,26 +72,27 @@ export class BaseSiCard {
|
|
|
36
72
|
return this.typeSpecificRead().then(() => this);
|
|
37
73
|
}
|
|
38
74
|
getNormalizedRaceResult() {
|
|
39
|
-
return makeStartZeroTime(this.getMonotonizedRaceResult());
|
|
75
|
+
return (0, raceResultTools_1.makeStartZeroTime)(this.getMonotonizedRaceResult());
|
|
40
76
|
}
|
|
41
77
|
getMonotonizedRaceResult() {
|
|
42
|
-
return monotonizeRaceResult(this.raceResult);
|
|
78
|
+
return (0, raceResultTools_1.monotonizeRaceResult)(this.raceResult);
|
|
43
79
|
}
|
|
44
80
|
confirm() {
|
|
45
81
|
if (!this.mainStation) {
|
|
46
82
|
return Promise.reject(new Error('No main station'));
|
|
47
83
|
}
|
|
48
84
|
return this.mainStation.sendMessage({
|
|
49
|
-
mode: proto.ACK
|
|
85
|
+
mode: constants_1.proto.ACK
|
|
50
86
|
}, 0);
|
|
51
87
|
}
|
|
52
88
|
toDict() {
|
|
53
89
|
return this.raceResult;
|
|
54
90
|
}
|
|
55
91
|
toString() {
|
|
56
|
-
return `${this.constructor.name}\n${prettyRaceResult(this.raceResult)}`;
|
|
92
|
+
return `${this.constructor.name}\n${(0, raceResultTools_1.prettyRaceResult)(this.raceResult)}`;
|
|
57
93
|
}
|
|
58
94
|
}
|
|
95
|
+
exports.BaseSiCard = BaseSiCard;
|
|
59
96
|
// abstract static maxNumPunches: number;
|
|
60
97
|
BaseSiCard.NumberRange = utils.NumberRange;
|
|
61
98
|
BaseSiCard.cardNumberRangeRegistry = initialRegistry;
|
package/SiCard/BaseSiCard.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseSiCard.js","sourceRoot":"","sources":["../../src/SiCard/BaseSiCard.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"BaseSiCard.js","sourceRoot":"","sources":["../../src/SiCard/BaseSiCard.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAAqC;AACrC,gDAAkC;AAIlC,uDAA8F;AAM9F,MAAM,eAAe,GAAsD,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;AAM3G,MAAsB,UAAU;IAK/B,MAAM,CAAC,wBAAwB;QAC9B,IAAI,CAAC,uBAAuB,GAAG,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;IAChE,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAuB,sBAA8B,EAAE,yBAAiC,EAAE,UAAyB;QAC5I,MAAM,eAAe,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,CAAC;QACjG,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAuB,UAAkB;QAClE,OAAO,IAAI,CAAC,uBAAuB,CAAC,iBAAiB,CAAC,UAAU,CAA8B,CAAC;IAChG,CAAC;IAED,yDAAyD;IAEzD,MAAM,CAAC,cAAc,CAAC,UAAkB;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,OAA6B;QACrD,MAAM,aAAa,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC;QACpL,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IAUD,YAAY,UAAkB;QAFvB,YAAO,GAAgC,EAAiC,CAAC;QAG/E,IAAI,CAAC,UAAU,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;IAC9C,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;IACnC,CAAC;IAED,IAAI;QACH,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IAED,uBAAuB;QACtB,OAAO,IAAA,mCAAiB,EAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,wBAAwB;QACvB,OAAO,IAAA,sCAAoB,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAID,OAAO;QACN,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAClC;YACC,IAAI,EAAE,iBAAK,CAAC,GAAG;SACf,EACD,CAAC,CACD,CAAC;IACH,CAAC;IAED,MAAM;QACL,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IAED,QAAQ;QACP,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,IAAA,kCAAgB,EAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;IACzE,CAAC;;AAjFF,gCAkFC;AAjFA,yCAAyC;AAClC,sBAAW,GAA6B,KAAK,CAAC,WAAW,AAA9C,CAA+C;AAC1D,kCAAuB,GAAsD,eAAe,AAArE,CAAsE"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,14 +8,15 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
9
|
});
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const globals_1 = require("@jest/globals");
|
|
13
|
+
const constants_1 = require("../constants");
|
|
14
|
+
const BaseSiCard_1 = require("./BaseSiCard");
|
|
15
|
+
(0, globals_1.beforeEach)(() => {
|
|
16
|
+
BaseSiCard_1.BaseSiCard.resetNumberRangeRegistry();
|
|
15
17
|
});
|
|
16
|
-
describe('BaseSiCard', () => {
|
|
17
|
-
class FakeSiCard1 extends BaseSiCard {
|
|
18
|
+
(0, globals_1.describe)('BaseSiCard', () => {
|
|
19
|
+
class FakeSiCard1 extends BaseSiCard_1.BaseSiCard {
|
|
18
20
|
static typeSpecificInstanceFromMessage(_message) {
|
|
19
21
|
return undefined;
|
|
20
22
|
}
|
|
@@ -22,7 +24,7 @@ describe('BaseSiCard', () => {
|
|
|
22
24
|
return Promise.resolve();
|
|
23
25
|
}
|
|
24
26
|
}
|
|
25
|
-
class FakeSiCard2 extends BaseSiCard {
|
|
27
|
+
class FakeSiCard2 extends BaseSiCard_1.BaseSiCard {
|
|
26
28
|
static typeSpecificInstanceFromMessage(_message) {
|
|
27
29
|
return undefined;
|
|
28
30
|
}
|
|
@@ -30,30 +32,30 @@ describe('BaseSiCard', () => {
|
|
|
30
32
|
return Promise.resolve();
|
|
31
33
|
}
|
|
32
34
|
}
|
|
33
|
-
test('registerNumberRange', () => {
|
|
34
|
-
BaseSiCard.registerNumberRange(100, 1000, FakeSiCard1);
|
|
35
|
-
BaseSiCard.registerNumberRange(0, 100, FakeSiCard2);
|
|
36
|
-
BaseSiCard.registerNumberRange(1000, 2000, FakeSiCard2);
|
|
37
|
-
expect(BaseSiCard.getTypeByCardNumber(-1)).toEqual(undefined);
|
|
38
|
-
expect(BaseSiCard.getTypeByCardNumber(0)).toEqual(FakeSiCard2);
|
|
39
|
-
expect(BaseSiCard.getTypeByCardNumber(99)).toEqual(FakeSiCard2);
|
|
40
|
-
expect(BaseSiCard.getTypeByCardNumber(100)).toEqual(FakeSiCard1);
|
|
41
|
-
expect(BaseSiCard.getTypeByCardNumber(999)).toEqual(FakeSiCard1);
|
|
42
|
-
expect(BaseSiCard.getTypeByCardNumber(1000)).toEqual(FakeSiCard2);
|
|
43
|
-
expect(BaseSiCard.getTypeByCardNumber(1999)).toEqual(FakeSiCard2);
|
|
44
|
-
expect(BaseSiCard.getTypeByCardNumber(2000)).toEqual(undefined);
|
|
35
|
+
(0, globals_1.test)('registerNumberRange', () => {
|
|
36
|
+
BaseSiCard_1.BaseSiCard.registerNumberRange(100, 1000, FakeSiCard1);
|
|
37
|
+
BaseSiCard_1.BaseSiCard.registerNumberRange(0, 100, FakeSiCard2);
|
|
38
|
+
BaseSiCard_1.BaseSiCard.registerNumberRange(1000, 2000, FakeSiCard2);
|
|
39
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(-1)).toEqual(undefined);
|
|
40
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(0)).toEqual(FakeSiCard2);
|
|
41
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(99)).toEqual(FakeSiCard2);
|
|
42
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(100)).toEqual(FakeSiCard1);
|
|
43
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(999)).toEqual(FakeSiCard1);
|
|
44
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(1000)).toEqual(FakeSiCard2);
|
|
45
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(1999)).toEqual(FakeSiCard2);
|
|
46
|
+
(0, globals_1.expect)(BaseSiCard_1.BaseSiCard.getTypeByCardNumber(2000)).toEqual(undefined);
|
|
45
47
|
});
|
|
46
|
-
test('fromCardNumber', () => {
|
|
47
|
-
BaseSiCard.registerNumberRange(100, 1000, FakeSiCard1);
|
|
48
|
-
const siCard500 = BaseSiCard.fromCardNumber(500);
|
|
49
|
-
expect(siCard500 instanceof BaseSiCard).toBe(true);
|
|
50
|
-
expect(siCard500 instanceof FakeSiCard1).toBe(true);
|
|
51
|
-
const siCard5000 = BaseSiCard.fromCardNumber(5000);
|
|
52
|
-
expect(siCard5000).toBe(undefined);
|
|
48
|
+
(0, globals_1.test)('fromCardNumber', () => {
|
|
49
|
+
BaseSiCard_1.BaseSiCard.registerNumberRange(100, 1000, FakeSiCard1);
|
|
50
|
+
const siCard500 = BaseSiCard_1.BaseSiCard.fromCardNumber(500);
|
|
51
|
+
(0, globals_1.expect)(siCard500 instanceof BaseSiCard_1.BaseSiCard).toBe(true);
|
|
52
|
+
(0, globals_1.expect)(siCard500 instanceof FakeSiCard1).toBe(true);
|
|
53
|
+
const siCard5000 = BaseSiCard_1.BaseSiCard.fromCardNumber(5000);
|
|
54
|
+
(0, globals_1.expect)(siCard5000).toBe(undefined);
|
|
53
55
|
});
|
|
54
|
-
describe('detectFromMessage', () => {
|
|
56
|
+
(0, globals_1.describe)('detectFromMessage', () => {
|
|
55
57
|
let triedToGetInstance = false;
|
|
56
|
-
class SiCard1 extends BaseSiCard {
|
|
58
|
+
class SiCard1 extends BaseSiCard_1.BaseSiCard {
|
|
57
59
|
static typeSpecificInstanceFromMessage(message) {
|
|
58
60
|
triedToGetInstance = true;
|
|
59
61
|
if (message.mode !== undefined) {
|
|
@@ -65,29 +67,29 @@ describe('BaseSiCard', () => {
|
|
|
65
67
|
return Promise.resolve();
|
|
66
68
|
}
|
|
67
69
|
}
|
|
68
|
-
beforeEach(() => {
|
|
69
|
-
BaseSiCard.registerNumberRange(1000, 10000, SiCard1);
|
|
70
|
-
BaseSiCard.registerNumberRange(10000, 20000, FakeSiCard2);
|
|
70
|
+
(0, globals_1.beforeEach)(() => {
|
|
71
|
+
BaseSiCard_1.BaseSiCard.registerNumberRange(1000, 10000, SiCard1);
|
|
72
|
+
BaseSiCard_1.BaseSiCard.registerNumberRange(10000, 20000, FakeSiCard2);
|
|
71
73
|
});
|
|
72
|
-
test('detects card from valid message', () => {
|
|
73
|
-
expect(triedToGetInstance).toBe(false);
|
|
74
|
-
const siCard500 = BaseSiCard.detectFromMessage({
|
|
75
|
-
command: proto.cmd.SI5_DET,
|
|
74
|
+
(0, globals_1.test)('detects card from valid message', () => {
|
|
75
|
+
(0, globals_1.expect)(triedToGetInstance).toBe(false);
|
|
76
|
+
const siCard500 = BaseSiCard_1.BaseSiCard.detectFromMessage({
|
|
77
|
+
command: constants_1.proto.cmd.SI5_DET,
|
|
76
78
|
parameters: []
|
|
77
79
|
});
|
|
78
|
-
expect(triedToGetInstance).toBe(true);
|
|
79
|
-
expect(siCard500 instanceof SiCard1).toBe(true);
|
|
80
|
-
expect(siCard500 === null || siCard500 === void 0 ? void 0 : siCard500.cardNumber).toBe(1);
|
|
80
|
+
(0, globals_1.expect)(triedToGetInstance).toBe(true);
|
|
81
|
+
(0, globals_1.expect)(siCard500 instanceof SiCard1).toBe(true);
|
|
82
|
+
(0, globals_1.expect)(siCard500 === null || siCard500 === void 0 ? void 0 : siCard500.cardNumber).toBe(1);
|
|
81
83
|
});
|
|
82
|
-
test('does not detect from NAK message', () => {
|
|
83
|
-
const nakMessage = BaseSiCard.detectFromMessage({
|
|
84
|
-
mode: proto.NAK
|
|
84
|
+
(0, globals_1.test)('does not detect from NAK message', () => {
|
|
85
|
+
const nakMessage = BaseSiCard_1.BaseSiCard.detectFromMessage({
|
|
86
|
+
mode: constants_1.proto.NAK
|
|
85
87
|
});
|
|
86
|
-
expect(nakMessage).toBe(undefined);
|
|
88
|
+
(0, globals_1.expect)(nakMessage).toBe(undefined);
|
|
87
89
|
});
|
|
88
90
|
});
|
|
89
|
-
test('read', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
90
|
-
class SiCard1 extends BaseSiCard {
|
|
91
|
+
(0, globals_1.test)('read', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
92
|
+
class SiCard1 extends BaseSiCard_1.BaseSiCard {
|
|
91
93
|
typeSpecificRead() {
|
|
92
94
|
this.raceResult.startTime = { time: 1 };
|
|
93
95
|
return Promise.resolve();
|
|
@@ -96,7 +98,7 @@ describe('BaseSiCard', () => {
|
|
|
96
98
|
const siCard500 = new SiCard1(500);
|
|
97
99
|
try {
|
|
98
100
|
yield siCard500.confirm();
|
|
99
|
-
expect({ canConfirm: true }).toEqual({ canConfirm: false });
|
|
101
|
+
(0, globals_1.expect)({ canConfirm: true }).toEqual({ canConfirm: false });
|
|
100
102
|
}
|
|
101
103
|
catch (err) {
|
|
102
104
|
// ignore
|
|
@@ -105,8 +107,8 @@ describe('BaseSiCard', () => {
|
|
|
105
107
|
sendMessage: (_message, _numResponses) => Promise.resolve([])
|
|
106
108
|
};
|
|
107
109
|
const result = yield siCard500.read();
|
|
108
|
-
expect(result).toBe(siCard500);
|
|
109
|
-
expect(JSON.stringify(siCard500.raceResult.startTime)).toBe(JSON.stringify({ time: 1 }));
|
|
110
|
+
(0, globals_1.expect)(result).toBe(siCard500);
|
|
111
|
+
(0, globals_1.expect)(JSON.stringify(siCard500.raceResult.startTime)).toBe(JSON.stringify({ time: 1 }));
|
|
110
112
|
yield siCard500.confirm();
|
|
111
113
|
}));
|
|
112
114
|
const emptySiCard = new FakeSiCard1(501);
|
|
@@ -120,8 +122,8 @@ describe('BaseSiCard', () => {
|
|
|
120
122
|
finishTime: { time: 1 },
|
|
121
123
|
cardHolder: { firstName: 'John' }
|
|
122
124
|
};
|
|
123
|
-
test('Empty SiCard toDict', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
124
|
-
expect(emptySiCard.toDict()).toEqual({
|
|
125
|
+
(0, globals_1.test)('Empty SiCard toDict', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
126
|
+
(0, globals_1.expect)(emptySiCard.toDict()).toEqual({
|
|
125
127
|
cardNumber: 501,
|
|
126
128
|
clearTime: undefined,
|
|
127
129
|
checkTime: undefined,
|
|
@@ -131,8 +133,8 @@ describe('BaseSiCard', () => {
|
|
|
131
133
|
cardHolder: undefined
|
|
132
134
|
});
|
|
133
135
|
}));
|
|
134
|
-
test('Non-empty SiCard toDict', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
135
|
-
expect(nonemptySiCard.toDict()).toEqual({
|
|
136
|
+
(0, globals_1.test)('Non-empty SiCard toDict', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
137
|
+
(0, globals_1.expect)(nonemptySiCard.toDict()).toEqual({
|
|
136
138
|
cardNumber: 502,
|
|
137
139
|
clearTime: { time: 1 },
|
|
138
140
|
checkTime: { time: 2 },
|
|
@@ -142,14 +144,14 @@ describe('BaseSiCard', () => {
|
|
|
142
144
|
cardHolder: { firstName: 'John' }
|
|
143
145
|
});
|
|
144
146
|
}));
|
|
145
|
-
test('Empty SiCard toString', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
146
|
-
expect(emptySiCard.toString()).toEqual('FakeSiCard1\nCard Number: 501\nClear: ?\nCheck: ?\nStart: ?\nFinish: ?\n? Punches\nCard Holder:\n?\n');
|
|
147
|
+
(0, globals_1.test)('Empty SiCard toString', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
148
|
+
(0, globals_1.expect)(emptySiCard.toString()).toEqual('FakeSiCard1\nCard Number: 501\nClear: ?\nCheck: ?\nStart: ?\nFinish: ?\n? Punches\nCard Holder:\n?\n');
|
|
147
149
|
}));
|
|
148
|
-
test('Non-empty SiCard toString', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
149
|
-
expect(nonemptySiCard.toString()).toEqual('FakeSiCard1\nCard Number: 502\nClear: 1\nCheck: 2\nStart: 1\nFinish: 1\n31: 2\nCard Holder:\nfirstName: John\n');
|
|
150
|
+
(0, globals_1.test)('Non-empty SiCard toString', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
151
|
+
(0, globals_1.expect)(nonemptySiCard.toString()).toEqual('FakeSiCard1\nCard Number: 502\nClear: 1\nCheck: 2\nStart: 1\nFinish: 1\n31: 2\nCard Holder:\nfirstName: John\n');
|
|
150
152
|
}));
|
|
151
|
-
test('Empty SiCard getMonotonizedRaceResult', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
152
|
-
expect(emptySiCard.getMonotonizedRaceResult()).toEqual({
|
|
153
|
+
(0, globals_1.test)('Empty SiCard getMonotonizedRaceResult', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
154
|
+
(0, globals_1.expect)(emptySiCard.getMonotonizedRaceResult()).toEqual({
|
|
153
155
|
cardNumber: 501,
|
|
154
156
|
clearTime: undefined,
|
|
155
157
|
checkTime: undefined,
|
|
@@ -159,8 +161,8 @@ describe('BaseSiCard', () => {
|
|
|
159
161
|
cardHolder: undefined
|
|
160
162
|
});
|
|
161
163
|
}));
|
|
162
|
-
test('Non-empty SiCard getMonotonizedRaceResult', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
163
|
-
expect(nonemptySiCard.getMonotonizedRaceResult()).toEqual({
|
|
164
|
+
(0, globals_1.test)('Non-empty SiCard getMonotonizedRaceResult', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
165
|
+
(0, globals_1.expect)(nonemptySiCard.getMonotonizedRaceResult()).toEqual({
|
|
164
166
|
cardNumber: 502,
|
|
165
167
|
clearTime: { time: 1 },
|
|
166
168
|
checkTime: { time: 2 },
|
|
@@ -170,11 +172,11 @@ describe('BaseSiCard', () => {
|
|
|
170
172
|
cardHolder: { firstName: 'John' }
|
|
171
173
|
});
|
|
172
174
|
}));
|
|
173
|
-
test('Empty SiCard getNormalizedRaceResult', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
174
|
-
expect(() => emptySiCard.getNormalizedRaceResult()).toThrow();
|
|
175
|
+
(0, globals_1.test)('Empty SiCard getNormalizedRaceResult', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
176
|
+
(0, globals_1.expect)(() => emptySiCard.getNormalizedRaceResult()).toThrow();
|
|
175
177
|
}));
|
|
176
|
-
test('Non-empty SiCard getNormalizedRaceResult', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
177
|
-
expect(nonemptySiCard.getNormalizedRaceResult()).toEqual({
|
|
178
|
+
(0, globals_1.test)('Non-empty SiCard getNormalizedRaceResult', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
179
|
+
(0, globals_1.expect)(nonemptySiCard.getNormalizedRaceResult()).toEqual({
|
|
178
180
|
cardNumber: 502,
|
|
179
181
|
clearTime: { time: -43200 },
|
|
180
182
|
checkTime: { time: -43199 },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseSiCard.test.js","sourceRoot":"","sources":["../../src/SiCard/BaseSiCard.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BaseSiCard.test.js","sourceRoot":"","sources":["../../src/SiCard/BaseSiCard.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,2CAAmE;AACnE,4CAAqC;AAErC,6CAA0C;AAE1C,IAAA,oBAAU,EAAC,GAAG,EAAE;IACf,uBAAU,CAAC,wBAAwB,EAAE,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAA,kBAAQ,EAAC,YAAY,EAAE,GAAG,EAAE;IAC3B,MAAM,WAAY,SAAQ,uBAAU;QACnC,MAAM,CAAC,+BAA+B,CAAC,QAA8B;YACpE,OAAO,SAAS,CAAC;QAClB,CAAC;QAED,gBAAgB;YACf,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;KACD;IACD,MAAM,WAAY,SAAQ,uBAAU;QACnC,MAAM,CAAC,+BAA+B,CAAC,QAA8B;YACpE,OAAO,SAAS,CAAC;QAClB,CAAC;QAED,gBAAgB;YACf,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;KACD;IAED,IAAA,cAAI,EAAC,qBAAqB,EAAE,GAAG,EAAE;QAChC,uBAAU,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QACvD,uBAAU,CAAC,mBAAmB,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACpD,uBAAU,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QACxD,IAAA,gBAAM,EAAC,uBAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9D,IAAA,gBAAM,EAAC,uBAAU,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC/D,IAAA,gBAAM,EAAC,uBAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAChE,IAAA,gBAAM,EAAC,uBAAU,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACjE,IAAA,gBAAM,EAAC,uBAAU,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACjE,IAAA,gBAAM,EAAC,uBAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAClE,IAAA,gBAAM,EAAC,uBAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAClE,IAAA,gBAAM,EAAC,uBAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IACH,IAAA,cAAI,EAAC,gBAAgB,EAAE,GAAG,EAAE;QAC3B,uBAAU,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,uBAAU,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACjD,IAAA,gBAAM,EAAC,SAAS,YAAY,uBAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,IAAA,gBAAM,EAAC,SAAS,YAAY,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,uBAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACnD,IAAA,gBAAM,EAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IACH,IAAA,kBAAQ,EAAC,mBAAmB,EAAE,GAAG,EAAE;QAClC,IAAI,kBAAkB,GAAG,KAAK,CAAC;QAC/B,MAAM,OAAQ,SAAQ,uBAAU;YAC/B,MAAM,CAAC,+BAA+B,CAAC,OAA6B;gBACnE,kBAAkB,GAAG,IAAI,CAAC;gBAC1B,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBAChC,OAAO,SAAS,CAAC;gBAClB,CAAC;gBACD,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YAED,gBAAgB;gBACf,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1B,CAAC;SACD;QAED,IAAA,oBAAU,EAAC,GAAG,EAAE;YACf,uBAAU,CAAC,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YACrD,uBAAU,CAAC,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,IAAA,cAAI,EAAC,iCAAiC,EAAE,GAAG,EAAE;YAC5C,IAAA,gBAAM,EAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,SAAS,GAAG,uBAAU,CAAC,iBAAiB,CAAC;gBAC9C,OAAO,EAAE,iBAAK,CAAC,GAAG,CAAC,OAAO;gBAC1B,UAAU,EAAE,EAAE;aACd,CAAC,CAAC;YACH,IAAA,gBAAM,EAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtC,IAAA,gBAAM,EAAC,SAAS,YAAY,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChD,IAAA,gBAAM,EAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,IAAA,cAAI,EAAC,kCAAkC,EAAE,GAAG,EAAE;YAC7C,MAAM,UAAU,GAAG,uBAAU,CAAC,iBAAiB,CAAC;gBAC/C,IAAI,EAAE,iBAAK,CAAC,GAAG;aACf,CAAC,CAAC;YACH,IAAA,gBAAM,EAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,IAAA,cAAI,EAAC,MAAM,EAAE,GAAS,EAAE;QACvB,MAAM,OAAQ,SAAQ,uBAAU;YAC/B,gBAAgB;gBACf,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,EAAC,IAAI,EAAC,CAAC,EAAC,CAAC;gBACrC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1B,CAAC;SACD;QACD,MAAM,SAAS,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC;YACJ,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;YAC1B,IAAA,gBAAM,EAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,SAAS;QACV,CAAC;QACD,SAAS,CAAC,WAAW,GAAG;YACvB,WAAW,EAAE,CAAC,QAA8B,EAAE,aAAsB,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;SAC5F,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QACtC,IAAA,gBAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAA,gBAAM,EAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,CAAC,CAAC,CAAC;QACtF,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC,CAAA,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,cAAc,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;IAC5C,cAAc,CAAC,UAAU,GAAG;QAC3B,UAAU,EAAE,GAAG;QACf,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;QACnB,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;QACnB,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;QACnB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,EAAE,CAAC;QACvC,UAAU,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;QACpB,UAAU,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;KACjC,CAAC;IACF,IAAA,cAAI,EAAC,qBAAqB,EAAE,GAAS,EAAE;QACtC,IAAA,gBAAM,EAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC;YACpC,UAAU,EAAE,GAAG;YACf,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,SAAS;YACrB,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,SAAS;SACrB,CAAC,CAAC;IACJ,CAAC,CAAA,CAAC,CAAC;IACH,IAAA,cAAI,EAAC,yBAAyB,EAAE,GAAS,EAAE;QAC1C,IAAA,gBAAM,EAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC;YACvC,UAAU,EAAE,GAAG;YACf,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;YACnB,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;YACnB,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;YACnB,UAAU,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;YACpB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,EAAE,CAAC;YACvC,UAAU,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SACjC,CAAC,CAAC;IACJ,CAAC,CAAA,CAAC,CAAC;IACH,IAAA,cAAI,EAAC,uBAAuB,EAAE,GAAS,EAAE;QACxC,IAAA,gBAAM,EAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,sGAAsG,CAAC,CAAC;IAChJ,CAAC,CAAA,CAAC,CAAC;IACH,IAAA,cAAI,EAAC,2BAA2B,EAAE,GAAS,EAAE;QAC5C,IAAA,gBAAM,EAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,gHAAgH,CAAC,CAAC;IAC7J,CAAC,CAAA,CAAC,CAAC;IACH,IAAA,cAAI,EAAC,uCAAuC,EAAE,GAAS,EAAE;QACxD,IAAA,gBAAM,EAAC,WAAW,CAAC,wBAAwB,EAAE,CAAC,CAAC,OAAO,CAAC;YACtD,UAAU,EAAE,GAAG;YACf,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,SAAS;YACrB,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,SAAS;SACrB,CAAC,CAAC;IACJ,CAAC,CAAA,CAAC,CAAC;IACH,IAAA,cAAI,EAAC,2CAA2C,EAAE,GAAS,EAAE;QAC5D,IAAA,gBAAM,EAAC,cAAc,CAAC,wBAAwB,EAAE,CAAC,CAAC,OAAO,CAAC;YACzD,UAAU,EAAE,GAAG;YACf,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;YACnB,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;YACnB,SAAS,EAAE,EAAC,IAAI,EAAC,KAAK,EAAC;YACvB,UAAU,EAAE,EAAC,IAAI,EAAC,KAAK,EAAC;YACxB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAC,IAAI,EAAC,KAAK,EAAC,EAAE,CAAC;YAC3C,UAAU,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SACjC,CAAC,CAAC;IACJ,CAAC,CAAA,CAAC,CAAC;IACH,IAAA,cAAI,EAAC,sCAAsC,EAAE,GAAS,EAAE;QACvD,IAAA,gBAAM,EAAC,GAAG,EAAE,CAAC,WAAW,CAAC,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IAC/D,CAAC,CAAA,CAAC,CAAC;IACH,IAAA,cAAI,EAAC,0CAA0C,EAAE,GAAS,EAAE;QAC3D,IAAA,gBAAM,EAAC,cAAc,CAAC,uBAAuB,EAAE,CAAC,CAAC,OAAO,CAAC;YACxD,UAAU,EAAE,GAAG;YACf,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,KAAK,EAAC;YACxB,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,KAAK,EAAC;YACxB,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC;YACnB,UAAU,EAAE,EAAC,IAAI,EAAC,KAAK,EAAC;YACxB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,EAAE,CAAC;YACvC,UAAU,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SACjC,CAAC,CAAC;IACJ,CAAC,CAAA,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
package/SiCard/ISiCard.js
CHANGED
package/SiCard/index.js
CHANGED
|
@@ -1,3 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = 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);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.BaseSiCard = void 0;
|
|
18
|
+
var BaseSiCard_1 = require("./BaseSiCard");
|
|
19
|
+
Object.defineProperty(exports, "BaseSiCard", { enumerable: true, get: function () { return BaseSiCard_1.BaseSiCard; } });
|
|
20
|
+
__exportStar(require("./types"), exports);
|
|
3
21
|
//# sourceMappingURL=index.js.map
|
package/SiCard/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/SiCard/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/SiCard/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,0CAAwB"}
|
|
@@ -1,5 +1,41 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = 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);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.makeStartZeroTime = exports.monotonizeRaceResult = exports.monotonizeOrderedRaceResult = exports.getRaceResultFromOrdered = exports.getOrderedRaceResult = exports.prettyRaceResult = void 0;
|
|
37
|
+
const siProtocol = __importStar(require("../siProtocol"));
|
|
38
|
+
const prettyRaceResult = (result) => {
|
|
3
39
|
var _a, _b, _c, _d;
|
|
4
40
|
const punchesString = result.punches ? (result.punches.length > 0 ? result.punches.map((punch) => { var _a, _b; return `${punch.code}: ${(_b = (_a = punch.time) === null || _a === void 0 ? void 0 : _a.time) !== null && _b !== void 0 ? _b : "?"}`; }).join('\n') : 'No Punches') : '? Punches';
|
|
5
41
|
const cardHolderString = result.cardHolder
|
|
@@ -18,7 +54,8 @@ export const prettyRaceResult = (result) => {
|
|
|
18
54
|
'Card Holder:\n' +
|
|
19
55
|
`${cardHolderString}\n`);
|
|
20
56
|
};
|
|
21
|
-
|
|
57
|
+
exports.prettyRaceResult = prettyRaceResult;
|
|
58
|
+
const getOrderedRaceResult = (result) => {
|
|
22
59
|
const orderedResult = {
|
|
23
60
|
cardNumber: result.cardNumber,
|
|
24
61
|
cardHolder: result.cardHolder,
|
|
@@ -61,7 +98,8 @@ export const getOrderedRaceResult = (result) => {
|
|
|
61
98
|
}
|
|
62
99
|
return orderedResult;
|
|
63
100
|
};
|
|
64
|
-
|
|
101
|
+
exports.getOrderedRaceResult = getOrderedRaceResult;
|
|
102
|
+
const getRaceResultFromOrdered = (orderedResult) => {
|
|
65
103
|
const getOrderedTimeIndexIfSet = (index) => (index === null ? null : orderedResult.orderedTimes[index]);
|
|
66
104
|
const getOrderedTimeIndexIfSetAndDefined = (index) => (index === undefined || index === null ? index : orderedResult.orderedTimes[index]);
|
|
67
105
|
return {
|
|
@@ -79,7 +117,8 @@ export const getRaceResultFromOrdered = (orderedResult) => {
|
|
|
79
117
|
}))
|
|
80
118
|
};
|
|
81
119
|
};
|
|
82
|
-
|
|
120
|
+
exports.getRaceResultFromOrdered = getRaceResultFromOrdered;
|
|
121
|
+
const monotonizeOrderedRaceResult = (orderedData) => {
|
|
83
122
|
let currentCarry = 0;
|
|
84
123
|
let lastTime = 0;
|
|
85
124
|
const newOrderedTimes = orderedData.orderedTimes.map((ts) => {
|
|
@@ -94,12 +133,14 @@ export const monotonizeOrderedRaceResult = (orderedData) => {
|
|
|
94
133
|
});
|
|
95
134
|
return Object.assign(Object.assign({}, orderedData), { orderedTimes: newOrderedTimes });
|
|
96
135
|
};
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
const
|
|
100
|
-
|
|
136
|
+
exports.monotonizeOrderedRaceResult = monotonizeOrderedRaceResult;
|
|
137
|
+
const monotonizeRaceResult = (result) => {
|
|
138
|
+
const orderedResult = (0, exports.getOrderedRaceResult)(result);
|
|
139
|
+
const monotonizedOrderedResult = (0, exports.monotonizeOrderedRaceResult)(orderedResult);
|
|
140
|
+
return (0, exports.getRaceResultFromOrdered)(monotonizedOrderedResult);
|
|
101
141
|
};
|
|
102
|
-
|
|
142
|
+
exports.monotonizeRaceResult = monotonizeRaceResult;
|
|
143
|
+
const makeStartZeroTime = (result) => {
|
|
103
144
|
const zeroTime = result.startTime;
|
|
104
145
|
if (zeroTime === undefined || zeroTime === null) {
|
|
105
146
|
throw new Error('start time must be known');
|
|
@@ -110,4 +151,5 @@ export const makeStartZeroTime = (result) => {
|
|
|
110
151
|
? undefined
|
|
111
152
|
: result.punches.map((punch) => (Object.assign(Object.assign({}, punch), { time: deductZeroTimeIfSet(punch.time) }))) });
|
|
112
153
|
};
|
|
154
|
+
exports.makeStartZeroTime = makeStartZeroTime;
|
|
113
155
|
//# sourceMappingURL=raceResultTools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"raceResultTools.js","sourceRoot":"","sources":["../../src/SiCard/raceResultTools.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"raceResultTools.js","sourceRoot":"","sources":["../../src/SiCard/raceResultTools.ts"],"names":[],"mappings":"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"}
|