UNPKG

@amaui/utils

Version:
28 lines (27 loc) 1.11 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const is_1 = __importDefault(require("./is")); const optionsDefault = { variablesRegExp: /(\{.*?\}|\[.*?\])/g, cleanVariables: true, placeholderPrefix: '_', }; const getStringVariables = (value, options_ = {}) => { const options = Object.assign(Object.assign({}, optionsDefault), options_); let valueWithPlaceholders = value; if ((0, is_1.default)('string', value)) { let variables = value.match(options.variablesRegExp) || []; variables.forEach((variable, index) => valueWithPlaceholders = valueWithPlaceholders.replace(variable, `${options.placeholderPrefix}${index}`)); if (options.cleanVariables) variables = variables.map(variable => variable.slice(1, variable.length - 1)); return { value, variables, valueWithPlaceholders, }; } }; exports.default = getStringVariables;