coffeehaml 0.1.0 → 0.3.2
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/dist/ast.d.ts +15 -7
- package/dist/ast.d.ts.map +1 -1
- package/dist/ast.js +2 -1
- package/dist/ast.js.map +1 -1
- package/dist/cli.js +43 -10
- package/dist/cli.js.map +1 -1
- package/dist/compiler.d.ts.map +1 -1
- package/dist/compiler.js +15 -1
- package/dist/compiler.js.map +1 -1
- package/dist/emitter.d.ts.map +1 -1
- package/dist/emitter.js +170 -15
- package/dist/emitter.js.map +1 -1
- package/dist/expressions.d.ts +4 -0
- package/dist/expressions.d.ts.map +1 -1
- package/dist/expressions.js +31 -0
- package/dist/expressions.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lexer.d.ts +1 -0
- package/dist/lexer.d.ts.map +1 -1
- package/dist/lexer.js +48 -2
- package/dist/lexer.js.map +1 -1
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +26 -3
- package/dist/parser.js.map +1 -1
- package/dist/types.d.ts +9 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/vite-plugin.d.ts.map +1 -1
- package/dist/vite-plugin.js +9 -0
- package/dist/vite-plugin.js.map +1 -1
- package/package.json +11 -5
package/dist/ast.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SourceLocation } from './types.js';
|
|
2
2
|
export type NodeKind = 'Document' | 'Element' | 'ImplicitDiv' | 'Text' | 'Output' | 'ControlFlow' | 'Comment' | 'Filter' | 'Doctype';
|
|
3
|
-
export type ControlFlowKind = 'if' | 'unless' | 'for' | 'while' | 'else';
|
|
3
|
+
export type ControlFlowKind = 'if' | 'unless' | 'for' | 'while' | 'else' | 'statement';
|
|
4
4
|
export type CommentKind = 'haml' | 'html';
|
|
5
5
|
export type OutputKind = 'escaped' | 'unescaped';
|
|
6
6
|
export declare abstract class Node {
|
|
@@ -19,45 +19,53 @@ export declare class Expression {
|
|
|
19
19
|
}
|
|
20
20
|
export declare class Document extends Node {
|
|
21
21
|
readonly kind: "Document";
|
|
22
|
+
readonly prologue: string[];
|
|
22
23
|
readonly children: Node[];
|
|
23
|
-
constructor(children: Node[], location?: SourceLocation);
|
|
24
|
+
constructor(children: Node[], prologue?: string[], location?: SourceLocation);
|
|
24
25
|
}
|
|
25
26
|
export declare class Element extends Node {
|
|
26
27
|
readonly kind: "Element";
|
|
27
28
|
readonly tag: string | Expression;
|
|
28
29
|
readonly classes: string[];
|
|
29
30
|
readonly id: string | null;
|
|
30
|
-
readonly attributes:
|
|
31
|
+
readonly attributes: AnyAttribute[];
|
|
31
32
|
readonly children: Node[];
|
|
32
33
|
readonly isComponent: boolean;
|
|
33
34
|
readonly isSelfClosing: boolean;
|
|
34
35
|
constructor(tag: string | Expression, opts?: {
|
|
35
36
|
classes?: string[];
|
|
36
37
|
id?: string | null;
|
|
37
|
-
attributes?:
|
|
38
|
+
attributes?: AnyAttribute[];
|
|
38
39
|
children?: Node[];
|
|
39
40
|
isComponent?: boolean;
|
|
40
41
|
isSelfClosing?: boolean;
|
|
41
42
|
location?: SourceLocation;
|
|
42
43
|
});
|
|
43
44
|
}
|
|
44
|
-
/**
|
|
45
|
+
/** A static attribute on an element — key is a string, value is an expression. */
|
|
45
46
|
export interface Attribute {
|
|
47
|
+
spread?: undefined;
|
|
46
48
|
name: string;
|
|
47
49
|
value: Expression;
|
|
48
50
|
shorthand: boolean;
|
|
49
51
|
}
|
|
52
|
+
/** A spread attribute: {props...} or {...props} → {...props} in JSX. */
|
|
53
|
+
export interface SpreadAttribute {
|
|
54
|
+
spread: true;
|
|
55
|
+
expression: Expression;
|
|
56
|
+
}
|
|
57
|
+
export type AnyAttribute = Attribute | SpreadAttribute;
|
|
50
58
|
/** A div created by `.class` or `#id` without an explicit `%tag`. */
|
|
51
59
|
export declare class ImplicitDiv extends Node {
|
|
52
60
|
readonly kind: "ImplicitDiv";
|
|
53
61
|
readonly classes: string[];
|
|
54
62
|
readonly id: string | null;
|
|
55
|
-
readonly attributes:
|
|
63
|
+
readonly attributes: AnyAttribute[];
|
|
56
64
|
readonly children: Node[];
|
|
57
65
|
constructor(opts?: {
|
|
58
66
|
classes?: string[];
|
|
59
67
|
id?: string | null;
|
|
60
|
-
attributes?:
|
|
68
|
+
attributes?: AnyAttribute[];
|
|
61
69
|
children?: Node[];
|
|
62
70
|
location?: SourceLocation;
|
|
63
71
|
});
|
package/dist/ast.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../src/ast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAI5C,MAAM,MAAM,QAAQ,GAChB,UAAU,GACV,SAAS,GACT,aAAa,GACb,MAAM,GACN,QAAQ,GACR,aAAa,GACb,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../src/ast.ts"],"names":[],"mappings":"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"}
|
package/dist/ast.js
CHANGED
|
@@ -18,9 +18,10 @@ export class Expression {
|
|
|
18
18
|
}
|
|
19
19
|
// ─── Document ──────────────────────────────────────────────
|
|
20
20
|
export class Document extends Node {
|
|
21
|
-
constructor(children, location) {
|
|
21
|
+
constructor(children, prologue = [], location) {
|
|
22
22
|
super(location);
|
|
23
23
|
this.kind = 'Document';
|
|
24
|
+
this.prologue = prologue;
|
|
24
25
|
this.children = children;
|
|
25
26
|
}
|
|
26
27
|
}
|
package/dist/ast.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ast.js","sourceRoot":"","sources":["../src/ast.ts"],"names":[],"mappings":"AAmBA,8DAA8D;AAE9D,MAAM,OAAgB,IAAI;IAIxB,YAAY,QAAyB;QACnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;CACF;AAED,8DAA8D;AAE9D;iDACiD;AACjD,MAAM,OAAO,UAAU;IAKrB,YAAY,MAAc,EAAE,MAAY;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF;AAED,8DAA8D;AAE9D,MAAM,OAAO,QAAS,SAAQ,IAAI;
|
|
1
|
+
{"version":3,"file":"ast.js","sourceRoot":"","sources":["../src/ast.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -1,16 +1,35 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { compileFile } from './index.js';
|
|
3
|
+
import { writeFileSync } from 'fs';
|
|
4
|
+
import { readFileSync } from 'fs';
|
|
5
|
+
import { fileURLToPath } from 'url';
|
|
6
|
+
import { dirname, join } from 'path';
|
|
7
|
+
function getVersion() {
|
|
8
|
+
try {
|
|
9
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
10
|
+
const pkg = JSON.parse(readFileSync(join(__dirname, '..', 'package.json'), 'utf-8'));
|
|
11
|
+
return pkg.version || '0.0.0';
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
return '0.0.0';
|
|
15
|
+
}
|
|
16
|
+
}
|
|
3
17
|
const args = process.argv.slice(2);
|
|
4
|
-
if (args.length === 0) {
|
|
5
|
-
console.log(`CoffeeHaml
|
|
18
|
+
if (args.length === 0 || args.includes('--help') || args.includes('-h')) {
|
|
19
|
+
console.log(`CoffeeHaml v${getVersion()}
|
|
6
20
|
Haml structure. CoffeeScript semantics. React runtime.
|
|
7
21
|
|
|
8
22
|
Usage:
|
|
9
|
-
coffeehaml compile <input> [-o <output>]
|
|
23
|
+
coffeehaml compile <input> [-o <output>] [--source-map]
|
|
24
|
+
|
|
25
|
+
Options:
|
|
26
|
+
-o, --output <file> Write output to file instead of stdout
|
|
27
|
+
--source-map Emit inline source map
|
|
28
|
+
-h, --help Show this help
|
|
10
29
|
|
|
11
30
|
Examples:
|
|
12
31
|
coffeehaml compile app.coffeehaml -o app.js
|
|
13
|
-
coffeehaml compile app.coffeehaml
|
|
32
|
+
coffeehaml compile app.coffeehaml # prints to stdout
|
|
14
33
|
`);
|
|
15
34
|
process.exit(0);
|
|
16
35
|
}
|
|
@@ -21,22 +40,29 @@ if (cmd === 'compile') {
|
|
|
21
40
|
console.error('Error: no input file specified');
|
|
22
41
|
process.exit(1);
|
|
23
42
|
}
|
|
24
|
-
const outIdx = args.indexOf('-o');
|
|
43
|
+
const outIdx = args.indexOf('-o') !== -1 ? args.indexOf('-o') : args.indexOf('--output');
|
|
25
44
|
const output = outIdx !== -1 ? args[outIdx + 1] : null;
|
|
26
|
-
const
|
|
45
|
+
const sourceMap = args.includes('--source-map');
|
|
46
|
+
const result = compileFile(input, { filename: input, sourceMap });
|
|
27
47
|
if (result.errors.length > 0) {
|
|
28
48
|
for (const err of result.errors) {
|
|
29
49
|
console.error(formatError(err, input));
|
|
30
50
|
}
|
|
31
51
|
process.exit(1);
|
|
32
52
|
}
|
|
53
|
+
// Print warnings to stderr
|
|
54
|
+
for (const warn of result.warnings) {
|
|
55
|
+
console.error(formatWarning(warn, input));
|
|
56
|
+
}
|
|
33
57
|
if (output) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
58
|
+
writeFileSync(output, result.code);
|
|
59
|
+
if (result.sourceMap) {
|
|
60
|
+
writeFileSync(output + '.map', result.sourceMap);
|
|
61
|
+
}
|
|
62
|
+
console.error(`Compiled: ${input} → ${output}`);
|
|
37
63
|
}
|
|
38
64
|
else {
|
|
39
|
-
|
|
65
|
+
process.stdout.write(result.code);
|
|
40
66
|
}
|
|
41
67
|
}
|
|
42
68
|
else {
|
|
@@ -50,4 +76,11 @@ function formatError(err, filename) {
|
|
|
50
76
|
}
|
|
51
77
|
return `[${err.code}] ${err.message}`;
|
|
52
78
|
}
|
|
79
|
+
function formatWarning(warn, filename) {
|
|
80
|
+
const loc = warn.location;
|
|
81
|
+
if (loc) {
|
|
82
|
+
return `Warning: ${filename}:${loc.start.line + 1}:${loc.start.column + 1}: ${warn.message}`;
|
|
83
|
+
}
|
|
84
|
+
return `Warning: ${warn.message}`;
|
|
85
|
+
}
|
|
53
86
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/compiler.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAgC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAgC,MAAM,YAAY,CAAC;AAI1F,qEAAqE;AACrE,eAAO,MAAM,qBAAqB,UAAuC,CAAC;AAE1E,2EAA2E;AAC3E,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOrE;AAED,+CAA+C;AAC/C,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,aAAa,CAkEpF;AAED,2CAA2C;AAC3C,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,aAAa,CAG1F"}
|
package/dist/compiler.js
CHANGED
|
@@ -2,6 +2,7 @@ import { tokenize } from './lexer.js';
|
|
|
2
2
|
import { parse } from './parser.js';
|
|
3
3
|
import { emit } from './emitter.js';
|
|
4
4
|
import { CompileError } from './types.js';
|
|
5
|
+
import { isCoffeeScriptAvailable, getCoffeeScriptUnavailableReason } from './expressions.js';
|
|
5
6
|
import { readFileSync, existsSync } from 'fs';
|
|
6
7
|
/** Supported CoffeeHaml file extensions (in order of preference). */
|
|
7
8
|
export const COFFEEHAML_EXTENSIONS = ['.coffeehaml', '.cohaml', '.chaml'];
|
|
@@ -20,6 +21,13 @@ export function resolveCoffeeHamlFile(filepath) {
|
|
|
20
21
|
export function compile(source, options = {}) {
|
|
21
22
|
const errors = [];
|
|
22
23
|
const warnings = [];
|
|
24
|
+
// Warn if CoffeeScript is unavailable — expressions will pass through raw
|
|
25
|
+
if (!isCoffeeScriptAvailable()) {
|
|
26
|
+
warnings.push({
|
|
27
|
+
message: `CoffeeScript expression compiler unavailable: ${getCoffeeScriptUnavailableReason()}. CoffeeScript expressions will passthrough raw and may produce invalid JavaScript. Install coffeescript as a peer dependency.`,
|
|
28
|
+
phase: 'compiler',
|
|
29
|
+
});
|
|
30
|
+
}
|
|
23
31
|
// Phase 1: Lex
|
|
24
32
|
let tokens;
|
|
25
33
|
try {
|
|
@@ -52,15 +60,21 @@ export function compile(source, options = {}) {
|
|
|
52
60
|
filename: options.filename,
|
|
53
61
|
jsxRuntime: options.jsxRuntime,
|
|
54
62
|
filters: options.filters,
|
|
63
|
+
wrap: options.wrap,
|
|
64
|
+
componentName: options.componentName,
|
|
55
65
|
});
|
|
56
66
|
}
|
|
57
67
|
catch (e) {
|
|
58
68
|
return {
|
|
59
69
|
code: '',
|
|
60
70
|
errors: [wrapError(e, 'emitter')],
|
|
61
|
-
warnings
|
|
71
|
+
warnings,
|
|
62
72
|
};
|
|
63
73
|
}
|
|
74
|
+
// Collect warnings from emit phase
|
|
75
|
+
if (result.warnings) {
|
|
76
|
+
warnings.push(...result.warnings);
|
|
77
|
+
}
|
|
64
78
|
return {
|
|
65
79
|
code: result.code,
|
|
66
80
|
sourceMap: result.sourceMap,
|
package/dist/compiler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compiler.js","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAkC,YAAY,EAAkB,MAAM,YAAY,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAE9C,qEAAqE;AACrE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AAE1E,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IACpD,IAAI,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC1C,KAAK,MAAM,GAAG,IAAI,qBAAqB,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,QAAQ,GAAG,GAAG,CAAC;QAC/B,IAAI,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC;IAC1C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,OAAO,CAAC,MAAc,EAAE,UAA2B,EAAE;IACnE,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAqB,EAAE,CAAC;IAEtC,eAAe;IACf,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC/B,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;IAED,iBAAiB;IACjB,IAAI,GAAG,CAAC;IACR,IAAI,CAAC;QACH,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAChC,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;IAED,gBAAgB;IAChB,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE;YACjB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"compiler.js","sourceRoot":"","sources":["../src/compiler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAkC,YAAY,EAAkB,MAAM,YAAY,CAAC;AAC1F,OAAO,EAAE,uBAAuB,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAE9C,qEAAqE;AACrE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AAE1E,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IACpD,IAAI,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC1C,KAAK,MAAM,GAAG,IAAI,qBAAqB,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,QAAQ,GAAG,GAAG,CAAC;QAC/B,IAAI,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC;IAC1C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,OAAO,CAAC,MAAc,EAAE,UAA2B,EAAE;IACnE,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAqB,EAAE,CAAC;IAEtC,0EAA0E;IAC1E,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC;YACZ,OAAO,EAAE,iDAAiD,gCAAgC,EAAE,gIAAgI;YAC5N,KAAK,EAAE,UAAU;SAClB,CAAC,CAAC;IACL,CAAC;IAED,eAAe;IACf,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAC/B,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;IAED,iBAAiB;IACjB,IAAI,GAAG,CAAC;IACR,IAAI,CAAC;QACH,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAChC,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;IAED,gBAAgB;IAChB,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE;YACjB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YACjC,QAAQ;SACT,CAAC;IACJ,CAAC;IAED,mCAAmC;IACnC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,MAAM;QACN,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,WAAW,CAAC,QAAgB,EAAE,UAA2B,EAAE;IACzE,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC/C,OAAO,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,SAAS,CAAC,CAAU,EAAE,KAAa;IAC1C,IAAI,CAAC,YAAY,YAAY,EAAE,CAAC;QAC9B,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;QAChB,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,IAAI,YAAY,CACrB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAC1C,KAAK,EACL,gBAAgB,CACjB,CAAC;AACJ,CAAC"}
|
package/dist/emitter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../src/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAET,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,cAAc,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../src/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAET,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,cAAc,EAAE,UAAU,EAAkB,MAAM,YAAY,CAAC;AA8DxE,wBAAgB,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,GAAE,cAAmB,GAAG,UAAU,CAiC5E"}
|
package/dist/emitter.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { Element, ImplicitDiv, Text, Output, ControlFlow, Comment, Filter, Doctype, Expression, } from './ast.js';
|
|
2
2
|
import { compileExpression } from './expressions.js';
|
|
3
|
+
import { SourceMapGenerator } from 'source-map';
|
|
4
|
+
// ─── Void elements (self-closing, no children) ─────────────
|
|
5
|
+
const VOID_ELEMENTS = new Set([
|
|
6
|
+
'area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input',
|
|
7
|
+
'link', 'meta', 'param', 'source', 'track', 'wbr',
|
|
8
|
+
]);
|
|
3
9
|
// ─── Emit State ────────────────────────────────────────────
|
|
4
10
|
class EmitState {
|
|
5
11
|
constructor(options = {}) {
|
|
@@ -7,8 +13,13 @@ class EmitState {
|
|
|
7
13
|
this.output = '';
|
|
8
14
|
this.needsFragment = false;
|
|
9
15
|
this.needsImport = false;
|
|
10
|
-
this.
|
|
16
|
+
this.sourceMapGenerator = null;
|
|
17
|
+
this.outputLine = 0;
|
|
18
|
+
this.warnings = [];
|
|
11
19
|
this.options = options;
|
|
20
|
+
if (options.sourceMap && options.filename) {
|
|
21
|
+
this.sourceMapGenerator = new SourceMapGenerator({ file: options.filename });
|
|
22
|
+
}
|
|
12
23
|
}
|
|
13
24
|
emit(s) {
|
|
14
25
|
if (s) {
|
|
@@ -20,6 +31,17 @@ class EmitState {
|
|
|
20
31
|
this.output += ' '.repeat(this.indent * 2) + s;
|
|
21
32
|
}
|
|
22
33
|
this.output += '\n';
|
|
34
|
+
this.outputLine++;
|
|
35
|
+
}
|
|
36
|
+
mapSource(loc) {
|
|
37
|
+
if (!this.sourceMapGenerator || !loc)
|
|
38
|
+
return;
|
|
39
|
+
const outputCol = this.indent * 2;
|
|
40
|
+
this.sourceMapGenerator.addMapping({
|
|
41
|
+
generated: { line: this.outputLine + 1, column: outputCol },
|
|
42
|
+
original: { line: loc.line + 1, column: loc.column },
|
|
43
|
+
source: this.options.filename || 'source.coffeehaml',
|
|
44
|
+
});
|
|
23
45
|
}
|
|
24
46
|
indentBlock(fn) {
|
|
25
47
|
this.indent++;
|
|
@@ -30,12 +52,102 @@ class EmitState {
|
|
|
30
52
|
// ─── Public API ────────────────────────────────────────────
|
|
31
53
|
export function emit(ast, options = {}) {
|
|
32
54
|
const state = new EmitState(options);
|
|
33
|
-
// Emit import
|
|
55
|
+
// Emit import (always needed)
|
|
34
56
|
state.emitLine(`import { jsx, jsxs, Fragment } from "${options.jsxRuntime || 'react/jsx-runtime'}";`);
|
|
57
|
+
// Emit prologue lines (verbatim JS before any HAML)
|
|
58
|
+
if (ast.prologue && ast.prologue.length > 0) {
|
|
59
|
+
for (const line of ast.prologue) {
|
|
60
|
+
state.emitLine(line);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
35
63
|
state.emitLine();
|
|
36
|
-
//
|
|
37
|
-
|
|
38
|
-
|
|
64
|
+
// Component wrapping
|
|
65
|
+
if (options.wrap === 'component') {
|
|
66
|
+
const name = options.componentName || 'Component';
|
|
67
|
+
state.emitLine(`export default function ${name}(props) {`);
|
|
68
|
+
state.indentBlock(() => {
|
|
69
|
+
state.emit('return ');
|
|
70
|
+
const bodyExpr = compileComponentBody(ast, state);
|
|
71
|
+
state.output += `${bodyExpr};\n`;
|
|
72
|
+
});
|
|
73
|
+
state.emitLine('}');
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
emitNodes(ast.children, state, true);
|
|
77
|
+
}
|
|
78
|
+
const result = { code: state.output, warnings: state.warnings };
|
|
79
|
+
if (state.sourceMapGenerator) {
|
|
80
|
+
result.sourceMap = state.sourceMapGenerator.toString();
|
|
81
|
+
}
|
|
82
|
+
return result;
|
|
83
|
+
}
|
|
84
|
+
// ─── Node Emitters ─────────────────────────────────────────
|
|
85
|
+
// ─── Component Body Compilation ─────────────────────────────
|
|
86
|
+
/** Emit all root children as a single JSX expression for component return. */
|
|
87
|
+
function compileComponentBody(ast, state) {
|
|
88
|
+
// Emit to a temporary buffer to capture statement-level output
|
|
89
|
+
const tmpState = new EmitState(state.options);
|
|
90
|
+
tmpState.indent = state.indent;
|
|
91
|
+
// emitNodes handles control flow consuming subsequent siblings
|
|
92
|
+
emitNodes(ast.children, tmpState, true);
|
|
93
|
+
// Transfer warnings from temp state
|
|
94
|
+
state.warnings.push(...tmpState.warnings);
|
|
95
|
+
const body = tmpState.output.trim();
|
|
96
|
+
if (!body)
|
|
97
|
+
return 'null';
|
|
98
|
+
// Split into JS statements respecting brackets and strings
|
|
99
|
+
const stmts = splitJsStatements(body);
|
|
100
|
+
if (stmts.length === 0)
|
|
101
|
+
return 'null';
|
|
102
|
+
if (stmts.length === 1)
|
|
103
|
+
return stmts[0];
|
|
104
|
+
return `jsxs(Fragment, {}, ${stmts.join(', ')})`;
|
|
105
|
+
}
|
|
106
|
+
/** Split JS body into top-level statements, respecting string literals
|
|
107
|
+
* and bracket depth. Only splits on `;` at depth 0 followed by newline. */
|
|
108
|
+
function splitJsStatements(body) {
|
|
109
|
+
const stmts = [];
|
|
110
|
+
let depth = 0; // {} [] ()
|
|
111
|
+
let inString = null;
|
|
112
|
+
let start = 0;
|
|
113
|
+
for (let i = 0; i < body.length; i++) {
|
|
114
|
+
const ch = body[i];
|
|
115
|
+
if (inString) {
|
|
116
|
+
if (ch === '\\') {
|
|
117
|
+
i++;
|
|
118
|
+
continue;
|
|
119
|
+
}
|
|
120
|
+
if (ch === inString) {
|
|
121
|
+
inString = null;
|
|
122
|
+
}
|
|
123
|
+
continue;
|
|
124
|
+
}
|
|
125
|
+
if (ch === "'" || ch === '"' || ch === '`') {
|
|
126
|
+
inString = ch;
|
|
127
|
+
continue;
|
|
128
|
+
}
|
|
129
|
+
if (ch === '{' || ch === '[' || ch === '(') {
|
|
130
|
+
depth++;
|
|
131
|
+
continue;
|
|
132
|
+
}
|
|
133
|
+
if (ch === '}' || ch === ']' || ch === ')') {
|
|
134
|
+
depth--;
|
|
135
|
+
continue;
|
|
136
|
+
}
|
|
137
|
+
if (ch === ';' && depth === 0 && body[i + 1] === '\n') {
|
|
138
|
+
let stmt = body.slice(start, i).trim();
|
|
139
|
+
if (stmt)
|
|
140
|
+
stmts.push(stmt);
|
|
141
|
+
start = i + 2; // skip ;\n
|
|
142
|
+
i++; // skip \n
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
// Trailing content after last ;
|
|
146
|
+
const last = body.slice(start).trim();
|
|
147
|
+
if (last) {
|
|
148
|
+
stmts.push(last.endsWith(';') ? last.slice(0, -1).trim() : last);
|
|
149
|
+
}
|
|
150
|
+
return stmts;
|
|
39
151
|
}
|
|
40
152
|
// ─── Node Emitters ─────────────────────────────────────────
|
|
41
153
|
function emitNodes(nodes, state, isRoot = false) {
|
|
@@ -70,7 +182,8 @@ function emitNode(node, state, isRoot) {
|
|
|
70
182
|
}
|
|
71
183
|
// ─── Element ───────────────────────────────────────────────
|
|
72
184
|
function emitElement(el, state) {
|
|
73
|
-
const
|
|
185
|
+
const isVoid = typeof el.tag === 'string' && VOID_ELEMENTS.has(el.tag);
|
|
186
|
+
const hasChildren = !isVoid && el.children.length > 0;
|
|
74
187
|
const fn = hasChildren ? 'jsxs' : 'jsx';
|
|
75
188
|
// Tag
|
|
76
189
|
const tagJs = tagToJs(el);
|
|
@@ -121,6 +234,12 @@ function buildAttributes(el) {
|
|
|
121
234
|
let classNames = [...el.classes];
|
|
122
235
|
// Named attributes
|
|
123
236
|
for (const attr of el.attributes) {
|
|
237
|
+
// Spread attribute: {...props}
|
|
238
|
+
if (attr.spread) {
|
|
239
|
+
const valJs = compileExpression(attr.expression);
|
|
240
|
+
parts.push(`...${valJs}`);
|
|
241
|
+
continue;
|
|
242
|
+
}
|
|
124
243
|
const valJs = compileExpression(attr.value);
|
|
125
244
|
const name = attrNameToJs(attr.name);
|
|
126
245
|
if (name === 'className' || name === 'class') {
|
|
@@ -151,8 +270,8 @@ function buildAttributes(el) {
|
|
|
151
270
|
}
|
|
152
271
|
}
|
|
153
272
|
// style as object
|
|
154
|
-
const styleAttr = el.attributes.find(a => attrNameToJs(a.name) === 'style');
|
|
155
|
-
if (styleAttr && !styleAttr.shorthand) {
|
|
273
|
+
const styleAttr = el.attributes.find(a => !a.spread && attrNameToJs(a.name) === 'style');
|
|
274
|
+
if (styleAttr && !styleAttr.spread && !styleAttr.shorthand) {
|
|
156
275
|
// Already handled above — but ensure it's an object expression
|
|
157
276
|
}
|
|
158
277
|
return parts;
|
|
@@ -172,6 +291,7 @@ function attrNameToJs(name) {
|
|
|
172
291
|
return name;
|
|
173
292
|
}
|
|
174
293
|
function emitImplicitDiv(div, state) {
|
|
294
|
+
mapSourceLocation(div.location, state);
|
|
175
295
|
const el = new Element('div', {
|
|
176
296
|
classes: div.classes,
|
|
177
297
|
id: div.id,
|
|
@@ -225,13 +345,27 @@ function emitChildToJs(node, state) {
|
|
|
225
345
|
}
|
|
226
346
|
// ─── Control Flow ──────────────────────────────────────────
|
|
227
347
|
function emitControlFlow(cf, remaining, state, _isRoot) {
|
|
228
|
-
if (cf.
|
|
348
|
+
if (cf.controlKind === 'statement') {
|
|
349
|
+
emitStatement(cf, remaining, state);
|
|
350
|
+
}
|
|
351
|
+
else if (cf.isLoop) {
|
|
229
352
|
emitLoop(cf, remaining, state);
|
|
230
353
|
}
|
|
231
354
|
else {
|
|
232
355
|
emitConditional(cf, remaining, state);
|
|
233
356
|
}
|
|
234
357
|
}
|
|
358
|
+
/** Emit an arbitrary CoffeeScript statement (- code). */
|
|
359
|
+
function emitStatement(cf, remaining, state) {
|
|
360
|
+
const js = compileExpression(cf.expression);
|
|
361
|
+
state.emitLine(`${js};`);
|
|
362
|
+
if (cf.children.length > 0) {
|
|
363
|
+
emitNodes(cf.children, state);
|
|
364
|
+
}
|
|
365
|
+
if (remaining.length > 0) {
|
|
366
|
+
emitNodes(remaining, state);
|
|
367
|
+
}
|
|
368
|
+
}
|
|
235
369
|
function emitLoop(cf, remaining, state) {
|
|
236
370
|
// - for item in items → items.map(item => ...)
|
|
237
371
|
// - for item, i in items → items.map((item, i) => ...)
|
|
@@ -390,6 +524,11 @@ function emitControlFlowToJs(cf, state) {
|
|
|
390
524
|
const alternate = cf.next ? emitControlFlowToJs(cf.next, state) : 'null';
|
|
391
525
|
return `${condExpr} ? ${consequent} : ${alternate}`;
|
|
392
526
|
}
|
|
527
|
+
if (cf.controlKind === 'statement') {
|
|
528
|
+
// Inline statements can't be used as JSX children — pass through as comment
|
|
529
|
+
const js = compileExpression(cf.expression);
|
|
530
|
+
return `/* - ${js} */ null`;
|
|
531
|
+
}
|
|
393
532
|
return 'null';
|
|
394
533
|
}
|
|
395
534
|
// ─── Text / Output / Comment / Filter / Doctype ────────────
|
|
@@ -425,19 +564,30 @@ function emitFilter(filter, state) {
|
|
|
425
564
|
// 2. Built-in passthrough filters
|
|
426
565
|
switch (filterName) {
|
|
427
566
|
case 'css':
|
|
428
|
-
state.
|
|
567
|
+
state.warnings.push({
|
|
568
|
+
message: ':css filter emits raw CSS string — not usable as a <style> tag in React. Use a plugin handler to inject CSS properly.',
|
|
569
|
+
location: filter.location,
|
|
570
|
+
phase: 'emitter',
|
|
571
|
+
});
|
|
429
572
|
state.emitLine(`"${escapeString(content)}";`);
|
|
430
573
|
break;
|
|
431
574
|
case 'javascript':
|
|
432
|
-
|
|
575
|
+
state.warnings.push({
|
|
576
|
+
message: ':javascript filter emits raw JS at module level — an XSS risk with untrusted input. Ensure content is trusted.',
|
|
577
|
+
location: filter.location,
|
|
578
|
+
phase: 'emitter',
|
|
579
|
+
});
|
|
433
580
|
state.emitLine(content);
|
|
434
581
|
break;
|
|
435
|
-
case '
|
|
436
|
-
|
|
437
|
-
state.emitLine(`// :markdown filter used but no handler registered. Install 'marked' and add to compilerOptions.filters`);
|
|
438
|
-
state.emitLine(`"${escapeString(content)}";`);
|
|
582
|
+
case 'coffee':
|
|
583
|
+
state.emitLine(content);
|
|
439
584
|
break;
|
|
440
585
|
default:
|
|
586
|
+
state.warnings.push({
|
|
587
|
+
message: `:${filterName} filter used but no handler registered. Add one to compilerOptions.filters.`,
|
|
588
|
+
location: filter.location,
|
|
589
|
+
phase: 'emitter',
|
|
590
|
+
});
|
|
441
591
|
state.emitLine(`"${escapeString(content)}";`);
|
|
442
592
|
}
|
|
443
593
|
}
|
|
@@ -461,4 +611,9 @@ function emitDoctype(doctype, state) {
|
|
|
461
611
|
function escapeString(s) {
|
|
462
612
|
return JSON.stringify(s);
|
|
463
613
|
}
|
|
614
|
+
function mapSourceLocation(loc, state) {
|
|
615
|
+
if (loc) {
|
|
616
|
+
state.mapSource(loc.start);
|
|
617
|
+
}
|
|
618
|
+
}
|
|
464
619
|
//# sourceMappingURL=emitter.js.map
|
package/dist/emitter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../src/emitter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../src/emitter.ts"],"names":[],"mappings":"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"}
|
package/dist/expressions.d.ts
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import { Expression } from './ast.js';
|
|
2
|
+
/** Returns true if CoffeeScript is available for expression compilation. */
|
|
3
|
+
export declare function isCoffeeScriptAvailable(): boolean;
|
|
4
|
+
/** Get a human-readable reason if CoffeeScript is not available. */
|
|
5
|
+
export declare function getCoffeeScriptUnavailableReason(): string;
|
|
2
6
|
/** Parse a CoffeeScript expression string into its AST representation.
|
|
3
7
|
* Uses the host's CoffeeScript installation. Returns null gracefully
|
|
4
8
|
* if CoffeeScript is unavailable or parsing fails. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expressions.d.ts","sourceRoot":"","sources":["../src/expressions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"expressions.d.ts","sourceRoot":"","sources":["../src/expressions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAmCtC,4EAA4E;AAC5E,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAED,oEAAoE;AACpE,wBAAgB,gCAAgC,IAAI,MAAM,CAGzD;AAED;;uDAEuD;AACvD,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAa1D;AAED;;qDAEqD;AACrD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAkB1D"}
|
package/dist/expressions.js
CHANGED
|
@@ -10,6 +10,37 @@ function loadCoffeeScript() {
|
|
|
10
10
|
return null;
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
|
+
/** Track CoffeeScript availability and warnings. */
|
|
14
|
+
let _coffeeScriptAvailable = null;
|
|
15
|
+
let _coffeeScriptUnavailableReason = '';
|
|
16
|
+
function checkCoffeeScript() {
|
|
17
|
+
if (_coffeeScriptAvailable !== null)
|
|
18
|
+
return _coffeeScriptAvailable;
|
|
19
|
+
try {
|
|
20
|
+
const cs = loadCoffeeScript();
|
|
21
|
+
if (cs && typeof cs.compile === 'function') {
|
|
22
|
+
_coffeeScriptAvailable = true;
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
_coffeeScriptAvailable = false;
|
|
26
|
+
_coffeeScriptUnavailableReason = 'CoffeeScript module loaded but has no compile() function';
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
catch (e) {
|
|
30
|
+
_coffeeScriptAvailable = false;
|
|
31
|
+
_coffeeScriptUnavailableReason = `CoffeeScript unavailable: ${e instanceof Error ? e.message : String(e)}`;
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
/** Returns true if CoffeeScript is available for expression compilation. */
|
|
36
|
+
export function isCoffeeScriptAvailable() {
|
|
37
|
+
return checkCoffeeScript();
|
|
38
|
+
}
|
|
39
|
+
/** Get a human-readable reason if CoffeeScript is not available. */
|
|
40
|
+
export function getCoffeeScriptUnavailableReason() {
|
|
41
|
+
checkCoffeeScript(); // ensure initialized
|
|
42
|
+
return _coffeeScriptUnavailableReason;
|
|
43
|
+
}
|
|
13
44
|
/** Parse a CoffeeScript expression string into its AST representation.
|
|
14
45
|
* Uses the host's CoffeeScript installation. Returns null gracefully
|
|
15
46
|
* if CoffeeScript is unavailable or parsing fails. */
|
package/dist/expressions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expressions.js","sourceRoot":"","sources":["../src/expressions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,uFAAuF;AACvF,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEhD,SAAS,gBAAgB;IACvB,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;uDAEuD;AACvD,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IAEpC,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;QACxC,IAAI,YAAY,IAAI,OAAO,YAAY,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YAC7D,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wDAAwD;IAC1D,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;qDAEqD;AACrD,MAAM,UAAU,iBAAiB,CAAC,IAAgB;IAChD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAEzC,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;QACxC,IAAI,YAAY,IAAI,OAAO,YAAY,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YAC/D,MAAM,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE;gBAC3C,IAAI,EAAE,IAAI;gBACV,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;YACH,qFAAqF;YACrF,OAAO,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,eAAe;IACjB,CAAC;IAED,OAAO,IAAI,CAAC,MAAM,CAAC;AACrB,CAAC;AAED;;2BAE2B;AAC3B,SAAS,kBAAkB,CAAC,EAAU,EAAE,SAAiB;IACvD,IAAI,MAAM,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;IAEvB,2CAA2C;IAC3C,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAErC,yDAAyD;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,gDAAgD;QAChD,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"expressions.js","sourceRoot":"","sources":["../src/expressions.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { compile, compileFile, resolveCoffeeHamlFile, COFFEEHAML_EXTENSIONS } from './compiler.js';
|
|
2
|
+
export { isCoffeeScriptAvailable } from './expressions.js';
|
|
2
3
|
export { CompileError, CompileWarning } from './types.js';
|
|
3
4
|
export type { CompilerOptions, CompileResult, FilterHandler } from './types.js';
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACnG,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC1D,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACnG,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC1D,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACnG,OAAO,EAAE,YAAY,EAAkB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACnG,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAkB,MAAM,YAAY,CAAC"}
|
package/dist/lexer.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ export declare enum TokenType {
|
|
|
13
13
|
FILTER = "FILTER",// :filtername
|
|
14
14
|
DOCTYPE = "DOCTYPE",// !!! doctype
|
|
15
15
|
TEXT = "TEXT",// plain text content
|
|
16
|
+
PROLOGUE = "PROLOGUE",// raw JS before first HAML construct
|
|
16
17
|
INDENT = "INDENT",// increase indentation
|
|
17
18
|
DEDENT = "DEDENT",// decrease indentation
|
|
18
19
|
NEWLINE = "NEWLINE",// line break
|
package/dist/lexer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lexer.d.ts","sourceRoot":"","sources":["../src/lexer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAI5C,oBAAY,SAAS;IACnB,GAAG,QAAiB,CAAa,WAAW;IAC5C,KAAK,UAAiB,CAAW,aAAa;IAC9C,EAAE,OAAiB,CAAc,UAAU;IAC3C,WAAW,gBAAiB,CAAK,mBAAmB;IACpD,WAAW,gBAAiB,CAAK,mBAAmB;IACpD,MAAM,WAAiB,CAAU,eAAe;IAChD,YAAY,iBAAiB,CAAI,gBAAgB;IACjD,OAAO,YAAiB,CAAS,uBAAuB;IACxD,OAAO,YAAiB,CAAS,aAAa;IAC9C,YAAY,iBAAiB,CAAI,YAAY;IAC7C,MAAM,WAAiB,CAAU,cAAc;IAC/C,OAAO,YAAiB,CAAS,cAAc;IAC/C,IAAI,SAAiB,CAAY,qBAAqB;IACtD,MAAM,WAAiB,CAAU,uBAAuB;IACxD,MAAM,WAAiB,CAAU,uBAAuB;IACxD,OAAO,YAAiB,CAAS,aAAa;IAC9C,UAAU,eAAiB;CAC5B;AAID,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,cAAc,CAAC;IACzB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"lexer.d.ts","sourceRoot":"","sources":["../src/lexer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAI5C,oBAAY,SAAS;IACnB,GAAG,QAAiB,CAAa,WAAW;IAC5C,KAAK,UAAiB,CAAW,aAAa;IAC9C,EAAE,OAAiB,CAAc,UAAU;IAC3C,WAAW,gBAAiB,CAAK,mBAAmB;IACpD,WAAW,gBAAiB,CAAK,mBAAmB;IACpD,MAAM,WAAiB,CAAU,eAAe;IAChD,YAAY,iBAAiB,CAAI,gBAAgB;IACjD,OAAO,YAAiB,CAAS,uBAAuB;IACxD,OAAO,YAAiB,CAAS,aAAa;IAC9C,YAAY,iBAAiB,CAAI,YAAY;IAC7C,MAAM,WAAiB,CAAU,cAAc;IAC/C,OAAO,YAAiB,CAAS,cAAc;IAC/C,IAAI,SAAiB,CAAY,qBAAqB;IACtD,QAAQ,aAAiB,CAAQ,qCAAqC;IACtE,MAAM,WAAiB,CAAU,uBAAuB;IACxD,MAAM,WAAiB,CAAU,uBAAuB;IACxD,OAAO,YAAiB,CAAS,aAAa;IAC9C,UAAU,eAAiB;CAC5B;AAID,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,cAAc,CAAC;IACzB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,CA8EnE"}
|
package/dist/lexer.js
CHANGED
|
@@ -14,6 +14,7 @@ export var TokenType;
|
|
|
14
14
|
TokenType["FILTER"] = "FILTER";
|
|
15
15
|
TokenType["DOCTYPE"] = "DOCTYPE";
|
|
16
16
|
TokenType["TEXT"] = "TEXT";
|
|
17
|
+
TokenType["PROLOGUE"] = "PROLOGUE";
|
|
17
18
|
TokenType["INDENT"] = "INDENT";
|
|
18
19
|
TokenType["DEDENT"] = "DEDENT";
|
|
19
20
|
TokenType["NEWLINE"] = "NEWLINE";
|
|
@@ -25,6 +26,7 @@ export function tokenize(source, filename) {
|
|
|
25
26
|
const lines = source.split('\n');
|
|
26
27
|
const indentStack = [0]; // level 0 is always on the stack
|
|
27
28
|
let offset = 0;
|
|
29
|
+
let inPrologue = true; // true until first HAML construct encountered
|
|
28
30
|
for (const rawLine of lines) {
|
|
29
31
|
const line = rawLine.replace(/\r$/, '');
|
|
30
32
|
const lineLength = rawLine.length + 1; // +1 for \n (used only for offset)
|
|
@@ -40,6 +42,23 @@ export function tokenize(source, filename) {
|
|
|
40
42
|
offset += lineLength;
|
|
41
43
|
continue;
|
|
42
44
|
}
|
|
45
|
+
// ── Prologue detection: non-indented JS lines before first HAML construct ──
|
|
46
|
+
if (inPrologue && indent === 0 && !isHamlConstruct(content)) {
|
|
47
|
+
tokens.push({
|
|
48
|
+
type: TokenType.PROLOGUE,
|
|
49
|
+
value: content,
|
|
50
|
+
location: {
|
|
51
|
+
start: { line: 0, column: offset + indent },
|
|
52
|
+
end: { line: 0, column: offset + indent + content.length },
|
|
53
|
+
offset: offset + indent,
|
|
54
|
+
length: lineLength - indent,
|
|
55
|
+
file: filename,
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
offset += lineLength;
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
inPrologue = false; // first HAML construct or indented line locks us out of prologue
|
|
43
62
|
// Handle indentation changes
|
|
44
63
|
const currentIndent = indentStack[indentStack.length - 1];
|
|
45
64
|
if (indent > currentIndent) {
|
|
@@ -130,6 +149,25 @@ function tokenizeLine(content, lineStartOffset, _lineLength, filename) {
|
|
|
130
149
|
if ((firstChar === '.' || firstChar === '#') && /^[.#][\w-]/.test(content)) {
|
|
131
150
|
const modResult = parseModifiersAndAttrs(content, 0, lineStartOffset, filename);
|
|
132
151
|
tokens.push(...modResult.tokens);
|
|
152
|
+
let pos = modResult.pos;
|
|
153
|
+
// Parse inline output or text after modifiers (same as %tag path)
|
|
154
|
+
const remaining = content.slice(pos).trimStart();
|
|
155
|
+
const trimmedOffset = content.length - remaining.length;
|
|
156
|
+
if (remaining) {
|
|
157
|
+
if (remaining.startsWith('= ') || remaining === '=') {
|
|
158
|
+
tokens.push({ type: TokenType.OUTPUT, value: remaining.slice(1).trimStart(), location: loc(trimmedOffset + 1, content.length) });
|
|
159
|
+
}
|
|
160
|
+
else if (remaining.startsWith('!= ')) {
|
|
161
|
+
tokens.push({ type: TokenType.OUTPUT_UNESC, value: remaining.slice(2).trimStart(), location: loc(trimmedOffset + 2, content.length) });
|
|
162
|
+
}
|
|
163
|
+
else if (!remaining.startsWith('{') && !remaining.startsWith('(')) {
|
|
164
|
+
tokens.push({
|
|
165
|
+
type: TokenType.TEXT,
|
|
166
|
+
value: remaining,
|
|
167
|
+
location: loc(trimmedOffset, content.length),
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
}
|
|
133
171
|
return tokens;
|
|
134
172
|
}
|
|
135
173
|
// ── = expression ──
|
|
@@ -216,7 +254,7 @@ function parseModifiersAndAttrs(content, startPos, lineStartOffset, filename) {
|
|
|
216
254
|
// {attribute block}
|
|
217
255
|
if (ch === '{') {
|
|
218
256
|
const block = extractBracketed(content, pos, '{', '}');
|
|
219
|
-
if (block) {
|
|
257
|
+
if (block !== null) {
|
|
220
258
|
tokens.push({ type: TokenType.ATTRS_BRACE, value: block, location: loc(pos, pos + block.length + 2) });
|
|
221
259
|
pos += block.length + 2;
|
|
222
260
|
}
|
|
@@ -230,7 +268,7 @@ function parseModifiersAndAttrs(content, startPos, lineStartOffset, filename) {
|
|
|
230
268
|
// (attribute block)
|
|
231
269
|
if (ch === '(') {
|
|
232
270
|
const block = extractBracketed(content, pos, '(', ')');
|
|
233
|
-
if (block) {
|
|
271
|
+
if (block !== null) {
|
|
234
272
|
tokens.push({ type: TokenType.ATTRS_PAREN, value: block, location: loc(pos, pos + block.length + 2) });
|
|
235
273
|
pos += block.length + 2;
|
|
236
274
|
}
|
|
@@ -246,6 +284,14 @@ function parseModifiersAndAttrs(content, startPos, lineStartOffset, filename) {
|
|
|
246
284
|
return { tokens, pos };
|
|
247
285
|
}
|
|
248
286
|
// ─── Helpers ───────────────────────────────────────────────
|
|
287
|
+
/** Returns true if a line of content starts a HAML construct (not plain text). */
|
|
288
|
+
function isHamlConstruct(content) {
|
|
289
|
+
const fc = content[0];
|
|
290
|
+
return fc === '%' || fc === '.' || fc === '#' || fc === '=' ||
|
|
291
|
+
fc === '-' || fc === '/' || fc === ':' ||
|
|
292
|
+
(fc === '!' && content[1] === '=') ||
|
|
293
|
+
content.startsWith('!!!');
|
|
294
|
+
}
|
|
249
295
|
function countIndent(line) {
|
|
250
296
|
let count = 0;
|
|
251
297
|
for (const ch of line) {
|
package/dist/lexer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lexer.js","sourceRoot":"","sources":["../src/lexer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lexer.js","sourceRoot":"","sources":["../src/lexer.ts"],"names":[],"mappings":"AAEA,8DAA8D;AAE9D,MAAM,CAAN,IAAY,SAmBX;AAnBD,WAAY,SAAS;IACnB,wBAAoB,CAAA;IACpB,4BAAsB,CAAA;IACtB,sBAAmB,CAAA;IACnB,wCAA4B,CAAA;IAC5B,wCAA4B,CAAA;IAC5B,8BAAuB,CAAA;IACvB,0CAA6B,CAAA;IAC7B,gCAAwB,CAAA;IACxB,gCAAwB,CAAA;IACxB,0CAA6B,CAAA;IAC7B,8BAAuB,CAAA;IACvB,gCAAwB,CAAA;IACxB,0BAAqB,CAAA;IACrB,kCAAyB,CAAA;IACzB,8BAAuB,CAAA;IACvB,8BAAuB,CAAA;IACvB,gCAAwB,CAAA;IACxB,sCAA2B,CAAA;AAC7B,CAAC,EAnBW,SAAS,KAAT,SAAS,QAmBpB;AAYD,8DAA8D;AAE9D,MAAM,UAAU,QAAQ,CAAC,MAAc,EAAE,QAAiB;IACxD,MAAM,MAAM,GAAY,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,WAAW,GAAa,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC;IAEpE,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,UAAU,GAAG,IAAI,CAAC,CAAC,8CAA8C;IAErE,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,mCAAmC;QAE1E,kEAAkE;QAClE,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvB,MAAM,IAAI,UAAU,CAAC;YACrB,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEnC,mBAAmB;QACnB,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YACnB,MAAM,IAAI,UAAU,CAAC;YACrB,SAAS;QACX,CAAC;QAED,8EAA8E;QAC9E,IAAI,UAAU,IAAI,MAAM,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5D,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,SAAS,CAAC,QAAQ;gBACxB,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE;oBACR,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE;oBAC3C,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE;oBAC1D,MAAM,EAAE,MAAM,GAAG,MAAM;oBACvB,MAAM,EAAE,UAAU,GAAG,MAAM;oBAC3B,IAAI,EAAE,QAAQ;iBACf;aACF,CAAC,CAAC;YACH,MAAM,IAAI,UAAU,CAAC;YACrB,SAAS;QACX,CAAC;QACD,UAAU,GAAG,KAAK,CAAC,CAAC,iEAAiE;QAErF,6BAA6B;QAC7B,MAAM,aAAa,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE1D,IAAI,MAAM,GAAG,aAAa,EAAE,CAAC;YAC3B,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC7D,CAAC;aAAM,IAAI,MAAM,GAAG,aAAa,EAAE,CAAC;YAClC,OAAO,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC9E,WAAW,CAAC,GAAG,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,MAAM,KAAK,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;gBACnD,6CAA6C;gBAC7C,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;QACxC,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,EAAE,eAAe,EAAE,UAAU,GAAG,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzF,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;QAE3B,MAAM,IAAI,UAAU,CAAC;IACvB,CAAC;IAED,sCAAsC;IACtC,OAAO,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,WAAW,CAAC,GAAG,EAAE,CAAC;QAClB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8DAA8D;AAE9D,SAAS,YAAY,CACnB,OAAe,EACf,eAAuB,EACvB,WAAmB,EACnB,QAAiB;IAEjB,MAAM,MAAM,GAAY,EAAE,CAAC;IAC3B,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,SAAS,GAAG,CAAC,KAAa,EAAE,GAAW;QACrC,OAAO;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,eAAe,GAAG,KAAK,EAAE,EAAE,oCAAoC;YACzF,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,eAAe,GAAG,GAAG,EAAE;YAC/C,MAAM,EAAE,eAAe,GAAG,KAAK;YAC/B,MAAM,EAAE,GAAG,GAAG,KAAK;YACnB,IAAI,EAAE,QAAQ;SACf,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAE7B,aAAa;IACb,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;QACtB,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,uDAAuD;QACvD,OAAO,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,EAAE,CAAC;QACR,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5E,GAAG,GAAG,GAAG,CAAC;QAEV,2BAA2B;QAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;YACrF,GAAG,EAAE,CAAC;QACR,CAAC;QAED,yDAAyD;QACzD,MAAM,SAAS,GAAG,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;QAClF,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;QACjC,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC;QAEpB,uDAAuD;QACvD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QACjD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QACxD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,aAAa,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACnI,CAAC;iBAAM,IAAI,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,YAAY,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,aAAa,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzI,CAAC;iBAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpE,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,KAAK,EAAE,SAAS;oBAChB,QAAQ,EAAE,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC;iBAC7C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,oCAAoC;IACpC,iFAAiF;IACjF,yEAAyE;IACzE,uDAAuD;IACvD,IAAI,CAAC,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3E,MAAM,SAAS,GAAG,sBAAsB,CAAC,OAAO,EAAE,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;QAChF,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC;QAExB,kEAAkE;QAClE,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QACjD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QACxD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,aAAa,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACnI,CAAC;iBAAM,IAAI,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,YAAY,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,aAAa,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzI,CAAC;iBAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpE,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,KAAK,EAAE,SAAS;oBAChB,QAAQ,EAAE,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC;iBAC7C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,qBAAqB;IACrB,IAAI,SAAS,KAAK,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1C,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,sBAAsB;IACtB,IAAI,SAAS,KAAK,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1C,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3F,CAAC;IAED,4BAA4B;IAC5B,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;QACtB,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACvB,eAAe;YACf,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC9G,CAAC;QACD,uBAAuB;QACvB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1C,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,uBAAuB;IACvB,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;QACtB,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACnH,CAAC;IAED,gBAAgB;IAChB,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;QACtB,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QACnF,MAAM,aAAa,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,KAAK,aAAa,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAClH,CAAC;IAED,oBAAoB;IACpB,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QACzC,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED,mBAAmB;IACnB,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AACtF,CAAC;AAED,8DAA8D;AAE9D,SAAS,sBAAsB,CAC7B,OAAe,EACf,QAAgB,EAChB,eAAuB,EACvB,QAAiB;IAEjB,MAAM,MAAM,GAAY,EAAE,CAAC;IAC3B,IAAI,GAAG,GAAG,QAAQ,CAAC;IAEnB,SAAS,GAAG,CAAC,KAAa,EAAE,GAAW;QACrC,OAAO;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,eAAe,GAAG,KAAK,EAAE;YACnD,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,eAAe,GAAG,GAAG,EAAE;YAC/C,MAAM,EAAE,eAAe,GAAG,KAAK;YAC/B,MAAM,EAAE,GAAG,GAAG,KAAK;YACnB,IAAI,EAAE,QAAQ;SACf,CAAC;IACJ,CAAC;IAED,OAAO,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QAC5B,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAExB,aAAa;QACb,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAC9B,GAAG,EAAE,CAAC;YACN,SAAS;QACX,CAAC;QAED,SAAS;QACT,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;YAClB,OAAO,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC1D,GAAG,EAAE,CAAC;YACR,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YAClF,GAAG,GAAG,GAAG,CAAC;YACV,SAAS;QACX,CAAC;QAED,MAAM;QACN,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;YAClB,OAAO,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC1D,GAAG,EAAE,CAAC;YACR,CAAC;YACD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YAC3C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5E,GAAG,GAAG,GAAG,CAAC;YACV,SAAS;QACX,CAAC;QAED,oBAAoB;QACpB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACvD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;gBACvG,GAAG,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,8BAA8B;gBAC9B,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChH,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;YACvB,CAAC;YACD,SAAS;QACX,CAAC;QAED,oBAAoB;QACpB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACvD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;gBACvG,GAAG,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChH,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;YACvB,CAAC;YACD,SAAS;QACX,CAAC;QAED,yCAAyC;QACzC,MAAM;IACR,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACzB,CAAC;AAED,8DAA8D;AAE9D,kFAAkF;AAClF,SAAS,eAAe,CAAC,OAAe;IACtC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtB,OAAO,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG;QACpD,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG;QACtC,CAAC,EAAE,KAAK,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;QAClC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;QACtB,IAAI,EAAE,KAAK,GAAG;YAAE,KAAK,EAAE,CAAC;aACnB,IAAI,EAAE,KAAK,IAAI;YAAE,KAAK,IAAI,CAAC,CAAC,CAAC,iBAAiB;;YAC9C,MAAM;IACb,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,OAAe,EAAE,MAAc,EAAE,KAAa,EAAE,QAAiB;IACpF,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,MAAM;QACtB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE;YACR,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;YAC7B,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;YAC3B,MAAM;YACN,MAAM,EAAE,CAAC;YACT,IAAI,EAAE,QAAQ;SACf;KACF,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,MAAc,EAAE,QAAiB;IACpD,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,MAAM;QACtB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE;YACR,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;YAC7B,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;YAC3B,MAAM;YACN,MAAM,EAAE,CAAC;YACT,IAAI,EAAE,QAAQ;SACf;KACF,CAAC;AACJ,CAAC;AAED,2FAA2F;AAC3F,SAAS,gBAAgB,CACvB,OAAe,EACf,KAAa,EACb,IAAY,EACZ,KAAa;IAEb,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,OAAO,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QAC5B,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI;YAAE,KAAK,EAAE,CAAC;aAC9B,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC;YAChC,KAAK,EAAE,CAAC;YACR,IAAI,KAAK,KAAK,CAAC;gBAAE,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QACxD,CAAC;QACD,0CAA0C;QAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;YACjD,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACvB,GAAG,EAAE,CAAC;YACN,OAAO,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClD,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI;oBAAE,GAAG,EAAE,CAAC,CAAC,cAAc;gBAChD,GAAG,EAAE,CAAC;YACR,CAAC;QACH,CAAC;QACD,GAAG,EAAE,CAAC;IACR,CAAC;IACD,OAAO,IAAI,CAAC,CAAC,aAAa;AAC5B,CAAC"}
|
package/dist/parser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAa,MAAM,YAAY,CAAC;AAC9C,OAAO,EACL,QAAQ,EAGT,MAAM,UAAU,CAAC;AA0DlB,wBAAgB,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAa,MAAM,YAAY,CAAC;AAC9C,OAAO,EACL,QAAQ,EAGT,MAAM,UAAU,CAAC;AA0DlB,wBAAgB,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,CAWlE"}
|
package/dist/parser.js
CHANGED
|
@@ -40,8 +40,13 @@ class ParserState {
|
|
|
40
40
|
// ─── Public API ────────────────────────────────────────────
|
|
41
41
|
export function parse(tokens, filename) {
|
|
42
42
|
const state = new ParserState(tokens, filename);
|
|
43
|
+
// Collect prologue (raw JS lines before the first HAML construct)
|
|
44
|
+
const prologue = [];
|
|
45
|
+
while (state.current?.type === TokenType.PROLOGUE) {
|
|
46
|
+
prologue.push(state.advance().value);
|
|
47
|
+
}
|
|
43
48
|
const children = parseBlock(state);
|
|
44
|
-
return new Document(children);
|
|
49
|
+
return new Document(children, prologue);
|
|
45
50
|
}
|
|
46
51
|
// ─── Block Parsing ─────────────────────────────────────────
|
|
47
52
|
/** Parse nodes until DEDENT or EOF. */
|
|
@@ -245,14 +250,17 @@ function parseControlKind(source) {
|
|
|
245
250
|
case 'for': return 'for';
|
|
246
251
|
case 'while': return 'while';
|
|
247
252
|
case 'else': return 'else';
|
|
248
|
-
default: return '
|
|
253
|
+
default: return 'statement';
|
|
249
254
|
}
|
|
250
255
|
}
|
|
251
256
|
function stripControlKeyword(source, kind) {
|
|
252
257
|
const trimmed = source.trimStart();
|
|
258
|
+
if (kind === 'statement') {
|
|
259
|
+
return trimmed; // no keyword to strip — entire source is the statement
|
|
260
|
+
}
|
|
253
261
|
// Remove the keyword and any whitespace after it
|
|
254
262
|
const keyword = kind === 'else' ? 'else' : kind;
|
|
255
|
-
const re = new RegExp(
|
|
263
|
+
const re = new RegExp(`^\\\\s*${keyword}\\\\b\\\\s*`);
|
|
256
264
|
return trimmed.replace(re, '');
|
|
257
265
|
}
|
|
258
266
|
function isElse(source) {
|
|
@@ -329,6 +337,21 @@ function parseAttributeBlock(source, _style, _location) {
|
|
|
329
337
|
const trimmed = pair.trim();
|
|
330
338
|
if (!trimmed)
|
|
331
339
|
continue;
|
|
340
|
+
// Spread attribute: props... (CoffeeScript form) or ...props (JSX form)
|
|
341
|
+
if (trimmed.endsWith('...')) {
|
|
342
|
+
const expr = trimmed.slice(0, -3).trim();
|
|
343
|
+
if (expr) {
|
|
344
|
+
attrs.push({ spread: true, expression: new Expression(expr) });
|
|
345
|
+
}
|
|
346
|
+
continue;
|
|
347
|
+
}
|
|
348
|
+
if (trimmed.startsWith('...')) {
|
|
349
|
+
const expr = trimmed.slice(3).trim();
|
|
350
|
+
if (expr) {
|
|
351
|
+
attrs.push({ spread: true, expression: new Expression(expr) });
|
|
352
|
+
}
|
|
353
|
+
continue;
|
|
354
|
+
}
|
|
332
355
|
const colonIdx = findColon(trimmed);
|
|
333
356
|
if (colonIdx === -1) {
|
|
334
357
|
// Shorthand: {foo} → foo={foo}
|
package/dist/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -27,6 +27,10 @@ export interface CompilerOptions {
|
|
|
27
27
|
jsxImportSource?: string;
|
|
28
28
|
/** Custom filter handlers. Key = filter name (e.g. 'markdown'), value = content→HTML transform. */
|
|
29
29
|
filters?: Record<string, FilterHandler>;
|
|
30
|
+
/** Wrap output in a component function. 'component' emits `export default function Name(props) { return ...; }`. */
|
|
31
|
+
wrap?: 'none' | 'component';
|
|
32
|
+
/** Component name when wrap is 'component'. Defaults to 'Component' or derived from filename. */
|
|
33
|
+
componentName?: string;
|
|
30
34
|
}
|
|
31
35
|
/** Compiler result. */
|
|
32
36
|
export interface CompileResult {
|
|
@@ -56,10 +60,15 @@ export interface EmitterOptions {
|
|
|
56
60
|
jsxRuntime?: string;
|
|
57
61
|
/** Custom filter handlers. Key = filter name, value = content→HTML transform. */
|
|
58
62
|
filters?: Record<string, FilterHandler>;
|
|
63
|
+
/** Wrap output in a component function. */
|
|
64
|
+
wrap?: 'none' | 'component';
|
|
65
|
+
/** Component name when wrap is 'component'. */
|
|
66
|
+
componentName?: string;
|
|
59
67
|
}
|
|
60
68
|
/** Emitter result. */
|
|
61
69
|
export interface EmitResult {
|
|
62
70
|
code: string;
|
|
63
71
|
sourceMap?: string;
|
|
72
|
+
warnings: CompileWarning[];
|
|
64
73
|
}
|
|
65
74
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,+BAA+B;AAC/B,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,cAAc,CAAC;IACtB,GAAG,EAAE,cAAc,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wEAAwE;AACxE,MAAM,WAAW,aAAa;IAC5B,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;CAC/C;AAED,wBAAwB;AACxB,MAAM,WAAW,eAAe;IAC9B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uCAAuC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mGAAmG;IACnG,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,+BAA+B;AAC/B,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,cAAc,CAAC;IACtB,GAAG,EAAE,cAAc,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wEAAwE;AACxE,MAAM,WAAW,aAAa;IAC5B,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;CAC/C;AAED,wBAAwB;AACxB,MAAM,WAAW,eAAe;IAC9B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uCAAuC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mGAAmG;IACnG,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACxC,oHAAoH;IACpH,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC5B,iGAAiG;IACjG,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,uBAAuB;AACvB,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B;AAED,2CAA2C;AAC3C,qBAAa,YAAa,SAAQ,KAAK;IACrC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;gBAED,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE,MAAM;CAQnG;AAED,wBAAwB;AACxB,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,uBAAuB;AACvB,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACxC,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC5B,+CAA+C;IAC/C,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,sBAAsB;AACtB,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA8CA,2CAA2C;AAC3C,MAAM,OAAO,YAAa,SAAQ,KAAK;IAMrC,YAAY,OAAe,EAAE,KAAa,EAAE,IAAY,EAAE,QAAyB,EAAE,IAAa;QAChG,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-plugin.d.ts","sourceRoot":"","sources":["../src/vite-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"vite-plugin.d.ts","sourceRoot":"","sources":["../src/vite-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,MAAM,WAAW,uBAAuB;IACtC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAUD,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,OAAO,GAAE,uBAA4B,GAAG,MAAM,CAgDhF"}
|
package/dist/vite-plugin.js
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import { compile } from './compiler.js';
|
|
2
|
+
import { basename } from 'path';
|
|
2
3
|
const COFFEEHAML_RE = /\.(coffeehaml|cohaml|chaml)$/;
|
|
4
|
+
/** Derive a PascalCase component name from a filename stem. */
|
|
5
|
+
function componentNameFromPath(filepath) {
|
|
6
|
+
const stem = basename(filepath).split('.').shift() || 'Component';
|
|
7
|
+
return stem.charAt(0).toUpperCase() + stem.slice(1);
|
|
8
|
+
}
|
|
3
9
|
export default function coffeehaml(options = {}) {
|
|
10
|
+
// Default to component mode — the only sensible default for Vite/React projects
|
|
4
11
|
const compilerOpts = {
|
|
5
12
|
sourceMap: true,
|
|
13
|
+
wrap: 'component',
|
|
6
14
|
...options.compilerOptions,
|
|
7
15
|
};
|
|
8
16
|
return {
|
|
@@ -13,6 +21,7 @@ export default function coffeehaml(options = {}) {
|
|
|
13
21
|
const result = compile(code, {
|
|
14
22
|
...compilerOpts,
|
|
15
23
|
filename: id,
|
|
24
|
+
componentName: compilerOpts.componentName || componentNameFromPath(id),
|
|
16
25
|
});
|
|
17
26
|
if (result.errors.length > 0) {
|
|
18
27
|
const err = result.errors[0];
|
package/dist/vite-plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-plugin.js","sourceRoot":"","sources":["../src/vite-plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"vite-plugin.js","sourceRoot":"","sources":["../src/vite-plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAMhC,MAAM,aAAa,GAAG,8BAA8B,CAAC;AAErD,+DAA+D;AAC/D,SAAS,qBAAqB,CAAC,QAAgB;IAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,WAAW,CAAC;IAClE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,UAAmC,EAAE;IACtE,gFAAgF;IAChF,MAAM,YAAY,GAAoB;QACpC,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,WAAW;QACjB,GAAG,OAAO,CAAC,eAAe;KAC3B,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,YAAY;QAElB,SAAS,CAAC,IAAY,EAAE,EAAU;YAChC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;gBAAE,OAAO;YAEpC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE;gBAC3B,GAAG,YAAY;gBACf,QAAQ,EAAE,EAAE;gBACZ,aAAa,EAAE,YAAY,CAAC,aAAa,IAAI,qBAAqB,CAAC,EAAE,CAAC;aACvE,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC7B,IAAI,CAAC,KAAK,CAAC;oBACT,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,EAAE;oBACF,aAAa;oBACb,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;wBAClB,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC;wBACjC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;qBACtC,CAAC,CAAC,CAAC,SAAS;iBACd,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO;gBACL,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAS,CAAC,CAAC,CAAC,IAAI;aACrE,CAAC;QACJ,CAAC;QAED,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;YAC9B,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7B,4DAA4D;gBAC5D,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;gBACxC,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "coffeehaml",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Haml structure. CoffeeScript semantics. React runtime.",
|
|
3
|
+
"version": "0.3.2",
|
|
4
|
+
"description": "Haml structure. CoffeeScript semantics. React runtime. Zero runtime. Vite-native.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"author": "dantiel <dantiel@proton.me>",
|
|
@@ -19,8 +19,14 @@
|
|
|
19
19
|
"coffeehaml": "./dist/cli.js"
|
|
20
20
|
},
|
|
21
21
|
"exports": {
|
|
22
|
-
".":
|
|
23
|
-
|
|
22
|
+
".": {
|
|
23
|
+
"types": "./dist/index.d.ts",
|
|
24
|
+
"default": "./dist/index.js"
|
|
25
|
+
},
|
|
26
|
+
"./vite": {
|
|
27
|
+
"types": "./dist/vite-plugin.d.ts",
|
|
28
|
+
"default": "./dist/vite-plugin.js"
|
|
29
|
+
}
|
|
24
30
|
},
|
|
25
31
|
"files": [
|
|
26
32
|
"dist",
|
|
@@ -58,4 +64,4 @@
|
|
|
58
64
|
"dependencies": {
|
|
59
65
|
"source-map": "^0.7.4"
|
|
60
66
|
}
|
|
61
|
-
}
|
|
67
|
+
}
|