@natlibfi/melinda-rest-api-commons 6.1.0-alpha.0 → 6.2.0-alpha.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.
- package/.github/workflows/melinda-node-tests-and-publish.yml +4 -2
- package/README.md +211 -14
- package/dist/amqp.d.ts +41 -0
- package/dist/amqp.d.ts.map +1 -0
- package/dist/amqp.js +251 -235
- package/dist/amqp.js.map +1 -7
- package/dist/constants.d.ts +49 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +38 -38
- package/dist/constants.js.map +1 -7
- package/dist/helpers/conversion.d.ts +8 -0
- package/dist/helpers/conversion.d.ts.map +1 -0
- package/dist/helpers/conversion.js +70 -64
- package/dist/helpers/conversion.js.map +1 -7
- package/dist/helpers/fix-constants.d.ts +76 -0
- package/dist/helpers/fix-constants.d.ts.map +1 -0
- package/dist/helpers/fix-constants.js +41 -41
- package/dist/helpers/fix-constants.js.map +1 -7
- package/dist/helpers/fix-handle-tempurns.d.ts +3 -0
- package/dist/helpers/fix-handle-tempurns.d.ts.map +1 -0
- package/dist/helpers/fix-handle-tempurns.js +73 -71
- package/dist/helpers/fix-handle-tempurns.js.map +1 -7
- package/dist/helpers/fix-strip-f884s.d.ts +10 -0
- package/dist/helpers/fix-strip-f884s.d.ts.map +1 -0
- package/dist/helpers/fix-strip-f884s.js +161 -163
- package/dist/helpers/fix-strip-f884s.js.map +1 -7
- package/dist/helpers/fix.d.ts +6 -0
- package/dist/helpers/fix.d.ts.map +1 -0
- package/dist/helpers/fix.js +133 -121
- package/dist/helpers/fix.js.map +1 -7
- package/dist/helpers/validation.d.ts +9 -0
- package/dist/helpers/validation.d.ts.map +1 -0
- package/dist/helpers/validation.js +14 -16
- package/dist/helpers/validation.js.map +1 -7
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -7
- package/dist/mongo.d.ts +165 -0
- package/dist/mongo.d.ts.map +1 -0
- package/dist/mongo.js +595 -547
- package/dist/mongo.js.map +1 -7
- package/dist/mongoError.d.ts +2 -0
- package/dist/mongoError.d.ts.map +1 -0
- package/dist/mongoError.js +19 -0
- package/dist/mongoError.js.map +1 -0
- package/dist/mongoLog.d.ts +50 -0
- package/dist/mongoLog.d.ts.map +1 -0
- package/dist/mongoLog.js +274 -242
- package/dist/mongoLog.js.map +1 -7
- package/dist/utils.d.ts +36 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +112 -110
- package/dist/utils.js.map +1 -7
- package/eslint.config.ts +66 -0
- package/package.json +17 -11
- package/{tests/amqp-error-branches.test.js → test/amqp-error-branches.test.ts} +135 -61
- package/{tests/amqp.healthtest.js → test/amqp.healthtest.ts} +19 -11
- package/{tests/amqp.tests.localtest.js → test/amqp.tests.localtest.ts} +54 -35
- package/{tests/helpers/conversion.test.js → test/helpers/conversion.test.ts} +26 -14
- package/{tests/helpers/fix-edge.test.js → test/helpers/fix-edge.test.ts} +16 -12
- package/{tests/helpers/fix.test.js → test/helpers/fix.test.ts} +14 -8
- package/{tests/helpers/validation.test.js → test/helpers/validation.test.ts} +7 -6
- package/{tests/mongo-add-blob-size.test.js → test/mongo-add-blob-size.test.ts} +14 -15
- package/{tests/mongo-check-and-check-state.test.js → test/mongo-check-and-check-state.test.ts} +6 -8
- package/{tests/mongo-check-and-set-import-job-state.test.js → test/mongo-check-and-set-import-job-state.test.ts} +6 -9
- package/{tests/mongo-check-timeout.test.js → test/mongo-check-timeout.test.ts} +6 -9
- package/{tests/mongo-create-bulk.test.js → test/mongo-create-bulk.test.ts} +6 -7
- package/{tests/mongo-create-prio.test.js → test/mongo-create-prio.test.ts} +6 -6
- package/{tests/mongo-error-branches.test.js → test/mongo-error-branches.test.ts} +166 -65
- package/{tests/mongo-get-one.test.js → test/mongo-get-one.test.ts} +6 -6
- package/{tests/mongo-get-stream.test.js → test/mongo-get-stream.test.ts} +6 -8
- package/{tests/mongo-push-ids.test.js → test/mongo-push-ids.test.ts} +6 -6
- package/{tests/mongo-push-messages.test.js → test/mongo-push-messages.test.ts} +6 -6
- package/{tests/mongo-query-by-id.test.js → test/mongo-query-by-id.test.ts} +6 -9
- package/{tests/mongo-query.test.js → test/mongo-query.test.ts} +6 -7
- package/{tests/mongo-read-content.test.js → test/mongo-read-content.test.ts} +6 -9
- package/{tests/mongo-remove.test.js → test/mongo-remove.test.ts} +6 -8
- package/{tests/mongo-set-blob-size.test.js → test/mongo-set-blob-size.test.ts} +6 -6
- package/{tests/mongo-set-import-job-state.test.js → test/mongo-set-import-job-state.test.ts} +6 -6
- package/{tests/mongo-set-operation.test.js → test/mongo-set-operation.test.ts} +6 -6
- package/{tests/mongo-set-operations.test.js → test/mongo-set-operations.test.ts} +6 -6
- package/{tests/mongo-set-state.test.js → test/mongo-set-state.test.ts} +6 -6
- package/{tests/mongoLog-protect.test.js → test/mongoLog-protect.test.ts} +18 -17
- package/{tests/mongoLog.test.js → test/mongoLog.test.ts} +8 -8
- package/{tests/testUtils.js → test/testUtils.ts} +49 -15
- package/{tests/utils.test.js → test/utils.test.ts} +5 -5
- package/tsconfig.json +62 -0
- package/tsconfig.test.json +17 -0
- package/dist/helpers/fix-utils.js +0 -39
- package/dist/helpers/fix-utils.js.map +0 -7
- package/eslint.config.js +0 -53
package/dist/constants.js
CHANGED
|
@@ -1,49 +1,49 @@
|
|
|
1
1
|
export const QUEUE_ITEM_STATE = {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
2
|
+
VALIDATOR: {
|
|
3
|
+
PENDING_QUEUING: 'PENDING_QUEUING',
|
|
4
|
+
PENDING_VALIDATION: 'PENDING_VALIDATION',
|
|
5
|
+
QUEUING_IN_PROGRESS: 'QUEUING_IN_PROGRESS',
|
|
6
|
+
UPLOADING: 'UPLOADING',
|
|
7
|
+
VALIDATING: 'VALIDATING',
|
|
8
|
+
WAITING_FOR_RECORDS: 'WAITING_FOR_RECORDS'
|
|
9
|
+
},
|
|
10
|
+
IMPORTER: {
|
|
11
|
+
IMPORTING: 'IMPORTING',
|
|
12
|
+
IN_PROCESS: 'IN_PROCESS',
|
|
13
|
+
IN_QUEUE: 'IN_QUEUE'
|
|
14
|
+
},
|
|
15
|
+
DONE: 'DONE',
|
|
16
|
+
ERROR: 'ERROR',
|
|
17
|
+
ABORT: 'ABORT'
|
|
18
18
|
};
|
|
19
19
|
export const IMPORT_JOB_STATE = {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
20
|
+
EMPTY: 'EMPTY',
|
|
21
|
+
QUEUING: 'QUEUING',
|
|
22
|
+
IN_QUEUE: 'IN_QUEUE',
|
|
23
|
+
IMPORTING: 'IMPORTING',
|
|
24
|
+
PROCESSING: 'PROCESSING',
|
|
25
|
+
DONE: 'DONE',
|
|
26
|
+
ERROR: 'ERROR',
|
|
27
|
+
ABORT: 'ABORT'
|
|
28
28
|
};
|
|
29
29
|
export const OPERATIONS = {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
CREATE: 'CREATE',
|
|
31
|
+
UPDATE: 'UPDATE',
|
|
32
|
+
FIX: 'FIX'
|
|
33
33
|
};
|
|
34
34
|
export const CHUNK_SIZE = 100;
|
|
35
35
|
export const LOG_ITEM_TYPE = {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
36
|
+
INPUT_RECORD_LOG: 'INPUT_RECORD_LOG',
|
|
37
|
+
MERGE_LOG: 'MERGE_LOG',
|
|
38
|
+
MATCH_LOG: 'MATCH_LOG',
|
|
39
|
+
RESULT_RECORD_LOG: 'RESULT_RECORD_LOG',
|
|
40
|
+
SPLITTER_LOG: 'SPLITTER_LOG',
|
|
41
|
+
LOAD_PROCESS_LOG: 'LOAD_PROCESS_LOG'
|
|
42
42
|
};
|
|
43
43
|
export const CONVERSION_FORMATS = {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
MARCXML: 'MARCXML',
|
|
45
|
+
ISO2709: 'ISO2709',
|
|
46
|
+
JSON: 'JSON',
|
|
47
|
+
ALEPHSEQ: 'ALEPHSEQ'
|
|
48
48
|
};
|
|
49
|
-
//# sourceMappingURL=constants.js.map
|
|
49
|
+
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
|
@@ -1,7 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/constants.js"],
|
|
4
|
-
"sourcesContent": ["// QueueItemState flows: see README.md\n\nexport const QUEUE_ITEM_STATE = {\n VALIDATOR: {\n PENDING_QUEUING: 'PENDING_QUEUING',\n PENDING_VALIDATION: 'PENDING_VALIDATION',\n QUEUING_IN_PROGRESS: 'QUEUING_IN_PROGRESS',\n UPLOADING: 'UPLOADING',\n VALIDATING: 'VALIDATING',\n WAITING_FOR_RECORDS: 'WAITING_FOR_RECORDS'\n },\n IMPORTER: {\n IMPORTING: 'IMPORTING',\n IN_PROCESS: 'IN_PROCESS',\n IN_QUEUE: 'IN_QUEUE'\n },\n DONE: 'DONE',\n ERROR: 'ERROR',\n ABORT: 'ABORT'\n};\n\nexport const IMPORT_JOB_STATE = {\n EMPTY: 'EMPTY',\n QUEUING: 'QUEUING',\n IN_QUEUE: 'IN_QUEUE',\n IMPORTING: 'IMPORTING',\n PROCESSING: 'PROCESSING',\n DONE: 'DONE',\n ERROR: 'ERROR',\n ABORT: 'ABORT'\n};\n\nexport const OPERATIONS = {\n CREATE: 'CREATE',\n UPDATE: 'UPDATE',\n FIX: 'FIX'\n};\n\nexport const CHUNK_SIZE = 100;\n\n// We could configure here whether a logItemType is for a several records of a single record\n// ie. whether is has bulkSequence or bulkSequenceStart & bulkSequenceEnd\nexport const LOG_ITEM_TYPE = {\n INPUT_RECORD_LOG: 'INPUT_RECORD_LOG',\n MERGE_LOG: 'MERGE_LOG',\n MATCH_LOG: 'MATCH_LOG',\n RESULT_RECORD_LOG: 'RESULT_RECORD_LOG',\n SPLITTER_LOG: 'SPLITTER_LOG',\n LOAD_PROCESS_LOG: 'LOAD_PROCESS_LOG'\n};\n\nexport const CONVERSION_FORMATS = {\n MARCXML: 'MARCXML',\n ISO2709: 'ISO2709',\n JSON: 'JSON',\n ALEPHSEQ: 'ALEPHSEQ'\n};\n"],
|
|
5
|
-
"mappings": "AAEO,aAAM,mBAAmB;AAAA,EAC9B,WAAW;AAAA,IACT,iBAAiB;AAAA,IACjB,oBAAoB;AAAA,IACpB,qBAAqB;AAAA,IACrB,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,qBAAqB;AAAA,EACvB;AAAA,EACA,UAAU;AAAA,IACR,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,UAAU;AAAA,EACZ;AAAA,EACA,MAAM;AAAA,EACN,OAAO;AAAA,EACP,OAAO;AACT;AAEO,aAAM,mBAAmB;AAAA,EAC9B,OAAO;AAAA,EACP,SAAS;AAAA,EACT,UAAU;AAAA,EACV,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,MAAM;AAAA,EACN,OAAO;AAAA,EACP,OAAO;AACT;AAEO,aAAM,aAAa;AAAA,EACxB,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,KAAK;AACP;AAEO,aAAM,aAAa;AAInB,aAAM,gBAAgB;AAAA,EAC3B,kBAAkB;AAAA,EAClB,WAAW;AAAA,EACX,WAAW;AAAA,EACX,mBAAmB;AAAA,EACnB,cAAc;AAAA,EACd,kBAAkB;AACpB;AAEO,aAAM,qBAAqB;AAAA,EAChC,SAAS;AAAA,EACT,SAAS;AAAA,EACT,MAAM;AAAA,EACN,UAAU;AACZ;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,SAAS,EAAE;QACT,eAAe,EAAE,iBAAiB;QAClC,kBAAkB,EAAE,oBAAoB;QACxC,mBAAmB,EAAE,qBAAqB;QAC1C,SAAS,EAAE,WAAW;QACtB,UAAU,EAAE,YAAY;QACxB,mBAAmB,EAAE,qBAAqB;KAC3C;IACD,QAAQ,EAAE;QACR,SAAS,EAAE,WAAW;QACtB,UAAU,EAAE,YAAY;QACxB,QAAQ,EAAE,UAAU;KACrB;IACD,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAEX,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAEX,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;CACF,CAAC;AAEX,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC;AAI9B,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,gBAAgB,EAAE,kBAAkB;IACpC,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,iBAAiB,EAAE,mBAAmB;IACtC,YAAY,EAAE,cAAc;IAC5B,gBAAgB,EAAE,kBAAkB;CAC5B,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;CACZ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { MarcRecord } from '@natlibfi/marc-record';
|
|
2
|
+
export default function (): {
|
|
3
|
+
serialize: (record: MarcRecord, format: string) => string;
|
|
4
|
+
unserialize: (data: string | Buffer, format: string, validationOptions?: {
|
|
5
|
+
subfieldValues?: boolean;
|
|
6
|
+
}) => MarcRecord;
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=conversion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversion.d.ts","sourceRoot":"","sources":["../../src/helpers/conversion.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAC;AAItD,MAAM,CAAC,OAAO;wBAOe,UAAU,UAAU,MAAM,KAAG,MAAM;wBAmCnC,MAAM,GAAG,MAAM,UAAU,MAAM,sBAAqB;QAAC,cAAc,CAAC,EAAE,OAAO,CAAA;KAAC,KAA6B,UAAU;EAuCjJ"}
|
|
@@ -1,69 +1,75 @@
|
|
|
1
|
-
import httpStatus from
|
|
2
|
-
import { MARCXML, ISO2709, Json, AlephSequential } from
|
|
3
|
-
import { createLogger, Error as ConversionError } from
|
|
1
|
+
import httpStatus from 'http-status';
|
|
2
|
+
import { MARCXML, ISO2709, Json, AlephSequential } from '@natlibfi/marc-record-serializers';
|
|
3
|
+
import { createLogger, Error as ConversionError } from '@natlibfi/melinda-commons';
|
|
4
4
|
import { CONVERSION_FORMATS } from "../constants.js";
|
|
5
5
|
import { logError } from "../utils.js";
|
|
6
|
-
export default function() {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
6
|
+
export default function () {
|
|
7
|
+
const logger = createLogger();
|
|
8
|
+
return { serialize, unserialize };
|
|
9
|
+
function serialize(record, format) {
|
|
10
|
+
logger.verbose(`Serializing record to ${format}`);
|
|
11
|
+
try {
|
|
12
|
+
if (format === CONVERSION_FORMATS.MARCXML) {
|
|
13
|
+
return MARCXML.to(record);
|
|
14
|
+
}
|
|
15
|
+
if (format === CONVERSION_FORMATS.ISO2709) {
|
|
16
|
+
return ISO2709.to(record);
|
|
17
|
+
}
|
|
18
|
+
if (format === CONVERSION_FORMATS.JSON) {
|
|
19
|
+
return Json.to(record);
|
|
20
|
+
}
|
|
21
|
+
if (format === CONVERSION_FORMATS.ALEPHSEQ) {
|
|
22
|
+
return AlephSequential.to(record);
|
|
23
|
+
}
|
|
24
|
+
throw new ConversionError(httpStatus.UNSUPPORTED_MEDIA_TYPE, undefined);
|
|
25
|
+
}
|
|
26
|
+
catch (err) {
|
|
27
|
+
logError(err);
|
|
28
|
+
const thrownError = err;
|
|
29
|
+
const payload = thrownError.payload;
|
|
30
|
+
const message = thrownError.message || (payload ?? {}).message || thrownError.payload;
|
|
31
|
+
logger.debug(`${message}`);
|
|
32
|
+
if (err instanceof ConversionError) {
|
|
33
|
+
throw err;
|
|
34
|
+
}
|
|
35
|
+
throw new ConversionError(httpStatus.BAD_REQUEST, `Error while serializing record. ${message}`);
|
|
36
|
+
}
|
|
33
37
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
38
|
+
function unserialize(data, format, validationOptions = { subfieldValues: false }) {
|
|
39
|
+
logger.verbose(`Unserializing record from ${format}`);
|
|
40
|
+
logger.silly(`Format: ${format}`);
|
|
41
|
+
logger.debug(`Validation options: ${JSON.stringify(validationOptions)}`);
|
|
42
|
+
logger.silly(`Data: ${JSON.stringify(data)}`);
|
|
43
|
+
try {
|
|
44
|
+
if (format === CONVERSION_FORMATS.MARCXML) {
|
|
45
|
+
logger.silly('Unserialize format marcxml');
|
|
46
|
+
return MARCXML.from(data, validationOptions);
|
|
47
|
+
}
|
|
48
|
+
if (format === CONVERSION_FORMATS.ISO2709) {
|
|
49
|
+
logger.silly('Unserialize format iso2709');
|
|
50
|
+
return ISO2709.from(data, validationOptions);
|
|
51
|
+
}
|
|
52
|
+
if (format === CONVERSION_FORMATS.JSON) {
|
|
53
|
+
logger.silly('Unserialize format json');
|
|
54
|
+
return Json.from(data, validationOptions);
|
|
55
|
+
}
|
|
56
|
+
if (format === CONVERSION_FORMATS.ALEPHSEQ) {
|
|
57
|
+
logger.silly('Unserialize format aleph sequential');
|
|
58
|
+
return AlephSequential.from(data, validationOptions);
|
|
59
|
+
}
|
|
60
|
+
throw new ConversionError(httpStatus.UNSUPPORTED_MEDIA_TYPE, undefined);
|
|
61
|
+
}
|
|
62
|
+
catch (err) {
|
|
63
|
+
logError(err);
|
|
64
|
+
const thrownError = err;
|
|
65
|
+
const payload = thrownError.payload;
|
|
66
|
+
const message = thrownError.message || (payload ?? {}).message || thrownError.payload;
|
|
67
|
+
logger.debug(`${message}`);
|
|
68
|
+
if (err instanceof ConversionError) {
|
|
69
|
+
throw err;
|
|
70
|
+
}
|
|
71
|
+
throw new ConversionError(httpStatus.BAD_REQUEST, `Error while unserializing record. ${message}`);
|
|
72
|
+
}
|
|
66
73
|
}
|
|
67
|
-
}
|
|
68
74
|
}
|
|
69
|
-
//# sourceMappingURL=conversion.js.map
|
|
75
|
+
//# sourceMappingURL=conversion.js.map
|
|
@@ -1,7 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/helpers/conversion.js"],
|
|
4
|
-
"sourcesContent": ["\n\nimport httpStatus from 'http-status';\nimport {MARCXML, ISO2709, Json, AlephSequential} from '@natlibfi/marc-record-serializers';\nimport {createLogger, Error as ConversionError} from '@natlibfi/melinda-commons';\nimport {CONVERSION_FORMATS} from '../constants.js';\nimport {logError} from '../utils.js';\n\nexport default function () {\n const logger = createLogger();\n\n return {serialize, unserialize};\n\n // This uses format as a number form contants CONVERSION_FORMATS\n function serialize(record, format) {\n logger.verbose(`Serializing record to ${format}`);\n try {\n if (format === CONVERSION_FORMATS.MARCXML) {\n return MARCXML.to(record);\n }\n\n if (format === CONVERSION_FORMATS.ISO2709) {\n return ISO2709.to(record);\n }\n\n if (format === CONVERSION_FORMATS.JSON) {\n return Json.to(record);\n }\n\n if (format === CONVERSION_FORMATS.ALEPHSEQ) {\n return AlephSequential.to(record);\n }\n\n throw new ConversionError(httpStatus.UNSUPPORTED_MEDIA_TYPE);\n } catch (err) {\n logError(err);\n const message = err.message || err.payload?.message || err.payload;\n logger.debug(`${message}`);\n if (err instanceof ConversionError) {\n throw err;\n }\n throw new ConversionError(httpStatus.BAD_REQUEST, `Error while serializing record. ${message}`);\n }\n }\n\n function unserialize(data, format, validationOptions = {subfieldValues: false}) {\n logger.verbose(`Unserializing record from ${format}`);\n logger.silly(`Format: ${format}`);\n logger.debug(`Validation options: ${JSON.stringify(validationOptions)}`);\n logger.silly(`Data: ${JSON.stringify(data)}`);\n try {\n if (format === CONVERSION_FORMATS.MARCXML) {\n logger.silly('Unserialize format marcxml');\n return MARCXML.from(data, validationOptions);\n }\n\n if (format === CONVERSION_FORMATS.ISO2709) {\n logger.silly('Unserialize format iso2709');\n return ISO2709.from(data, validationOptions);\n }\n\n if (format === CONVERSION_FORMATS.JSON) {\n logger.silly('Unserialize format json');\n return Json.from(data, validationOptions);\n }\n\n if (format === CONVERSION_FORMATS.ALEPHSEQ) {\n logger.silly('Unserialize format aleph sequential');\n return AlephSequential.from(data, validationOptions);\n }\n\n throw new ConversionError(httpStatus.UNSUPPORTED_MEDIA_TYPE);\n } catch (err) {\n logError(err);\n const message = err.message || err.payload?.message || err.payload;\n logger.debug(`${message}`);\n if (err instanceof ConversionError) {\n throw err;\n }\n throw new ConversionError(httpStatus.BAD_REQUEST, `Error while unserializing record. ${message}`);\n }\n }\n}\n"],
|
|
5
|
-
"mappings": "AAEA,OAAO,gBAAgB;AACvB,SAAQ,SAAS,SAAS,MAAM,uBAAsB;AACtD,SAAQ,cAAc,SAAS,uBAAsB;AACrD,SAAQ,0BAAyB;AACjC,SAAQ,gBAAe;AAEvB,0BAA2B;AACzB,QAAM,SAAS,aAAa;AAE5B,SAAO,EAAC,WAAW,YAAW;AAG9B,WAAS,UAAU,QAAQ,QAAQ;AACjC,WAAO,QAAQ,yBAAyB,MAAM,EAAE;AAChD,QAAI;AACF,UAAI,WAAW,mBAAmB,SAAS;AACzC,eAAO,QAAQ,GAAG,MAAM;AAAA,MAC1B;AAEA,UAAI,WAAW,mBAAmB,SAAS;AACzC,eAAO,QAAQ,GAAG,MAAM;AAAA,MAC1B;AAEA,UAAI,WAAW,mBAAmB,MAAM;AACtC,eAAO,KAAK,GAAG,MAAM;AAAA,MACvB;AAEA,UAAI,WAAW,mBAAmB,UAAU;AAC1C,eAAO,gBAAgB,GAAG,MAAM;AAAA,MAClC;AAEA,YAAM,IAAI,gBAAgB,WAAW,sBAAsB;AAAA,IAC7D,SAAS,KAAK;AACZ,eAAS,GAAG;AACZ,YAAM,UAAU,IAAI,WAAW,IAAI,SAAS,WAAW,IAAI;AAC3D,aAAO,MAAM,GAAG,OAAO,EAAE;AACzB,UAAI,eAAe,iBAAiB;AAClC,cAAM;AAAA,MACR;AACA,YAAM,IAAI,gBAAgB,WAAW,aAAa,mCAAmC,OAAO,EAAE;AAAA,IAChG;AAAA,EACF;AAEA,WAAS,YAAY,MAAM,QAAQ,oBAAoB,EAAC,gBAAgB,MAAK,GAAG;AAC9E,WAAO,QAAQ,6BAA6B,MAAM,EAAE;AACpD,WAAO,MAAM,WAAW,MAAM,EAAE;AAChC,WAAO,MAAM,uBAAuB,KAAK,UAAU,iBAAiB,CAAC,EAAE;AACvE,WAAO,MAAM,SAAS,KAAK,UAAU,IAAI,CAAC,EAAE;AAC5C,QAAI;AACF,UAAI,WAAW,mBAAmB,SAAS;AACzC,eAAO,MAAM,4BAA4B;AACzC,eAAO,QAAQ,KAAK,MAAM,iBAAiB;AAAA,MAC7C;AAEA,UAAI,WAAW,mBAAmB,SAAS;AACzC,eAAO,MAAM,4BAA4B;AACzC,eAAO,QAAQ,KAAK,MAAM,iBAAiB;AAAA,MAC7C;AAEA,UAAI,WAAW,mBAAmB,MAAM;AACtC,eAAO,MAAM,yBAAyB;AACtC,eAAO,KAAK,KAAK,MAAM,iBAAiB;AAAA,MAC1C;AAEA,UAAI,WAAW,mBAAmB,UAAU;AAC1C,eAAO,MAAM,qCAAqC;AAClD,eAAO,gBAAgB,KAAK,MAAM,iBAAiB;AAAA,MACrD;AAEA,YAAM,IAAI,gBAAgB,WAAW,sBAAsB;AAAA,IAC7D,SAAS,KAAK;AACZ,eAAS,GAAG;AACZ,YAAM,UAAU,IAAI,WAAW,IAAI,SAAS,WAAW,IAAI;AAC3D,aAAO,MAAM,GAAG,OAAO,EAAE;AACzB,UAAI,eAAe,iBAAiB;AAClC,cAAM;AAAA,MACR;AACA,YAAM,IAAI,gBAAgB,WAAW,aAAa,qCAAqC,OAAO,EAAE;AAAA,IAClG;AAAA,EACF;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
1
|
+
{"version":3,"file":"conversion.js","sourceRoot":"","sources":["../../src/helpers/conversion.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export interface SidFilters {
|
|
2
|
+
f035Filters?: RegExp[];
|
|
3
|
+
fSIDFilters?: string[];
|
|
4
|
+
}
|
|
5
|
+
export interface ReplacePrefixOptions {
|
|
6
|
+
oldPrefix: string;
|
|
7
|
+
newPrefix: string;
|
|
8
|
+
prefixReplaceCodes: string[];
|
|
9
|
+
}
|
|
10
|
+
export interface FixSettings {
|
|
11
|
+
generateMissingSIDs?: SidFilters;
|
|
12
|
+
replacePrefixes?: ReplacePrefixOptions[];
|
|
13
|
+
handleTempUrns?: boolean;
|
|
14
|
+
stripF884s?: boolean;
|
|
15
|
+
stripF984s?: boolean;
|
|
16
|
+
stripMelindaTempSubfields?: boolean;
|
|
17
|
+
}
|
|
18
|
+
export declare const BIB_F035_TO_SID: {
|
|
19
|
+
f035Filters: RegExp[];
|
|
20
|
+
fSIDFilters: string[];
|
|
21
|
+
};
|
|
22
|
+
export declare const REPLACE_PREFIXES: {
|
|
23
|
+
oldPrefix: string;
|
|
24
|
+
newPrefix: string;
|
|
25
|
+
prefixReplaceCodes: string[];
|
|
26
|
+
}[];
|
|
27
|
+
export declare const BIB_FORMAT_SETTINGS: {
|
|
28
|
+
replacePrefixes: {
|
|
29
|
+
oldPrefix: string;
|
|
30
|
+
newPrefix: string;
|
|
31
|
+
prefixReplaceCodes: string[];
|
|
32
|
+
}[];
|
|
33
|
+
generateMissingSIDs: {
|
|
34
|
+
f035Filters: RegExp[];
|
|
35
|
+
fSIDFilters: string[];
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
export declare const BIB_PREVALIDATION_FIX_SETTINGS: {
|
|
39
|
+
generateMissingSIDs: {
|
|
40
|
+
f035Filters: RegExp[];
|
|
41
|
+
fSIDFilters: string[];
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
export declare const BIB_POSTMERGE_FIX_SETTINGS: {
|
|
45
|
+
handleTempUrns: boolean;
|
|
46
|
+
stripF884s: boolean;
|
|
47
|
+
};
|
|
48
|
+
export declare const BIB_PREIMPORT_FIX_SETTINGS: {
|
|
49
|
+
replacePrefixes: {
|
|
50
|
+
oldPrefix: string;
|
|
51
|
+
newPrefix: string;
|
|
52
|
+
prefixReplaceCodes: string[];
|
|
53
|
+
}[];
|
|
54
|
+
stripMelindaTempSubfields: boolean;
|
|
55
|
+
stripF984s: boolean;
|
|
56
|
+
};
|
|
57
|
+
export declare const AUTNAME_PREIMPORT_FIX_SETTINGS: {
|
|
58
|
+
replacePrefixes: {
|
|
59
|
+
oldPrefix: string;
|
|
60
|
+
newPrefix: string;
|
|
61
|
+
prefixReplaceCodes: string[];
|
|
62
|
+
}[];
|
|
63
|
+
};
|
|
64
|
+
export declare const BIB_HANDLE_TEMP_URNS_SETTINGS: {
|
|
65
|
+
handleTempUrns: boolean;
|
|
66
|
+
};
|
|
67
|
+
export declare const BIB_STRIP_F884S_SETTINGS: {
|
|
68
|
+
stripF884s: boolean;
|
|
69
|
+
};
|
|
70
|
+
export declare const BIB_STRIP_F984S_SETTINGS: {
|
|
71
|
+
stripF984s: boolean;
|
|
72
|
+
};
|
|
73
|
+
export declare const BIB_STRIP_MELINDA_TEMP_SUBFIELDS_SETTINGS: {
|
|
74
|
+
stripMelindaTempSubfields: boolean;
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=fix-constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fix-constants.d.ts","sourceRoot":"","sources":["../../src/helpers/fix-constants.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,UAAU;IACzB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,mBAAmB,CAAC,EAAE,UAAU,CAAC;IACjC,eAAe,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACzC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC;AAGD,eAAO,MAAM,eAAe;;;CAG3B,CAAC;AAGF,eAAO,MAAM,gBAAgB;;;;GA0B5B,CAAC;AAKF,eAAO,MAAM,mBAAmB;;;;;;;;;;CAG/B,CAAC;AAEF,eAAO,MAAM,8BAA8B;;;;;CAE1C,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;CAGtC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;CAItC,CAAC;AAEF,eAAO,MAAM,8BAA8B;;;;;;CAE1C,CAAC;AAEF,eAAO,MAAM,6BAA6B;;CAEzC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;CAEpC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;CAEpC,CAAC;AAEF,eAAO,MAAM,yCAAyC;;CAErD,CAAC"}
|
|
@@ -1,63 +1,63 @@
|
|
|
1
1
|
export const BIB_F035_TO_SID = {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
f035Filters: [/^\(FI-BTJ\)/u, /^\(FI-TATI\)/u],
|
|
3
|
+
fSIDFilters: ['FI-BTJ', 'tati']
|
|
4
4
|
};
|
|
5
5
|
export const REPLACE_PREFIXES = [
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
6
|
+
{
|
|
7
|
+
oldPrefix: 'FI-MELINDA',
|
|
8
|
+
newPrefix: 'FIN01',
|
|
9
|
+
prefixReplaceCodes: ['w']
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
oldPrefix: 'FI-ASTERI-S',
|
|
13
|
+
newPrefix: 'FIN10',
|
|
14
|
+
prefixReplaceCodes: ['0']
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
oldPrefix: 'FI-ASTERI-N',
|
|
18
|
+
newPrefix: 'FIN11',
|
|
19
|
+
prefixReplaceCodes: ['0']
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
oldPrefix: 'FI-ASTERI-A',
|
|
23
|
+
newPrefix: 'FIN12',
|
|
24
|
+
prefixReplaceCodes: ['0']
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
oldPrefix: 'FI-ASTERI-W',
|
|
28
|
+
newPrefix: 'FIN13',
|
|
29
|
+
prefixReplaceCodes: ['0']
|
|
30
|
+
}
|
|
31
31
|
];
|
|
32
32
|
export const BIB_FORMAT_SETTINGS = {
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
replacePrefixes: REPLACE_PREFIXES,
|
|
34
|
+
generateMissingSIDs: BIB_F035_TO_SID
|
|
35
35
|
};
|
|
36
36
|
export const BIB_PREVALIDATION_FIX_SETTINGS = {
|
|
37
|
-
|
|
37
|
+
generateMissingSIDs: BIB_F035_TO_SID
|
|
38
38
|
};
|
|
39
39
|
export const BIB_POSTMERGE_FIX_SETTINGS = {
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
handleTempUrns: true,
|
|
41
|
+
stripF884s: true
|
|
42
42
|
};
|
|
43
43
|
export const BIB_PREIMPORT_FIX_SETTINGS = {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
replacePrefixes: REPLACE_PREFIXES,
|
|
45
|
+
stripMelindaTempSubfields: true,
|
|
46
|
+
stripF984s: true
|
|
47
47
|
};
|
|
48
48
|
export const AUTNAME_PREIMPORT_FIX_SETTINGS = {
|
|
49
|
-
|
|
49
|
+
replacePrefixes: REPLACE_PREFIXES
|
|
50
50
|
};
|
|
51
51
|
export const BIB_HANDLE_TEMP_URNS_SETTINGS = {
|
|
52
|
-
|
|
52
|
+
handleTempUrns: true
|
|
53
53
|
};
|
|
54
54
|
export const BIB_STRIP_F884S_SETTINGS = {
|
|
55
|
-
|
|
55
|
+
stripF884s: true
|
|
56
56
|
};
|
|
57
57
|
export const BIB_STRIP_F984S_SETTINGS = {
|
|
58
|
-
|
|
58
|
+
stripF984s: true
|
|
59
59
|
};
|
|
60
60
|
export const BIB_STRIP_MELINDA_TEMP_SUBFIELDS_SETTINGS = {
|
|
61
|
-
|
|
61
|
+
stripMelindaTempSubfields: true
|
|
62
62
|
};
|
|
63
|
-
//# sourceMappingURL=fix-constants.js.map
|
|
63
|
+
//# sourceMappingURL=fix-constants.js.map
|
|
@@ -1,7 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/helpers/fix-constants.js"],
|
|
4
|
-
"sourcesContent": ["// This could be formatted so that 035-prefix and SID contents would be better connected than by just an array index\nexport const BIB_F035_TO_SID = {\n f035Filters: [/^\\(FI-BTJ\\)/u, /^\\(FI-TATI\\)/u],\n fSIDFilters: ['FI-BTJ', 'tati']\n};\n\n// There is somewhere other implementations of this same standardPrefixes to alephInternalPrefixes normalization\nexport const REPLACE_PREFIXES = [\n {\n oldPrefix: 'FI-MELINDA',\n newPrefix: 'FIN01',\n prefixReplaceCodes: ['w']\n },\n {\n oldPrefix: 'FI-ASTERI-S',\n newPrefix: 'FIN10',\n prefixReplaceCodes: ['0']\n },\n {\n oldPrefix: 'FI-ASTERI-N',\n newPrefix: 'FIN11',\n prefixReplaceCodes: ['0']\n },\n {\n oldPrefix: 'FI-ASTERI-A',\n newPrefix: 'FIN12',\n prefixReplaceCodes: ['0']\n },\n {\n oldPrefix: 'FI-ASTERI-W',\n newPrefix: 'FIN13',\n prefixReplaceCodes: ['0']\n }\n];\n\n// If placed in config.js testing needs envs\n// BIB_FORMAT_SETTINGS is outdated, use other settings instead\n\n\nexport const BIB_FORMAT_SETTINGS = {\n replacePrefixes: REPLACE_PREFIXES,\n generateMissingSIDs: BIB_F035_TO_SID\n};\n\nexport const BIB_PREVALIDATION_FIX_SETTINGS = {\n generateMissingSIDs: BIB_F035_TO_SID\n};\n\nexport const BIB_POSTMERGE_FIX_SETTINGS = {\n handleTempUrns: true,\n stripF884s: true\n};\n\nexport const BIB_PREIMPORT_FIX_SETTINGS = {\n replacePrefixes: REPLACE_PREFIXES,\n stripMelindaTempSubfields: true,\n stripF984s: true\n};\n\nexport const AUTNAME_PREIMPORT_FIX_SETTINGS = {\n replacePrefixes: REPLACE_PREFIXES\n};\n\nexport const BIB_HANDLE_TEMP_URNS_SETTINGS = {\n handleTempUrns: true\n};\n\nexport const BIB_STRIP_F884S_SETTINGS = {\n stripF884s: true\n};\n\nexport const BIB_STRIP_F984S_SETTINGS = {\n stripF984s: true\n};\n\nexport const BIB_STRIP_MELINDA_TEMP_SUBFIELDS_SETTINGS = {\n stripMelindaTempSubfields: true\n};\n"],
|
|
5
|
-
"mappings": "AACO,aAAM,kBAAkB;AAAA,EAC7B,aAAa,CAAC,gBAAgB,eAAe;AAAA,EAC7C,aAAa,CAAC,UAAU,MAAM;AAChC;AAGO,aAAM,mBAAmB;AAAA,EAC9B;AAAA,IACE,WAAW;AAAA,IACX,WAAW;AAAA,IACX,oBAAoB,CAAC,GAAG;AAAA,EAC1B;AAAA,EACA;AAAA,IACE,WAAW;AAAA,IACX,WAAW;AAAA,IACX,oBAAoB,CAAC,GAAG;AAAA,EAC1B;AAAA,EACA;AAAA,IACE,WAAW;AAAA,IACX,WAAW;AAAA,IACX,oBAAoB,CAAC,GAAG;AAAA,EAC1B;AAAA,EACA;AAAA,IACE,WAAW;AAAA,IACX,WAAW;AAAA,IACX,oBAAoB,CAAC,GAAG;AAAA,EAC1B;AAAA,EACA;AAAA,IACE,WAAW;AAAA,IACX,WAAW;AAAA,IACX,oBAAoB,CAAC,GAAG;AAAA,EAC1B;AACF;AAMO,aAAM,sBAAsB;AAAA,EACjC,iBAAiB;AAAA,EACjB,qBAAqB;AACvB;AAEO,aAAM,iCAAiC;AAAA,EAC5C,qBAAqB;AACvB;AAEO,aAAM,6BAA6B;AAAA,EACxC,gBAAgB;AAAA,EAChB,YAAY;AACd;AAEO,aAAM,6BAA6B;AAAA,EACxC,iBAAiB;AAAA,EACjB,2BAA2B;AAAA,EAC3B,YAAY;AACd;AAEO,aAAM,iCAAiC;AAAA,EAC5C,iBAAiB;AACnB;AAEO,aAAM,gCAAgC;AAAA,EAC3C,gBAAgB;AAClB;AAEO,aAAM,2BAA2B;AAAA,EACtC,YAAY;AACd;AAEO,aAAM,2BAA2B;AAAA,EACtC,YAAY;AACd;AAEO,aAAM,4CAA4C;AAAA,EACvD,2BAA2B;AAC7B;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
1
|
+
{"version":3,"file":"fix-constants.js","sourceRoot":"","sources":["../../src/helpers/fix-constants.ts"],"names":[],"mappings":"AAuBA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,WAAW,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC;IAC9C,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;CAChC,CAAC;AAGF,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B;QACE,SAAS,EAAE,YAAY;QACvB,SAAS,EAAE,OAAO;QAClB,kBAAkB,EAAE,CAAC,GAAG,CAAC;KAC1B;IACD;QACE,SAAS,EAAE,aAAa;QACxB,SAAS,EAAE,OAAO;QAClB,kBAAkB,EAAE,CAAC,GAAG,CAAC;KAC1B;IACD;QACE,SAAS,EAAE,aAAa;QACxB,SAAS,EAAE,OAAO;QAClB,kBAAkB,EAAE,CAAC,GAAG,CAAC;KAC1B;IACD;QACE,SAAS,EAAE,aAAa;QACxB,SAAS,EAAE,OAAO;QAClB,kBAAkB,EAAE,CAAC,GAAG,CAAC;KAC1B;IACD;QACE,SAAS,EAAE,aAAa;QACxB,SAAS,EAAE,OAAO;QAClB,kBAAkB,EAAE,CAAC,GAAG,CAAC;KAC1B;CACF,CAAC;AAKF,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,eAAe,EAAE,gBAAgB;IACjC,mBAAmB,EAAE,eAAe;CACrC,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,mBAAmB,EAAE,eAAe;CACrC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,cAAc,EAAE,IAAI;IACpB,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,eAAe,EAAE,gBAAgB;IACjC,yBAAyB,EAAE,IAAI;IAC/B,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,eAAe,EAAE,gBAAgB;CAClC,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,cAAc,EAAE,IAAI;CACrB,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,yCAAyC,GAAG;IACvD,yBAAyB,EAAE,IAAI;CAChC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fix-handle-tempurns.d.ts","sourceRoot":"","sources":["../../src/helpers/fix-handle-tempurns.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAY,UAAU,EAAC,MAAM,uBAAuB,CAAC;AASjE,wBAAgB,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,UAAU,CAwC9F"}
|