@unocss/transformer-directives 0.26.2 → 0.26.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -21,7 +21,24 @@ Unocss({
21
21
 
22
22
  ## Usage
23
23
 
24
- Currently only `@apply` is supported.
24
+ ```css
25
+ .custom-div {
26
+ @apply text-center my-0 font-medium;
27
+ }
28
+ ```
29
+
30
+ Will be transformed to:
31
+
32
+ ```css
33
+ .custom-div {
34
+ margin-top: 0rem;
35
+ margin-bottom: 0rem;
36
+ text-align: center;
37
+ font-weight: 500;
38
+ }
39
+ ```
40
+
41
+ > Currently only `@apply` is supported.
25
42
 
26
43
  ## License
27
44
 
package/dist/index.cjs CHANGED
@@ -4,266 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const core = require('@unocss/core');
6
6
  const cssTree = require('css-tree');
7
- const require$$0 = require('path');
8
- require('crypto');
9
-
10
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e["default"] : e; }
11
-
12
- const require$$0__default = /*#__PURE__*/_interopDefaultLegacy(require$$0);
13
7
 
14
8
  const regexCssId = /\.(css|postcss|sass|scss|less|stylus|styl)$/;
15
9
 
16
- var utils = {};
17
-
18
- const path = require$$0__default;
19
- const WIN_SLASH = '\\\\/';
20
- const WIN_NO_SLASH = `[^${WIN_SLASH}]`;
21
-
22
- /**
23
- * Posix glob regex
24
- */
25
-
26
- const DOT_LITERAL = '\\.';
27
- const PLUS_LITERAL = '\\+';
28
- const QMARK_LITERAL = '\\?';
29
- const SLASH_LITERAL = '\\/';
30
- const ONE_CHAR = '(?=.)';
31
- const QMARK = '[^/]';
32
- const END_ANCHOR = `(?:${SLASH_LITERAL}|$)`;
33
- const START_ANCHOR = `(?:^|${SLASH_LITERAL})`;
34
- const DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`;
35
- const NO_DOT = `(?!${DOT_LITERAL})`;
36
- const NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`;
37
- const NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`;
38
- const NO_DOTS_SLASH = `(?!${DOTS_SLASH})`;
39
- const QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`;
40
- const STAR = `${QMARK}*?`;
41
-
42
- const POSIX_CHARS = {
43
- DOT_LITERAL,
44
- PLUS_LITERAL,
45
- QMARK_LITERAL,
46
- SLASH_LITERAL,
47
- ONE_CHAR,
48
- QMARK,
49
- END_ANCHOR,
50
- DOTS_SLASH,
51
- NO_DOT,
52
- NO_DOTS,
53
- NO_DOT_SLASH,
54
- NO_DOTS_SLASH,
55
- QMARK_NO_DOT,
56
- STAR,
57
- START_ANCHOR
58
- };
59
-
60
- /**
61
- * Windows glob regex
62
- */
63
-
64
- const WINDOWS_CHARS = {
65
- ...POSIX_CHARS,
66
-
67
- SLASH_LITERAL: `[${WIN_SLASH}]`,
68
- QMARK: WIN_NO_SLASH,
69
- STAR: `${WIN_NO_SLASH}*?`,
70
- DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`,
71
- NO_DOT: `(?!${DOT_LITERAL})`,
72
- NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
73
- NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`,
74
- NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
75
- QMARK_NO_DOT: `[^.${WIN_SLASH}]`,
76
- START_ANCHOR: `(?:^|[${WIN_SLASH}])`,
77
- END_ANCHOR: `(?:[${WIN_SLASH}]|$)`
78
- };
79
-
80
- /**
81
- * POSIX Bracket Regex
82
- */
83
-
84
- const POSIX_REGEX_SOURCE = {
85
- alnum: 'a-zA-Z0-9',
86
- alpha: 'a-zA-Z',
87
- ascii: '\\x00-\\x7F',
88
- blank: ' \\t',
89
- cntrl: '\\x00-\\x1F\\x7F',
90
- digit: '0-9',
91
- graph: '\\x21-\\x7E',
92
- lower: 'a-z',
93
- print: '\\x20-\\x7E ',
94
- punct: '\\-!"#$%&\'()\\*+,./:;<=>?@[\\]^_`{|}~',
95
- space: ' \\t\\r\\n\\v\\f',
96
- upper: 'A-Z',
97
- word: 'A-Za-z0-9_',
98
- xdigit: 'A-Fa-f0-9'
99
- };
100
-
101
- var constants = {
102
- MAX_LENGTH: 1024 * 64,
103
- POSIX_REGEX_SOURCE,
104
-
105
- // regular expressions
106
- REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g,
107
- REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/,
108
- REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/,
109
- REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g,
110
- REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g,
111
- REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g,
112
-
113
- // Replace globs with equivalent patterns to reduce parsing time.
114
- REPLACEMENTS: {
115
- '***': '*',
116
- '**/**': '**',
117
- '**/**/**': '**'
118
- },
119
-
120
- // Digits
121
- CHAR_0: 48, /* 0 */
122
- CHAR_9: 57, /* 9 */
123
-
124
- // Alphabet chars.
125
- CHAR_UPPERCASE_A: 65, /* A */
126
- CHAR_LOWERCASE_A: 97, /* a */
127
- CHAR_UPPERCASE_Z: 90, /* Z */
128
- CHAR_LOWERCASE_Z: 122, /* z */
129
-
130
- CHAR_LEFT_PARENTHESES: 40, /* ( */
131
- CHAR_RIGHT_PARENTHESES: 41, /* ) */
132
-
133
- CHAR_ASTERISK: 42, /* * */
134
-
135
- // Non-alphabetic chars.
136
- CHAR_AMPERSAND: 38, /* & */
137
- CHAR_AT: 64, /* @ */
138
- CHAR_BACKWARD_SLASH: 92, /* \ */
139
- CHAR_CARRIAGE_RETURN: 13, /* \r */
140
- CHAR_CIRCUMFLEX_ACCENT: 94, /* ^ */
141
- CHAR_COLON: 58, /* : */
142
- CHAR_COMMA: 44, /* , */
143
- CHAR_DOT: 46, /* . */
144
- CHAR_DOUBLE_QUOTE: 34, /* " */
145
- CHAR_EQUAL: 61, /* = */
146
- CHAR_EXCLAMATION_MARK: 33, /* ! */
147
- CHAR_FORM_FEED: 12, /* \f */
148
- CHAR_FORWARD_SLASH: 47, /* / */
149
- CHAR_GRAVE_ACCENT: 96, /* ` */
150
- CHAR_HASH: 35, /* # */
151
- CHAR_HYPHEN_MINUS: 45, /* - */
152
- CHAR_LEFT_ANGLE_BRACKET: 60, /* < */
153
- CHAR_LEFT_CURLY_BRACE: 123, /* { */
154
- CHAR_LEFT_SQUARE_BRACKET: 91, /* [ */
155
- CHAR_LINE_FEED: 10, /* \n */
156
- CHAR_NO_BREAK_SPACE: 160, /* \u00A0 */
157
- CHAR_PERCENT: 37, /* % */
158
- CHAR_PLUS: 43, /* + */
159
- CHAR_QUESTION_MARK: 63, /* ? */
160
- CHAR_RIGHT_ANGLE_BRACKET: 62, /* > */
161
- CHAR_RIGHT_CURLY_BRACE: 125, /* } */
162
- CHAR_RIGHT_SQUARE_BRACKET: 93, /* ] */
163
- CHAR_SEMICOLON: 59, /* ; */
164
- CHAR_SINGLE_QUOTE: 39, /* ' */
165
- CHAR_SPACE: 32, /* */
166
- CHAR_TAB: 9, /* \t */
167
- CHAR_UNDERSCORE: 95, /* _ */
168
- CHAR_VERTICAL_LINE: 124, /* | */
169
- CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, /* \uFEFF */
170
-
171
- SEP: path.sep,
172
-
173
- /**
174
- * Create EXTGLOB_CHARS
175
- */
176
-
177
- extglobChars(chars) {
178
- return {
179
- '!': { type: 'negate', open: '(?:(?!(?:', close: `))${chars.STAR})` },
180
- '?': { type: 'qmark', open: '(?:', close: ')?' },
181
- '+': { type: 'plus', open: '(?:', close: ')+' },
182
- '*': { type: 'star', open: '(?:', close: ')*' },
183
- '@': { type: 'at', open: '(?:', close: ')' }
184
- };
185
- },
186
-
187
- /**
188
- * Create GLOB_CHARS
189
- */
190
-
191
- globChars(win32) {
192
- return win32 === true ? WINDOWS_CHARS : POSIX_CHARS;
193
- }
194
- };
195
-
196
- (function (exports) {
197
-
198
- const path = require$$0__default;
199
- const win32 = process.platform === 'win32';
200
- const {
201
- REGEX_BACKSLASH,
202
- REGEX_REMOVE_BACKSLASH,
203
- REGEX_SPECIAL_CHARS,
204
- REGEX_SPECIAL_CHARS_GLOBAL
205
- } = constants;
206
-
207
- exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val);
208
- exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str);
209
- exports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str);
210
- exports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\$1');
211
- exports.toPosixSlashes = str => str.replace(REGEX_BACKSLASH, '/');
212
-
213
- exports.removeBackslashes = str => {
214
- return str.replace(REGEX_REMOVE_BACKSLASH, match => {
215
- return match === '\\' ? '' : match;
216
- });
217
- };
218
-
219
- exports.supportsLookbehinds = () => {
220
- const segs = process.version.slice(1).split('.').map(Number);
221
- if (segs.length === 3 && segs[0] >= 9 || (segs[0] === 8 && segs[1] >= 10)) {
222
- return true;
223
- }
224
- return false;
225
- };
226
-
227
- exports.isWindows = options => {
228
- if (options && typeof options.windows === 'boolean') {
229
- return options.windows;
230
- }
231
- return win32 === true || path.sep === '\\';
232
- };
233
-
234
- exports.escapeLast = (input, char, lastIdx) => {
235
- const idx = input.lastIndexOf(char, lastIdx);
236
- if (idx === -1) return input;
237
- if (input[idx - 1] === '\\') return exports.escapeLast(input, char, idx - 1);
238
- return `${input.slice(0, idx)}\\${input.slice(idx)}`;
239
- };
240
-
241
- exports.removePrefix = (input, state = {}) => {
242
- let output = input;
243
- if (output.startsWith('./')) {
244
- output = output.slice(2);
245
- state.prefix = './';
246
- }
247
- return output;
248
- };
249
-
250
- exports.wrapOutput = (input, state = {}, options = {}) => {
251
- const prepend = options.contains ? '' : '^';
252
- const append = options.contains ? '' : '$';
253
-
254
- let output = `${prepend}(?:${input})${append}`;
255
- if (state.negated === true) {
256
- output = `(?:^(?!${output}).*$)`;
257
- }
258
- return output;
259
- };
260
- }(utils));
261
-
262
- const reservedWords = 'break case class catch const continue debugger default delete do else export extends finally for function if import in instanceof let new return super switch this throw try typeof var void while with yield enum await implements package protected static interface private public';
263
- const builtins = 'arguments Infinity NaN undefined null true false eval uneval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Symbol Error EvalError InternalError RangeError ReferenceError SyntaxError TypeError URIError Number Math Date String RegExp Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array Map Set WeakMap WeakSet SIMD ArrayBuffer DataView JSON Promise Generator GeneratorFunction Reflect Proxy Intl';
264
- const forbiddenIdentifiers = new Set(`${reservedWords} ${builtins}`.split(' '));
265
- forbiddenIdentifiers.add('');
266
-
267
10
  function transformerDirectives() {
268
11
  return {
269
12
  name: "css-directive",
package/dist/index.mjs CHANGED
@@ -1,261 +1,8 @@
1
1
  import { expandVariantGroup, notNull, regexScopePlaceholder } from '@unocss/core';
2
2
  import { parse, walk, generate, clone, List } from 'css-tree';
3
- import require$$0 from 'path';
4
- import 'crypto';
5
3
 
6
4
  const regexCssId = /\.(css|postcss|sass|scss|less|stylus|styl)$/;
7
5
 
8
- var utils = {};
9
-
10
- const path = require$$0;
11
- const WIN_SLASH = '\\\\/';
12
- const WIN_NO_SLASH = `[^${WIN_SLASH}]`;
13
-
14
- /**
15
- * Posix glob regex
16
- */
17
-
18
- const DOT_LITERAL = '\\.';
19
- const PLUS_LITERAL = '\\+';
20
- const QMARK_LITERAL = '\\?';
21
- const SLASH_LITERAL = '\\/';
22
- const ONE_CHAR = '(?=.)';
23
- const QMARK = '[^/]';
24
- const END_ANCHOR = `(?:${SLASH_LITERAL}|$)`;
25
- const START_ANCHOR = `(?:^|${SLASH_LITERAL})`;
26
- const DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`;
27
- const NO_DOT = `(?!${DOT_LITERAL})`;
28
- const NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`;
29
- const NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`;
30
- const NO_DOTS_SLASH = `(?!${DOTS_SLASH})`;
31
- const QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`;
32
- const STAR = `${QMARK}*?`;
33
-
34
- const POSIX_CHARS = {
35
- DOT_LITERAL,
36
- PLUS_LITERAL,
37
- QMARK_LITERAL,
38
- SLASH_LITERAL,
39
- ONE_CHAR,
40
- QMARK,
41
- END_ANCHOR,
42
- DOTS_SLASH,
43
- NO_DOT,
44
- NO_DOTS,
45
- NO_DOT_SLASH,
46
- NO_DOTS_SLASH,
47
- QMARK_NO_DOT,
48
- STAR,
49
- START_ANCHOR
50
- };
51
-
52
- /**
53
- * Windows glob regex
54
- */
55
-
56
- const WINDOWS_CHARS = {
57
- ...POSIX_CHARS,
58
-
59
- SLASH_LITERAL: `[${WIN_SLASH}]`,
60
- QMARK: WIN_NO_SLASH,
61
- STAR: `${WIN_NO_SLASH}*?`,
62
- DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`,
63
- NO_DOT: `(?!${DOT_LITERAL})`,
64
- NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
65
- NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`,
66
- NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
67
- QMARK_NO_DOT: `[^.${WIN_SLASH}]`,
68
- START_ANCHOR: `(?:^|[${WIN_SLASH}])`,
69
- END_ANCHOR: `(?:[${WIN_SLASH}]|$)`
70
- };
71
-
72
- /**
73
- * POSIX Bracket Regex
74
- */
75
-
76
- const POSIX_REGEX_SOURCE = {
77
- alnum: 'a-zA-Z0-9',
78
- alpha: 'a-zA-Z',
79
- ascii: '\\x00-\\x7F',
80
- blank: ' \\t',
81
- cntrl: '\\x00-\\x1F\\x7F',
82
- digit: '0-9',
83
- graph: '\\x21-\\x7E',
84
- lower: 'a-z',
85
- print: '\\x20-\\x7E ',
86
- punct: '\\-!"#$%&\'()\\*+,./:;<=>?@[\\]^_`{|}~',
87
- space: ' \\t\\r\\n\\v\\f',
88
- upper: 'A-Z',
89
- word: 'A-Za-z0-9_',
90
- xdigit: 'A-Fa-f0-9'
91
- };
92
-
93
- var constants = {
94
- MAX_LENGTH: 1024 * 64,
95
- POSIX_REGEX_SOURCE,
96
-
97
- // regular expressions
98
- REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g,
99
- REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/,
100
- REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/,
101
- REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g,
102
- REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g,
103
- REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g,
104
-
105
- // Replace globs with equivalent patterns to reduce parsing time.
106
- REPLACEMENTS: {
107
- '***': '*',
108
- '**/**': '**',
109
- '**/**/**': '**'
110
- },
111
-
112
- // Digits
113
- CHAR_0: 48, /* 0 */
114
- CHAR_9: 57, /* 9 */
115
-
116
- // Alphabet chars.
117
- CHAR_UPPERCASE_A: 65, /* A */
118
- CHAR_LOWERCASE_A: 97, /* a */
119
- CHAR_UPPERCASE_Z: 90, /* Z */
120
- CHAR_LOWERCASE_Z: 122, /* z */
121
-
122
- CHAR_LEFT_PARENTHESES: 40, /* ( */
123
- CHAR_RIGHT_PARENTHESES: 41, /* ) */
124
-
125
- CHAR_ASTERISK: 42, /* * */
126
-
127
- // Non-alphabetic chars.
128
- CHAR_AMPERSAND: 38, /* & */
129
- CHAR_AT: 64, /* @ */
130
- CHAR_BACKWARD_SLASH: 92, /* \ */
131
- CHAR_CARRIAGE_RETURN: 13, /* \r */
132
- CHAR_CIRCUMFLEX_ACCENT: 94, /* ^ */
133
- CHAR_COLON: 58, /* : */
134
- CHAR_COMMA: 44, /* , */
135
- CHAR_DOT: 46, /* . */
136
- CHAR_DOUBLE_QUOTE: 34, /* " */
137
- CHAR_EQUAL: 61, /* = */
138
- CHAR_EXCLAMATION_MARK: 33, /* ! */
139
- CHAR_FORM_FEED: 12, /* \f */
140
- CHAR_FORWARD_SLASH: 47, /* / */
141
- CHAR_GRAVE_ACCENT: 96, /* ` */
142
- CHAR_HASH: 35, /* # */
143
- CHAR_HYPHEN_MINUS: 45, /* - */
144
- CHAR_LEFT_ANGLE_BRACKET: 60, /* < */
145
- CHAR_LEFT_CURLY_BRACE: 123, /* { */
146
- CHAR_LEFT_SQUARE_BRACKET: 91, /* [ */
147
- CHAR_LINE_FEED: 10, /* \n */
148
- CHAR_NO_BREAK_SPACE: 160, /* \u00A0 */
149
- CHAR_PERCENT: 37, /* % */
150
- CHAR_PLUS: 43, /* + */
151
- CHAR_QUESTION_MARK: 63, /* ? */
152
- CHAR_RIGHT_ANGLE_BRACKET: 62, /* > */
153
- CHAR_RIGHT_CURLY_BRACE: 125, /* } */
154
- CHAR_RIGHT_SQUARE_BRACKET: 93, /* ] */
155
- CHAR_SEMICOLON: 59, /* ; */
156
- CHAR_SINGLE_QUOTE: 39, /* ' */
157
- CHAR_SPACE: 32, /* */
158
- CHAR_TAB: 9, /* \t */
159
- CHAR_UNDERSCORE: 95, /* _ */
160
- CHAR_VERTICAL_LINE: 124, /* | */
161
- CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279, /* \uFEFF */
162
-
163
- SEP: path.sep,
164
-
165
- /**
166
- * Create EXTGLOB_CHARS
167
- */
168
-
169
- extglobChars(chars) {
170
- return {
171
- '!': { type: 'negate', open: '(?:(?!(?:', close: `))${chars.STAR})` },
172
- '?': { type: 'qmark', open: '(?:', close: ')?' },
173
- '+': { type: 'plus', open: '(?:', close: ')+' },
174
- '*': { type: 'star', open: '(?:', close: ')*' },
175
- '@': { type: 'at', open: '(?:', close: ')' }
176
- };
177
- },
178
-
179
- /**
180
- * Create GLOB_CHARS
181
- */
182
-
183
- globChars(win32) {
184
- return win32 === true ? WINDOWS_CHARS : POSIX_CHARS;
185
- }
186
- };
187
-
188
- (function (exports) {
189
-
190
- const path = require$$0;
191
- const win32 = process.platform === 'win32';
192
- const {
193
- REGEX_BACKSLASH,
194
- REGEX_REMOVE_BACKSLASH,
195
- REGEX_SPECIAL_CHARS,
196
- REGEX_SPECIAL_CHARS_GLOBAL
197
- } = constants;
198
-
199
- exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val);
200
- exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str);
201
- exports.isRegexChar = str => str.length === 1 && exports.hasRegexChars(str);
202
- exports.escapeRegex = str => str.replace(REGEX_SPECIAL_CHARS_GLOBAL, '\\$1');
203
- exports.toPosixSlashes = str => str.replace(REGEX_BACKSLASH, '/');
204
-
205
- exports.removeBackslashes = str => {
206
- return str.replace(REGEX_REMOVE_BACKSLASH, match => {
207
- return match === '\\' ? '' : match;
208
- });
209
- };
210
-
211
- exports.supportsLookbehinds = () => {
212
- const segs = process.version.slice(1).split('.').map(Number);
213
- if (segs.length === 3 && segs[0] >= 9 || (segs[0] === 8 && segs[1] >= 10)) {
214
- return true;
215
- }
216
- return false;
217
- };
218
-
219
- exports.isWindows = options => {
220
- if (options && typeof options.windows === 'boolean') {
221
- return options.windows;
222
- }
223
- return win32 === true || path.sep === '\\';
224
- };
225
-
226
- exports.escapeLast = (input, char, lastIdx) => {
227
- const idx = input.lastIndexOf(char, lastIdx);
228
- if (idx === -1) return input;
229
- if (input[idx - 1] === '\\') return exports.escapeLast(input, char, idx - 1);
230
- return `${input.slice(0, idx)}\\${input.slice(idx)}`;
231
- };
232
-
233
- exports.removePrefix = (input, state = {}) => {
234
- let output = input;
235
- if (output.startsWith('./')) {
236
- output = output.slice(2);
237
- state.prefix = './';
238
- }
239
- return output;
240
- };
241
-
242
- exports.wrapOutput = (input, state = {}, options = {}) => {
243
- const prepend = options.contains ? '' : '^';
244
- const append = options.contains ? '' : '$';
245
-
246
- let output = `${prepend}(?:${input})${append}`;
247
- if (state.negated === true) {
248
- output = `(?:^(?!${output}).*$)`;
249
- }
250
- return output;
251
- };
252
- }(utils));
253
-
254
- const reservedWords = 'break case class catch const continue debugger default delete do else export extends finally for function if import in instanceof let new return super switch this throw try typeof var void while with yield enum await implements package protected static interface private public';
255
- const builtins = 'arguments Infinity NaN undefined null true false eval uneval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Symbol Error EvalError InternalError RangeError ReferenceError SyntaxError TypeError URIError Number Math Date String RegExp Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array Map Set WeakMap WeakSet SIMD ArrayBuffer DataView JSON Promise Generator GeneratorFunction Reflect Proxy Intl';
256
- const forbiddenIdentifiers = new Set(`${reservedWords} ${builtins}`.split(' '));
257
- forbiddenIdentifiers.add('');
258
-
259
6
  function transformerDirectives() {
260
7
  return {
261
8
  name: "css-directive",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unocss/transformer-directives",
3
- "version": "0.26.2",
3
+ "version": "0.26.3",
4
4
  "description": "UnoCSS transformer for `@apply` directive",
5
5
  "keywords": [
6
6
  "unocss",
@@ -30,15 +30,10 @@
30
30
  "main": "./dist/index.cjs",
31
31
  "module": "./dist/index.mjs",
32
32
  "types": "./dist/index.d.ts",
33
- "peerDependencies": {
34
- "@unocss/core": "0.26.2"
35
- },
36
33
  "dependencies": {
34
+ "@unocss/core": "0.26.3",
37
35
  "css-tree": "^2.0.4"
38
36
  },
39
- "devDependencies": {
40
- "@unocss/core": "0.26.2"
41
- },
42
37
  "scripts": {
43
38
  "build": "unbuild",
44
39
  "stub": "unbuild --stub"