@natlibfi/marc-record-validators-melinda 11.6.7 → 12.0.0-alpha.12
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.yml → melinda-node-tests-and-publish.yml} +37 -12
- package/dist/access-rights.js +63 -91
- package/dist/access-rights.js.map +7 -1
- package/dist/access-rights.test.js +137 -0
- package/dist/access-rights.test.js.map +7 -0
- package/dist/addMissingField041.js +21 -53
- package/dist/addMissingField041.js.map +7 -1
- package/dist/addMissingField041.test.js +39 -0
- package/dist/addMissingField041.test.js.map +7 -0
- package/dist/addMissingField336.js +99 -191
- package/dist/addMissingField336.js.map +7 -1
- package/dist/addMissingField336.test.js +39 -0
- package/dist/addMissingField336.test.js.map +7 -0
- package/dist/addMissingField337.js +63 -132
- package/dist/addMissingField337.js.map +7 -1
- package/dist/addMissingField337.test.js +39 -0
- package/dist/addMissingField337.test.js.map +7 -0
- package/dist/addMissingField338.js +147 -253
- package/dist/addMissingField338.js.map +7 -1
- package/dist/addMissingField338.test.js +39 -0
- package/dist/addMissingField338.test.js.map +7 -0
- package/dist/cyrillux-usemarcon-replacement.js +119 -272
- package/dist/cyrillux-usemarcon-replacement.js.map +7 -1
- package/dist/cyrillux-usemarcon-replacement.test.js +43 -0
- package/dist/cyrillux-usemarcon-replacement.test.js.map +7 -0
- package/dist/cyrillux.js +119 -223
- package/dist/cyrillux.js.map +7 -1
- package/dist/cyrillux.test.js +39 -0
- package/dist/cyrillux.test.js.map +7 -0
- package/dist/disambiguateSeriesStatements.js +40 -81
- package/dist/disambiguateSeriesStatements.js.map +7 -1
- package/dist/disambiguateSeriesStatements.test.js +44 -0
- package/dist/disambiguateSeriesStatements.test.js.map +7 -0
- package/dist/double-commas.js +7 -14
- package/dist/double-commas.js.map +7 -1
- package/dist/double-commas.test.js +48 -0
- package/dist/double-commas.test.js.map +7 -0
- package/dist/duplicates-ind1.js +10 -31
- package/dist/duplicates-ind1.js.map +7 -1
- package/dist/duplicates-ind1.test.js +40 -0
- package/dist/duplicates-ind1.test.js.map +7 -0
- package/dist/empty-fields.js +10 -22
- package/dist/empty-fields.js.map +7 -1
- package/dist/empty-fields.test.js +129 -0
- package/dist/empty-fields.test.js.map +7 -0
- package/dist/ending-punctuation-conf.js +873 -769
- package/dist/ending-punctuation-conf.js.map +7 -1
- package/dist/ending-punctuation.js +156 -169
- package/dist/ending-punctuation.js.map +7 -1
- package/dist/ending-punctuation.test.js +2385 -0
- package/dist/ending-punctuation.test.js.map +7 -0
- package/dist/ending-whitespace.js +10 -35
- package/dist/ending-whitespace.js.map +7 -1
- package/dist/ending-whitespace.test.js +38 -0
- package/dist/ending-whitespace.test.js.map +7 -0
- package/dist/field-008-18-34-character-groups.js +40 -125
- package/dist/field-008-18-34-character-groups.js.map +7 -1
- package/dist/field-008-18-34-character-groups.test.js +45 -0
- package/dist/field-008-18-34-character-groups.test.js.map +7 -0
- package/dist/field-505-separators.js +19 -39
- package/dist/field-505-separators.js.map +7 -1
- package/dist/field-505-separators.test.js +45 -0
- package/dist/field-505-separators.test.js.map +7 -0
- package/dist/field-521-fix.js +19 -47
- package/dist/field-521-fix.js.map +7 -1
- package/dist/field-521-fix.test.js +44 -0
- package/dist/field-521-fix.test.js.map +7 -0
- package/dist/field-exclusion.js +37 -91
- package/dist/field-exclusion.js.map +7 -1
- package/dist/field-exclusion.test.js +821 -0
- package/dist/field-exclusion.test.js.map +7 -0
- package/dist/field-structure.js +52 -104
- package/dist/field-structure.js.map +7 -1
- package/dist/field-structure.test.js +587 -0
- package/dist/field-structure.test.js.map +7 -0
- package/dist/field33XUtils.js +119 -503
- package/dist/field33XUtils.js.map +7 -1
- package/dist/fields-present.js +11 -23
- package/dist/fields-present.js.map +7 -1
- package/dist/fields-present.test.js +95 -0
- package/dist/fields-present.test.js.map +7 -0
- package/dist/fix-33X.js +393 -431
- package/dist/fix-33X.js.map +7 -1
- package/dist/fix-33X.test.js +39 -0
- package/dist/fix-33X.test.js.map +7 -0
- package/dist/fix-country-codes.js +20 -50
- package/dist/fix-country-codes.js.map +7 -1
- package/dist/fix-country-codes.test.js +44 -0
- package/dist/fix-country-codes.test.js.map +7 -0
- package/dist/fix-language-codes.js +23 -53
- package/dist/fix-language-codes.js.map +7 -1
- package/dist/fix-language-codes.test.js +38 -0
- package/dist/fix-language-codes.test.js.map +7 -0
- package/dist/fixRelatorTerms.js +82 -209
- package/dist/fixRelatorTerms.js.map +7 -1
- package/dist/fixRelatorTerms.test.js +44 -0
- package/dist/fixRelatorTerms.test.js.map +7 -0
- package/dist/fixed-fields.js +21 -30
- package/dist/fixed-fields.js.map +7 -1
- package/dist/fixed-fields.test.js +87 -0
- package/dist/fixed-fields.test.js.map +7 -0
- package/dist/identical-fields.js +8 -24
- package/dist/identical-fields.js.map +7 -1
- package/dist/identical-fields.test.js +119 -0
- package/dist/identical-fields.test.js.map +7 -0
- package/dist/index.js +182 -413
- package/dist/index.js.map +7 -1
- package/dist/indicator-fixes.js +66 -94
- package/dist/indicator-fixes.js.map +7 -1
- package/dist/indicator-fixes.test.js +42 -0
- package/dist/indicator-fixes.test.js.map +7 -0
- package/dist/isbn-issn.js +71 -128
- package/dist/isbn-issn.js.map +7 -1
- package/dist/isbn-issn.test.js +398 -0
- package/dist/isbn-issn.test.js.map +7 -0
- package/dist/item-language.js +32 -65
- package/dist/item-language.js.map +7 -1
- package/dist/item-language.test.js +322 -0
- package/dist/item-language.test.js.map +7 -0
- package/dist/melindaCustomMergeFields.js +5182 -11233
- package/dist/melindaCustomMergeFields.js.map +7 -1
- package/dist/merge-fields/controlSubfields.js +75 -142
- package/dist/merge-fields/controlSubfields.js.map +7 -1
- package/dist/merge-fields/counterpartField.js +187 -379
- package/dist/merge-fields/counterpartField.js.map +7 -1
- package/dist/merge-fields/dataProvenance.js +29 -0
- package/dist/merge-fields/dataProvenance.js.map +7 -0
- package/dist/merge-fields/index.js +25 -50
- package/dist/merge-fields/index.js.map +7 -1
- package/dist/merge-fields/mergableIndicator.js +18 -51
- package/dist/merge-fields/mergableIndicator.js.map +7 -1
- package/dist/merge-fields/mergableTag.js +78 -30
- package/dist/merge-fields/mergableTag.js.map +7 -1
- package/dist/merge-fields/mergeConfig.js +66 -171
- package/dist/merge-fields/mergeConfig.js.map +7 -1
- package/dist/merge-fields/mergeConstraints.js +323 -1214
- package/dist/merge-fields/mergeConstraints.js.map +7 -1
- package/dist/merge-fields/mergeField.js +47 -111
- package/dist/merge-fields/mergeField.js.map +7 -1
- package/dist/merge-fields/mergeIndicator.js +64 -118
- package/dist/merge-fields/mergeIndicator.js.map +7 -1
- package/dist/merge-fields/mergeOrAddPostprocess.js +14 -38
- package/dist/merge-fields/mergeOrAddPostprocess.js.map +7 -1
- package/dist/merge-fields/mergeOrAddSubfield.js +62 -104
- package/dist/merge-fields/mergeOrAddSubfield.js.map +7 -1
- package/dist/merge-fields/mergeSubfield.js +47 -95
- package/dist/merge-fields/mergeSubfield.js.map +7 -1
- package/dist/merge-fields/removeDuplicateSubfields.js +18 -31
- package/dist/merge-fields/removeDuplicateSubfields.js.map +7 -1
- package/dist/merge-fields/worldKnowledge.js +15 -40
- package/dist/merge-fields/worldKnowledge.js.map +7 -1
- package/dist/merge-fields.test.js +46 -0
- package/dist/merge-fields.test.js.map +7 -0
- package/dist/mergeField500Lisapainokset.js +27 -56
- package/dist/mergeField500Lisapainokset.js.map +7 -1
- package/dist/mergeField500Lisapainokset.test.js +44 -0
- package/dist/mergeField500Lisapainokset.test.js.map +7 -0
- package/dist/mergeRelatorTermFields.js +33 -69
- package/dist/mergeRelatorTermFields.js.map +7 -1
- package/dist/mergeRelatorTermFields.test.js +44 -0
- package/dist/mergeRelatorTermFields.test.js.map +7 -0
- package/dist/modernize-502.js +23 -55
- package/dist/modernize-502.js.map +7 -1
- package/dist/modernize-502.test.js +38 -0
- package/dist/modernize-502.test.js.map +7 -0
- package/dist/multiple-subfield-0.js +23 -48
- package/dist/multiple-subfield-0.js.map +7 -1
- package/dist/multiple-subfield-0.test.js +44 -0
- package/dist/multiple-subfield-0.test.js.map +7 -0
- package/dist/non-breaking-space.js +11 -32
- package/dist/non-breaking-space.js.map +7 -1
- package/dist/non-breaking-space.test.js +38 -0
- package/dist/non-breaking-space.test.js.map +7 -0
- package/dist/normalize-dashes.js +18 -37
- package/dist/normalize-dashes.js.map +7 -1
- package/dist/normalize-dashes.test.js +44 -0
- package/dist/normalize-dashes.test.js.map +7 -0
- package/dist/normalize-identifiers.js +54 -140
- package/dist/normalize-identifiers.js.map +7 -1
- package/dist/normalize-identifiers.test.js +44 -0
- package/dist/normalize-identifiers.test.js.map +7 -0
- package/dist/normalize-qualifying-information.js +23 -48
- package/dist/normalize-qualifying-information.js.map +7 -1
- package/dist/normalize-qualifying-information.test.js +44 -0
- package/dist/normalize-qualifying-information.test.js.map +7 -0
- package/dist/normalize-utf8-diacritics.js +19 -105
- package/dist/normalize-utf8-diacritics.js.map +7 -1
- package/dist/normalize-utf8-diacritics.test.js +44 -0
- package/dist/normalize-utf8-diacritics.test.js.map +7 -0
- package/dist/normalizeFieldForComparison.js +91 -158
- package/dist/normalizeFieldForComparison.js.map +7 -1
- package/dist/normalizeSubfieldValueForComparison.js +37 -77
- package/dist/normalizeSubfieldValueForComparison.js.map +7 -1
- package/dist/prepublicationUtils.js +58 -111
- package/dist/prepublicationUtils.js.map +7 -1
- package/dist/punctuation/index.js +56 -72
- package/dist/punctuation/index.js.map +7 -1
- package/dist/punctuation/rules/aut.js +372 -331
- package/dist/punctuation/rules/aut.js.map +7 -1
- package/dist/punctuation/rules/bib.js +420 -373
- package/dist/punctuation/rules/bib.js.map +7 -1
- package/dist/punctuation/rules/index.js +7 -21
- package/dist/punctuation/rules/index.js.map +7 -1
- package/dist/punctuation.test.js +44 -0
- package/dist/punctuation.test.js.map +7 -0
- package/dist/punctuation2.js +259 -802
- package/dist/punctuation2.js.map +7 -1
- package/dist/punctuation2.test.js +44 -0
- package/dist/punctuation2.test.js.map +7 -0
- package/dist/reindexSubfield6OccurenceNumbers.js +61 -96
- package/dist/reindexSubfield6OccurenceNumbers.js.map +7 -1
- package/dist/reindexSubfield6OccurenceNumbers.test.js +44 -0
- package/dist/reindexSubfield6OccurenceNumbers.test.js.map +7 -0
- package/dist/removeDuplicateDataFields.js +102 -202
- package/dist/removeDuplicateDataFields.js.map +7 -1
- package/dist/removeDuplicateDataFields.test.js +44 -0
- package/dist/removeDuplicateDataFields.test.js.map +7 -0
- package/dist/removeInferiorDataFields.js +104 -227
- package/dist/removeInferiorDataFields.js.map +7 -1
- package/dist/removeInferiorDataFields.test.js +44 -0
- package/dist/removeInferiorDataFields.test.js.map +7 -0
- package/dist/resolvable-ext-references-melinda.js +25 -60
- package/dist/resolvable-ext-references-melinda.js.map +7 -1
- package/dist/resolvable-ext-references-melinda.test.js +160 -0
- package/dist/resolvable-ext-references-melinda.test.js.map +7 -0
- package/dist/resolveOrphanedSubfield6s.js +32 -63
- package/dist/resolveOrphanedSubfield6s.js.map +7 -1
- package/dist/resolveOrphanedSubfield6s.test.js +44 -0
- package/dist/resolveOrphanedSubfield6s.test.js.map +7 -0
- package/dist/sanitize-vocabulary-source-codes.js +27 -55
- package/dist/sanitize-vocabulary-source-codes.js.map +7 -1
- package/dist/sanitize-vocabulary-source-codes.test.js +45 -0
- package/dist/sanitize-vocabulary-source-codes.test.js.map +7 -0
- package/dist/sort-tags.js +13 -25
- package/dist/sort-tags.js.map +7 -1
- package/dist/sort-tags.test.js +261 -0
- package/dist/sort-tags.test.js.map +7 -0
- package/dist/sortFields.js +152 -222
- package/dist/sortFields.js.map +7 -1
- package/dist/sortFields.test.js +44 -0
- package/dist/sortFields.test.js.map +7 -0
- package/dist/sortRelatorTerms.js +30 -68
- package/dist/sortRelatorTerms.js.map +7 -1
- package/dist/sortRelatorTerms.test.js +44 -0
- package/dist/sortRelatorTerms.test.js.map +7 -0
- package/dist/sortSubfields.js +102 -255
- package/dist/sortSubfields.js.map +7 -1
- package/dist/sortSubfields.test.js +44 -0
- package/dist/sortSubfields.test.js.map +7 -0
- package/dist/stripPunctuation.js +13 -36
- package/dist/stripPunctuation.js.map +7 -1
- package/dist/stripPunctuation.test.js +44 -0
- package/dist/stripPunctuation.test.js.map +7 -0
- package/dist/subfield-exclusion.js +28 -75
- package/dist/subfield-exclusion.js.map +7 -1
- package/dist/subfield-exclusion.test.js +471 -0
- package/dist/subfield-exclusion.test.js.map +7 -0
- package/dist/subfield6Utils.js +107 -269
- package/dist/subfield6Utils.js.map +7 -1
- package/dist/subfield8Utils.js +26 -50
- package/dist/subfield8Utils.js.map +7 -1
- package/dist/subfieldValueNormalizations.js +40 -74
- package/dist/subfieldValueNormalizations.js.map +7 -1
- package/dist/subfieldValueNormalizations.test.js +45 -0
- package/dist/subfieldValueNormalizations.test.js.map +7 -0
- package/dist/sync-007-and-300.js +22 -53
- package/dist/sync-007-and-300.js.map +7 -1
- package/dist/sync-007-and-300.test.js +44 -0
- package/dist/sync-007-and-300.test.js.map +7 -0
- package/dist/translate-terms.js +67 -155
- package/dist/translate-terms.js.map +7 -1
- package/dist/translate-terms.test.js +54 -0
- package/dist/translate-terms.test.js.map +7 -0
- package/dist/typeOfDate-008.js +10 -25
- package/dist/typeOfDate-008.js.map +7 -1
- package/dist/typeOfDate-008.test.js +40 -0
- package/dist/typeOfDate-008.test.js.map +7 -0
- package/dist/unicode-decomposition.js +94 -107
- package/dist/unicode-decomposition.js.map +7 -1
- package/dist/unicode-decomposition.test.js +94 -0
- package/dist/unicode-decomposition.test.js.map +7 -0
- package/dist/update-field-540.js +30 -75
- package/dist/update-field-540.js.map +7 -1
- package/dist/update-field-540.test.js +44 -0
- package/dist/update-field-540.test.js.map +7 -0
- package/dist/urn.js +55 -128
- package/dist/urn.js.map +7 -1
- package/dist/urn.test.js +44 -0
- package/dist/urn.test.js.map +7 -0
- package/dist/utils.js +78 -126
- package/dist/utils.js.map +7 -1
- package/eslint.config.mjs +1 -2
- package/package.json +28 -101
- package/src/access-rights.js +1 -1
- package/src/{access-rights.spec.js → access-rights.test.js} +9 -10
- package/src/addMissingField041.js +1 -1
- package/src/{addMissingField336.spec.js → addMissingField041.test.js} +13 -14
- package/src/addMissingField336.js +3 -3
- package/src/{addMissingField041.spec.js → addMissingField336.test.js} +13 -14
- package/src/addMissingField337.js +2 -2
- package/src/{addMissingField337.spec.js → addMissingField337.test.js} +13 -14
- package/src/addMissingField338.js +2 -2
- package/src/{addMissingField338.spec.js → addMissingField338.test.js} +13 -14
- package/src/cyrillux-usemarcon-replacement.js +18 -18
- package/src/{cyrillux-usemarcon-replacement.spec.js → cyrillux-usemarcon-replacement.test.js} +17 -14
- package/src/cyrillux.js +19 -12
- package/src/{cyrillux.spec.js → cyrillux.test.js} +13 -14
- package/src/disambiguateSeriesStatements.js +2 -2
- package/src/{disambiguateSeriesStatements.spec.js → disambiguateSeriesStatements.test.js} +12 -13
- package/src/double-commas.js +1 -1
- package/src/{double-commas.spec.js → double-commas.test.js} +9 -11
- package/src/duplicates-ind1.js +1 -1
- package/src/{duplicates-ind1.spec.js → duplicates-ind1.test.js} +12 -13
- package/src/{empty-fields.spec.js → empty-fields.test.js} +11 -13
- package/src/ending-punctuation-conf.js +6 -5
- package/src/ending-punctuation.js +115 -24
- package/src/{ending-punctuation.spec.js → ending-punctuation.test.js} +357 -275
- package/src/{ending-whitespace.spec.js → ending-whitespace.test.js} +12 -13
- package/src/field-008-18-34-character-groups.js +2 -2
- package/src/{field-008-18-34-character-groups.spec.js → field-008-18-34-character-groups.test.js} +13 -13
- package/src/field-505-separators.js +3 -3
- package/src/{field-505-separators.spec.js → field-505-separators.test.js} +16 -14
- package/src/field-521-fix.js +2 -2
- package/src/{field-521-fix.spec.js → field-521-fix.test.js} +12 -13
- package/src/field-exclusion.js +1 -1
- package/src/{field-exclusion.spec.js → field-exclusion.test.js} +60 -57
- package/src/{field-structure.spec.js → field-structure.test.js} +29 -29
- package/src/{fields-present.spec.js → fields-present.test.js} +12 -15
- package/src/fix-33X.js +4 -4
- package/src/{fix-33X.spec.js → fix-33X.test.js} +13 -14
- package/src/fix-country-codes.js +1 -1
- package/src/{fix-country-codes.spec.js → fix-country-codes.test.js} +12 -13
- package/src/fix-language-codes.js +5 -5
- package/src/{fix-language-codes.spec.js → fix-language-codes.test.js} +12 -13
- package/src/fixRelatorTerms.js +5 -5
- package/src/{fixRelatorTerms.spec.js → fixRelatorTerms.test.js} +13 -13
- package/src/{fixed-fields.spec.js → fixed-fields.test.js} +11 -14
- package/src/identical-fields.js +1 -1
- package/src/{identical-fields.spec.js → identical-fields.test.js} +9 -11
- package/src/index.js +132 -59
- package/src/indicator-fixes.js +17 -4
- package/src/{indicator-fixes.spec.js → indicator-fixes.test.js} +9 -12
- package/src/isbn-issn.js +12 -7
- package/src/{isbn-issn.spec.js → isbn-issn.test.js} +20 -22
- package/src/{item-language.spec.js → item-language.test.js} +21 -22
- package/src/melindaCustomMergeFields.js +1 -1
- package/src/merge-fields/controlSubfields.js +1 -1
- package/src/merge-fields/counterpartField.js +14 -9
- package/src/merge-fields/dataProvenance.js +41 -0
- package/src/merge-fields/index.js +12 -3
- package/src/merge-fields/mergableIndicator.js +1 -1
- package/src/merge-fields/mergeField.js +8 -8
- package/src/merge-fields/mergeIndicator.js +1 -1
- package/src/merge-fields/mergeOrAddPostprocess.js +4 -4
- package/src/merge-fields/mergeOrAddSubfield.js +2 -2
- package/src/merge-fields/mergeSubfield.js +4 -4
- package/src/merge-fields/removeDuplicateSubfields.js +2 -2
- package/src/{merge-fields.spec.js → merge-fields.test.js} +18 -15
- package/src/mergeField500Lisapainokset.js +1 -1
- package/src/{mergeField500Lisapainokset.spec.js → mergeField500Lisapainokset.test.js} +12 -13
- package/src/mergeRelatorTermFields.js +5 -7
- package/src/{mergeRelatorTermFields.spec.js → mergeRelatorTermFields.test.js} +12 -13
- package/src/modernize-502.js +1 -1
- package/src/{modernize-502.spec.js → modernize-502.test.js} +12 -13
- package/src/multiple-subfield-0.js +3 -3
- package/src/{multiple-subfield-0.spec.js → multiple-subfield-0.test.js} +13 -13
- package/src/{non-breaking-space.spec.js → non-breaking-space.test.js} +12 -13
- package/src/normalize-dashes.js +2 -2
- package/src/{normalize-dashes.spec.js → normalize-dashes.test.js} +12 -13
- package/src/normalize-identifiers.js +1 -1
- package/src/{normalize-identifiers.spec.js → normalize-identifiers.test.js} +12 -13
- package/src/normalize-qualifying-information.js +2 -2
- package/src/{normalize-qualifying-information.spec.js → normalize-qualifying-information.test.js} +12 -13
- package/src/normalize-utf8-diacritics.js +2 -2
- package/src/{normalize-utf8-diacritics.spec.js → normalize-utf8-diacritics.test.js} +13 -13
- package/src/normalizeFieldForComparison.js +32 -6
- package/src/normalizeSubfieldValueForComparison.js +1 -1
- package/src/prepublicationUtils.js +4 -4
- package/src/punctuation/index.js +1 -1
- package/src/punctuation/rules/index.js +2 -2
- package/src/{punctuation.spec.js → punctuation.test.js} +12 -13
- package/src/punctuation2.js +17 -8
- package/src/{punctuation2.spec.js → punctuation2.test.js} +12 -13
- package/src/reindexSubfield6OccurenceNumbers.js +5 -7
- package/src/{reindexSubfield6OccurenceNumbers.spec.js → reindexSubfield6OccurenceNumbers.test.js} +12 -13
- package/src/removeDuplicateDataFields.js +11 -19
- package/src/{removeDuplicateDataFields.spec.js → removeDuplicateDataFields.test.js} +12 -13
- package/src/removeInferiorDataFields.js +15 -12
- package/src/{removeInferiorDataFields.spec.js → removeInferiorDataFields.test.js} +13 -13
- package/src/resolvable-ext-references-melinda.js +1 -1
- package/src/{resolvable-ext-references-melinda.spec.js → resolvable-ext-references-melinda.test.js} +42 -27
- package/src/resolveOrphanedSubfield6s.js +6 -6
- package/src/{resolveOrphanedSubfield6s.spec.js → resolveOrphanedSubfield6s.test.js} +13 -13
- package/src/sanitize-vocabulary-source-codes.js +4 -4
- package/src/{sanitize-vocabulary-source-codes.spec.js → sanitize-vocabulary-source-codes.test.js} +16 -14
- package/src/{sort-tags.spec.js → sort-tags.test.js} +9 -11
- package/src/sortFields.js +4 -4
- package/src/{sortFields.spec.js → sortFields.test.js} +12 -13
- package/src/sortRelatorTerms.js +3 -3
- package/src/{sortRelatorTerms.spec.js → sortRelatorTerms.test.js} +13 -13
- package/src/sortSubfields.js +8 -6
- package/src/{sortSubfields.spec.js → sortSubfields.test.js} +13 -13
- package/src/stripPunctuation.js +3 -3
- package/src/{stripPunctuation.spec.js → stripPunctuation.test.js} +13 -13
- package/src/subfield-exclusion.js +1 -1
- package/src/{subfield-exclusion.spec.js → subfield-exclusion.test.js} +45 -36
- package/src/subfield6Utils.js +6 -10
- package/src/subfield8Utils.js +4 -4
- package/src/subfieldValueNormalizations.js +3 -3
- package/src/{subfieldValueNormalizations.spec.js → subfieldValueNormalizations.test.js} +18 -14
- package/src/sync-007-and-300.js +2 -2
- package/src/{sync-007-and-300.spec.js → sync-007-and-300.test.js} +13 -13
- package/src/translate-terms.js +3 -3
- package/src/translate-terms.test.js +75 -0
- package/src/{typeOfDate-008.spec.js → typeOfDate-008.test.js} +12 -13
- package/src/{unicode-decomposition.spec.js → unicode-decomposition.test.js} +10 -16
- package/src/update-field-540.js +2 -2
- package/src/{update-field-540.spec.js → update-field-540.test.js} +13 -10
- package/src/urn.js +2 -2
- package/src/{urn.spec.js → urn.test.js} +12 -13
- package/src/utils.js +21 -5
- package/test-fixtures/field-505-separators/03/expectedResult.json +3 -1
- package/test-fixtures/field-505-separators/03/record.json +3 -0
- package/test-fixtures/indicator-fixes/10/expectedResult.json +11 -0
- package/test-fixtures/indicator-fixes/10/metadata.json +4 -0
- package/test-fixtures/indicator-fixes/10/record.json +11 -0
- package/test-fixtures/merge-fields/f05/expectedResult.json +24 -0
- package/test-fixtures/merge-fields/f05/metadata.json +6 -0
- package/test-fixtures/merge-fields/f05/record.json +30 -0
- package/test-fixtures/normalize-subfield-value/01/metadata.json +4 -1
- package/test-fixtures/normalize-subfield-value/01/record.json +3 -0
- package/test-fixtures/normalize-subfield-value/02/expectedResult.json +3 -1
- package/test-fixtures/normalize-subfield-value/02/metadata.json +2 -1
- package/test-fixtures/normalize-subfield-value/02/record.json +3 -0
- package/test-fixtures/remove-inferior-datafields/f16/expectedResult.json +12 -0
- package/test-fixtures/remove-inferior-datafields/f16/metadata.json +5 -0
- package/test-fixtures/remove-inferior-datafields/f16/record.json +14 -0
- package/test-fixtures/sanitize-vocabulary-source-codes/f03/expectedResult.json +3 -1
- package/test-fixtures/sanitize-vocabulary-source-codes/f04/expectedResult.json +3 -1
- package/test-fixtures/sanitize-vocabulary-source-codes/v04/metadata.json +1 -4
- package/test-fixtures/sanitize-vocabulary-source-codes/v04/record.json +1 -1
- package/test-fixtures/translate-terms-data.js +42 -0
- package/dist/access-rights.spec.js +0 -195
- package/dist/access-rights.spec.js.map +0 -1
- package/dist/addMissingField041.spec.js +0 -45
- package/dist/addMissingField041.spec.js.map +0 -1
- package/dist/addMissingField336.spec.js +0 -45
- package/dist/addMissingField336.spec.js.map +0 -1
- package/dist/addMissingField337.spec.js +0 -43
- package/dist/addMissingField337.spec.js.map +0 -1
- package/dist/addMissingField338.spec.js +0 -45
- package/dist/addMissingField338.spec.js.map +0 -1
- package/dist/cyrillux-usemarcon-replacement.spec.js +0 -45
- package/dist/cyrillux-usemarcon-replacement.spec.js.map +0 -1
- package/dist/cyrillux.spec.js +0 -46
- package/dist/cyrillux.spec.js.map +0 -1
- package/dist/disambiguateSeriesStatements.spec.js +0 -51
- package/dist/disambiguateSeriesStatements.spec.js.map +0 -1
- package/dist/double-commas.spec.js +0 -73
- package/dist/double-commas.spec.js.map +0 -1
- package/dist/duplicates-ind1.spec.js +0 -45
- package/dist/duplicates-ind1.spec.js.map +0 -1
- package/dist/empty-fields.spec.js +0 -118
- package/dist/empty-fields.spec.js.map +0 -1
- package/dist/ending-punctuation.spec.js +0 -2654
- package/dist/ending-punctuation.spec.js.map +0 -1
- package/dist/ending-whitespace.spec.js +0 -42
- package/dist/ending-whitespace.spec.js.map +0 -1
- package/dist/field-008-18-34-character-groups.spec.js +0 -51
- package/dist/field-008-18-34-character-groups.spec.js.map +0 -1
- package/dist/field-505-separators.spec.js +0 -51
- package/dist/field-505-separators.spec.js.map +0 -1
- package/dist/field-521-fix.spec.js +0 -51
- package/dist/field-521-fix.spec.js.map +0 -1
- package/dist/field-exclusion.spec.js +0 -1054
- package/dist/field-exclusion.spec.js.map +0 -1
- package/dist/field-structure.spec.js +0 -535
- package/dist/field-structure.spec.js.map +0 -1
- package/dist/fields-present.spec.js +0 -121
- package/dist/fields-present.spec.js.map +0 -1
- package/dist/fix-33X.spec.js +0 -45
- package/dist/fix-33X.spec.js.map +0 -1
- package/dist/fix-country-codes.spec.js +0 -51
- package/dist/fix-country-codes.spec.js.map +0 -1
- package/dist/fix-language-codes.spec.js +0 -44
- package/dist/fix-language-codes.spec.js.map +0 -1
- package/dist/fixRelatorTerms.spec.js +0 -51
- package/dist/fixRelatorTerms.spec.js.map +0 -1
- package/dist/fixed-fields.spec.js +0 -140
- package/dist/fixed-fields.spec.js.map +0 -1
- package/dist/identical-fields.spec.js +0 -99
- package/dist/identical-fields.spec.js.map +0 -1
- package/dist/indicator-fixes.spec.js +0 -51
- package/dist/indicator-fixes.spec.js.map +0 -1
- package/dist/isbn-issn.spec.js +0 -595
- package/dist/isbn-issn.spec.js.map +0 -1
- package/dist/item-language.spec.js +0 -306
- package/dist/item-language.spec.js.map +0 -1
- package/dist/melindaCustomMergeFields.json +0 -5120
- package/dist/merge-fields.spec.js +0 -51
- package/dist/merge-fields.spec.js.map +0 -1
- package/dist/mergeField500Lisapainokset.spec.js +0 -51
- package/dist/mergeField500Lisapainokset.spec.js.map +0 -1
- package/dist/mergeRelatorTermFields.spec.js +0 -51
- package/dist/mergeRelatorTermFields.spec.js.map +0 -1
- package/dist/modernize-502.spec.js +0 -49
- package/dist/modernize-502.spec.js.map +0 -1
- package/dist/multiple-subfield-0.spec.js +0 -51
- package/dist/multiple-subfield-0.spec.js.map +0 -1
- package/dist/non-breaking-space.spec.js +0 -42
- package/dist/non-breaking-space.spec.js.map +0 -1
- package/dist/normalize-dashes.spec.js +0 -51
- package/dist/normalize-dashes.spec.js.map +0 -1
- package/dist/normalize-identifiers.spec.js +0 -51
- package/dist/normalize-identifiers.spec.js.map +0 -1
- package/dist/normalize-qualifying-information.spec.js +0 -51
- package/dist/normalize-qualifying-information.spec.js.map +0 -1
- package/dist/normalize-utf8-diacritics.spec.js +0 -51
- package/dist/normalize-utf8-diacritics.spec.js.map +0 -1
- package/dist/punctuation.spec.js +0 -51
- package/dist/punctuation.spec.js.map +0 -1
- package/dist/punctuation2.spec.js +0 -51
- package/dist/punctuation2.spec.js.map +0 -1
- package/dist/reindexSubfield6OccurenceNumbers.spec.js +0 -51
- package/dist/reindexSubfield6OccurenceNumbers.spec.js.map +0 -1
- package/dist/removeDuplicateDataFields.spec.js +0 -51
- package/dist/removeDuplicateDataFields.spec.js.map +0 -1
- package/dist/removeInferiorDataFields.spec.js +0 -51
- package/dist/removeInferiorDataFields.spec.js.map +0 -1
- package/dist/resolvable-ext-references-melinda.spec.js +0 -166
- package/dist/resolvable-ext-references-melinda.spec.js.map +0 -1
- package/dist/resolveOrphanedSubfield6s.spec.js +0 -51
- package/dist/resolveOrphanedSubfield6s.spec.js.map +0 -1
- package/dist/sanitize-vocabulary-source-codes.spec.js +0 -51
- package/dist/sanitize-vocabulary-source-codes.spec.js.map +0 -1
- package/dist/sort-tags.spec.js +0 -207
- package/dist/sort-tags.spec.js.map +0 -1
- package/dist/sortFields.spec.js +0 -51
- package/dist/sortFields.spec.js.map +0 -1
- package/dist/sortRelatorTerms.spec.js +0 -51
- package/dist/sortRelatorTerms.spec.js.map +0 -1
- package/dist/sortSubfields.spec.js +0 -52
- package/dist/sortSubfields.spec.js.map +0 -1
- package/dist/stripPunctuation.spec.js +0 -51
- package/dist/stripPunctuation.spec.js.map +0 -1
- package/dist/subfield-exclusion.spec.js +0 -523
- package/dist/subfield-exclusion.spec.js.map +0 -1
- package/dist/subfieldValueNormalizations.spec.js +0 -51
- package/dist/subfieldValueNormalizations.spec.js.map +0 -1
- package/dist/sync-007-and-300.spec.js +0 -51
- package/dist/sync-007-and-300.spec.js.map +0 -1
- package/dist/translate-terms.spec.js +0 -51
- package/dist/translate-terms.spec.js.map +0 -1
- package/dist/typeOfDate-008.spec.js +0 -47
- package/dist/typeOfDate-008.spec.js.map +0 -1
- package/dist/unicode-decomposition.spec.js +0 -91
- package/dist/unicode-decomposition.spec.js.map +0 -1
- package/dist/update-field-540.spec.js +0 -51
- package/dist/update-field-540.spec.js.map +0 -1
- package/dist/urn.spec.js +0 -52
- package/dist/urn.spec.js.map +0 -1
- package/src/melindaCustomMergeFields.json +0 -5120
- package/src/translate-terms.spec.js +0 -52
|
@@ -1,33 +1,81 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
//
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
// '
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
1
|
+
const defaultNonMergableFields = [
|
|
2
|
+
"066",
|
|
3
|
+
// 066 - Character sets present (NR)
|
|
4
|
+
"382",
|
|
5
|
+
// 382: merging would be madness due to $n position etc...
|
|
6
|
+
// However, this will miss cases, where only $5 or $9 differs... Such is!
|
|
7
|
+
// 59X: always copy, never merge. NB! No specs exist!
|
|
8
|
+
"590",
|
|
9
|
+
"591",
|
|
10
|
+
"592",
|
|
11
|
+
"593",
|
|
12
|
+
"594",
|
|
13
|
+
"595",
|
|
14
|
+
"596",
|
|
15
|
+
"597",
|
|
16
|
+
"598",
|
|
17
|
+
"599",
|
|
18
|
+
"654",
|
|
19
|
+
"657",
|
|
20
|
+
"658",
|
|
21
|
+
"662",
|
|
22
|
+
"668",
|
|
23
|
+
"752",
|
|
24
|
+
// '753', // NV: Commented because of MRA-465 (2023-08-20)
|
|
25
|
+
"754",
|
|
26
|
+
"758",
|
|
27
|
+
"760",
|
|
28
|
+
"762",
|
|
29
|
+
"765",
|
|
30
|
+
"767",
|
|
31
|
+
"770",
|
|
32
|
+
"772",
|
|
33
|
+
"775",
|
|
34
|
+
"777",
|
|
35
|
+
"780",
|
|
36
|
+
"785",
|
|
37
|
+
"786",
|
|
38
|
+
"787",
|
|
39
|
+
// Them 8XX fields are holdings related fields:
|
|
40
|
+
"841",
|
|
41
|
+
"842",
|
|
42
|
+
"843",
|
|
43
|
+
"844",
|
|
44
|
+
"845",
|
|
45
|
+
"852",
|
|
46
|
+
"853",
|
|
47
|
+
"854",
|
|
48
|
+
"855",
|
|
49
|
+
// '856' is mergable, but a pain in the ass
|
|
50
|
+
"863",
|
|
51
|
+
"864",
|
|
52
|
+
"865",
|
|
53
|
+
"866",
|
|
54
|
+
"867",
|
|
55
|
+
"868",
|
|
56
|
+
"876",
|
|
57
|
+
"877",
|
|
58
|
+
"878",
|
|
59
|
+
"881",
|
|
60
|
+
"882",
|
|
61
|
+
"883",
|
|
62
|
+
// '884',
|
|
63
|
+
"885",
|
|
64
|
+
"886",
|
|
65
|
+
"887",
|
|
66
|
+
"900",
|
|
67
|
+
"901",
|
|
68
|
+
"910",
|
|
69
|
+
"940",
|
|
70
|
+
"960",
|
|
71
|
+
"995",
|
|
72
|
+
"CAT",
|
|
73
|
+
"HLI",
|
|
74
|
+
"LOW",
|
|
75
|
+
"SID"
|
|
76
|
+
];
|
|
77
|
+
export function mergableTag(tag, config) {
|
|
30
78
|
const nonMergableFields = config.skipMergeTags && Array.isArray(config.skipMergeTags) ? config.skipMergeTags : defaultNonMergableFields;
|
|
31
79
|
return !nonMergableFields.includes(tag);
|
|
32
80
|
}
|
|
33
|
-
//# sourceMappingURL=mergableTag.js.map
|
|
81
|
+
//# sourceMappingURL=mergableTag.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/merge-fields/mergableTag.js"],
|
|
4
|
+
"sourcesContent": ["//import createDebugLogger from 'debug';\n//import {nvdebug} from './utils';\n//const debug = createDebugLogger('@natlibfi/melinda-marc-record-merge-reducers');\n\n// Actually I hope that 066. 842-845, 852-855. 863-868, 876-878 and HLI are already removed\n\n\nconst defaultNonMergableFields = [\n '066', // 066 - Character sets present (NR)\n '382', // 382: merging would be madness due to $n position etc...\n // However, this will miss cases, where only $5 or $9 differs... Such is!\n // 59X: always copy, never merge. NB! No specs exist!\n '590',\n '591',\n '592',\n '593',\n '594',\n '595',\n '596',\n '597',\n '598',\n '599',\n '654',\n '657',\n '658',\n '662',\n '668',\n '752',\n // '753', // NV: Commented because of MRA-465 (2023-08-20)\n '754',\n '758',\n '760',\n '762',\n '765',\n '767',\n '770',\n '772',\n '775',\n '777',\n '780',\n '785',\n '786',\n '787',\n // Them 8XX fields are holdings related fields:\n '841',\n '842',\n '843',\n '844',\n '845',\n '852',\n '853',\n '854',\n '855',\n // '856' is mergable, but a pain in the ass\n '863',\n '864',\n '865',\n '866',\n '867',\n '868',\n '876',\n '877',\n '878',\n '881',\n '882',\n '883',\n // '884',\n '885',\n '886',\n '887',\n '900',\n '901',\n '910',\n '940',\n '960',\n '995',\n 'CAT',\n 'HLI',\n 'LOW',\n 'SID'\n];\n\n\nexport function mergableTag(tag, config) {\n // Use either configured non-mergable tags or default non-mergable tags\n const nonMergableFields = config.skipMergeTags && Array.isArray(config.skipMergeTags) ? config.skipMergeTags : defaultNonMergableFields;\n\n return !nonMergableFields.includes(tag);\n}\n"],
|
|
5
|
+
"mappings": "AAOA,MAAM,2BAA2B;AAAA,EAC/B;AAAA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAGO,gBAAS,YAAY,KAAK,QAAQ;AAEvC,QAAM,oBAAoB,OAAO,iBAAiB,MAAM,QAAQ,OAAO,aAAa,IAAI,OAAO,gBAAgB;AAE/G,SAAO,CAAC,kBAAkB,SAAS,GAAG;AACxC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,175 +1,70 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
},
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
},
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
'2': 1,
|
|
27
|
-
'3': 1,
|
|
28
|
-
' ': 2
|
|
29
|
-
},
|
|
30
|
-
'341': {
|
|
31
|
-
'0': 1,
|
|
32
|
-
'1': 1,
|
|
33
|
-
' ': 2
|
|
34
|
-
},
|
|
35
|
-
'363': {
|
|
36
|
-
'0': 1,
|
|
37
|
-
'1': 1,
|
|
38
|
-
' ': 2
|
|
39
|
-
},
|
|
40
|
-
'382': {
|
|
41
|
-
'0': 1,
|
|
42
|
-
'1': 1,
|
|
43
|
-
'2': 1,
|
|
44
|
-
'3': 1,
|
|
45
|
-
' ': 2
|
|
46
|
-
},
|
|
47
|
-
'384': {
|
|
48
|
-
'0': 1,
|
|
49
|
-
'1': 1,
|
|
50
|
-
' ': 2
|
|
51
|
-
},
|
|
52
|
-
'388': {
|
|
53
|
-
'0': 1,
|
|
54
|
-
'1': 1,
|
|
55
|
-
' ': 2
|
|
56
|
-
},
|
|
57
|
-
'490': ['1', '0'],
|
|
58
|
-
'505': ['8', '0', '2', '1'],
|
|
59
|
-
'506': {
|
|
60
|
-
'0': 1,
|
|
61
|
-
'1': 1,
|
|
62
|
-
' ': 2
|
|
63
|
-
},
|
|
64
|
-
'541': {
|
|
65
|
-
'0': 1,
|
|
66
|
-
'1': 1,
|
|
67
|
-
' ': 2
|
|
68
|
-
},
|
|
69
|
-
'542': {
|
|
70
|
-
'0': 1,
|
|
71
|
-
'1': 1,
|
|
72
|
-
' ': 2
|
|
73
|
-
},
|
|
74
|
-
'544': {
|
|
75
|
-
'0': 1,
|
|
76
|
-
'1': 1,
|
|
77
|
-
' ': 2
|
|
78
|
-
},
|
|
79
|
-
'545': {
|
|
80
|
-
'0': 1,
|
|
81
|
-
'1': 1,
|
|
82
|
-
' ': 2
|
|
83
|
-
},
|
|
84
|
-
'561': {
|
|
85
|
-
'0': 1,
|
|
86
|
-
'1': 1,
|
|
87
|
-
' ': 2
|
|
88
|
-
},
|
|
89
|
-
'583': {
|
|
90
|
-
'0': 1,
|
|
91
|
-
'1': 1,
|
|
92
|
-
' ': 2
|
|
93
|
-
},
|
|
94
|
-
'588': {
|
|
95
|
-
'0': 1,
|
|
96
|
-
'1': 1,
|
|
97
|
-
' ': 2
|
|
98
|
-
},
|
|
99
|
-
'650': [' ', '1', '2', '0']
|
|
1
|
+
export const mergeConfig = {
|
|
2
|
+
"mergeConfiguration": {
|
|
3
|
+
"comment #1": "Meaningless indicators (=indicators having but one legal value) are derived from melindaCustomMergeFields.",
|
|
4
|
+
"comment #2": "Meaningless indicators and non-filing indicators never prevent merge. (Hard-coded in mergableIndicator.js)",
|
|
5
|
+
"comment #3": "When merging, indicator preference defaults are defined in mergeIndicators.js. However, these can be overridden here.",
|
|
6
|
+
"indicator1PreferredValues": {
|
|
7
|
+
"022": { "0": 1, "1": 1, " ": 2 },
|
|
8
|
+
"041": { "0": 1, "1": 1, " ": 2 },
|
|
9
|
+
"246": { "0": 1, "1": 1, "2": 1, "3": 1, " ": 2 },
|
|
10
|
+
"341": { "0": 1, "1": 1, " ": 2 },
|
|
11
|
+
"363": { "0": 1, "1": 1, " ": 2 },
|
|
12
|
+
"382": { "0": 1, "1": 1, "2": 1, "3": 1, " ": 2 },
|
|
13
|
+
"384": { "0": 1, "1": 1, " ": 2 },
|
|
14
|
+
"388": { "0": 1, "1": 1, " ": 2 },
|
|
15
|
+
"490": ["1", "0"],
|
|
16
|
+
"505": ["8", "0", "2", "1"],
|
|
17
|
+
"506": { "0": 1, "1": 1, " ": 2 },
|
|
18
|
+
"541": { "0": 1, "1": 1, " ": 2 },
|
|
19
|
+
"542": { "0": 1, "1": 1, " ": 2 },
|
|
20
|
+
"544": { "0": 1, "1": 1, " ": 2 },
|
|
21
|
+
"545": { "0": 1, "1": 1, " ": 2 },
|
|
22
|
+
"561": { "0": 1, "1": 1, " ": 2 },
|
|
23
|
+
"583": { "0": 1, "1": 1, " ": 2 },
|
|
24
|
+
"588": { "0": 1, "1": 1, " ": 2 },
|
|
25
|
+
"650": [" ", "1", "2", "0"]
|
|
100
26
|
},
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
},
|
|
107
|
-
|
|
108
|
-
'0': 1,
|
|
109
|
-
'1': 1,
|
|
110
|
-
'2': 1,
|
|
111
|
-
' ': 2
|
|
112
|
-
},
|
|
113
|
-
'246': {
|
|
114
|
-
'0': 1,
|
|
115
|
-
'1': 1,
|
|
116
|
-
'2': 1,
|
|
117
|
-
'3': 1,
|
|
118
|
-
'4': 1,
|
|
119
|
-
'5': 1,
|
|
120
|
-
'6': 1,
|
|
121
|
-
'7': 1,
|
|
122
|
-
'8': 1,
|
|
123
|
-
' ': 2
|
|
124
|
-
},
|
|
125
|
-
'363': {
|
|
126
|
-
'0': 1,
|
|
127
|
-
'1': 1,
|
|
128
|
-
' ': 2
|
|
129
|
-
},
|
|
130
|
-
'382': {
|
|
131
|
-
'0': 1,
|
|
132
|
-
'1': 1,
|
|
133
|
-
' ': 2
|
|
134
|
-
},
|
|
135
|
-
'730': ['2', ' ']
|
|
27
|
+
"indicator2PreferredValues": {
|
|
28
|
+
"024": { "0": 1, "1": 1, " ": 2 },
|
|
29
|
+
"033": { "0": 1, "1": 1, "2": 1, " ": 2 },
|
|
30
|
+
"246": { "0": 1, "1": 1, "2": 1, "3": 1, "4": 1, "5": 1, "6": 1, "7": 1, "8": 1, " ": 2 },
|
|
31
|
+
"363": { "0": 1, "1": 1, " ": 2 },
|
|
32
|
+
"382": { "0": 1, "1": 1, " ": 2 },
|
|
33
|
+
"730": ["2", " "]
|
|
136
34
|
},
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
},
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
},
|
|
171
|
-
'newTag': '730'
|
|
172
|
-
}]
|
|
35
|
+
"comment #4": "List indicators that do not block merge here. Non-filing indicators do not prevent field merge (their support is hard-coded). They are mainly listed here as an example.",
|
|
36
|
+
"ignoreIndicator1": ["100", "110", "111", "130", "210", "242", "245", "246", "247", "307", "490", "505", "506", "510", "511", "516", "520", "521", "522", "524", "526", "583", "586", "600", "610", "630", "650", "651", "655", "700", "710", "730", "740", "760", "762", "765", "767", "770", "772", "773", "774", "775", "776", "777", "780", "785", "786", "787", "788", "800", "810"],
|
|
37
|
+
"ignoreIndicator2": ["017", "222", "240", "242", "243", "245", "760", "762", "765", "767", "770", "773", "774", "775", "776", "777", "786", "787", "788", "830"],
|
|
38
|
+
"comment #5": "If one indicator has value, and the other has not, it does not necessarily mean mismatch",
|
|
39
|
+
"tolerateBlankIndicator1": ["022", "037", "041", "046", "050", "055", "060", "070", "080", "246", "260", "264", "341", "363", "382", "384", "388", "541", "542", "544", "545", "561", "583", "588", "856"],
|
|
40
|
+
"tolerateBlankIndicator2": ["024", "033", "082", "246", "363", "382", "856"],
|
|
41
|
+
"preprocessorDirectives": [
|
|
42
|
+
{
|
|
43
|
+
"operation": "retag",
|
|
44
|
+
"recordType": "source",
|
|
45
|
+
"fieldSpecification": { "tag": "100" },
|
|
46
|
+
"comment": "NB! Retags should check corresponding 880 fields as well.",
|
|
47
|
+
"newTag": "700"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"operation": "retag",
|
|
51
|
+
"recordType": "source",
|
|
52
|
+
"fieldSpecification": { "tag": "110" },
|
|
53
|
+
"newTag": "710"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"operation": "retag",
|
|
57
|
+
"recordType": "source",
|
|
58
|
+
"fieldSpecification": { "tag": "111" },
|
|
59
|
+
"newTag": "711"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"operation": "retag",
|
|
63
|
+
"recordType": "source",
|
|
64
|
+
"fieldSpecification": { "tag": "130" },
|
|
65
|
+
"newTag": "730"
|
|
66
|
+
}
|
|
67
|
+
]
|
|
173
68
|
}
|
|
174
69
|
};
|
|
175
|
-
//# sourceMappingURL=mergeConfig.js.map
|
|
70
|
+
//# sourceMappingURL=mergeConfig.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/merge-fields/mergeConfig.js"],
|
|
4
|
+
"sourcesContent": ["export const mergeConfig = {\n 'mergeConfiguration': {\n 'comment #1': 'Meaningless indicators (=indicators having but one legal value) are derived from melindaCustomMergeFields.',\n 'comment #2': 'Meaningless indicators and non-filing indicators never prevent merge. (Hard-coded in mergableIndicator.js)',\n 'comment #3': 'When merging, indicator preference defaults are defined in mergeIndicators.js. However, these can be overridden here.',\n 'indicator1PreferredValues': {\n '022': {'0': 1, '1': 1, ' ': 2},\n '041': {'0': 1, '1': 1, ' ': 2},\n '246': {'0': 1, '1': 1, '2': 1, '3': 1, ' ': 2},\n '341': {'0': 1, '1': 1, ' ': 2},\n '363': {'0': 1, '1': 1, ' ': 2},\n '382': {'0': 1, '1': 1, '2': 1, '3': 1, ' ': 2},\n '384': {'0': 1, '1': 1, ' ': 2},\n '388': {'0': 1, '1': 1, ' ': 2},\n '490': ['1', '0'],\n '505': ['8', '0', '2', '1'],\n '506': {'0': 1, '1': 1, ' ': 2},\n '541': {'0': 1, '1': 1, ' ': 2},\n '542': {'0': 1, '1': 1, ' ': 2},\n '544': {'0': 1, '1': 1, ' ': 2},\n '545': {'0': 1, '1': 1, ' ': 2},\n '561': {'0': 1, '1': 1, ' ': 2},\n '583': {'0': 1, '1': 1, ' ': 2},\n '588': {'0': 1, '1': 1, ' ': 2},\n '650': [' ', '1', '2', '0']\n },\n 'indicator2PreferredValues': {\n '024': {'0': 1, '1': 1, ' ': 2},\n '033': {'0': 1, '1': 1, '2': 1, ' ': 2},\n '246': {'0': 1, '1': 1, '2': 1, '3': 1, '4': 1, '5': 1, '6': 1, '7': 1, '8': 1, ' ': 2},\n '363': {'0': 1, '1': 1, ' ': 2},\n '382': {'0': 1, '1': 1, ' ': 2},\n '730': ['2', ' ']\n },\n 'comment #4': 'List indicators that do not block merge here. Non-filing indicators do not prevent field merge (their support is hard-coded). They are mainly listed here as an example.',\n 'ignoreIndicator1': ['100', '110', '111', '130', '210', '242', '245', '246', '247', '307', '490', '505', '506', '510', '511', '516', '520', '521', '522', '524', '526', '583', '586', '600', '610', '630', '650', '651', '655', '700', '710', '730', '740', '760', '762', '765', '767', '770', '772', '773', '774', '775', '776', '777', '780', '785', '786', '787', '788', '800', '810'],\n 'ignoreIndicator2': ['017', '222', '240', '242', '243', '245', '760', '762', '765', '767', '770', '773', '774', '775', '776', '777', '786', '787', '788', '830'],\n 'comment #5': 'If one indicator has value, and the other has not, it does not necessarily mean mismatch',\n 'tolerateBlankIndicator1': ['022', '037', '041', '046', '050', '055', '060', '070', '080', '246', '260', '264', '341', '363', '382', '384', '388', '541', '542', '544', '545', '561', '583', '588', '856'],\n 'tolerateBlankIndicator2': ['024', '033', '082', '246', '363', '382', '856'],\n 'preprocessorDirectives': [\n {\n 'operation': 'retag',\n 'recordType': 'source',\n 'fieldSpecification': {'tag': '100'},\n 'comment': 'NB! Retags should check corresponding 880 fields as well.',\n 'newTag': '700'\n },\n {\n 'operation': 'retag',\n 'recordType': 'source',\n 'fieldSpecification': {'tag': '110'},\n 'newTag': '710'\n },\n {\n 'operation': 'retag',\n 'recordType': 'source',\n 'fieldSpecification': {'tag': '111'},\n 'newTag': '711'\n },\n {\n 'operation': 'retag',\n 'recordType': 'source',\n 'fieldSpecification': {'tag': '130'},\n 'newTag': '730'\n }\n ]\n }\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|