vite 6.0.0-beta.1 → 6.0.0-beta.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.
@@ -1,561 +0,0 @@
1
- import { fileURLToPath as __cjs_fileURLToPath } from 'node:url';
2
- import { dirname as __cjs_dirname } from 'node:path';
3
- import { createRequire as __cjs_createRequire } from 'node:module';
4
-
5
- const __filename = __cjs_fileURLToPath(import.meta.url);
6
- const __dirname = __cjs_dirname(__filename);
7
- const require = __cjs_createRequire(import.meta.url);
8
- const __require = require;
9
- var openParentheses = "(".charCodeAt(0);
10
- var closeParentheses = ")".charCodeAt(0);
11
- var singleQuote = "'".charCodeAt(0);
12
- var doubleQuote = '"'.charCodeAt(0);
13
- var backslash = "\\".charCodeAt(0);
14
- var slash = "/".charCodeAt(0);
15
- var comma = ",".charCodeAt(0);
16
- var colon = ":".charCodeAt(0);
17
- var star = "*".charCodeAt(0);
18
- var uLower = "u".charCodeAt(0);
19
- var uUpper = "U".charCodeAt(0);
20
- var plus = "+".charCodeAt(0);
21
- var isUnicodeRange = /^[a-f0-9?-]+$/i;
22
-
23
- var parse$1 = function(input) {
24
- var tokens = [];
25
- var value = input;
26
-
27
- var next,
28
- quote,
29
- prev,
30
- token,
31
- escape,
32
- escapePos,
33
- whitespacePos,
34
- parenthesesOpenPos;
35
- var pos = 0;
36
- var code = value.charCodeAt(pos);
37
- var max = value.length;
38
- var stack = [{ nodes: tokens }];
39
- var balanced = 0;
40
- var parent;
41
-
42
- var name = "";
43
- var before = "";
44
- var after = "";
45
-
46
- while (pos < max) {
47
- // Whitespaces
48
- if (code <= 32) {
49
- next = pos;
50
- do {
51
- next += 1;
52
- code = value.charCodeAt(next);
53
- } while (code <= 32);
54
- token = value.slice(pos, next);
55
-
56
- prev = tokens[tokens.length - 1];
57
- if (code === closeParentheses && balanced) {
58
- after = token;
59
- } else if (prev && prev.type === "div") {
60
- prev.after = token;
61
- prev.sourceEndIndex += token.length;
62
- } else if (
63
- code === comma ||
64
- code === colon ||
65
- (code === slash &&
66
- value.charCodeAt(next + 1) !== star &&
67
- (!parent ||
68
- (parent && parent.type === "function" && parent.value !== "calc")))
69
- ) {
70
- before = token;
71
- } else {
72
- tokens.push({
73
- type: "space",
74
- sourceIndex: pos,
75
- sourceEndIndex: next,
76
- value: token
77
- });
78
- }
79
-
80
- pos = next;
81
-
82
- // Quotes
83
- } else if (code === singleQuote || code === doubleQuote) {
84
- next = pos;
85
- quote = code === singleQuote ? "'" : '"';
86
- token = {
87
- type: "string",
88
- sourceIndex: pos,
89
- quote: quote
90
- };
91
- do {
92
- escape = false;
93
- next = value.indexOf(quote, next + 1);
94
- if (~next) {
95
- escapePos = next;
96
- while (value.charCodeAt(escapePos - 1) === backslash) {
97
- escapePos -= 1;
98
- escape = !escape;
99
- }
100
- } else {
101
- value += quote;
102
- next = value.length - 1;
103
- token.unclosed = true;
104
- }
105
- } while (escape);
106
- token.value = value.slice(pos + 1, next);
107
- token.sourceEndIndex = token.unclosed ? next : next + 1;
108
- tokens.push(token);
109
- pos = next + 1;
110
- code = value.charCodeAt(pos);
111
-
112
- // Comments
113
- } else if (code === slash && value.charCodeAt(pos + 1) === star) {
114
- next = value.indexOf("*/", pos);
115
-
116
- token = {
117
- type: "comment",
118
- sourceIndex: pos,
119
- sourceEndIndex: next + 2
120
- };
121
-
122
- if (next === -1) {
123
- token.unclosed = true;
124
- next = value.length;
125
- token.sourceEndIndex = next;
126
- }
127
-
128
- token.value = value.slice(pos + 2, next);
129
- tokens.push(token);
130
-
131
- pos = next + 2;
132
- code = value.charCodeAt(pos);
133
-
134
- // Operation within calc
135
- } else if (
136
- (code === slash || code === star) &&
137
- parent &&
138
- parent.type === "function" &&
139
- parent.value === "calc"
140
- ) {
141
- token = value[pos];
142
- tokens.push({
143
- type: "word",
144
- sourceIndex: pos - before.length,
145
- sourceEndIndex: pos + token.length,
146
- value: token
147
- });
148
- pos += 1;
149
- code = value.charCodeAt(pos);
150
-
151
- // Dividers
152
- } else if (code === slash || code === comma || code === colon) {
153
- token = value[pos];
154
-
155
- tokens.push({
156
- type: "div",
157
- sourceIndex: pos - before.length,
158
- sourceEndIndex: pos + token.length,
159
- value: token,
160
- before: before,
161
- after: ""
162
- });
163
- before = "";
164
-
165
- pos += 1;
166
- code = value.charCodeAt(pos);
167
-
168
- // Open parentheses
169
- } else if (openParentheses === code) {
170
- // Whitespaces after open parentheses
171
- next = pos;
172
- do {
173
- next += 1;
174
- code = value.charCodeAt(next);
175
- } while (code <= 32);
176
- parenthesesOpenPos = pos;
177
- token = {
178
- type: "function",
179
- sourceIndex: pos - name.length,
180
- value: name,
181
- before: value.slice(parenthesesOpenPos + 1, next)
182
- };
183
- pos = next;
184
-
185
- if (name === "url" && code !== singleQuote && code !== doubleQuote) {
186
- next -= 1;
187
- do {
188
- escape = false;
189
- next = value.indexOf(")", next + 1);
190
- if (~next) {
191
- escapePos = next;
192
- while (value.charCodeAt(escapePos - 1) === backslash) {
193
- escapePos -= 1;
194
- escape = !escape;
195
- }
196
- } else {
197
- value += ")";
198
- next = value.length - 1;
199
- token.unclosed = true;
200
- }
201
- } while (escape);
202
- // Whitespaces before closed
203
- whitespacePos = next;
204
- do {
205
- whitespacePos -= 1;
206
- code = value.charCodeAt(whitespacePos);
207
- } while (code <= 32);
208
- if (parenthesesOpenPos < whitespacePos) {
209
- if (pos !== whitespacePos + 1) {
210
- token.nodes = [
211
- {
212
- type: "word",
213
- sourceIndex: pos,
214
- sourceEndIndex: whitespacePos + 1,
215
- value: value.slice(pos, whitespacePos + 1)
216
- }
217
- ];
218
- } else {
219
- token.nodes = [];
220
- }
221
- if (token.unclosed && whitespacePos + 1 !== next) {
222
- token.after = "";
223
- token.nodes.push({
224
- type: "space",
225
- sourceIndex: whitespacePos + 1,
226
- sourceEndIndex: next,
227
- value: value.slice(whitespacePos + 1, next)
228
- });
229
- } else {
230
- token.after = value.slice(whitespacePos + 1, next);
231
- token.sourceEndIndex = next;
232
- }
233
- } else {
234
- token.after = "";
235
- token.nodes = [];
236
- }
237
- pos = next + 1;
238
- token.sourceEndIndex = token.unclosed ? next : pos;
239
- code = value.charCodeAt(pos);
240
- tokens.push(token);
241
- } else {
242
- balanced += 1;
243
- token.after = "";
244
- token.sourceEndIndex = pos + 1;
245
- tokens.push(token);
246
- stack.push(token);
247
- tokens = token.nodes = [];
248
- parent = token;
249
- }
250
- name = "";
251
-
252
- // Close parentheses
253
- } else if (closeParentheses === code && balanced) {
254
- pos += 1;
255
- code = value.charCodeAt(pos);
256
-
257
- parent.after = after;
258
- parent.sourceEndIndex += after.length;
259
- after = "";
260
- balanced -= 1;
261
- stack[stack.length - 1].sourceEndIndex = pos;
262
- stack.pop();
263
- parent = stack[balanced];
264
- tokens = parent.nodes;
265
-
266
- // Words
267
- } else {
268
- next = pos;
269
- do {
270
- if (code === backslash) {
271
- next += 1;
272
- }
273
- next += 1;
274
- code = value.charCodeAt(next);
275
- } while (
276
- next < max &&
277
- !(
278
- code <= 32 ||
279
- code === singleQuote ||
280
- code === doubleQuote ||
281
- code === comma ||
282
- code === colon ||
283
- code === slash ||
284
- code === openParentheses ||
285
- (code === star &&
286
- parent &&
287
- parent.type === "function" &&
288
- parent.value === "calc") ||
289
- (code === slash &&
290
- parent.type === "function" &&
291
- parent.value === "calc") ||
292
- (code === closeParentheses && balanced)
293
- )
294
- );
295
- token = value.slice(pos, next);
296
-
297
- if (openParentheses === code) {
298
- name = token;
299
- } else if (
300
- (uLower === token.charCodeAt(0) || uUpper === token.charCodeAt(0)) &&
301
- plus === token.charCodeAt(1) &&
302
- isUnicodeRange.test(token.slice(2))
303
- ) {
304
- tokens.push({
305
- type: "unicode-range",
306
- sourceIndex: pos,
307
- sourceEndIndex: next,
308
- value: token
309
- });
310
- } else {
311
- tokens.push({
312
- type: "word",
313
- sourceIndex: pos,
314
- sourceEndIndex: next,
315
- value: token
316
- });
317
- }
318
-
319
- pos = next;
320
- }
321
- }
322
-
323
- for (pos = stack.length - 1; pos; pos -= 1) {
324
- stack[pos].unclosed = true;
325
- stack[pos].sourceEndIndex = value.length;
326
- }
327
-
328
- return stack[0].nodes;
329
- };
330
-
331
- var walk$1 = function walk(nodes, cb, bubble) {
332
- var i, max, node, result;
333
-
334
- for (i = 0, max = nodes.length; i < max; i += 1) {
335
- node = nodes[i];
336
- if (!bubble) {
337
- result = cb(node, i, nodes);
338
- }
339
-
340
- if (
341
- result !== false &&
342
- node.type === "function" &&
343
- Array.isArray(node.nodes)
344
- ) {
345
- walk(node.nodes, cb, bubble);
346
- }
347
-
348
- if (bubble) {
349
- cb(node, i, nodes);
350
- }
351
- }
352
- };
353
-
354
- function stringifyNode(node, custom) {
355
- var type = node.type;
356
- var value = node.value;
357
- var buf;
358
- var customResult;
359
-
360
- if (custom && (customResult = custom(node)) !== undefined) {
361
- return customResult;
362
- } else if (type === "word" || type === "space") {
363
- return value;
364
- } else if (type === "string") {
365
- buf = node.quote || "";
366
- return buf + value + (node.unclosed ? "" : buf);
367
- } else if (type === "comment") {
368
- return "/*" + value + (node.unclosed ? "" : "*/");
369
- } else if (type === "div") {
370
- return (node.before || "") + value + (node.after || "");
371
- } else if (Array.isArray(node.nodes)) {
372
- buf = stringify$1(node.nodes, custom);
373
- if (type !== "function") {
374
- return buf;
375
- }
376
- return (
377
- value +
378
- "(" +
379
- (node.before || "") +
380
- buf +
381
- (node.after || "") +
382
- (node.unclosed ? "" : ")")
383
- );
384
- }
385
- return value;
386
- }
387
-
388
- function stringify$1(nodes, custom) {
389
- var result, i;
390
-
391
- if (Array.isArray(nodes)) {
392
- result = "";
393
- for (i = nodes.length - 1; ~i; i -= 1) {
394
- result = stringifyNode(nodes[i], custom) + result;
395
- }
396
- return result;
397
- }
398
- return stringifyNode(nodes, custom);
399
- }
400
-
401
- var stringify_1 = stringify$1;
402
-
403
- var unit;
404
- var hasRequiredUnit;
405
-
406
- function requireUnit () {
407
- if (hasRequiredUnit) return unit;
408
- hasRequiredUnit = 1;
409
- var minus = "-".charCodeAt(0);
410
- var plus = "+".charCodeAt(0);
411
- var dot = ".".charCodeAt(0);
412
- var exp = "e".charCodeAt(0);
413
- var EXP = "E".charCodeAt(0);
414
-
415
- // Check if three code points would start a number
416
- // https://www.w3.org/TR/css-syntax-3/#starts-with-a-number
417
- function likeNumber(value) {
418
- var code = value.charCodeAt(0);
419
- var nextCode;
420
-
421
- if (code === plus || code === minus) {
422
- nextCode = value.charCodeAt(1);
423
-
424
- if (nextCode >= 48 && nextCode <= 57) {
425
- return true;
426
- }
427
-
428
- var nextNextCode = value.charCodeAt(2);
429
-
430
- if (nextCode === dot && nextNextCode >= 48 && nextNextCode <= 57) {
431
- return true;
432
- }
433
-
434
- return false;
435
- }
436
-
437
- if (code === dot) {
438
- nextCode = value.charCodeAt(1);
439
-
440
- if (nextCode >= 48 && nextCode <= 57) {
441
- return true;
442
- }
443
-
444
- return false;
445
- }
446
-
447
- if (code >= 48 && code <= 57) {
448
- return true;
449
- }
450
-
451
- return false;
452
- }
453
-
454
- // Consume a number
455
- // https://www.w3.org/TR/css-syntax-3/#consume-number
456
- unit = function(value) {
457
- var pos = 0;
458
- var length = value.length;
459
- var code;
460
- var nextCode;
461
- var nextNextCode;
462
-
463
- if (length === 0 || !likeNumber(value)) {
464
- return false;
465
- }
466
-
467
- code = value.charCodeAt(pos);
468
-
469
- if (code === plus || code === minus) {
470
- pos++;
471
- }
472
-
473
- while (pos < length) {
474
- code = value.charCodeAt(pos);
475
-
476
- if (code < 48 || code > 57) {
477
- break;
478
- }
479
-
480
- pos += 1;
481
- }
482
-
483
- code = value.charCodeAt(pos);
484
- nextCode = value.charCodeAt(pos + 1);
485
-
486
- if (code === dot && nextCode >= 48 && nextCode <= 57) {
487
- pos += 2;
488
-
489
- while (pos < length) {
490
- code = value.charCodeAt(pos);
491
-
492
- if (code < 48 || code > 57) {
493
- break;
494
- }
495
-
496
- pos += 1;
497
- }
498
- }
499
-
500
- code = value.charCodeAt(pos);
501
- nextCode = value.charCodeAt(pos + 1);
502
- nextNextCode = value.charCodeAt(pos + 2);
503
-
504
- if (
505
- (code === exp || code === EXP) &&
506
- ((nextCode >= 48 && nextCode <= 57) ||
507
- ((nextCode === plus || nextCode === minus) &&
508
- nextNextCode >= 48 &&
509
- nextNextCode <= 57))
510
- ) {
511
- pos += nextCode === plus || nextCode === minus ? 3 : 2;
512
-
513
- while (pos < length) {
514
- code = value.charCodeAt(pos);
515
-
516
- if (code < 48 || code > 57) {
517
- break;
518
- }
519
-
520
- pos += 1;
521
- }
522
- }
523
-
524
- return {
525
- number: value.slice(0, pos),
526
- unit: value.slice(pos)
527
- };
528
- };
529
- return unit;
530
- }
531
-
532
- var parse = parse$1;
533
- var walk = walk$1;
534
- var stringify = stringify_1;
535
-
536
- function ValueParser(value) {
537
- if (this instanceof ValueParser) {
538
- this.nodes = parse(value);
539
- return this;
540
- }
541
- return new ValueParser(value);
542
- }
543
-
544
- ValueParser.prototype.toString = function() {
545
- return Array.isArray(this.nodes) ? stringify(this.nodes) : "";
546
- };
547
-
548
- ValueParser.prototype.walk = function(cb, bubble) {
549
- walk(this.nodes, cb, bubble);
550
- return this;
551
- };
552
-
553
- ValueParser.unit = requireUnit();
554
-
555
- ValueParser.walk = walk;
556
-
557
- ValueParser.stringify = stringify;
558
-
559
- var lib = ValueParser;
560
-
561
- export { lib as l };