sportident.js 1.2.0 → 1.3.0
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 +8 -45
- package/SiCard/BaseSiCard.js.map +1 -1
- package/SiCard/BaseSiCard.test.js +64 -66
- package/SiCard/BaseSiCard.test.js.map +1 -1
- package/SiCard/IRaceResultData.js +1 -2
- package/SiCard/ISiCard.js +1 -2
- package/SiCard/ISiCardExamples.js +1 -2
- package/SiCard/index.js +2 -20
- package/SiCard/index.js.map +1 -1
- package/SiCard/raceResultTools.js +10 -52
- package/SiCard/raceResultTools.js.map +1 -1
- package/SiCard/raceResultTools.test.js +49 -51
- package/SiCard/raceResultTools.test.js.map +1 -1
- package/SiCard/types/FCard.js +4 -41
- package/SiCard/types/FCard.js.map +1 -1
- package/SiCard/types/FCard.test.js +11 -13
- package/SiCard/types/FCard.test.js.map +1 -1
- package/SiCard/types/ModernSiCard.js +25 -67
- package/SiCard/types/ModernSiCard.js.map +1 -1
- package/SiCard/types/ModernSiCard.test.js +69 -104
- package/SiCard/types/ModernSiCard.test.js.map +1 -1
- package/SiCard/types/PCard.js +4 -41
- package/SiCard/types/PCard.js.map +1 -1
- package/SiCard/types/PCard.test.js +11 -13
- package/SiCard/types/PCard.test.js.map +1 -1
- package/SiCard/types/SIAC.js +4 -8
- package/SiCard/types/SIAC.js.map +1 -1
- package/SiCard/types/SIAC.test.js +38 -73
- package/SiCard/types/SIAC.test.js.map +1 -1
- package/SiCard/types/SiCard10.js +4 -8
- package/SiCard/types/SiCard10.js.map +1 -1
- package/SiCard/types/SiCard10.test.js +41 -76
- package/SiCard/types/SiCard10.test.js.map +1 -1
- package/SiCard/types/SiCard11.js +4 -8
- package/SiCard/types/SiCard11.js.map +1 -1
- package/SiCard/types/SiCard11.test.js +38 -73
- package/SiCard/types/SiCard11.test.js.map +1 -1
- package/SiCard/types/SiCard5.js +16 -55
- package/SiCard/types/SiCard5.js.map +1 -1
- package/SiCard/types/SiCard5.test.js +81 -116
- package/SiCard/types/SiCard5.test.js.map +1 -1
- package/SiCard/types/SiCard6.js +17 -56
- package/SiCard/types/SiCard6.js.map +1 -1
- package/SiCard/types/SiCard6.test.js +79 -114
- package/SiCard/types/SiCard6.test.js.map +1 -1
- package/SiCard/types/SiCard8.js +16 -54
- package/SiCard/types/SiCard8.js.map +1 -1
- package/SiCard/types/SiCard8.test.js +69 -104
- package/SiCard/types/SiCard8.test.js.map +1 -1
- package/SiCard/types/SiCard9.js +15 -53
- package/SiCard/types/SiCard9.js.map +1 -1
- package/SiCard/types/SiCard9.test.js +65 -100
- package/SiCard/types/SiCard9.test.js.map +1 -1
- package/SiCard/types/TCard.js +4 -41
- package/SiCard/types/TCard.js.map +1 -1
- package/SiCard/types/TCard.test.js +11 -13
- package/SiCard/types/TCard.test.js.map +1 -1
- package/SiCard/types/index.js +15 -33
- package/SiCard/types/index.js.map +1 -1
- package/SiCard/types/index.test.js +13 -48
- package/SiCard/types/index.test.js.map +1 -1
- package/SiCard/types/modernSiCardExamples.js +21 -58
- package/SiCard/types/modernSiCardExamples.js.map +1 -1
- package/SiCard/types/siCard5Examples.js +6 -43
- package/SiCard/types/siCard5Examples.js.map +1 -1
- package/SiCard/types/siCard6Examples.js +10 -47
- package/SiCard/types/siCard6Examples.js.map +1 -1
- package/SiCard/types/siCard8Examples.js +8 -45
- package/SiCard/types/siCard8Examples.js.map +1 -1
- package/SiCard/types/siCard9Examples.js +8 -45
- package/SiCard/types/siCard9Examples.js.map +1 -1
- package/SiDevice/ISiDevice.js +6 -45
- package/SiDevice/ISiDevice.js.map +1 -1
- package/SiDevice/ISiDeviceDriver.js +3 -41
- package/SiDevice/ISiDeviceDriver.js.map +1 -1
- package/SiDevice/SiDevice.js +20 -57
- package/SiDevice/SiDevice.js.map +1 -1
- package/SiDevice/SiDevice.test.js +103 -138
- package/SiDevice/SiDevice.test.js.map +1 -1
- package/SiDevice/WebSerialSiDeviceDriver.d.ts +4 -2
- package/SiDevice/WebSerialSiDeviceDriver.d.ts.map +1 -1
- package/SiDevice/WebSerialSiDeviceDriver.js +91 -74
- package/SiDevice/WebSerialSiDeviceDriver.js.map +1 -1
- package/SiDevice/WebUsbSiDeviceDriver.d.ts.map +1 -1
- package/SiDevice/WebUsbSiDeviceDriver.js +29 -88
- package/SiDevice/WebUsbSiDeviceDriver.js.map +1 -1
- package/SiDevice/index.js +1 -5
- package/SiDevice/index.js.map +1 -1
- package/SiDevice/testUtils/index.js +2 -7
- package/SiDevice/testUtils/index.js.map +1 -1
- package/SiDevice/testUtils/testISiDeviceDriver.js +10 -47
- package/SiDevice/testUtils/testISiDeviceDriver.js.map +1 -1
- package/SiDevice/testUtils/testISiDeviceDriverWithAutodetection.js +15 -52
- package/SiDevice/testUtils/testISiDeviceDriverWithAutodetection.js.map +1 -1
- package/SiStation/BaseSiStation.js +18 -55
- package/SiStation/BaseSiStation.js.map +1 -1
- package/SiStation/BaseSiStation.test.js +60 -95
- package/SiStation/BaseSiStation.test.js.map +1 -1
- package/SiStation/CoupledSiStation.js +16 -53
- package/SiStation/CoupledSiStation.js.map +1 -1
- package/SiStation/CoupledSiStation.test.js +27 -62
- package/SiStation/CoupledSiStation.test.js.map +1 -1
- package/SiStation/ISiMainStation.js +4 -43
- package/SiStation/ISiMainStation.js.map +1 -1
- package/SiStation/ISiSendTask.js +2 -5
- package/SiStation/ISiSendTask.js.map +1 -1
- package/SiStation/ISiStation.js +5 -8
- package/SiStation/ISiStation.js.map +1 -1
- package/SiStation/ISiTargetMultiplexer.js +6 -45
- package/SiStation/ISiTargetMultiplexer.js.map +1 -1
- package/SiStation/SiMainStation.js +19 -56
- package/SiStation/SiMainStation.js.map +1 -1
- package/SiStation/SiMainStation.test.js +88 -123
- package/SiStation/SiMainStation.test.js.map +1 -1
- package/SiStation/SiSendTask.js +11 -48
- package/SiStation/SiSendTask.js.map +1 -1
- package/SiStation/SiTargetMultiplexer.js +46 -83
- package/SiStation/SiTargetMultiplexer.js.map +1 -1
- package/SiStation/SiTargetMultiplexer.targeting.test.js +42 -77
- package/SiStation/SiTargetMultiplexer.targeting.test.js.map +1 -1
- package/SiStation/SiTargetMultiplexer.test.js +201 -236
- package/SiStation/SiTargetMultiplexer.test.js.map +1 -1
- package/SiStation/index.js +5 -13
- package/SiStation/index.js.map +1 -1
- package/SiStation/siStationExamples.js +6 -43
- package/SiStation/siStationExamples.js.map +1 -1
- package/constants.js +4 -7
- package/constants.js.map +1 -1
- package/constants.test.js +12 -47
- package/constants.test.js.map +1 -1
- package/fakes/FakeSiCard/BaseFakeSiCard.js +1 -5
- package/fakes/FakeSiCard/BaseFakeSiCard.js.map +1 -1
- package/fakes/FakeSiCard/BaseFakeSiCard.test.js +6 -41
- package/fakes/FakeSiCard/BaseFakeSiCard.test.js.map +1 -1
- package/fakes/FakeSiCard/IFakeSiCard.js +1 -2
- package/fakes/FakeSiCard/index.js +2 -20
- package/fakes/FakeSiCard/index.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeModernSiCard.js +12 -49
- package/fakes/FakeSiCard/types/FakeModernSiCard.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeModernSiCard.test.js +25 -60
- package/fakes/FakeSiCard/types/FakeModernSiCard.test.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSIAC.js +8 -12
- package/fakes/FakeSiCard/types/FakeSIAC.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard10.js +8 -12
- package/fakes/FakeSiCard/types/FakeSiCard10.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard11.js +8 -12
- package/fakes/FakeSiCard/types/FakeSiCard11.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard5.js +12 -49
- package/fakes/FakeSiCard/types/FakeSiCard5.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard5.test.js +20 -55
- package/fakes/FakeSiCard/types/FakeSiCard5.test.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard6.js +12 -49
- package/fakes/FakeSiCard/types/FakeSiCard6.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard6.test.js +25 -60
- package/fakes/FakeSiCard/types/FakeSiCard6.test.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard8.js +7 -11
- package/fakes/FakeSiCard/types/FakeSiCard8.js.map +1 -1
- package/fakes/FakeSiCard/types/FakeSiCard9.js +7 -11
- package/fakes/FakeSiCard/types/FakeSiCard9.js.map +1 -1
- package/fakes/FakeSiCard/types/index.js +7 -17
- package/fakes/FakeSiCard/types/index.js.map +1 -1
- package/fakes/FakeSiDeviceDriver.js +10 -47
- package/fakes/FakeSiDeviceDriver.js.map +1 -1
- package/fakes/FakeSiMainStation.js +29 -66
- package/fakes/FakeSiMainStation.js.map +1 -1
- package/fakes/FakeSiMainStation.test.js +43 -78
- package/fakes/FakeSiMainStation.test.js.map +1 -1
- package/fakes/IFakeSiMainStation.js +2 -39
- package/fakes/IFakeSiMainStation.js.map +1 -1
- package/fakes/index.js +2 -20
- package/fakes/index.js.map +1 -1
- package/index.js +10 -46
- package/index.js.map +1 -1
- package/package.json +3 -2
- package/siProtocol.js +35 -82
- package/siProtocol.js.map +1 -1
- package/siProtocol.test.js +308 -345
- package/siProtocol.test.js.map +1 -1
- package/storage/SiArray.js +4 -8
- package/storage/SiArray.js.map +1 -1
- package/storage/SiArray.test.js +56 -58
- package/storage/SiArray.test.js.map +1 -1
- package/storage/SiBool.js +5 -9
- package/storage/SiBool.js.map +1 -1
- package/storage/SiBool.test.js +63 -65
- package/storage/SiBool.test.js.map +1 -1
- package/storage/SiDataType.js +9 -14
- package/storage/SiDataType.js.map +1 -1
- package/storage/SiDataType.test.js +23 -25
- package/storage/SiDataType.test.js.map +1 -1
- package/storage/SiDict.js +4 -8
- package/storage/SiDict.js.map +1 -1
- package/storage/SiDict.test.js +52 -54
- package/storage/SiDict.test.js.map +1 -1
- package/storage/SiEnum.js +7 -44
- package/storage/SiEnum.js.map +1 -1
- package/storage/SiEnum.test.js +59 -61
- package/storage/SiEnum.test.js.map +1 -1
- package/storage/SiFieldValue.js +4 -8
- package/storage/SiFieldValue.js.map +1 -1
- package/storage/SiFieldValue.test.js +25 -27
- package/storage/SiFieldValue.test.js.map +1 -1
- package/storage/SiInt.js +5 -9
- package/storage/SiInt.js.map +1 -1
- package/storage/SiInt.test.js +63 -65
- package/storage/SiInt.test.js.map +1 -1
- package/storage/SiModified.js +5 -9
- package/storage/SiModified.js.map +1 -1
- package/storage/SiModified.test.js +75 -77
- package/storage/SiModified.test.js.map +1 -1
- package/storage/SiStorage.js +4 -9
- package/storage/SiStorage.js.map +1 -1
- package/storage/SiStorage.test.js +32 -67
- package/storage/SiStorage.test.js.map +1 -1
- package/storage/index.js +11 -28
- package/storage/index.js.map +1 -1
- package/storage/index.test.js +93 -128
- package/storage/index.test.js.map +1 -1
- package/storage/interfaces.js +3 -41
- package/storage/interfaces.js.map +1 -1
- package/storage/siStringEncoding.js +1 -5
- package/storage/siStringEncoding.js.map +1 -1
- package/testUtils.js +16 -28
- package/testUtils.js.map +1 -1
- package/testUtils.test.js +65 -100
- package/testUtils.test.js.map +1 -1
- package/utils/NumberRange.js +2 -6
- package/utils/NumberRange.js.map +1 -1
- package/utils/NumberRange.test.js +54 -56
- package/utils/NumberRange.test.js.map +1 -1
- package/utils/NumberRangeRegistry.js +5 -42
- package/utils/NumberRangeRegistry.js.map +1 -1
- package/utils/NumberRangeRegistry.test.js +35 -37
- package/utils/NumberRangeRegistry.test.js.map +1 -1
- package/utils/bytes.js +11 -22
- package/utils/bytes.js.map +1 -1
- package/utils/bytes.test.js +98 -133
- package/utils/bytes.test.js.map +1 -1
- package/utils/errors.js +4 -11
- package/utils/errors.js.map +1 -1
- package/utils/errors.test.js +16 -51
- package/utils/errors.test.js.map +1 -1
- package/utils/events.js +3 -41
- package/utils/events.js.map +1 -1
- package/utils/events.test.js +21 -56
- package/utils/events.test.js.map +1 -1
- package/utils/general.js +4 -11
- package/utils/general.js.map +1 -1
- package/utils/general.test.js +77 -112
- package/utils/general.test.js.map +1 -1
- package/utils/index.js +8 -24
- package/utils/index.js.map +1 -1
- package/utils/mixins.js +1 -5
- package/utils/mixins.js.map +1 -1
- package/utils/mixins.test.js +13 -48
- package/utils/mixins.test.js.map +1 -1
- package/utils/typed.js +1 -4
- package/utils/typed.js.map +1 -1
package/storage/SiEnum.test.js
CHANGED
|
@@ -1,72 +1,70 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const SiEnum_1 = require("./SiEnum");
|
|
9
|
-
(0, globals_1.describe)('SiEnum', () => {
|
|
1
|
+
import { describe, expect, test } from '@jest/globals';
|
|
2
|
+
import { List } from 'immutable';
|
|
3
|
+
import { ValueFromStringError } from './interfaces';
|
|
4
|
+
import { SiFieldValue } from './SiFieldValue';
|
|
5
|
+
import { ModifyUndefinedException } from './SiDataType';
|
|
6
|
+
import { SiEnum } from './SiEnum';
|
|
7
|
+
describe('SiEnum', () => {
|
|
10
8
|
const options = { Zero: 0x0, One: 0x1, Two: 0x2, Three: 0x3 };
|
|
11
|
-
const mySiEnum = new
|
|
12
|
-
const fieldValueOf = (value) => new
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
9
|
+
const mySiEnum = new SiEnum([[0x00, 4, 6]], options);
|
|
10
|
+
const fieldValueOf = (value) => new SiFieldValue(mySiEnum, value);
|
|
11
|
+
test('typeCheckValue', () => {
|
|
12
|
+
expect(mySiEnum.isValueValid('Zero')).toBe(true);
|
|
13
|
+
expect(mySiEnum.isValueValid('One')).toBe(true);
|
|
14
|
+
expect(mySiEnum.isValueValid('Two')).toBe(true);
|
|
15
|
+
expect(mySiEnum.isValueValid('Three')).toBe(true);
|
|
18
16
|
});
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
17
|
+
test('valueToString', () => {
|
|
18
|
+
expect(mySiEnum.valueToString('Zero')).toBe('Zero');
|
|
19
|
+
expect(mySiEnum.valueToString('One')).toBe('One');
|
|
20
|
+
expect(mySiEnum.valueToString('Two')).toBe('Two');
|
|
21
|
+
expect(mySiEnum.valueToString('Three')).toBe('Three');
|
|
24
22
|
});
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
23
|
+
test('valueFromString', () => {
|
|
24
|
+
expect(mySiEnum.valueFromString('Zero')).toBe('Zero');
|
|
25
|
+
expect(mySiEnum.valueFromString('One')).toBe('One');
|
|
26
|
+
expect(mySiEnum.valueFromString('Two')).toBe('Two');
|
|
27
|
+
expect(mySiEnum.valueFromString('Three')).toBe('Three');
|
|
28
|
+
expect(mySiEnum.valueFromString('0') instanceof ValueFromStringError).toBe(true);
|
|
29
|
+
expect(mySiEnum.valueFromString('1') instanceof ValueFromStringError).toBe(true);
|
|
30
|
+
expect(mySiEnum.valueFromString('255') instanceof ValueFromStringError).toBe(true);
|
|
31
|
+
expect(mySiEnum.valueFromString('-1') instanceof ValueFromStringError).toBe(true);
|
|
32
|
+
expect(mySiEnum.valueFromString('test') instanceof ValueFromStringError).toBe(true);
|
|
35
33
|
});
|
|
36
|
-
|
|
37
|
-
const data =
|
|
34
|
+
test('extractFromData gives field value', () => {
|
|
35
|
+
const data = List([0x00]);
|
|
38
36
|
const fieldValue = mySiEnum.extractFromData(data);
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
37
|
+
expect(fieldValue instanceof SiFieldValue).toBe(true);
|
|
38
|
+
expect(fieldValue.field).toBe(mySiEnum);
|
|
39
|
+
expect(fieldValue.value).toBe('Zero');
|
|
42
40
|
});
|
|
43
|
-
|
|
44
|
-
const getExtractedFieldValue = (bytes) => mySiEnum.extractFromData(
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
41
|
+
test('extractFromData', () => {
|
|
42
|
+
const getExtractedFieldValue = (bytes) => mySiEnum.extractFromData(List(bytes));
|
|
43
|
+
expect(getExtractedFieldValue([0x00]).value).toBe('Zero');
|
|
44
|
+
expect(getExtractedFieldValue([0x10]).value).toBe('One');
|
|
45
|
+
expect(getExtractedFieldValue([0x20]).value).toBe('Two');
|
|
46
|
+
expect(getExtractedFieldValue([0x30]).value).toBe('Three');
|
|
47
|
+
expect(getExtractedFieldValue([undefined])).toBe(undefined);
|
|
48
|
+
expect(getExtractedFieldValue([])).toBe(undefined);
|
|
51
49
|
});
|
|
52
|
-
|
|
53
|
-
const updateData = (data, newValue) => mySiEnum.updateData(
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
50
|
+
test('updateData', () => {
|
|
51
|
+
const updateData = (data, newValue) => mySiEnum.updateData(List(data), newValue).toJS();
|
|
52
|
+
expect(updateData([0xff], 'Zero')).toEqual([0xcf]);
|
|
53
|
+
expect(updateData([0xff], 'One')).toEqual([0xdf]);
|
|
54
|
+
expect(updateData([0xff], 'Two')).toEqual([0xef]);
|
|
55
|
+
expect(updateData([0xff], 'Three')).toEqual([0xff]);
|
|
56
|
+
expect(updateData([0x00], 'Zero')).toEqual([0x00]);
|
|
57
|
+
expect(updateData([0x00], 'One')).toEqual([0x10]);
|
|
58
|
+
expect(updateData([0x00], 'Two')).toEqual([0x20]);
|
|
59
|
+
expect(updateData([0x00], 'Three')).toEqual([0x30]);
|
|
60
|
+
expect(updateData([0xfe], fieldValueOf('Zero'))).toEqual([0xce]);
|
|
63
61
|
});
|
|
64
|
-
|
|
65
|
-
const updateData = (data, newValue) => mySiEnum.updateData(
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
62
|
+
test('updateData modify undefined', () => {
|
|
63
|
+
const updateData = (data, newValue) => mySiEnum.updateData(List(data), newValue).toJS();
|
|
64
|
+
expect(() => updateData([], 'Zero')).toThrow(ModifyUndefinedException);
|
|
65
|
+
expect(() => updateData([], 'Three')).toThrow(ModifyUndefinedException);
|
|
66
|
+
expect(() => updateData([], fieldValueOf('Two'))).toThrow(ModifyUndefinedException);
|
|
67
|
+
expect(() => updateData([undefined], 'One')).toThrow(ModifyUndefinedException);
|
|
70
68
|
});
|
|
71
69
|
});
|
|
72
70
|
//# sourceMappingURL=SiEnum.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SiEnum.test.js","sourceRoot":"","sources":["../../src/storage/SiEnum.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SiEnum.test.js","sourceRoot":"","sources":["../../src/storage/SiEnum.test.ts"],"names":[],"mappings":"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"}
|
package/storage/SiFieldValue.js
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.SiFieldValue = void 0;
|
|
4
|
-
const interfaces_1 = require("./interfaces");
|
|
5
|
-
class SiFieldValue {
|
|
1
|
+
import { ValueToStringError, ValueFromStringError } from './interfaces';
|
|
2
|
+
export class SiFieldValue {
|
|
6
3
|
static fromString(field, stringValue) {
|
|
7
4
|
const value = field.valueFromString(stringValue);
|
|
8
|
-
if (value instanceof
|
|
5
|
+
if (value instanceof ValueFromStringError) {
|
|
9
6
|
return value;
|
|
10
7
|
}
|
|
11
8
|
return new this(field, value);
|
|
@@ -18,8 +15,7 @@ class SiFieldValue {
|
|
|
18
15
|
}
|
|
19
16
|
toString() {
|
|
20
17
|
const stringValue = this.field.valueToString(this.value);
|
|
21
|
-
return stringValue instanceof
|
|
18
|
+
return stringValue instanceof ValueToStringError ? '' : stringValue;
|
|
22
19
|
}
|
|
23
20
|
}
|
|
24
|
-
exports.SiFieldValue = SiFieldValue;
|
|
25
21
|
//# sourceMappingURL=SiFieldValue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SiFieldValue.js","sourceRoot":"","sources":["../../src/storage/SiFieldValue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SiFieldValue.js","sourceRoot":"","sources":["../../src/storage/SiFieldValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAGxE,MAAM,OAAO,YAAY;IACxB,MAAM,CAAC,UAAU,CAAI,KAAqB,EAAE,WAAmB;QAC9D,MAAM,KAAK,GAAG,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACjD,IAAI,KAAK,YAAY,oBAAoB,EAAE,CAAC;YAC3C,OAAO,KAAK,CAAC;QACd,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,kDAAkD;IAClD,YACQ,KAAqB,EACrB,KAAQ,CAAC,6CAA6C;;QADtD,UAAK,GAAL,KAAK,CAAgB;QACrB,UAAK,GAAL,KAAK,CAAG;IACb,CAAC;IAEJ,QAAQ;QACP,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzD,OAAO,WAAW,YAAY,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;IACrE,CAAC;CACD"}
|
|
@@ -1,23 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
(0, globals_1.describe)('SiFieldValue', () => {
|
|
8
|
-
class MyType extends SiDataType_1.SiDataType {
|
|
1
|
+
import { describe, expect, test } from '@jest/globals';
|
|
2
|
+
import { ValueToStringError, ValueFromStringError } from './interfaces';
|
|
3
|
+
import { SiDataType } from './SiDataType';
|
|
4
|
+
import { SiFieldValue } from './SiFieldValue';
|
|
5
|
+
describe('SiFieldValue', () => {
|
|
6
|
+
class MyType extends SiDataType {
|
|
9
7
|
typeSpecificIsValueValid(_value) {
|
|
10
8
|
return true;
|
|
11
9
|
}
|
|
12
10
|
typeSpecificValueToString(value) {
|
|
13
11
|
if (value === 42) {
|
|
14
|
-
return new
|
|
12
|
+
return new ValueToStringError();
|
|
15
13
|
}
|
|
16
14
|
return `${value}`;
|
|
17
15
|
}
|
|
18
16
|
typeSpecificValueFromString(string) {
|
|
19
17
|
const value = parseInt(string, 10);
|
|
20
|
-
return Number.isInteger(value) ? value : new
|
|
18
|
+
return Number.isInteger(value) ? value : new ValueFromStringError();
|
|
21
19
|
}
|
|
22
20
|
typeSpecificExtractFromData(_data) {
|
|
23
21
|
return 1;
|
|
@@ -27,29 +25,29 @@ const SiFieldValue_1 = require("./SiFieldValue");
|
|
|
27
25
|
}
|
|
28
26
|
}
|
|
29
27
|
const field = new MyType();
|
|
30
|
-
const myFieldValue = new
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
28
|
+
const myFieldValue = new SiFieldValue(field, 3);
|
|
29
|
+
test('instance', () => {
|
|
30
|
+
expect(myFieldValue.field).toBe(field);
|
|
31
|
+
expect(myFieldValue.value).toBe(3);
|
|
34
32
|
});
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
test('toString', () => {
|
|
34
|
+
expect(myFieldValue.toString()).toBe('3');
|
|
37
35
|
});
|
|
38
|
-
|
|
39
|
-
const invalidFieldValue = new
|
|
40
|
-
|
|
36
|
+
test('toString with error', () => {
|
|
37
|
+
const invalidFieldValue = new SiFieldValue(field, 42);
|
|
38
|
+
expect(invalidFieldValue.toString()).toBe('');
|
|
41
39
|
});
|
|
42
|
-
|
|
43
|
-
const myFieldValueFromString =
|
|
44
|
-
if (myFieldValueFromString instanceof
|
|
40
|
+
test('fromString with success', () => {
|
|
41
|
+
const myFieldValueFromString = SiFieldValue.fromString(field, '5');
|
|
42
|
+
if (myFieldValueFromString instanceof ValueFromStringError) {
|
|
45
43
|
throw new Error('not expecting an error here');
|
|
46
44
|
}
|
|
47
|
-
|
|
48
|
-
|
|
45
|
+
expect(myFieldValueFromString.field).toBe(field);
|
|
46
|
+
expect(myFieldValueFromString.value).toBe(5);
|
|
49
47
|
});
|
|
50
|
-
|
|
51
|
-
const myFieldValueFromString =
|
|
52
|
-
|
|
48
|
+
test('fromString with error', () => {
|
|
49
|
+
const myFieldValueFromString = SiFieldValue.fromString(field, 'notanumber');
|
|
50
|
+
expect(myFieldValueFromString instanceof ValueFromStringError).toBe(true);
|
|
53
51
|
});
|
|
54
52
|
});
|
|
55
53
|
//# sourceMappingURL=SiFieldValue.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SiFieldValue.test.js","sourceRoot":"","sources":["../../src/storage/SiFieldValue.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SiFieldValue.test.js","sourceRoot":"","sources":["../../src/storage/SiFieldValue.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAyC,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAC/G,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC7B,MAAM,MAAO,SAAQ,UAAkB;QACtC,wBAAwB,CAAC,MAAc;YACtC,OAAO,IAAI,CAAC;QACb,CAAC;QAED,yBAAyB,CAAC,KAAa;YACtC,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;gBAClB,OAAO,IAAI,kBAAkB,EAAE,CAAC;YACjC,CAAC;YACD,OAAO,GAAG,KAAK,EAAE,CAAC;QACnB,CAAC;QAED,2BAA2B,CAAC,MAAc;YACzC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACnC,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,oBAAoB,EAAE,CAAC;QACrE,CAAC;QAED,2BAA2B,CAAC,KAAqB;YAChD,OAAO,CAAC,CAAC;QACV,CAAC;QAED,sBAAsB,CAAC,IAAoB,EAAE,SAAiB;YAC7D,OAAO,IAAI,CAAC;QACb,CAAC;KACD;IACD,MAAM,KAAK,GAAG,IAAI,MAAM,EAAE,CAAC;IAC3B,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAChD,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;QACrB,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;QACrB,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAChC,MAAM,iBAAiB,GAAG,IAAI,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACtD,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACpC,MAAM,sBAAsB,GAAG,YAAY,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACnE,IAAI,sBAAsB,YAAY,oBAAoB,EAAE,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAClC,MAAM,sBAAsB,GAAG,YAAY,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC5E,MAAM,CAAC,sBAAsB,YAAY,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
package/storage/SiInt.js
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const interfaces_1 = require("./interfaces");
|
|
5
|
-
const SiDataType_1 = require("./SiDataType");
|
|
6
|
-
class SiInt extends SiDataType_1.SiDataType {
|
|
1
|
+
import { ValueFromStringError } from './interfaces';
|
|
2
|
+
import { ModifyUndefinedException, SiDataType } from './SiDataType';
|
|
3
|
+
export class SiInt extends SiDataType {
|
|
7
4
|
constructor(parts) {
|
|
8
5
|
super();
|
|
9
6
|
this.parts = parts.map((rawPart) => ({
|
|
@@ -21,7 +18,7 @@ class SiInt extends SiDataType_1.SiDataType {
|
|
|
21
18
|
typeSpecificValueFromString(string) {
|
|
22
19
|
const intValue = parseInt(string, 10);
|
|
23
20
|
if (!Number.isInteger(intValue)) {
|
|
24
|
-
return new
|
|
21
|
+
return new ValueFromStringError(`Value for SiInt must be integer, not "${string}"`);
|
|
25
22
|
}
|
|
26
23
|
return intValue;
|
|
27
24
|
}
|
|
@@ -47,7 +44,7 @@ class SiInt extends SiDataType_1.SiDataType {
|
|
|
47
44
|
}
|
|
48
45
|
typeSpecificUpdateData(data, newValue) {
|
|
49
46
|
if (this.isUndefined(data)) {
|
|
50
|
-
throw new
|
|
47
|
+
throw new ModifyUndefinedException();
|
|
51
48
|
}
|
|
52
49
|
let bitOffset = 0;
|
|
53
50
|
let tempData = data;
|
|
@@ -65,5 +62,4 @@ class SiInt extends SiDataType_1.SiDataType {
|
|
|
65
62
|
return tempData;
|
|
66
63
|
}
|
|
67
64
|
}
|
|
68
|
-
exports.SiInt = SiInt;
|
|
69
65
|
//# sourceMappingURL=SiInt.js.map
|
package/storage/SiInt.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SiInt.js","sourceRoot":"","sources":["../../src/storage/SiInt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SiInt.js","sourceRoot":"","sources":["../../src/storage/SiInt.ts"],"names":[],"mappings":"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"}
|
package/storage/SiInt.test.js
CHANGED
|
@@ -1,76 +1,74 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
(0, globals_1.expect)(mySiInt.typeSpecificIsValueValid(1.5)).toBe(false);
|
|
18
|
-
(0, globals_1.expect)(mySiInt.typeSpecificIsValueValid(-7.5)).toBe(false);
|
|
1
|
+
import { describe, expect, test } from '@jest/globals';
|
|
2
|
+
import { List } from 'immutable';
|
|
3
|
+
import { ValueToStringError, ValueFromStringError } from './interfaces';
|
|
4
|
+
import { ModifyUndefinedException } from './SiDataType';
|
|
5
|
+
import { SiFieldValue } from './SiFieldValue';
|
|
6
|
+
import { SiInt } from './SiInt';
|
|
7
|
+
describe('SiInt', () => {
|
|
8
|
+
const mySiInt = new SiInt([[0x00], [0x01, 4, 8]]);
|
|
9
|
+
const fieldValueOf = (intValue) => new SiFieldValue(mySiInt, intValue);
|
|
10
|
+
test('typeSpecificIsValueValid', () => {
|
|
11
|
+
expect(mySiInt.typeSpecificIsValueValid(0)).toBe(true);
|
|
12
|
+
expect(mySiInt.typeSpecificIsValueValid(1)).toBe(true);
|
|
13
|
+
expect(mySiInt.typeSpecificIsValueValid(0xff)).toBe(true);
|
|
14
|
+
expect(mySiInt.typeSpecificIsValueValid(-1)).toBe(false);
|
|
15
|
+
expect(mySiInt.typeSpecificIsValueValid(1.5)).toBe(false);
|
|
16
|
+
expect(mySiInt.typeSpecificIsValueValid(-7.5)).toBe(false);
|
|
19
17
|
});
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
18
|
+
test('valueToString', () => {
|
|
19
|
+
expect(mySiInt.valueToString(0)).toBe('0');
|
|
20
|
+
expect(mySiInt.valueToString(1)).toBe('1');
|
|
21
|
+
expect(mySiInt.valueToString(0xff)).toBe('255');
|
|
22
|
+
expect(mySiInt.valueToString(-1) instanceof ValueToStringError).toBe(true);
|
|
25
23
|
});
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
24
|
+
test('valueFromString', () => {
|
|
25
|
+
expect(mySiInt.valueFromString('0')).toBe(0);
|
|
26
|
+
expect(mySiInt.valueFromString('1')).toBe(1);
|
|
27
|
+
expect(mySiInt.valueFromString('255')).toBe(0xff);
|
|
28
|
+
expect(mySiInt.valueFromString('0xFF')).toBe(0);
|
|
29
|
+
expect(mySiInt.valueFromString('-1') instanceof ValueFromStringError).toBe(true);
|
|
30
|
+
expect(mySiInt.valueFromString('test') instanceof ValueFromStringError).toBe(true);
|
|
33
31
|
});
|
|
34
|
-
|
|
35
|
-
const data =
|
|
32
|
+
test('extractFromData gives field value', () => {
|
|
33
|
+
const data = List([0x00, 0x00]);
|
|
36
34
|
const fieldValue = mySiInt.extractFromData(data);
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
35
|
+
expect(fieldValue instanceof SiFieldValue).toBe(true);
|
|
36
|
+
expect(fieldValue.field).toBe(mySiInt);
|
|
37
|
+
expect(fieldValue.value).toBe(0);
|
|
40
38
|
});
|
|
41
|
-
|
|
42
|
-
const getExtractedFieldValue = (bytes) => mySiInt.extractFromData(
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
39
|
+
test('extractFromData', () => {
|
|
40
|
+
const getExtractedFieldValue = (bytes) => mySiInt.extractFromData(List(bytes));
|
|
41
|
+
expect(getExtractedFieldValue([0x00, 0x00]).value).toBe(0x000);
|
|
42
|
+
expect(getExtractedFieldValue([0x0f, 0x00]).value).toBe(0x00f);
|
|
43
|
+
expect(getExtractedFieldValue([0xff, 0x00]).value).toBe(0x0ff);
|
|
44
|
+
expect(getExtractedFieldValue([0xff, 0xf0]).value).toBe(0xfff);
|
|
45
|
+
expect(getExtractedFieldValue([0x00, 0xf0]).value).toBe(0xf00);
|
|
46
|
+
expect(getExtractedFieldValue([0xab, 0xcd]).value).toBe(0xcab);
|
|
47
|
+
expect(getExtractedFieldValue([0x00, undefined])).toBe(undefined);
|
|
48
|
+
expect(getExtractedFieldValue([undefined, 0x00])).toBe(undefined);
|
|
49
|
+
expect(getExtractedFieldValue([0x00])).toBe(undefined);
|
|
50
|
+
expect(getExtractedFieldValue([])).toBe(undefined);
|
|
53
51
|
});
|
|
54
|
-
|
|
55
|
-
const initialData =
|
|
52
|
+
test('updateData', () => {
|
|
53
|
+
const initialData = List([0x00, 0x00]);
|
|
56
54
|
const updateInitialData = (newValue) => mySiInt.updateData(initialData, newValue).toJS();
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
55
|
+
expect(updateInitialData(0x000)).toEqual([0x00, 0x00]);
|
|
56
|
+
expect(updateInitialData(0x00f)).toEqual([0x0f, 0x00]);
|
|
57
|
+
expect(updateInitialData(0x0ff)).toEqual([0xff, 0x00]);
|
|
58
|
+
expect(updateInitialData(0xfff)).toEqual([0xff, 0xf0]);
|
|
59
|
+
expect(updateInitialData(0xf00)).toEqual([0x00, 0xf0]);
|
|
60
|
+
expect(updateInitialData(0xcab)).toEqual([0xab, 0xc0]);
|
|
61
|
+
expect(updateInitialData(fieldValueOf(0x7357))).toEqual([0x57, 0x30]);
|
|
64
62
|
});
|
|
65
|
-
|
|
66
|
-
const updateData = (data, newValue) => mySiInt.updateData(
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
63
|
+
test('updateData modify undefined', () => {
|
|
64
|
+
const updateData = (data, newValue) => mySiInt.updateData(List(data), newValue).toJS();
|
|
65
|
+
expect(() => updateData([], 0x000)).toThrow(ModifyUndefinedException);
|
|
66
|
+
expect(() => updateData([], 0xcab)).toThrow(ModifyUndefinedException);
|
|
67
|
+
expect(() => updateData([], fieldValueOf(0x7357))).toThrow(ModifyUndefinedException);
|
|
68
|
+
expect(() => updateData([0x00, undefined], 0xcab)).toThrow(ModifyUndefinedException);
|
|
69
|
+
expect(() => updateData([undefined, 0x00], 0xcab)).toThrow(ModifyUndefinedException);
|
|
70
|
+
expect(() => updateData([0xab, undefined], 0x0ab)).toThrow(ModifyUndefinedException);
|
|
71
|
+
expect(() => updateData([undefined, 0xc0], 0xc00)).toThrow(ModifyUndefinedException);
|
|
74
72
|
});
|
|
75
73
|
});
|
|
76
74
|
//# sourceMappingURL=SiInt.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SiInt.test.js","sourceRoot":"","sources":["../../src/storage/SiInt.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SiInt.test.js","sourceRoot":"","sources":["../../src/storage/SiInt.test.ts"],"names":[],"mappings":"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"}
|
package/storage/SiModified.js
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const interfaces_1 = require("./interfaces");
|
|
5
|
-
const SiDataType_1 = require("./SiDataType");
|
|
6
|
-
class SiModified extends SiDataType_1.SiDataType {
|
|
1
|
+
import { ValueToStringError, ValueFromStringError } from './interfaces';
|
|
2
|
+
import { SiDataType } from './SiDataType';
|
|
3
|
+
export class SiModified extends SiDataType {
|
|
7
4
|
constructor(dataType, modifyExtracted, modifyForUpdate, modifiedToString, modifiedFromString, modifiedIsValid) {
|
|
8
5
|
super();
|
|
9
6
|
this.dataType = dataType;
|
|
@@ -21,13 +18,13 @@ class SiModified extends SiDataType_1.SiDataType {
|
|
|
21
18
|
}
|
|
22
19
|
typeSpecificValueToString(value) {
|
|
23
20
|
if (!this.modifiedToString) {
|
|
24
|
-
return new
|
|
21
|
+
return new ValueToStringError('modifiedToString was not provided');
|
|
25
22
|
}
|
|
26
23
|
return this.modifiedToString(value);
|
|
27
24
|
}
|
|
28
25
|
typeSpecificValueFromString(string) {
|
|
29
26
|
if (!this.modifiedFromString) {
|
|
30
|
-
return new
|
|
27
|
+
return new ValueFromStringError('modifiedFromString was not provided');
|
|
31
28
|
}
|
|
32
29
|
return this.modifiedFromString(string);
|
|
33
30
|
}
|
|
@@ -52,5 +49,4 @@ class SiModified extends SiDataType_1.SiDataType {
|
|
|
52
49
|
return this.dataType.typeSpecificUpdateData(data, internalData);
|
|
53
50
|
}
|
|
54
51
|
}
|
|
55
|
-
exports.SiModified = SiModified;
|
|
56
52
|
//# sourceMappingURL=SiModified.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SiModified.js","sourceRoot":"","sources":["../../src/storage/SiModified.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SiModified.js","sourceRoot":"","sources":["../../src/storage/SiModified.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,OAAO,UAAiB,SAAQ,UAAa;IAClD,YACiB,QAAwB,EACxB,eAA6C,EAC7C,eAA6C,EAC7C,gBAA4D,EAC5D,kBAAgE,EAChE,eAAuC;QAEvD,KAAK,EAAE,CAAC;QAPQ,aAAQ,GAAR,QAAQ,CAAgB;QACxB,oBAAe,GAAf,eAAe,CAA8B;QAC7C,oBAAe,GAAf,eAAe,CAA8B;QAC7C,qBAAgB,GAAhB,gBAAgB,CAA4C;QAC5D,uBAAkB,GAAlB,kBAAkB,CAA8C;QAChE,oBAAe,GAAf,eAAe,CAAwB;IAGxD,CAAC;IAED,wBAAwB,CAAC,KAAQ;QAChC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC;QACb,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,yBAAyB,CAAC,KAAQ;QACjC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5B,OAAO,IAAI,kBAAkB,CAAC,mCAAmC,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,2BAA2B,CAAC,MAAc;QACzC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC9B,OAAO,IAAI,oBAAoB,CAAC,qCAAqC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,2BAA2B,CAAC,IAAoB;QAC/C,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC3B,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;QACrE,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC;IAED,sBAAsB,CAAC,IAAoB,EAAE,QAAW;QACvD,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC;QACb,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC;QACb,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACjE,CAAC;CACD"}
|