feat: docker compose maybe
This commit is contained in:
3
node_modules/eslint-plugin-svelte/lib/utils/css-utils/index.d.ts
generated
vendored
Normal file
3
node_modules/eslint-plugin-svelte/lib/utils/css-utils/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
export * from './style-attribute';
|
||||
export * from './resource';
|
||||
export * from './utils';
|
19
node_modules/eslint-plugin-svelte/lib/utils/css-utils/index.js
generated
vendored
Normal file
19
node_modules/eslint-plugin-svelte/lib/utils/css-utils/index.js
generated
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
"use strict";
|
||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
||||
if (k2 === undefined) k2 = k;
|
||||
var desc = Object.getOwnPropertyDescriptor(m, k);
|
||||
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
||||
desc = { enumerable: true, get: function() { return m[k]; } };
|
||||
}
|
||||
Object.defineProperty(o, k2, desc);
|
||||
}) : (function(o, m, k, k2) {
|
||||
if (k2 === undefined) k2 = k;
|
||||
o[k2] = m[k];
|
||||
}));
|
||||
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
||||
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
__exportStar(require("./style-attribute"), exports);
|
||||
__exportStar(require("./resource"), exports);
|
||||
__exportStar(require("./utils"), exports);
|
1
node_modules/eslint-plugin-svelte/lib/utils/css-utils/resource.d.ts
generated
vendored
Normal file
1
node_modules/eslint-plugin-svelte/lib/utils/css-utils/resource.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export declare const SHORTHAND_PROPERTIES: Map<string, string[]>;
|
156
node_modules/eslint-plugin-svelte/lib/utils/css-utils/resource.js
generated
vendored
Normal file
156
node_modules/eslint-plugin-svelte/lib/utils/css-utils/resource.js
generated
vendored
Normal file
@@ -0,0 +1,156 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.SHORTHAND_PROPERTIES = void 0;
|
||||
exports.SHORTHAND_PROPERTIES = new Map([
|
||||
['margin', ['margin-top', 'margin-bottom', 'margin-left', 'margin-right']],
|
||||
['padding', ['padding-top', 'padding-bottom', 'padding-left', 'padding-right']],
|
||||
[
|
||||
'background',
|
||||
[
|
||||
'background-image',
|
||||
'background-size',
|
||||
'background-position',
|
||||
'background-repeat',
|
||||
'background-origin',
|
||||
'background-clip',
|
||||
'background-attachment',
|
||||
'background-color'
|
||||
]
|
||||
],
|
||||
[
|
||||
'font',
|
||||
[
|
||||
'font-style',
|
||||
'font-variant',
|
||||
'font-weight',
|
||||
'font-stretch',
|
||||
'font-size',
|
||||
'font-family',
|
||||
'line-height'
|
||||
]
|
||||
],
|
||||
[
|
||||
'border',
|
||||
[
|
||||
'border-top-width',
|
||||
'border-bottom-width',
|
||||
'border-left-width',
|
||||
'border-right-width',
|
||||
'border-top-style',
|
||||
'border-bottom-style',
|
||||
'border-left-style',
|
||||
'border-right-style',
|
||||
'border-top-color',
|
||||
'border-bottom-color',
|
||||
'border-left-color',
|
||||
'border-right-color'
|
||||
]
|
||||
],
|
||||
['border-top', ['border-top-width', 'border-top-style', 'border-top-color']],
|
||||
['border-bottom', ['border-bottom-width', 'border-bottom-style', 'border-bottom-color']],
|
||||
['border-left', ['border-left-width', 'border-left-style', 'border-left-color']],
|
||||
['border-right', ['border-right-width', 'border-right-style', 'border-right-color']],
|
||||
[
|
||||
'border-width',
|
||||
['border-top-width', 'border-bottom-width', 'border-left-width', 'border-right-width']
|
||||
],
|
||||
[
|
||||
'border-style',
|
||||
['border-top-style', 'border-bottom-style', 'border-left-style', 'border-right-style']
|
||||
],
|
||||
[
|
||||
'border-color',
|
||||
['border-top-color', 'border-bottom-color', 'border-left-color', 'border-right-color']
|
||||
],
|
||||
['list-style', ['list-style-type', 'list-style-position', 'list-style-image']],
|
||||
[
|
||||
'border-radius',
|
||||
[
|
||||
'border-top-right-radius',
|
||||
'border-top-left-radius',
|
||||
'border-bottom-right-radius',
|
||||
'border-bottom-left-radius'
|
||||
]
|
||||
],
|
||||
[
|
||||
'transition',
|
||||
['transition-delay', 'transition-duration', 'transition-property', 'transition-timing-function']
|
||||
],
|
||||
[
|
||||
'animation',
|
||||
[
|
||||
'animation-name',
|
||||
'animation-duration',
|
||||
'animation-timing-function',
|
||||
'animation-delay',
|
||||
'animation-iteration-count',
|
||||
'animation-direction',
|
||||
'animation-fill-mode',
|
||||
'animation-play-state'
|
||||
]
|
||||
],
|
||||
[
|
||||
'border-block-end',
|
||||
['border-block-end-width', 'border-block-end-style', 'border-block-end-color']
|
||||
],
|
||||
[
|
||||
'border-block-start',
|
||||
['border-block-start-width', 'border-block-start-style', 'border-block-start-color']
|
||||
],
|
||||
[
|
||||
'border-image',
|
||||
[
|
||||
'border-image-source',
|
||||
'border-image-slice',
|
||||
'border-image-width',
|
||||
'border-image-outset',
|
||||
'border-image-repeat'
|
||||
]
|
||||
],
|
||||
[
|
||||
'border-inline-end',
|
||||
['border-inline-end-width', 'border-inline-end-style', 'border-inline-end-color']
|
||||
],
|
||||
[
|
||||
'border-inline-start',
|
||||
['border-inline-start-width', 'border-inline-start-style', 'border-inline-start-color']
|
||||
],
|
||||
['column-rule', ['column-rule-width', 'column-rule-style', 'column-rule-color']],
|
||||
['columns', ['column-width', 'column-count']],
|
||||
['flex', ['flex-grow', 'flex-shrink', 'flex-basis']],
|
||||
['flex-flow', ['flex-direction', 'flex-wrap']],
|
||||
[
|
||||
'grid',
|
||||
[
|
||||
'grid-template-rows',
|
||||
'grid-template-columns',
|
||||
'grid-template-areas',
|
||||
'grid-auto-rows',
|
||||
'grid-auto-columns',
|
||||
'grid-auto-flow',
|
||||
'grid-column-gap',
|
||||
'grid-row-gap'
|
||||
]
|
||||
],
|
||||
['grid-area', ['grid-row-start', 'grid-column-start', 'grid-row-end', 'grid-column-end']],
|
||||
['grid-column', ['grid-column-start', 'grid-column-end']],
|
||||
['grid-gap', ['grid-row-gap', 'grid-column-gap']],
|
||||
['grid-row', ['grid-row-start', 'grid-row-end']],
|
||||
['grid-template', ['grid-template-columns', 'grid-template-rows', 'grid-template-areas']],
|
||||
['outline', ['outline-color', 'outline-style', 'outline-width']],
|
||||
['text-decoration', ['text-decoration-color', 'text-decoration-style', 'text-decoration-line']],
|
||||
['text-emphasis', ['text-emphasis-style', 'text-emphasis-color']],
|
||||
[
|
||||
'mask',
|
||||
[
|
||||
'mask-image',
|
||||
'mask-mode',
|
||||
'mask-position',
|
||||
'mask-size',
|
||||
'mask-repeat',
|
||||
'mask-origin',
|
||||
'mask-clip',
|
||||
'mask-composite'
|
||||
]
|
||||
]
|
||||
]);
|
43
node_modules/eslint-plugin-svelte/lib/utils/css-utils/style-attribute.d.ts
generated
vendored
Normal file
43
node_modules/eslint-plugin-svelte/lib/utils/css-utils/style-attribute.d.ts
generated
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
import type { AST } from 'svelte-eslint-parser';
|
||||
import type { RuleContext } from '../../types';
|
||||
import type { TSESTree } from '@typescript-eslint/types';
|
||||
export declare function parseStyleAttributeValue(node: AST.SvelteAttribute, context: RuleContext): SvelteStyleRoot<AST.SvelteMustacheTagText> | null;
|
||||
export type SvelteStyleInterpolation = AST.SvelteMustacheTagText | TSESTree.Expression;
|
||||
export interface SvelteStyleNode<E extends SvelteStyleInterpolation> {
|
||||
nodes?: SvelteStyleChildNode<E>[];
|
||||
range: AST.Range;
|
||||
loc: AST.SourceLocation;
|
||||
}
|
||||
export interface SvelteStyleRoot<E extends SvelteStyleInterpolation = SvelteStyleInterpolation> {
|
||||
type: 'root';
|
||||
nodes: (SvelteStyleChildNode<E> | SvelteStyleInline<E>)[];
|
||||
}
|
||||
export interface SvelteStyleInline<E extends SvelteStyleInterpolation = SvelteStyleInterpolation> extends SvelteStyleNode<E> {
|
||||
type: 'inline';
|
||||
node: E;
|
||||
getInlineStyle(node: TSESTree.Expression): SvelteStyleRoot<TSESTree.Expression> | null;
|
||||
getAllInlineStyles(): Map<TSESTree.Expression, SvelteStyleRoot<TSESTree.Expression>>;
|
||||
}
|
||||
export interface SvelteStyleDeclaration<E extends SvelteStyleInterpolation = SvelteStyleInterpolation> extends SvelteStyleNode<E> {
|
||||
type: 'decl';
|
||||
prop: {
|
||||
name: string;
|
||||
range: AST.Range;
|
||||
loc: AST.SourceLocation;
|
||||
interpolations: E[];
|
||||
};
|
||||
value: {
|
||||
value: string;
|
||||
range: AST.Range;
|
||||
loc: AST.SourceLocation;
|
||||
interpolations: E[];
|
||||
};
|
||||
important: boolean;
|
||||
addInterpolation: (tagOrExpr: E) => void;
|
||||
unknownInterpolations: E[];
|
||||
}
|
||||
export interface SvelteStyleComment extends SvelteStyleNode<never> {
|
||||
type: 'comment';
|
||||
addInterpolation: (tagOrExpr: SvelteStyleInterpolation) => void;
|
||||
}
|
||||
export type SvelteStyleChildNode<E extends SvelteStyleInterpolation = SvelteStyleInterpolation> = SvelteStyleDeclaration<E> | SvelteStyleComment;
|
261
node_modules/eslint-plugin-svelte/lib/utils/css-utils/style-attribute.js
generated
vendored
Normal file
261
node_modules/eslint-plugin-svelte/lib/utils/css-utils/style-attribute.js
generated
vendored
Normal file
@@ -0,0 +1,261 @@
|
||||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.parseStyleAttributeValue = void 0;
|
||||
const template_safe_parser_1 = __importDefault(require("./template-safe-parser"));
|
||||
const postcss_1 = require("postcss");
|
||||
const compat_1 = require("../compat");
|
||||
function safeParseCss(css) {
|
||||
try {
|
||||
const input = new postcss_1.Input(css);
|
||||
const parser = new template_safe_parser_1.default(input);
|
||||
parser.parse();
|
||||
return parser.root;
|
||||
}
|
||||
catch {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
const cache = new WeakMap();
|
||||
function parseStyleAttributeValue(node, context) {
|
||||
if (cache.has(node)) {
|
||||
return cache.get(node) || null;
|
||||
}
|
||||
cache.set(node, null);
|
||||
if (!node.value?.length) {
|
||||
return null;
|
||||
}
|
||||
const startOffset = node.value[0].range[0];
|
||||
const sourceCode = (0, compat_1.getSourceCode)(context);
|
||||
const cssCode = node.value.map((value) => sourceCode.getText(value)).join('');
|
||||
const root = safeParseCss(cssCode);
|
||||
if (!root) {
|
||||
return root;
|
||||
}
|
||||
const ctx = {
|
||||
startOffset,
|
||||
value: node.value,
|
||||
context
|
||||
};
|
||||
const mustacheTags = node.value.filter((v) => v.type === 'SvelteMustacheTag');
|
||||
const converted = convertRoot(root, mustacheTags, (e) => e.range, ctx);
|
||||
cache.set(node, converted);
|
||||
return converted;
|
||||
}
|
||||
exports.parseStyleAttributeValue = parseStyleAttributeValue;
|
||||
class IgnoreError extends Error {
|
||||
}
|
||||
function isStringLiteral(node) {
|
||||
return node.type === 'Literal' && typeof node.value === 'string';
|
||||
}
|
||||
function convertRoot(root, interpolations, getRange, ctx) {
|
||||
const nodes = [];
|
||||
for (const child of root.nodes) {
|
||||
const converted = convertChild(child, ctx);
|
||||
if (!converted) {
|
||||
return null;
|
||||
}
|
||||
while (interpolations[0]) {
|
||||
const tagOrExpr = interpolations[0];
|
||||
if (tagOrExpr.range[1] <= converted.range[0]) {
|
||||
nodes.push(buildSvelteStyleInline(tagOrExpr));
|
||||
interpolations.shift();
|
||||
continue;
|
||||
}
|
||||
if (tagOrExpr.range[0] < converted.range[1]) {
|
||||
try {
|
||||
converted.addInterpolation(tagOrExpr);
|
||||
}
|
||||
catch (e) {
|
||||
if (e instanceof IgnoreError)
|
||||
return null;
|
||||
throw e;
|
||||
}
|
||||
interpolations.shift();
|
||||
continue;
|
||||
}
|
||||
break;
|
||||
}
|
||||
nodes.push(converted);
|
||||
}
|
||||
nodes.push(...interpolations.map(buildSvelteStyleInline));
|
||||
return {
|
||||
type: 'root',
|
||||
nodes
|
||||
};
|
||||
function buildSvelteStyleInline(tagOrExpr) {
|
||||
const inlineStyles = new Map();
|
||||
let range = null;
|
||||
function getRangeForInline() {
|
||||
if (range) {
|
||||
return range;
|
||||
}
|
||||
return range ?? (range = getRange(tagOrExpr));
|
||||
}
|
||||
return {
|
||||
type: 'inline',
|
||||
node: tagOrExpr,
|
||||
get range() {
|
||||
return getRangeForInline();
|
||||
},
|
||||
get loc() {
|
||||
return toLoc(getRangeForInline(), ctx);
|
||||
},
|
||||
getInlineStyle(node) {
|
||||
return getInlineStyle(node);
|
||||
},
|
||||
getAllInlineStyles() {
|
||||
const allInlineStyles = new Map();
|
||||
for (const node of extractExpressions(tagOrExpr)) {
|
||||
const style = getInlineStyle(node);
|
||||
if (style) {
|
||||
allInlineStyles.set(node, style);
|
||||
}
|
||||
}
|
||||
return allInlineStyles;
|
||||
}
|
||||
};
|
||||
function getInlineStyle(node) {
|
||||
if (node.type === 'SvelteMustacheTag') {
|
||||
return getInlineStyle(node.expression);
|
||||
}
|
||||
if (inlineStyles.has(node)) {
|
||||
return inlineStyles.get(node) || null;
|
||||
}
|
||||
const sourceCode = (0, compat_1.getSourceCode)(ctx.context);
|
||||
inlineStyles.set(node, null);
|
||||
let converted;
|
||||
if (isStringLiteral(node)) {
|
||||
const root = safeParseCss(sourceCode.getText(node).slice(1, -1));
|
||||
if (!root) {
|
||||
return null;
|
||||
}
|
||||
converted = convertRoot(root, [], () => [0, 0], {
|
||||
...ctx,
|
||||
startOffset: node.range[0] + 1
|
||||
});
|
||||
}
|
||||
else if (node.type === 'TemplateLiteral') {
|
||||
const root = safeParseCss(sourceCode.getText(node).slice(1, -1));
|
||||
if (!root) {
|
||||
return null;
|
||||
}
|
||||
converted = convertRoot(root, [...node.expressions], (e) => {
|
||||
const index = node.expressions.indexOf(e);
|
||||
return [node.quasis[index].range[1] - 2, node.quasis[index + 1].range[0] + 1];
|
||||
}, {
|
||||
...ctx,
|
||||
startOffset: node.range[0] + 1
|
||||
});
|
||||
}
|
||||
else {
|
||||
return null;
|
||||
}
|
||||
inlineStyles.set(node, converted);
|
||||
return converted;
|
||||
}
|
||||
function* extractExpressions(node) {
|
||||
if (node.type === 'SvelteMustacheTag') {
|
||||
yield* extractExpressions(node.expression);
|
||||
}
|
||||
else if (isStringLiteral(node)) {
|
||||
yield node;
|
||||
}
|
||||
else if (node.type === 'TemplateLiteral') {
|
||||
yield node;
|
||||
}
|
||||
else if (node.type === 'ConditionalExpression') {
|
||||
yield* extractExpressions(node.consequent);
|
||||
yield* extractExpressions(node.alternate);
|
||||
}
|
||||
else if (node.type === 'LogicalExpression') {
|
||||
yield* extractExpressions(node.left);
|
||||
yield* extractExpressions(node.right);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
function convertChild(node, ctx) {
|
||||
const range = convertRange(node, ctx);
|
||||
if (node.type === 'decl') {
|
||||
const propRange = [range[0], range[0] + node.prop.length];
|
||||
const declValueStartIndex = propRange[1] + (node.raws.between || '').length;
|
||||
const valueRange = [
|
||||
declValueStartIndex,
|
||||
declValueStartIndex + (node.raws.value?.value || node.value).length
|
||||
];
|
||||
const prop = {
|
||||
name: node.prop,
|
||||
range: propRange,
|
||||
get loc() {
|
||||
return toLoc(propRange, ctx);
|
||||
},
|
||||
interpolations: []
|
||||
};
|
||||
const value = {
|
||||
value: node.value,
|
||||
range: valueRange,
|
||||
get loc() {
|
||||
return toLoc(valueRange, ctx);
|
||||
},
|
||||
interpolations: []
|
||||
};
|
||||
const unknownInterpolations = [];
|
||||
return {
|
||||
type: 'decl',
|
||||
prop,
|
||||
value,
|
||||
important: node.important,
|
||||
range,
|
||||
get loc() {
|
||||
return toLoc(range, ctx);
|
||||
},
|
||||
addInterpolation(tagOrExpr) {
|
||||
const index = tagOrExpr.range[0];
|
||||
if (prop.range[0] <= index && index < prop.range[1]) {
|
||||
prop.interpolations.push(tagOrExpr);
|
||||
return;
|
||||
}
|
||||
if (value.range[0] <= index && index < value.range[1]) {
|
||||
value.interpolations.push(tagOrExpr);
|
||||
return;
|
||||
}
|
||||
unknownInterpolations.push(tagOrExpr);
|
||||
},
|
||||
unknownInterpolations
|
||||
};
|
||||
}
|
||||
if (node.type === 'comment') {
|
||||
return {
|
||||
type: 'comment',
|
||||
range,
|
||||
get loc() {
|
||||
return toLoc(range, ctx);
|
||||
},
|
||||
addInterpolation: () => {
|
||||
throw new IgnoreError();
|
||||
}
|
||||
};
|
||||
}
|
||||
if (node.type === 'atrule') {
|
||||
return null;
|
||||
}
|
||||
if (node.type === 'rule') {
|
||||
return null;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
function convertRange(node, ctx) {
|
||||
return [
|
||||
ctx.startOffset + node.source.start.offset,
|
||||
ctx.startOffset + node.source.end.offset + 1
|
||||
];
|
||||
}
|
||||
function toLoc(range, ctx) {
|
||||
return {
|
||||
start: (0, compat_1.getSourceCode)(ctx.context).getLocFromIndex(range[0]),
|
||||
end: (0, compat_1.getSourceCode)(ctx.context).getLocFromIndex(range[1])
|
||||
};
|
||||
}
|
5
node_modules/eslint-plugin-svelte/lib/utils/css-utils/template-safe-parser.d.ts
generated
vendored
Normal file
5
node_modules/eslint-plugin-svelte/lib/utils/css-utils/template-safe-parser.d.ts
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
import SafeParser from 'postcss-safe-parser/lib/safe-parser';
|
||||
declare class TemplateSafeParser extends SafeParser {
|
||||
protected createTokenizer(): void;
|
||||
}
|
||||
export default TemplateSafeParser;
|
13
node_modules/eslint-plugin-svelte/lib/utils/css-utils/template-safe-parser.js
generated
vendored
Normal file
13
node_modules/eslint-plugin-svelte/lib/utils/css-utils/template-safe-parser.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const safe_parser_1 = __importDefault(require("postcss-safe-parser/lib/safe-parser"));
|
||||
const template_tokenize_1 = __importDefault(require("./template-tokenize"));
|
||||
class TemplateSafeParser extends safe_parser_1.default {
|
||||
createTokenizer() {
|
||||
this.tokenizer = (0, template_tokenize_1.default)(this.input, { ignoreErrors: true });
|
||||
}
|
||||
}
|
||||
exports.default = TemplateSafeParser;
|
5
node_modules/eslint-plugin-svelte/lib/utils/css-utils/template-tokenize.d.ts
generated
vendored
Normal file
5
node_modules/eslint-plugin-svelte/lib/utils/css-utils/template-tokenize.d.ts
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
import type { Tokenizer } from 'postcss/lib/tokenize';
|
||||
import tokenize from 'postcss/lib/tokenize';
|
||||
type Tokenize = typeof tokenize;
|
||||
declare function templateTokenize(...args: Parameters<Tokenize>): Tokenizer;
|
||||
export default templateTokenize;
|
39
node_modules/eslint-plugin-svelte/lib/utils/css-utils/template-tokenize.js
generated
vendored
Normal file
39
node_modules/eslint-plugin-svelte/lib/utils/css-utils/template-tokenize.js
generated
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
const tokenize_1 = __importDefault(require("postcss/lib/tokenize"));
|
||||
function templateTokenize(...args) {
|
||||
const tokenizer = (0, tokenize_1.default)(...args);
|
||||
function nextToken(...args) {
|
||||
const returned = [];
|
||||
let token, lastPos;
|
||||
let depth = 0;
|
||||
while ((token = tokenizer.nextToken(...args))) {
|
||||
if (token[0] !== 'word') {
|
||||
if (token[0] === '{') {
|
||||
++depth;
|
||||
}
|
||||
else if (token[0] === '}') {
|
||||
--depth;
|
||||
}
|
||||
}
|
||||
if (depth || returned.length) {
|
||||
lastPos = token[3] || token[2] || lastPos;
|
||||
returned.push(token);
|
||||
}
|
||||
if (!depth) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (returned.length) {
|
||||
token = ['word', returned.map((token) => token[1]).join(''), returned[0][2], lastPos];
|
||||
}
|
||||
return token;
|
||||
}
|
||||
return Object.assign({}, tokenizer, {
|
||||
nextToken
|
||||
});
|
||||
}
|
||||
exports.default = templateTokenize;
|
3
node_modules/eslint-plugin-svelte/lib/utils/css-utils/utils.d.ts
generated
vendored
Normal file
3
node_modules/eslint-plugin-svelte/lib/utils/css-utils/utils.d.ts
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
export declare function hasVendorPrefix(prop: string): boolean;
|
||||
export declare function getVendorPrefix(prop: string): string;
|
||||
export declare function stripVendorPrefix(prop: string): string;
|
15
node_modules/eslint-plugin-svelte/lib/utils/css-utils/utils.js
generated
vendored
Normal file
15
node_modules/eslint-plugin-svelte/lib/utils/css-utils/utils.js
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.stripVendorPrefix = exports.getVendorPrefix = exports.hasVendorPrefix = void 0;
|
||||
function hasVendorPrefix(prop) {
|
||||
return Boolean(getVendorPrefix(prop));
|
||||
}
|
||||
exports.hasVendorPrefix = hasVendorPrefix;
|
||||
function getVendorPrefix(prop) {
|
||||
return /^-\w+-/u.exec(prop)?.[0] || '';
|
||||
}
|
||||
exports.getVendorPrefix = getVendorPrefix;
|
||||
function stripVendorPrefix(prop) {
|
||||
return prop.slice(getVendorPrefix(prop).length);
|
||||
}
|
||||
exports.stripVendorPrefix = stripVendorPrefix;
|
Reference in New Issue
Block a user