UNPKG

@makakwastaken/ts-edifact

Version:
221 lines 7.26 kB
/* eslint-disable @typescript-eslint/no-explicit-any */ /* eslint-disable @typescript-eslint/no-non-null-assertion */ /** * @author Roman Vottner * @copyright 2020 Roman Vottner * @license Apache-2.0 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { formatComponents } from './util'; export function sanitizeFloat(str, decimalSymbol) { const updatedStr = str.replace(decimalSymbol, '.'); return Number.parseFloat(updatedStr); } /* istanbul ignore next */ export function toSegmentObject(data, version, decimalSeparator) { const formattedComponents = formatComponents(data.elements, data.name, decimalSeparator); switch (data.name) { case 'AJT': return formattedComponents; case 'ALC': return formattedComponents; case 'ALI': return formattedComponents; case 'APR': return formattedComponents; case 'ARD': return formattedComponents; case 'AUT': return formattedComponents; case 'BGM': return formattedComponents; case 'BUS': return formattedComponents; case 'CAV': return formattedComponents; case 'CCI': return formattedComponents; case 'CED': return formattedComponents; case 'CNT': return formattedComponents; case 'COD': return formattedComponents; case 'COM': return formattedComponents; case 'CPS': return formattedComponents; case 'CTA': return formattedComponents; case 'CUX': return formattedComponents; case 'DGS': return formattedComponents; case 'DLM': return formattedComponents; case 'DMS': return formattedComponents; case 'DOC': return formattedComponents; case 'DTM': return formattedComponents; case 'EFI': return formattedComponents; case 'EQA': return formattedComponents; case 'EQD': return formattedComponents; case 'ERC': return formattedComponents; case 'FII': return formattedComponents; case 'FTX': return formattedComponents; case 'GEI': return formattedComponents; case 'GIN': return formattedComponents; case 'GIR': return formattedComponents; case 'GIS': // removed since D02B return formattedComponents; case 'HAN': return formattedComponents; case 'HYN': return formattedComponents; case 'IDE': return formattedComponents; case 'IMD': return formattedComponents; case 'INP': return formattedComponents; case 'IRQ': return formattedComponents; case 'LIN': return formattedComponents; case 'LOC': return formattedComponents; case 'MEA': return formattedComponents; case 'MKS': return formattedComponents; case 'MOA': return formattedComponents; case 'MTD': return formattedComponents; case 'NAD': return formattedComponents; case 'PAC': return formattedComponents; case 'PAI': return formattedComponents; case 'PAT': // removed since D02B return formattedComponents; case 'PCD': return formattedComponents; case 'PCI': return formattedComponents; case 'PGI': return formattedComponents; case 'PIA': return formattedComponents; case 'PRI': return formattedComponents; case 'PYT': return formattedComponents; case 'QTY': return formattedComponents; case 'QVR': return formattedComponents; case 'RCS': return formattedComponents; case 'RFF': return formattedComponents; case 'RJL': return formattedComponents; case 'RNG': return formattedComponents; case 'RTE': return formattedComponents; case 'SEL': return formattedComponents; case 'SCC': return formattedComponents; case 'SEQ': return formattedComponents; case 'SGP': return formattedComponents; case 'STS': return formattedComponents; case 'TAX': return formattedComponents; case 'TDT': { const lversion = version.toLowerCase(); if (lversion === 'd18b' || lversion === 'd18a' || lversion === 'd17b' || lversion === 'd17a' || lversion === 'd16b' || lversion === 'd16a' || lversion === 'd15b' || lversion === 'd15a' || lversion === 'd14b' || lversion === 'd14a' || lversion === 'd13b' || lversion === 'd13a' || lversion === 'd12b' || lversion === 'd12a' || lversion === 'd11b' || lversion === 'd11a') { return formattedComponents; } if (version === 'd10b' || version === 'd10a' || lversion === 'd09b' || lversion === 'd09a' || lversion === 'd08b' || lversion === 'd08a' || lversion === 'd07b' || lversion === 'd07a' || lversion === 'd06b' || lversion === 'd06a' || lversion === 'd05b' || lversion === 'd05a' || lversion === 'd04b' || lversion === 'd04a' || lversion === 'd03b' || lversion === 'd03a' || lversion === 'd02b' || lversion === 'd02a') { return formattedComponents; } return formattedComponents; } case 'TMD': return formattedComponents; case 'TOD': return formattedComponents; case 'TSR': return formattedComponents; case 'UNH': return formattedComponents; case 'UNS': return formattedComponents; case 'UNT': return formattedComponents; default: return formattedComponents; } } //# sourceMappingURL=edifact.js.map