@next-core/cook 2.0.4 → 2.1.0
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/cjs/preevaluate.js
CHANGED
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.isEvaluable = isEvaluable;
|
|
7
|
+
exports.isTrackAll = isTrackAll;
|
|
7
8
|
exports.preevaluate = preevaluate;
|
|
8
9
|
exports.shouldAllowRecursiveEvaluations = shouldAllowRecursiveEvaluations;
|
|
9
10
|
var _parse = require("./parse.js");
|
|
@@ -11,7 +12,7 @@ var _precook = require("./precook.js");
|
|
|
11
12
|
// `raw` should always be asserted by `isEvaluable`.
|
|
12
13
|
function preevaluate(raw, options) {
|
|
13
14
|
const fixes = [];
|
|
14
|
-
const source = raw.replace(/^\s
|
|
15
|
+
const source = raw.replace(/^\s*<%[~=]?\s|\s%>\s*$/g, m => {
|
|
15
16
|
fixes.push(m);
|
|
16
17
|
return "";
|
|
17
18
|
});
|
|
@@ -29,9 +30,12 @@ function preevaluate(raw, options) {
|
|
|
29
30
|
};
|
|
30
31
|
}
|
|
31
32
|
function isEvaluable(raw) {
|
|
32
|
-
return /^\s
|
|
33
|
+
return /^\s*<%[~=]?\s/.test(raw) && /\s%>\s*$/.test(raw);
|
|
33
34
|
}
|
|
34
35
|
function shouldAllowRecursiveEvaluations(raw) {
|
|
35
36
|
return /^\s*<%~\s/.test(raw);
|
|
36
37
|
}
|
|
38
|
+
function isTrackAll(raw) {
|
|
39
|
+
return /^\s*<%=\s.*\s%>\s*$/.test(raw);
|
|
40
|
+
}
|
|
37
41
|
//# sourceMappingURL=preevaluate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preevaluate.js","names":["_parse","require","_precook","preevaluate","raw","options","fixes","source","replace","m","push","expression","parseAsEstreeExpression","attemptToVisitGlobals","precook","expressionOnly","prefix","suffix","isEvaluable","test","shouldAllowRecursiveEvaluations"],"sources":["../../src/preevaluate.ts"],"sourcesContent":["import { Expression } from \"@babel/types\";\nimport { parseAsEstreeExpression } from \"./parse.js\";\nimport { precook, PrecookOptions } from \"./precook.js\";\n\nexport type PreevaluateOptions = Omit<PrecookOptions, \"expressionOnly\">;\n\nexport interface PreevaluateResult {\n expression: Expression;\n attemptToVisitGlobals: Set<string>;\n source: string;\n prefix: string;\n suffix: string;\n}\n\n// `raw` should always be asserted by `isEvaluable`.\nexport function preevaluate(\n raw: string,\n options?: PreevaluateOptions\n): PreevaluateResult {\n const fixes: string[] = [];\n const source = raw.replace(/^\\s
|
|
1
|
+
{"version":3,"file":"preevaluate.js","names":["_parse","require","_precook","preevaluate","raw","options","fixes","source","replace","m","push","expression","parseAsEstreeExpression","attemptToVisitGlobals","precook","expressionOnly","prefix","suffix","isEvaluable","test","shouldAllowRecursiveEvaluations","isTrackAll"],"sources":["../../src/preevaluate.ts"],"sourcesContent":["import { Expression } from \"@babel/types\";\nimport { parseAsEstreeExpression } from \"./parse.js\";\nimport { precook, PrecookOptions } from \"./precook.js\";\n\nexport type PreevaluateOptions = Omit<PrecookOptions, \"expressionOnly\">;\n\nexport interface PreevaluateResult {\n expression: Expression;\n attemptToVisitGlobals: Set<string>;\n source: string;\n prefix: string;\n suffix: string;\n}\n\n// `raw` should always be asserted by `isEvaluable`.\nexport function preevaluate(\n raw: string,\n options?: PreevaluateOptions\n): PreevaluateResult {\n const fixes: string[] = [];\n const source = raw.replace(/^\\s*<%[~=]?\\s|\\s%>\\s*$/g, (m) => {\n fixes.push(m);\n return \"\";\n });\n const expression = parseAsEstreeExpression(source);\n const attemptToVisitGlobals = precook(expression, {\n ...options,\n expressionOnly: true,\n });\n return {\n expression,\n attemptToVisitGlobals,\n source,\n prefix: fixes[0],\n suffix: fixes[1],\n };\n}\n\nexport function isEvaluable(raw: string): boolean {\n return /^\\s*<%[~=]?\\s/.test(raw) && /\\s%>\\s*$/.test(raw);\n}\n\nexport function shouldAllowRecursiveEvaluations(raw: string): boolean {\n return /^\\s*<%~\\s/.test(raw);\n}\n\nexport function isTrackAll(raw: string): boolean {\n return /^\\s*<%=\\s.*\\s%>\\s*$/.test(raw);\n}\n"],"mappings":";;;;;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAYA;AACO,SAASE,WAAWA,CACzBC,GAAW,EACXC,OAA4B,EACT;EACnB,MAAMC,KAAe,GAAG,EAAE;EAC1B,MAAMC,MAAM,GAAGH,GAAG,CAACI,OAAO,CAAC,yBAAyB,EAAGC,CAAC,IAAK;IAC3DH,KAAK,CAACI,IAAI,CAACD,CAAC,CAAC;IACb,OAAO,EAAE;EACX,CAAC,CAAC;EACF,MAAME,UAAU,GAAG,IAAAC,8BAAuB,EAACL,MAAM,CAAC;EAClD,MAAMM,qBAAqB,GAAG,IAAAC,gBAAO,EAACH,UAAU,EAAE;IAChD,GAAGN,OAAO;IACVU,cAAc,EAAE;EAClB,CAAC,CAAC;EACF,OAAO;IACLJ,UAAU;IACVE,qBAAqB;IACrBN,MAAM;IACNS,MAAM,EAAEV,KAAK,CAAC,CAAC,CAAC;IAChBW,MAAM,EAAEX,KAAK,CAAC,CAAC;EACjB,CAAC;AACH;AAEO,SAASY,WAAWA,CAACd,GAAW,EAAW;EAChD,OAAO,eAAe,CAACe,IAAI,CAACf,GAAG,CAAC,IAAI,UAAU,CAACe,IAAI,CAACf,GAAG,CAAC;AAC1D;AAEO,SAASgB,+BAA+BA,CAAChB,GAAW,EAAW;EACpE,OAAO,WAAW,CAACe,IAAI,CAACf,GAAG,CAAC;AAC9B;AAEO,SAASiB,UAAUA,CAACjB,GAAW,EAAW;EAC/C,OAAO,qBAAqB,CAACe,IAAI,CAACf,GAAG,CAAC;AACxC"}
|
package/dist/esm/preevaluate.js
CHANGED
|
@@ -4,7 +4,7 @@ import { precook } from "./precook.js";
|
|
|
4
4
|
// `raw` should always be asserted by `isEvaluable`.
|
|
5
5
|
export function preevaluate(raw, options) {
|
|
6
6
|
var fixes = [];
|
|
7
|
-
var source = raw.replace(/^\s
|
|
7
|
+
var source = raw.replace(/^\s*<%[~=]?\s|\s%>\s*$/g, m => {
|
|
8
8
|
fixes.push(m);
|
|
9
9
|
return "";
|
|
10
10
|
});
|
|
@@ -21,9 +21,12 @@ export function preevaluate(raw, options) {
|
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
23
|
export function isEvaluable(raw) {
|
|
24
|
-
return /^\s
|
|
24
|
+
return /^\s*<%[~=]?\s/.test(raw) && /\s%>\s*$/.test(raw);
|
|
25
25
|
}
|
|
26
26
|
export function shouldAllowRecursiveEvaluations(raw) {
|
|
27
27
|
return /^\s*<%~\s/.test(raw);
|
|
28
28
|
}
|
|
29
|
+
export function isTrackAll(raw) {
|
|
30
|
+
return /^\s*<%=\s.*\s%>\s*$/.test(raw);
|
|
31
|
+
}
|
|
29
32
|
//# sourceMappingURL=preevaluate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preevaluate.js","names":["parseAsEstreeExpression","precook","preevaluate","raw","options","fixes","source","replace","m","push","expression","attemptToVisitGlobals","_objectSpread","expressionOnly","prefix","suffix","isEvaluable","test","shouldAllowRecursiveEvaluations"],"sources":["../../src/preevaluate.ts"],"sourcesContent":["import { Expression } from \"@babel/types\";\nimport { parseAsEstreeExpression } from \"./parse.js\";\nimport { precook, PrecookOptions } from \"./precook.js\";\n\nexport type PreevaluateOptions = Omit<PrecookOptions, \"expressionOnly\">;\n\nexport interface PreevaluateResult {\n expression: Expression;\n attemptToVisitGlobals: Set<string>;\n source: string;\n prefix: string;\n suffix: string;\n}\n\n// `raw` should always be asserted by `isEvaluable`.\nexport function preevaluate(\n raw: string,\n options?: PreevaluateOptions\n): PreevaluateResult {\n const fixes: string[] = [];\n const source = raw.replace(/^\\s
|
|
1
|
+
{"version":3,"file":"preevaluate.js","names":["parseAsEstreeExpression","precook","preevaluate","raw","options","fixes","source","replace","m","push","expression","attemptToVisitGlobals","_objectSpread","expressionOnly","prefix","suffix","isEvaluable","test","shouldAllowRecursiveEvaluations","isTrackAll"],"sources":["../../src/preevaluate.ts"],"sourcesContent":["import { Expression } from \"@babel/types\";\nimport { parseAsEstreeExpression } from \"./parse.js\";\nimport { precook, PrecookOptions } from \"./precook.js\";\n\nexport type PreevaluateOptions = Omit<PrecookOptions, \"expressionOnly\">;\n\nexport interface PreevaluateResult {\n expression: Expression;\n attemptToVisitGlobals: Set<string>;\n source: string;\n prefix: string;\n suffix: string;\n}\n\n// `raw` should always be asserted by `isEvaluable`.\nexport function preevaluate(\n raw: string,\n options?: PreevaluateOptions\n): PreevaluateResult {\n const fixes: string[] = [];\n const source = raw.replace(/^\\s*<%[~=]?\\s|\\s%>\\s*$/g, (m) => {\n fixes.push(m);\n return \"\";\n });\n const expression = parseAsEstreeExpression(source);\n const attemptToVisitGlobals = precook(expression, {\n ...options,\n expressionOnly: true,\n });\n return {\n expression,\n attemptToVisitGlobals,\n source,\n prefix: fixes[0],\n suffix: fixes[1],\n };\n}\n\nexport function isEvaluable(raw: string): boolean {\n return /^\\s*<%[~=]?\\s/.test(raw) && /\\s%>\\s*$/.test(raw);\n}\n\nexport function shouldAllowRecursiveEvaluations(raw: string): boolean {\n return /^\\s*<%~\\s/.test(raw);\n}\n\nexport function isTrackAll(raw: string): boolean {\n return /^\\s*<%=\\s.*\\s%>\\s*$/.test(raw);\n}\n"],"mappings":";AACA,SAASA,uBAAuB,QAAQ,YAAY;AACpD,SAASC,OAAO,QAAwB,cAAc;AAYtD;AACA,OAAO,SAASC,WAAWA,CACzBC,GAAW,EACXC,OAA4B,EACT;EACnB,IAAMC,KAAe,GAAG,EAAE;EAC1B,IAAMC,MAAM,GAAGH,GAAG,CAACI,OAAO,CAAC,yBAAyB,EAAGC,CAAC,IAAK;IAC3DH,KAAK,CAACI,IAAI,CAACD,CAAC,CAAC;IACb,OAAO,EAAE;EACX,CAAC,CAAC;EACF,IAAME,UAAU,GAAGV,uBAAuB,CAACM,MAAM,CAAC;EAClD,IAAMK,qBAAqB,GAAGV,OAAO,CAACS,UAAU,EAAAE,aAAA,CAAAA,aAAA,KAC3CR,OAAO;IACVS,cAAc,EAAE;EAAI,GACpB;EACF,OAAO;IACLH,UAAU;IACVC,qBAAqB;IACrBL,MAAM;IACNQ,MAAM,EAAET,KAAK,CAAC,CAAC,CAAC;IAChBU,MAAM,EAAEV,KAAK,CAAC,CAAC;EACjB,CAAC;AACH;AAEA,OAAO,SAASW,WAAWA,CAACb,GAAW,EAAW;EAChD,OAAO,eAAe,CAACc,IAAI,CAACd,GAAG,CAAC,IAAI,UAAU,CAACc,IAAI,CAACd,GAAG,CAAC;AAC1D;AAEA,OAAO,SAASe,+BAA+BA,CAACf,GAAW,EAAW;EACpE,OAAO,WAAW,CAACc,IAAI,CAACd,GAAG,CAAC;AAC9B;AAEA,OAAO,SAASgB,UAAUA,CAAChB,GAAW,EAAW;EAC/C,OAAO,qBAAqB,CAACc,IAAI,CAACd,GAAG,CAAC;AACxC"}
|
|
@@ -11,3 +11,4 @@ export interface PreevaluateResult {
|
|
|
11
11
|
export declare function preevaluate(raw: string, options?: PreevaluateOptions): PreevaluateResult;
|
|
12
12
|
export declare function isEvaluable(raw: string): boolean;
|
|
13
13
|
export declare function shouldAllowRecursiveEvaluations(raw: string): boolean;
|
|
14
|
+
export declare function isTrackAll(raw: string): boolean;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@next-core/cook",
|
|
3
|
-
"version": "2.0
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"description": "Cook expressions and storyboard functions",
|
|
5
5
|
"homepage": "https://github.com/easyops-cn/next-core/tree/master/packages/cook",
|
|
6
6
|
"license": "GPL-3.0",
|
|
@@ -56,5 +56,5 @@
|
|
|
56
56
|
"@next-core/test-next": "^1.0.4",
|
|
57
57
|
"lodash": "^4.17.21"
|
|
58
58
|
},
|
|
59
|
-
"gitHead": "
|
|
59
|
+
"gitHead": "125aede7b3cf5fdbb8040326dea72a25cdabc3aa"
|
|
60
60
|
}
|