@sanity/form-builder
Version:
Sanity form builder
26 lines (25 loc) • 1.02 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.slugify = slugify;
var _speakingurl = _interopRequireDefault(require("speakingurl"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// Fallback slugify function if not defined in field options
var defaultSlugify = (value, type) => {
var _type$options;
var maxLength = (_type$options = type.options) === null || _type$options === void 0 ? void 0 : _type$options.maxLength;
var slugifyOpts = {
truncate: typeof maxLength === 'number' ? maxLength : 200,
symbols: true
};
return value ? (0, _speakingurl.default)(value, slugifyOpts) : '';
};
function slugify(sourceValue, type) {
var _type$options2;
if (!sourceValue) {
return Promise.resolve(sourceValue);
}
var slugifier = ((_type$options2 = type.options) === null || _type$options2 === void 0 ? void 0 : _type$options2.slugify) || defaultSlugify;
return Promise.resolve(slugifier(sourceValue, type));
}