UNPKG

next-universal-route

Version:
24 lines (23 loc) 810 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.generatePath = void 0; var path_to_regexp_1 = require("path-to-regexp"); var mapValues_1 = require("./mapValues"); var cache = {}; var compilePath = function (path) { if (cache[path]) { return cache[path]; } var generator = (0, path_to_regexp_1.compile)(path); cache[path] = generator; return generator; }; var generatePath = function (path, params) { if (path === void 0) { path = '/'; } if (params === void 0) { params = {}; } var safeParams = (0, mapValues_1.mapValues)(params, function (p) { return typeof p === 'undefined' || p === null || p === '' ? '_' : p; }); return path === '/' ? path : compilePath(path)(safeParams); }; exports.generatePath = generatePath;