Initial commit

This commit is contained in:
mats committed 2026-09-22 08:41:20 +02:00
commit 89053153cc
8152 files changed
+2086461

No files matched your search

+2
View File
@@ -0,0 +1,2 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});class t extends Error{reason;filename;line;column;source;constructor(t,s,e,i,n){super(`${t}:${e}:${i}: ${s}`),this.reason=s,this.filename=t,this.line=e,this.column=i,this.source=n}}class s{start;end;source;constructor(t,s,e){this.start=t,this.end=s,this.source=e}}var e;exports.CssTypes=void 0,(e=exports.CssTypes||(exports.CssTypes={})).stylesheet="stylesheet",e.rule="rule",e.declaration="declaration",e.comment="comment",e.atRule="at-rule",e.container="container",e.charset="charset",e.counterStyle="counter-style",e.document="document",e.customMedia="custom-media",e.fontFace="font-face",e.fontFeatureValues="font-feature-values",e.host="host",e.import="import",e.keyframes="keyframes",e.keyframe="keyframe",e.layer="layer",e.media="media",e.namespace="namespace",e.page="page",e.pageMarginBox="page-margin-box",e.positionTry="position-try",e.property="property",e.scope="scope",e.startingStyle="starting-style",e.supports="supports",e.viewTransition="view-transition";const i=(t,s,e)=>{let i=e,n=1e4;do{const e=s.map(s=>t.indexOf(s,i));e.push(t.indexOf("\\",i));const r=e.filter(t=>-1!==t);if(0===r.length)return-1;const o=Math.min(...r);if("\\"!==t[o])return o;i=o+2,n--}while(n>0);throw new Error("Too many escaping")},n=(t,s,e)=>{let r=e,o=1e4;do{const e=s.map(s=>t.indexOf(s,r));e.push(t.indexOf("(",r)),e.push(t.indexOf('"',r)),e.push(t.indexOf("'",r)),e.push(t.indexOf("\\",r));const c=e.filter(t=>-1!==t);if(0===c.length)return-1;const p=Math.min(...c);switch(t[p]){case"\\":r=p+2;break;case"(":{const s=n(t,[")"],p+1);if(-1===s)return-1;r=s+1}break;case'"':{const s=i(t,['"'],p+1);if(-1===s)return-1;r=s+1}break;case"'":{const s=i(t,["'"],p+1);if(-1===s)return-1;r=s+1}break;default:return p}o--}while(o>0);throw new Error("Too many escaping")},r=/\/\*[^]*?(?:\*\/|$)/g;function o(t){return t?t.trim():""}function c(t,s){const e=t&&"string"==typeof t.type,i=e?t:s;for(const s in t){const e=t[s];Array.isArray(e)?e.forEach(t=>{c(t,i)}):e&&"object"==typeof e&&c(e,i)}return e&&Object.defineProperty(t,"parent",{configurable:!0,writable:!0,enumerable:!1,value:s||null}),t}class p{level=0;indentation=" ";compress=!1;constructor(t){"string"==typeof t?.indent&&(this.indentation=t?.indent),t?.compress&&(this.compress=!0)}emit(t,s){return t}indent(t){return this.level=this.level||1,t?(this.level+=t,""):Array(this.level).join(this.indentation)}visit(t){switch(t.type){case exports.CssTypes.stylesheet:return this.stylesheet(t);case exports.CssTypes.rule:return this.rule(t);case exports.CssTypes.declaration:return this.declaration(t);case exports.CssTypes.comment:return this.comment(t);case exports.CssTypes.container:return this.container(t);case exports.CssTypes.charset:return this.charset(t);case exports.CssTypes.counterStyle:return this.counterStyle(t);case exports.CssTypes.document:return this.document(t);case exports.CssTypes.customMedia:return this.customMedia(t);case exports.CssTypes.fontFace:return this.fontFace(t);case exports.CssTypes.fontFeatureValues:return this.fontFeatureValues(t);case exports.CssTypes.host:return this.host(t);case exports.CssTypes.import:return this.import(t);case exports.CssTypes.keyframes:return this.keyframes(t);case exports.CssTypes.keyframe:return this.keyframe(t);case exports.CssTypes.layer:return this.layer(t);case exports.CssTypes.media:return this.media(t);case exports.CssTypes.namespace:return this.namespace(t);case exports.CssTypes.page:return this.page(t);case exports.CssTypes.pageMarginBox:return this.pageMarginBox(t);case exports.CssTypes.positionTry:return this.positionTry(t);case exports.CssTypes.property:return this.property(t);case exports.CssTypes.scope:return this.scope(t);case exports.CssTypes.startingStyle:return this.startingStyle(t);case exports.CssTypes.supports:return this.supports(t);case exports.CssTypes.viewTransition:return this.viewTransition(t);case exports.CssTypes.atRule:return this.genericAtRule(t)}}mapVisit(t,s){let e="";s=s||"";for(let i=0,n=t.length;i<n;i++)e+=this.visit(t[i]),s&&i<n-1&&(e+=this.emit(s));return e}compile(t){return this.compress?t.stylesheet.rules.map(this.visit,this).join(""):this.stylesheet(t)}stylesheet(t){return this.mapVisit(t.stylesheet.rules,"\n\n")}comment(t){return this.compress?this.emit("",t.position):this.emit(`${this.indent()}/*${t.comment}*/`,t.position)}container(t){return this.compress?this.emit(`@container ${t.container}`,t.position)+this.emit("{")+this.mapVisit(t.rules)+this.emit("}"):this.emit(`${this.indent()}@container ${t.container}`,t.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(t.rules,"\n\n")+this.emit(`\n${this.indent(-1)}${this.indent()}}`)}layer(t){return this.compress?this.emit(`@layer ${t.layer}`,t.position)+(t.rules?this.emit("{")+this.mapVisit(t.rules)+this.emit("}"):";"):this.emit(`${this.indent()}@layer ${t.layer}`,t.position)+(t.rules?this.emit(` {\n${this.indent(1)}`)+this.mapVisit(t.rules,"\n\n")+this.emit(`\n${this.indent(-1)}${this.indenLine truncated
//# sourceMappingURL=adobe-css-tools.cjs.map
@@ -0,0 +1 @@
{"version":3,"file":"adobe-css-tools.cjs","sources":["../../src/CssParseError.ts","../../src/CssPosition.ts","../../src/type.ts","../../src/utils/stringSearch.ts","../../src/parse/index.ts","../../src/stringify/compiler.ts","../../src/index.ts","../../src/stringify/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["CssParseError","Error","reason","filename","line","column","source","constructor","msg","lineno","css","super","this","Position","start","end","CssTypes","indexOfArrayNonEscaped","string","search","position","currentPosition","maxLoop","all","map","v","indexOf","push","foundAll","filter","length","found","Math","min","indexOfArrayWithBracketAndQuoteSupport","currentSearchPosition","firstMatchPos","endPosition","endQuotePosition","commentRegex","trim","str","addParent","obj","parent","isNode","type","childParent","k","value","Array","isArray","forEach","Object","defineProperty","configurable","writable","enumerable","Compiler","level","indentation","compress","options","indent","emit","_position","join","visit","node","stylesheet","rule","declaration","comment","container","charset","counterStyle","document","customMedia","fontFace","fontFeatureValues","host","import","keyframes","keyframe","layer","media","namespace","page","pageMarginBox","positionTry","property","scope","startingStyle","supports","viewTransition","atRule","genericAtRule","mapVisit","nodes","delim","buf","i","compile","rules","doc","vendor","name","decls","declarations","values","sel","selectors","fontFamily","prelude","hasNestedRules","some","r","s","split","padEnd","parse","whitespace","errorsList","error","err","silent","open","openMatch","exec","processMatch","close","closeMatch","m","lines","match","lastIndexOf","updatePosition","slice","comments","c","pos","charAt","selector","bracePos","selectorStr","substring","result","index","splitWithBracketAndQuoteSupport","replace","propMatch","propValue","separatorMatch","endValuePosition","ret","endMatch","decl","semiPos","looksLikeNestedRule","closePos","ruleBody","items","ar","nestedR","rulesOrDeclarations","vals","res","spacesMatch","pageMarginBoxRegex","RegExp","atImport","_compileAtRule","atCharset","atNamespace","re","m1","m2","frames","frame","concat","atKeyframes","style","atMedia","atCustomMedia","atSupports","atDocument","atPage","atHost","atFontFace","atFontFeatureValues","atContainer","atStartingStyle","atLayer","atProperty","atCounterStyle","atScope","atViewTransition","atPositionTry","atPageMarginBox","preludeEnd","atGeneric","rulesList","parsingErrors","stringify"],"mappings":"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OC,eAALine truncated
+224
View File
@@ -0,0 +1,224 @@
declare class CssParseError extends Error {
readonly reason: string;
readonly filename?: string;
readonly line: number;
readonly column: number;
readonly source: string;
constructor(filename: string, msg: string, lineno: number, column: number, css: string);
}
/**
* Store position information for a node
*/
declare class Position {
start: {
line: number;
column: number;
};
end: {
line: number;
column: number;
};
source?: string;
constructor(start: {
line: number;
column: number;
}, end: {
line: number;
column: number;
}, source: string);
}
declare enum CssTypes {
stylesheet = "stylesheet",
rule = "rule",
declaration = "declaration",
comment = "comment",
atRule = "at-rule",
container = "container",
charset = "charset",
counterStyle = "counter-style",
document = "document",
customMedia = "custom-media",
fontFace = "font-face",
fontFeatureValues = "font-feature-values",
host = "host",
import = "import",
keyframes = "keyframes",
keyframe = "keyframe",
layer = "layer",
media = "media",
namespace = "namespace",
page = "page",
pageMarginBox = "page-margin-box",
positionTry = "position-try",
property = "property",
scope = "scope",
startingStyle = "starting-style",
supports = "supports",
viewTransition = "view-transition"
}
type CssCommonAST = {
type: CssTypes;
};
type CssCommonPositionAST = CssCommonAST & {
position?: Position;
parent?: unknown;
};
type CssStylesheetAST = CssCommonAST & {
type: CssTypes.stylesheet;
stylesheet: {
source?: string;
rules: Array<CssAtRuleAST>;
parsingErrors?: Array<CssParseError>;
};
};
type CssRuleAST = CssCommonPositionAST & {
type: CssTypes.rule;
selectors: Array<string>;
declarations: Array<CssDeclarationAST | CssCommentAST | CssAtRuleAST>;
};
type CssDeclarationAST = CssCommonPositionAST & {
type: CssTypes.declaration;
property: string;
value: string;
};
type CssCommentAST = CssCommonPositionAST & {
type: CssTypes.comment;
comment: string;
};
type CssContainerAST = CssCommonPositionAST & {
type: CssTypes.container;
container: string;
rules: Array<CssAtRuleAST | CssDeclarationAST>;
};
type CssCharsetAST = CssCommonPositionAST & {
type: CssTypes.charset;
charset: string;
};
type CssCustomMediaAST = CssCommonPositionAST & {
type: CssTypes.customMedia;
name: string;
media: string;
};
type CssDocumentAST = CssCommonPositionAST & {
type: CssTypes.document;
document: string;
vendor?: string;
rules: Array<CssAtRuleAST | CssDeclarationAST>;
};
type CssFontFaceAST = CssCommonPositionAST & {
type: CssTypes.fontFace;
declarations: Array<CssDeclarationAST | CssCommentAST>;
};
type CssHostAST = CssCommonPositionAST & {
type: CssTypes.host;
rules: Array<CssAtRuleAST | CssDeclarationAST>;
};
type CssImportAST = CssCommonPositionAST & {
type: CssTypes.import;
import: string;
};
type CssKeyframesAST = CssCommonPositionAST & {
type: CssTypes.keyframes;
name: string;
vendor?: string;
keyframes: Array<CssKeyframeAST | CssCommentAST>;
};
type CssKeyframeAST = CssCommonPositionAST & {
type: CssTypes.keyframe;
values: Array<string>;
declarations: Array<CssDeclarationAST | CssCommentAST>;
};
type CssLayerAST = CssCommonPositionAST & {
type: CssTypes.layer;
layer: string;
rules?: Array<CssAtRuleAST | CssDeclarationAST>;
};
type CssMediaAST = CssCommonPositionAST & {
type: CssTypes.media;
media: string;
rules: Array<CssAtRuleAST | CssDeclarationAST>;
};
type CssNamespaceAST = CssCommonPositionAST & {
type: CssTypes.namespace;
namespace: string;
};
type CssPageAST = CssCommonPositionAST & {
type: CssTypes.page;
selectors: Array<string>;
declarations: Array<CssDeclarationAST | CssCommentAST | CssAtRuleAST>;
};
type CssSupportsAST = CssCommonPositionAST & {
type: CssTypes.supports;
supports: string;
rules: Array<CssAtRuleAST | CssDeclarationAST>;
};
type CssStartingStyleAST = CssCommonPositionAST & {
type: CssTypes.startingStyle;
rules: Array<CssAtRuleAST | CssDeclarationAST>;
};
type CssCounterStyleAST = CssCommonPositionAST & {
type: CssTypes.counterStyle;
name: string;
declarations: Array<CssDeclarationAST | CssCommentAST>;
};
type CssFontFeatureValuesAST = CssCommonPositionAST & {
type: CssTypes.fontFeatureValues;
fontFamily: string;
rules: Array<CssAtRuleAST | CssDeclarationAST>;
};
type CssPositionTryAST = CssCommonPositionAST & {
type: CssTypes.positionTry;
name: string;
declarations: Array<CssDeclarationAST | CssCommentAST>;
};
type CssPropertyAST = CssCommonPositionAST & {
type: CssTypes.property;
name: string;
declarations: Array<CssDeclarationAST | CssCommentAST>;
};
type CssScopeAST = CssCommonPositionAST & {
type: CssTypes.scope;
scope: string;
rules: Array<CssAtRuleAST | CssDeclarationAST>;
};
type CssViewTransitionAST = CssCommonPositionAST & {
type: CssTypes.viewTransition;
declarations: Array<CssDeclarationAST | CssCommentAST>;
};
type CssPageMarginBoxAST = CssCommonPositionAST & {
type: CssTypes.pageMarginBox;
name: string;
declarations: Array<CssDeclarationAST | CssCommentAST>;
};
type CssGenericAtRuleAST = CssCommonPositionAST & {
type: CssTypes.atRule;
name: string;
prelude: string;
rules?: Array<CssAtRuleAST | CssDeclarationAST>;
};
type CssAtRuleAST = CssRuleAST | CssCommentAST | CssContainerAST | CssCharsetAST | CssCounterStyleAST | CssCustomMediaAST | CssDocumentAST | CssFontFaceAST | CssFontFeatureValuesAST | CssHostAST | CssImportAST | CssKeyframesAST | CssLayerAST | CssMediaAST | CssNamespaceAST | CssPageAST | CssPageMarginBoxAST | CssPositionTryAST | CssPropertyAST | CssScopeAST | CssSupportsAST | CssStartingStyleAST | CssViewTransitionAST | CssGenericAtRuleAST;
type CssAllNodesAST = CssAtRuleAST | CssStylesheetAST | CssDeclarationAST | CssKeyframeAST;
type CompilerOptions = {
indent?: string;
compress?: boolean;
};
declare const parse: (css: string, options?: {
source?: string;
silent?: boolean;
}) => CssStylesheetAST;
declare const stringify: (node: CssStylesheetAST, options?: CompilerOptions) => string;
declare const _default: {
parse: (css: string, options?: {
source?: string;
silent?: boolean;
}) => CssStylesheetAST;
stringify: (node: CssStylesheetAST, options?: CompilerOptions) => string;
};
export { CssTypes, _default as default, parse, stringify };
export type { CssAllNodesAST, CssAtRuleAST, CssCharsetAST, CssCommentAST, CssCommonAST, CssCommonPositionAST, CssContainerAST, CssCounterStyleAST, CssCustomMediaAST, CssDeclarationAST, CssDocumentAST, CssFontFaceAST, CssFontFeatureValuesAST, CssGenericAtRuleAST, CssHostAST, CssImportAST, CssKeyframeAST, CssKeyframesAST, CssLayerAST, CssMediaAST, CssNamespaceAST, CssPageAST, CssPageMarginBoxAST, CssPositionTryAST, CssPropertyAST, CssRuleAST, CssScopeAST, CssStartingStyleAST, CssStylesheetAST, CssSupportsAST, CssViewTransitionAST };