amis-rpc-design/node_modules/babel-plugin-styled-components/lib/css/placeholderUtils.js

20 lines
849 B
JavaScript
Raw Normal View History

2023-10-07 19:42:30 +08:00
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.splitByPlaceholders = exports.placeholderRegex = exports.makePlaceholder = void 0;
// The capture group makes sure that the split contains the interpolation index
const placeholderRegex = /(?:__PLACEHOLDER_(\d+)__)/g; // Alternative regex that splits without a capture group
exports.placeholderRegex = placeholderRegex;
const placeholderNonCapturingRegex = /__PLACEHOLDER_(?:\d+)__/g; // Generates a placeholder from an index
const makePlaceholder = index => `__PLACEHOLDER_${index}__`; // Splits CSS by placeholders
exports.makePlaceholder = makePlaceholder;
const splitByPlaceholders = ([css, ...rest], capture = true) => [css.split(capture ? placeholderRegex : placeholderNonCapturingRegex), ...rest];
exports.splitByPlaceholders = splitByPlaceholders;