@fremtind/jkl-formatters-util
Version:
Formatters for common data formats in Jøkul
46 lines (45 loc) • 2.08 kB
JavaScript
;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var formatTelefonnummer_exports = {};
__export(formatTelefonnummer_exports, {
TELEFONNUMMER_REGEX: () => TELEFONNUMMER_REGEX,
formatTelefonnummer: () => formatTelefonnummer
});
module.exports = __toCommonJS(formatTelefonnummer_exports);
var import_jkl_constants_util = require("@fremtind/jkl-constants-util");
const TELEFONNUMMER_REGEX = {
mobil: /^([8]\d{2})(\d{2})(\d{3})$/,
fast: /^([2-9]\d)(\d{2})(\d{2})(\d{2})$/,
mobilPartial: /^([8]\d{2})(\d{1,2})?(\d{1,3})?$/,
fastPartial: /^([2-9]\d)(\d{1,2})?(\d{1,2})?(\d{1,2})?$/
};
function formatTelefonnummer(input, options) {
const strippedInput = input.replace(/\W/g, "");
const mobilRegex = (options == null ? void 0 : options.partial) ? TELEFONNUMMER_REGEX.mobilPartial : TELEFONNUMMER_REGEX.mobil;
const fastRegex = (options == null ? void 0 : options.partial) ? TELEFONNUMMER_REGEX.fastPartial : TELEFONNUMMER_REGEX.fast;
const match = strippedInput.match(mobilRegex) || strippedInput.match(fastRegex);
if (!match) {
return input;
}
return [
(options == null ? void 0 : options.countryCode) ? "+".concat(options.countryCode) : void 0,
...match.slice(1)
].filter(Boolean).join(import_jkl_constants_util.unicode.NON_BREAKING_SPACE);
}
//# sourceMappingURL=formatTelefonnummer.js.map