@koda-sl/baker-cli 0.484.0 → 0.485.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/README.md +1 -1
- package/dist/{brand-LAIIXZBL.js → brand-TRPJFCRL.js} +2 -2
- package/dist/{canvas-EAC3236V.js → canvas-ZKBXEUYK.js} +11 -11
- package/dist/{chunk-FY5RZBOY.js → chunk-67S6LADS.js} +2 -2
- package/dist/{chunk-Q4WWS3UQ.js → chunk-7SHNGCJ2.js} +2 -2
- package/dist/{chunk-AXDKLXCG.js → chunk-CTJPTSD4.js} +2 -2
- package/dist/{chunk-5O77KEKO.js → chunk-DFQHO3SL.js} +3 -3
- package/dist/{chunk-Z5SOZUUB.js → chunk-F4WLKHUS.js} +2 -2
- package/dist/{chunk-MGIOV72F.js → chunk-GIECLBJ3.js} +3 -3
- package/dist/{chunk-27DJRM3F.js → chunk-GPY2JEXL.js} +2 -2
- package/dist/{chunk-CS5JF52J.js → chunk-HDTR5DNA.js} +2 -2
- package/dist/{chunk-VNNCYWNN.js → chunk-HKQH6H2P.js} +3 -3
- package/dist/{chunk-IX2QLW6G.js → chunk-OEYVPXQZ.js} +28 -4
- package/dist/chunk-OEYVPXQZ.js.map +1 -0
- package/dist/{chunk-K2JTERIO.js → chunk-RSYOUKIQ.js} +2 -2
- package/dist/{chunk-3PXC2OXT.js → chunk-X3PM773M.js} +2 -2
- package/dist/{chunk-EFL6RNH3.js → chunk-YXVJA37O.js} +5 -5
- package/dist/cli.js +4 -4
- package/dist/{creatives-NK5HOXSF.js → creatives-K2BKGN6J.js} +5 -5
- package/dist/{critique-N5OL42C6.js → critique-2UMC3GJP.js} +14 -7
- package/dist/critique-2UMC3GJP.js.map +1 -0
- package/dist/{critique-EDMP5P5R.js → critique-GTUDKADX.js} +4 -4
- package/dist/{feedback-OCN3XNKF.js → feedback-7JVO62CE.js} +7 -7
- package/dist/{feedback-record-Z66AXZ57.js → feedback-record-YEJZKVFC.js} +7 -7
- package/dist/{fonts-I434ILTG.js → fonts-DIVC6DP2.js} +4 -4
- package/dist/{landing-EJGYTI5W.js → landing-6OJYUEWP.js} +2 -2
- package/dist/{make-ZYEFMAR6.js → make-2XZBKFJC.js} +8 -8
- package/dist/{rerun-VL3FSINT.js → rerun-VCZBNGDW.js} +8 -8
- package/dist/{run-NTUJERPZ.js → run-WOOBUVP3.js} +8 -8
- package/dist/{scaffold-ad-LZSSM5HS.js → scaffold-ad-PJ47R3IF.js} +6 -6
- package/dist/{scaffold-static-ad-F4HEJJ5N.js → scaffold-static-ad-PZBZV6SQ.js} +11 -11
- package/dist/{scaffold-video-7KSBESQ6.js → scaffold-video-GU4C7HCK.js} +5 -5
- package/dist/{select-POYNXE2L.js → select-JM2MFVNP.js} +6 -6
- package/dist/{set-prompt-USTAJUV6.js → set-prompt-JP3MASVF.js} +4 -4
- package/dist/{stale-6HL4ELJW.js → stale-VCZRIG25.js} +5 -5
- package/dist/{sync-definition-YGQU4BFK.js → sync-definition-Z7TY43IA.js} +5 -5
- package/dist/{translate-ACGKNKQP.js → translate-ZONETQ2W.js} +7 -7
- package/dist/{validate-SXDUQ5KO.js → validate-UTNTXLOL.js} +6 -6
- package/package.json +1 -1
- package/dist/chunk-IX2QLW6G.js.map +0 -1
- package/dist/critique-N5OL42C6.js.map +0 -1
- /package/dist/{brand-LAIIXZBL.js.map → brand-TRPJFCRL.js.map} +0 -0
- /package/dist/{canvas-EAC3236V.js.map → canvas-ZKBXEUYK.js.map} +0 -0
- /package/dist/{chunk-FY5RZBOY.js.map → chunk-67S6LADS.js.map} +0 -0
- /package/dist/{chunk-Q4WWS3UQ.js.map → chunk-7SHNGCJ2.js.map} +0 -0
- /package/dist/{chunk-AXDKLXCG.js.map → chunk-CTJPTSD4.js.map} +0 -0
- /package/dist/{chunk-5O77KEKO.js.map → chunk-DFQHO3SL.js.map} +0 -0
- /package/dist/{chunk-Z5SOZUUB.js.map → chunk-F4WLKHUS.js.map} +0 -0
- /package/dist/{chunk-MGIOV72F.js.map → chunk-GIECLBJ3.js.map} +0 -0
- /package/dist/{chunk-27DJRM3F.js.map → chunk-GPY2JEXL.js.map} +0 -0
- /package/dist/{chunk-CS5JF52J.js.map → chunk-HDTR5DNA.js.map} +0 -0
- /package/dist/{chunk-VNNCYWNN.js.map → chunk-HKQH6H2P.js.map} +0 -0
- /package/dist/{chunk-K2JTERIO.js.map → chunk-RSYOUKIQ.js.map} +0 -0
- /package/dist/{chunk-3PXC2OXT.js.map → chunk-X3PM773M.js.map} +0 -0
- /package/dist/{chunk-EFL6RNH3.js.map → chunk-YXVJA37O.js.map} +0 -0
- /package/dist/{creatives-NK5HOXSF.js.map → creatives-K2BKGN6J.js.map} +0 -0
- /package/dist/{critique-EDMP5P5R.js.map → critique-GTUDKADX.js.map} +0 -0
- /package/dist/{feedback-OCN3XNKF.js.map → feedback-7JVO62CE.js.map} +0 -0
- /package/dist/{feedback-record-Z66AXZ57.js.map → feedback-record-YEJZKVFC.js.map} +0 -0
- /package/dist/{fonts-I434ILTG.js.map → fonts-DIVC6DP2.js.map} +0 -0
- /package/dist/{landing-EJGYTI5W.js.map → landing-6OJYUEWP.js.map} +0 -0
- /package/dist/{make-ZYEFMAR6.js.map → make-2XZBKFJC.js.map} +0 -0
- /package/dist/{rerun-VL3FSINT.js.map → rerun-VCZBNGDW.js.map} +0 -0
- /package/dist/{run-NTUJERPZ.js.map → run-WOOBUVP3.js.map} +0 -0
- /package/dist/{scaffold-ad-LZSSM5HS.js.map → scaffold-ad-PJ47R3IF.js.map} +0 -0
- /package/dist/{scaffold-static-ad-F4HEJJ5N.js.map → scaffold-static-ad-PZBZV6SQ.js.map} +0 -0
- /package/dist/{scaffold-video-7KSBESQ6.js.map → scaffold-video-GU4C7HCK.js.map} +0 -0
- /package/dist/{select-POYNXE2L.js.map → select-JM2MFVNP.js.map} +0 -0
- /package/dist/{set-prompt-USTAJUV6.js.map → set-prompt-JP3MASVF.js.map} +0 -0
- /package/dist/{stale-6HL4ELJW.js.map → stale-VCZRIG25.js.map} +0 -0
- /package/dist/{sync-definition-YGQU4BFK.js.map → sync-definition-Z7TY43IA.js.map} +0 -0
- /package/dist/{translate-ACGKNKQP.js.map → translate-ZONETQ2W.js.map} +0 -0
- /package/dist/{validate-SXDUQ5KO.js.map → validate-UTNTXLOL.js.map} +0 -0
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
import {
|
|
12
12
|
readDefinitionPlatforms,
|
|
13
13
|
syncCreativeDefinitionBestEffort
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-67S6LADS.js";
|
|
15
15
|
import "./chunk-NPMAATZG.js";
|
|
16
16
|
import {
|
|
17
17
|
pinnedModelHint
|
|
@@ -48,7 +48,7 @@ import {
|
|
|
48
48
|
voiceGenderModel,
|
|
49
49
|
webFontUrl,
|
|
50
50
|
writeSceneFiles
|
|
51
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-CTJPTSD4.js";
|
|
52
52
|
import "./chunk-EOY6BK4C.js";
|
|
53
53
|
import "./chunk-ZINMEMOB.js";
|
|
54
54
|
import "./chunk-UKL7GWEH.js";
|
|
@@ -60,9 +60,9 @@ import "./chunk-G2LGMWNG.js";
|
|
|
60
60
|
import {
|
|
61
61
|
fetchJson,
|
|
62
62
|
lookupGoogleCss
|
|
63
|
-
} from "./chunk-
|
|
64
|
-
import "./chunk-
|
|
65
|
-
import "./chunk-
|
|
63
|
+
} from "./chunk-HDTR5DNA.js";
|
|
64
|
+
import "./chunk-RSYOUKIQ.js";
|
|
65
|
+
import "./chunk-OEYVPXQZ.js";
|
|
66
66
|
import "./chunk-JYALBYN7.js";
|
|
67
67
|
import "./chunk-FNA277HP.js";
|
|
68
68
|
import {
|
|
@@ -1508,4 +1508,4 @@ async function stageBrandDisplayFace(outDir, compositionDir) {
|
|
|
1508
1508
|
export {
|
|
1509
1509
|
scaffoldAdCommand
|
|
1510
1510
|
};
|
|
1511
|
-
//# sourceMappingURL=scaffold-ad-
|
|
1511
|
+
//# sourceMappingURL=scaffold-ad-PJ47R3IF.js.map
|
|
@@ -16,12 +16,12 @@ import {
|
|
|
16
16
|
import {
|
|
17
17
|
readDefinitionPlatforms,
|
|
18
18
|
syncCreativeDefinitionBestEffort
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-67S6LADS.js";
|
|
20
20
|
import {
|
|
21
21
|
buildBackendClient
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-YXVJA37O.js";
|
|
23
23
|
import "./chunk-NPMAATZG.js";
|
|
24
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-DFQHO3SL.js";
|
|
25
25
|
import "./chunk-WN4KX7GE.js";
|
|
26
26
|
import "./chunk-H5HDZ7IC.js";
|
|
27
27
|
import "./chunk-IVIJJXXT.js";
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
deliveryNote,
|
|
35
35
|
namesDelivery,
|
|
36
36
|
scaffoldDelivery
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-F4WLKHUS.js";
|
|
38
38
|
import {
|
|
39
39
|
LIBRARY_PLATFORMS,
|
|
40
40
|
NO_FIT_HINT,
|
|
@@ -51,9 +51,9 @@ import {
|
|
|
51
51
|
import {
|
|
52
52
|
enforceNewCreativeLimit
|
|
53
53
|
} from "./chunk-XZ4YMCZK.js";
|
|
54
|
-
import "./chunk-
|
|
54
|
+
import "./chunk-GIECLBJ3.js";
|
|
55
55
|
import "./chunk-UWXDNVS5.js";
|
|
56
|
-
import "./chunk-
|
|
56
|
+
import "./chunk-7SHNGCJ2.js";
|
|
57
57
|
import {
|
|
58
58
|
brandBlock,
|
|
59
59
|
brandHeadlineFont,
|
|
@@ -79,7 +79,7 @@ import {
|
|
|
79
79
|
staticAvatarsNotCast,
|
|
80
80
|
titleFromSlug,
|
|
81
81
|
webFontUrl
|
|
82
|
-
} from "./chunk-
|
|
82
|
+
} from "./chunk-CTJPTSD4.js";
|
|
83
83
|
import "./chunk-ABXTGAG7.js";
|
|
84
84
|
import "./chunk-EOY6BK4C.js";
|
|
85
85
|
import {
|
|
@@ -95,9 +95,9 @@ import "./chunk-G2LGMWNG.js";
|
|
|
95
95
|
import {
|
|
96
96
|
fetchJson,
|
|
97
97
|
lookupGoogleCss
|
|
98
|
-
} from "./chunk-
|
|
99
|
-
import "./chunk-
|
|
100
|
-
import "./chunk-
|
|
98
|
+
} from "./chunk-HDTR5DNA.js";
|
|
99
|
+
import "./chunk-RSYOUKIQ.js";
|
|
100
|
+
import "./chunk-OEYVPXQZ.js";
|
|
101
101
|
import "./chunk-JYALBYN7.js";
|
|
102
102
|
import "./chunk-BITS62MF.js";
|
|
103
103
|
import "./chunk-FNA277HP.js";
|
|
@@ -1002,4 +1002,4 @@ export {
|
|
|
1002
1002
|
uploadSourceAsReference,
|
|
1003
1003
|
validateScaffoldedStaticAd
|
|
1004
1004
|
};
|
|
1005
|
-
//# sourceMappingURL=scaffold-static-ad-
|
|
1005
|
+
//# sourceMappingURL=scaffold-static-ad-PZBZV6SQ.js.map
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
import {
|
|
18
18
|
readDefinitionPlatforms,
|
|
19
19
|
syncCreativeDefinitionBestEffort
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-67S6LADS.js";
|
|
21
21
|
import "./chunk-NPMAATZG.js";
|
|
22
22
|
import {
|
|
23
23
|
enforceNewCreativeLimit
|
|
@@ -47,15 +47,15 @@ import {
|
|
|
47
47
|
videoReport,
|
|
48
48
|
voiceGenderModel,
|
|
49
49
|
writeSceneFiles
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-CTJPTSD4.js";
|
|
51
51
|
import "./chunk-EOY6BK4C.js";
|
|
52
52
|
import "./chunk-ZINMEMOB.js";
|
|
53
53
|
import "./chunk-UKL7GWEH.js";
|
|
54
54
|
import "./chunk-LCW3U4EA.js";
|
|
55
55
|
import "./chunk-WKLQFSV6.js";
|
|
56
56
|
import "./chunk-G2LGMWNG.js";
|
|
57
|
-
import "./chunk-
|
|
58
|
-
import "./chunk-
|
|
57
|
+
import "./chunk-RSYOUKIQ.js";
|
|
58
|
+
import "./chunk-OEYVPXQZ.js";
|
|
59
59
|
import "./chunk-JYALBYN7.js";
|
|
60
60
|
import "./chunk-FNA277HP.js";
|
|
61
61
|
import {
|
|
@@ -880,4 +880,4 @@ export {
|
|
|
880
880
|
resolveVideoModel,
|
|
881
881
|
scaffoldVideoCommand
|
|
882
882
|
};
|
|
883
|
-
//# sourceMappingURL=scaffold-video-
|
|
883
|
+
//# sourceMappingURL=scaffold-video-GU4C7HCK.js.map
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
versionOf
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-X3PM773M.js";
|
|
4
|
+
import "./chunk-7SHNGCJ2.js";
|
|
5
|
+
import "./chunk-CTJPTSD4.js";
|
|
6
6
|
import "./chunk-EOY6BK4C.js";
|
|
7
7
|
import "./chunk-ZINMEMOB.js";
|
|
8
8
|
import "./chunk-UKL7GWEH.js";
|
|
9
9
|
import "./chunk-LCW3U4EA.js";
|
|
10
10
|
import "./chunk-WKLQFSV6.js";
|
|
11
11
|
import "./chunk-G2LGMWNG.js";
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-RSYOUKIQ.js";
|
|
13
|
+
import "./chunk-OEYVPXQZ.js";
|
|
14
14
|
import "./chunk-JYALBYN7.js";
|
|
15
15
|
import "./chunk-FNA277HP.js";
|
|
16
16
|
import "./chunk-5WMTPYKT.js";
|
|
@@ -98,4 +98,4 @@ var selectCommand = defineCommand({
|
|
|
98
98
|
export {
|
|
99
99
|
selectCommand
|
|
100
100
|
};
|
|
101
|
-
//# sourceMappingURL=select-
|
|
101
|
+
//# sourceMappingURL=select-JM2MFVNP.js.map
|
|
@@ -4,15 +4,15 @@ import {
|
|
|
4
4
|
compiledPromptNodeIds,
|
|
5
5
|
prepareCanvas,
|
|
6
6
|
sceneOwnedPrompts
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-CTJPTSD4.js";
|
|
8
8
|
import "./chunk-EOY6BK4C.js";
|
|
9
9
|
import "./chunk-ZINMEMOB.js";
|
|
10
10
|
import "./chunk-UKL7GWEH.js";
|
|
11
11
|
import "./chunk-LCW3U4EA.js";
|
|
12
12
|
import "./chunk-WKLQFSV6.js";
|
|
13
13
|
import "./chunk-G2LGMWNG.js";
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-RSYOUKIQ.js";
|
|
15
|
+
import "./chunk-OEYVPXQZ.js";
|
|
16
16
|
import "./chunk-JYALBYN7.js";
|
|
17
17
|
import "./chunk-FNA277HP.js";
|
|
18
18
|
import "./chunk-5WMTPYKT.js";
|
|
@@ -190,4 +190,4 @@ export {
|
|
|
190
190
|
setPromptCommand,
|
|
191
191
|
setPromptInCanvasFile
|
|
192
192
|
};
|
|
193
|
-
//# sourceMappingURL=set-prompt-
|
|
193
|
+
//# sourceMappingURL=set-prompt-JP3MASVF.js.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
staleCreatives
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-7SHNGCJ2.js";
|
|
4
|
+
import "./chunk-CTJPTSD4.js";
|
|
5
5
|
import "./chunk-EOY6BK4C.js";
|
|
6
6
|
import "./chunk-ZINMEMOB.js";
|
|
7
7
|
import "./chunk-UKL7GWEH.js";
|
|
8
8
|
import "./chunk-LCW3U4EA.js";
|
|
9
9
|
import "./chunk-WKLQFSV6.js";
|
|
10
10
|
import "./chunk-G2LGMWNG.js";
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-RSYOUKIQ.js";
|
|
12
|
+
import "./chunk-OEYVPXQZ.js";
|
|
13
13
|
import "./chunk-JYALBYN7.js";
|
|
14
14
|
import "./chunk-FNA277HP.js";
|
|
15
15
|
import "./chunk-5WMTPYKT.js";
|
|
@@ -68,4 +68,4 @@ var staleCommand = defineCommand({
|
|
|
68
68
|
export {
|
|
69
69
|
staleCommand
|
|
70
70
|
};
|
|
71
|
-
//# sourceMappingURL=stale-
|
|
71
|
+
//# sourceMappingURL=stale-VCZRIG25.js.map
|
|
@@ -9,18 +9,18 @@ import {
|
|
|
9
9
|
resolveCanvasPath,
|
|
10
10
|
syncCreativeDefinitionBestEffort,
|
|
11
11
|
syncDefinitionCommand
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-67S6LADS.js";
|
|
13
13
|
import "./chunk-NPMAATZG.js";
|
|
14
14
|
import "./chunk-UWXDNVS5.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-CTJPTSD4.js";
|
|
16
16
|
import "./chunk-EOY6BK4C.js";
|
|
17
17
|
import "./chunk-ZINMEMOB.js";
|
|
18
18
|
import "./chunk-UKL7GWEH.js";
|
|
19
19
|
import "./chunk-LCW3U4EA.js";
|
|
20
20
|
import "./chunk-WKLQFSV6.js";
|
|
21
21
|
import "./chunk-G2LGMWNG.js";
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-RSYOUKIQ.js";
|
|
23
|
+
import "./chunk-OEYVPXQZ.js";
|
|
24
24
|
import "./chunk-JYALBYN7.js";
|
|
25
25
|
import "./chunk-FNA277HP.js";
|
|
26
26
|
import "./chunk-5WMTPYKT.js";
|
|
@@ -61,4 +61,4 @@ export {
|
|
|
61
61
|
syncCreativeDefinitionBestEffort,
|
|
62
62
|
syncDefinitionCommand
|
|
63
63
|
};
|
|
64
|
-
//# sourceMappingURL=sync-definition-
|
|
64
|
+
//# sourceMappingURL=sync-definition-Z7TY43IA.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
withoutFields
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-GPY2JEXL.js";
|
|
4
4
|
import {
|
|
5
5
|
claimNewCreativeInWorkspace,
|
|
6
6
|
creativeLimitRefusal
|
|
@@ -10,9 +10,9 @@ import {
|
|
|
10
10
|
runBaker,
|
|
11
11
|
seriesLeadsAbove,
|
|
12
12
|
writeSeriesMemberCanvas
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-GIECLBJ3.js";
|
|
14
14
|
import "./chunk-UWXDNVS5.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-7SHNGCJ2.js";
|
|
16
16
|
import {
|
|
17
17
|
isCustomersWords,
|
|
18
18
|
isSignatureLine,
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
parseDefinitionStrategyFields,
|
|
24
24
|
sameTag,
|
|
25
25
|
tagSlug
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-CTJPTSD4.js";
|
|
27
27
|
import "./chunk-ABXTGAG7.js";
|
|
28
28
|
import {
|
|
29
29
|
setDefinitionFields
|
|
@@ -34,8 +34,8 @@ import "./chunk-UKL7GWEH.js";
|
|
|
34
34
|
import "./chunk-LCW3U4EA.js";
|
|
35
35
|
import "./chunk-WKLQFSV6.js";
|
|
36
36
|
import "./chunk-G2LGMWNG.js";
|
|
37
|
-
import "./chunk-
|
|
38
|
-
import "./chunk-
|
|
37
|
+
import "./chunk-RSYOUKIQ.js";
|
|
38
|
+
import "./chunk-OEYVPXQZ.js";
|
|
39
39
|
import "./chunk-JYALBYN7.js";
|
|
40
40
|
import "./chunk-FNA277HP.js";
|
|
41
41
|
import {
|
|
@@ -601,4 +601,4 @@ var translateCommand = defineCommand({
|
|
|
601
601
|
export {
|
|
602
602
|
translateCommand
|
|
603
603
|
};
|
|
604
|
-
//# sourceMappingURL=translate-
|
|
604
|
+
//# sourceMappingURL=translate-ZONETQ2W.js.map
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import {
|
|
2
2
|
outputRatioWarningsFor,
|
|
3
3
|
shownBaseline
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-DFQHO3SL.js";
|
|
5
5
|
import {
|
|
6
6
|
creativeSlugFromCanvasPath
|
|
7
7
|
} from "./chunk-UWXDNVS5.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-7SHNGCJ2.js";
|
|
9
9
|
import {
|
|
10
10
|
exitOnPrepareError,
|
|
11
11
|
prepareCanvas
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-CTJPTSD4.js";
|
|
13
13
|
import "./chunk-EOY6BK4C.js";
|
|
14
14
|
import "./chunk-ZINMEMOB.js";
|
|
15
15
|
import "./chunk-UKL7GWEH.js";
|
|
16
16
|
import "./chunk-LCW3U4EA.js";
|
|
17
17
|
import "./chunk-WKLQFSV6.js";
|
|
18
18
|
import "./chunk-G2LGMWNG.js";
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
19
|
+
import "./chunk-RSYOUKIQ.js";
|
|
20
|
+
import "./chunk-OEYVPXQZ.js";
|
|
21
21
|
import "./chunk-JYALBYN7.js";
|
|
22
22
|
import "./chunk-FNA277HP.js";
|
|
23
23
|
import "./chunk-5WMTPYKT.js";
|
|
@@ -114,4 +114,4 @@ var validateCommand = defineCommand({
|
|
|
114
114
|
export {
|
|
115
115
|
validateCommand
|
|
116
116
|
};
|
|
117
|
-
//# sourceMappingURL=validate-
|
|
117
|
+
//# sourceMappingURL=validate-UTNTXLOL.js.map
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/engine/landing/lib/brand-tokens.ts","../src/engine/landing/lib/color.ts"],"sourcesContent":["/**\n * Landing anti-slop detector — brand allowlist.\n *\n * The client's committed brand is the allowlist: a value that matches a brand\n * token is a decision, not a tell, so the detector downgrades it to advisory\n * (mirrors impeccable's DESIGN.md drift model). The canonical source is\n * `src/brand/tokens.json` (validated with the shared `@baker/api` schema); a\n * workspace that predates it falls back to the legacy scan of the global.css\n * `@theme` block plus the faces and colours BRAND.md says the brand uses, read\n * in any language by the brand reader (`brand/brand-doc.ts`). A value BRAND.md\n * bans is never allowlisted.\n *\n * Empty/TODO brand (a fresh scaffold) → no allowlist, full strictness.\n */\n\nimport { readFile } from \"node:fs/promises\";\nimport path from \"node:path\";\nimport { brandTokensSchema, type BrandTokens as CanonicalBrandTokens } from \"@baker/api\";\nimport { type BrandDocReading, type ReadBrandDocs, readWorkspaceBrandDoc } from \"../../brand/brand-doc.ts\";\nimport type { ReviewUsage } from \"../../nodes/local/lib/render-review.ts\";\nimport { getHue, hasChroma, isAiPurpleHue, isCreamColor, parseColor, type Rgb } from \"./color.ts\";\n\nexport type BrandTokens = {\n /** Lowercased committed font-family names (e.g. \"inter\", \"geist\"). */\n fonts: Set<string>;\n /** Parsed committed colors. */\n colors: Rgb[];\n /** True once any real token was found — distinguishes \"branded\" from \"blank\". */\n hasTokens: boolean;\n};\n\nconst EMPTY: BrandTokens = { fonts: new Set(), colors: [], hasTokens: false };\n\n/**\n * A token value that is a weight, a length, or a style keyword — never a family.\n *\n * Deliberately narrow, and the same predicate as `isNotAFamily` in the\n * scaffold's `__tooling__/checks/sdk/theme-css.mjs`. \"Anything starting with a\n * digit\" also swallows the real families that are named with digits — SAP's\n * \"72\", the \"3270\" monospace face — and because the scaffold keeps those,\n * dropping them here made `baker brand fonts check` clear a brand the client's\n * verify then rejected. `__tests__/theme-css-contract.test.ts` pins the two.\n */\nexport function isNotAFamily(value: string): boolean {\n return (\n /^[1-9]00$/.test(value) ||\n /^\\d+(?:\\.\\d+)?(?:px|rem|em|%|pt|vw|vh|ch|ex)$/i.test(value) ||\n /^(?:normal|bold|bolder|lighter|italic|oblique|none|auto|inherit|initial|unset)$/i.test(value)\n );\n}\n\n/** Pure parse of the two legacy brand sources: the theme, and what BRAND.md says it uses. */\nexport function parseBrandTokens(globalCss: string, brandDoc?: BrandDocReading | null): BrandTokens {\n const fonts = new Set<string>();\n const colors: Rgb[] = [];\n parseGlobalCss(globalCss, fonts, colors);\n for (const font of brandDoc?.fonts ?? []) if (font.use) fonts.add(font.family.toLowerCase());\n for (const color of brandDoc?.colors ?? []) {\n const parsed = color.use ? parseColor(color.hex) : null;\n if (parsed) colors.push(parsed);\n }\n return { fonts, colors, hasTokens: fonts.size > 0 || colors.length > 0 };\n}\n\n/** global.css `@theme` tokens: `--font-*` families and `--color-*` values.\n * Comments are stripped first — a commented-out legacy token is not a\n * commitment, and one stale purple would defang the color rules page-wide.\n *\n * The `--font-` match is anchored with a lookbehind and its value is checked:\n * `--text-h1--font-weight: 700` is a Tailwind v4 sub-property, and reading its\n * `--font-weight: 700` substring as a family called \"700\" put a 3-character\n * numeric string into the committed set — which `brandCommitsFont` then\n * substring-matched against every snippet containing \"700\", silently\n * whitelisting off-brand fonts. Mirrors\n * `apps/scaffold-template/__tooling__/checks/sdk/theme-css.mjs`. */\nfunction parseGlobalCss(rawCss: string, fonts: Set<string>, colors: Rgb[]): void {\n const globalCss = rawCss.replace(/\\/\\*[\\s\\S]*?\\*\\//g, (block) => block.replace(/[^\\n]/g, \" \"));\n for (const m of globalCss.matchAll(/(?<![\\w-])--font-([\\w-]*)\\s*:\\s*([^;]+);/gi)) {\n const slug = m[1] ?? \"\";\n if (slug.includes(\"--\") || /^weight(?:$|[-\\s])/i.test(slug)) continue;\n const first = (m[2] ?? \"\")\n .split(\",\")[0]\n ?.trim()\n .replace(/^['\"]|['\"]$/g, \"\")\n .toLowerCase();\n if (!first || isNotAFamily(first)) continue;\n fonts.add(first);\n }\n for (const m of globalCss.matchAll(\n /--color-[\\w-]*\\s*:\\s*(#[0-9a-f]{3,8}\\b|rgba?\\([^)]+\\)|oklch\\([^)]+\\)|hsla?\\([^)]+\\))/gi,\n )) {\n const c = parseColor(m[1] ?? \"\");\n if (c) colors.push(c);\n }\n}\n\n/** Canonical tokens.json → allowlist shape — exported for tests. */\nexport function brandTokensFromCanonical(tokens: CanonicalBrandTokens): BrandTokens {\n const fonts = new Set<string>(tokens.fonts.map((f) => f.family.toLowerCase()));\n const colors: Rgb[] = [];\n for (const color of tokens.colors) {\n const parsed = parseColor(color.value);\n if (parsed) colors.push(parsed);\n }\n return { fonts, colors, hasTokens: fonts.size > 0 || colors.length > 0 };\n}\n\n/**\n * Load brand tokens from a project root; degrades to empty when absent.\n * `src/brand/tokens.json` (canonical) wins; an absent or invalid file falls\n * back to the legacy global.css/BRAND.md scan — invalid is the drift\n * validator's finding to report, not a reason to run blind here.\n */\nexport async function loadBrandTokens(\n projectRoot: string,\n opts: { readBrandDoc?: ReadBrandDocs; onSpend?: (usage: ReviewUsage) => void } = {},\n): Promise<BrandTokens> {\n const tokensRaw = await safeRead(path.join(projectRoot, \"src\", \"brand\", \"tokens.json\"));\n if (tokensRaw) {\n try {\n const canonical = brandTokensSchema.safeParse(JSON.parse(tokensRaw));\n if (canonical.success) return brandTokensFromCanonical(canonical.data);\n } catch {\n // fall through to the legacy scan\n }\n }\n const globalCss = await safeRead(path.join(projectRoot, \"src\", \"styles\", \"global.css\"));\n const brandDoc = await readWorkspaceBrandDoc(projectRoot, {\n ...(opts.readBrandDoc ? { read: opts.readBrandDoc } : {}),\n ...(opts.onSpend ? { onSpend: opts.onSpend } : {}),\n });\n if (!globalCss && !brandDoc) return EMPTY;\n return parseBrandTokens(globalCss, brandDoc);\n}\n\nasync function safeRead(file: string): Promise<string> {\n try {\n return await readFile(file, \"utf8\");\n } catch {\n return \"\";\n }\n}\n\n/** Does the brand commit this font name (as it appears in a finding snippet)? */\nexport function brandCommitsFont(brand: BrandTokens, snippet: string): boolean {\n if (brand.fonts.size === 0) return false;\n const lower = snippet.toLowerCase();\n for (const f of brand.fonts) if (f.length >= 3 && lower.includes(f)) return true;\n return false;\n}\n\n/** Does the brand commit a purple/indigo hue (so the AI-palette tell is a choice)? */\nexport function brandCommitsAiHue(brand: BrandTokens): boolean {\n return brand.colors.some((c) => hasChroma(c, 40) && isAiPurpleHue(getHue(c)));\n}\n\n/** Does the brand commit a cream ground (so the cream tell is a choice)? */\nexport function brandCommitsCream(brand: BrandTokens): boolean {\n return brand.colors.some((c) => isCreamColor(c));\n}\n","/**\n * Landing anti-slop detector — color utilities.\n *\n * Ported (with sense) from impeccable's `cli/engine/shared/color.mjs` +\n * `isNeutralAuthoredColor` from `detect-text.mjs`. These parse colors as WRITTEN\n * in authored CSS (hex, named, rgb/hsl/oklch), not just the computed forms a\n * browser emits — because we scan `.astro` source, not a rendered DOM.\n */\n\nexport type Rgb = { r: number; g: number; b: number; a: number };\n\n/** CSS named colors whose channels are equal (achromatic). */\nconst NEUTRAL_COLOR_KEYWORDS = new Set<string>([\n \"transparent\",\n \"currentcolor\",\n \"black\",\n \"white\",\n \"gray\",\n \"grey\",\n \"silver\",\n \"dimgray\",\n \"dimgrey\",\n \"darkgray\",\n \"darkgrey\",\n \"lightgray\",\n \"lightgrey\",\n \"gainsboro\",\n \"whitesmoke\",\n]);\n\nfunction hexChannels(color: string): [number, number, number] | null {\n const long = color.match(/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})(?:[0-9a-f]{2})?$/i);\n if (long)\n return [\n Number.parseInt(long[1] ?? \"0\", 16),\n Number.parseInt(long[2] ?? \"0\", 16),\n Number.parseInt(long[3] ?? \"0\", 16),\n ];\n const short = color.match(/^#([0-9a-f])([0-9a-f])([0-9a-f])(?:[0-9a-f])?$/i);\n if (short) {\n const dup = (s: string | undefined) => Number.parseInt(`${s ?? \"0\"}${s ?? \"0\"}`, 16);\n return [dup(short[1]), dup(short[2]), dup(short[3])];\n }\n return null;\n}\n\n/** Parse any authored hex / rgb() / oklch() color to {r,g,b,a}. Null if unknown. */\nexport function parseColor(raw: string): Rgb | null {\n const c = String(raw || \"\")\n .trim()\n .toLowerCase();\n if (!c || c === \"transparent\") return null;\n const rgb = c.match(/rgba?\\(\\s*([\\d.]+)[\\s,]+([\\d.]+)[\\s,]+([\\d.]+)(?:[\\s,/]+([\\d.]+%?))?\\s*\\)/i);\n if (rgb) {\n const alpha = rgb[4];\n const a = alpha === undefined ? 1 : alpha.endsWith(\"%\") ? Number.parseFloat(alpha) / 100 : Number.parseFloat(alpha);\n return { r: Number(rgb[1]), g: Number(rgb[2]), b: Number(rgb[3]), a };\n }\n const oklch = parseOklch(c);\n if (oklch) return oklch;\n const hex = hexChannels(c);\n if (hex) return { r: hex[0], g: hex[1], b: hex[2], a: 1 };\n return null;\n}\n\n/** `oklch(L C H)` / `oklch(L% C H / a)` → Rgb, or null when not oklch. */\nfunction parseOklch(c: string): Rgb | null {\n const m = c.match(/oklch\\(\\s*([\\d.]+%?)\\s+([\\d.]+%?)\\s+([\\d.]+)(?:deg)?(?:\\s*\\/\\s*([\\d.]+%?))?\\s*\\)/i);\n if (!m) return null;\n const pct = (s: string, scale: number) =>\n s.endsWith(\"%\") ? (Number.parseFloat(s) / 100) * scale : Number.parseFloat(s);\n const alpha = m[4];\n const a = alpha === undefined ? 1 : pct(alpha, 1);\n return { ...oklchToRgb(pct(m[1] ?? \"0\", 1), pct(m[2] ?? \"0\", 0.4), Number.parseFloat(m[3] ?? \"0\")), a };\n}\n\n/** oklch(L C H) → sRGB via OKLab (Björn Ottosson's reference constants), so\n * Tailwind v4-idiomatic `@theme` colors participate in the brand allowlist. */\nfunction oklchToRgb(L: number, C: number, H: number): { r: number; g: number; b: number } {\n const hRad = (H * Math.PI) / 180;\n const a = C * Math.cos(hRad);\n const b = C * Math.sin(hRad);\n const l = (L + 0.3963377774 * a + 0.2158037573 * b) ** 3;\n const m = (L - 0.1055613458 * a - 0.0638541728 * b) ** 3;\n const s = (L - 0.0894841775 * a - 1.291485548 * b) ** 3;\n const lin = [\n 4.0767416621 * l - 3.3077115913 * m + 0.2309699292 * s,\n -1.2684380046 * l + 2.6097574011 * m - 0.3413193965 * s,\n -0.0041960863 * l - 0.7034186147 * m + 1.707614701 * s,\n ].map((v) => {\n const g = v <= 0.0031308 ? 12.92 * v : 1.055 * Math.sign(v) * Math.abs(v) ** (1 / 2.4) - 0.055;\n return Math.round(Math.max(0, Math.min(1, g)) * 255);\n });\n return { r: lin[0] ?? 0, g: lin[1] ?? 0, b: lin[2] ?? 0 };\n}\n\n/**\n * Neutrality test for colors as written in source CSS. Handles hex and named\n * neutrals directly; for rgb()/hsl()/oklch() etc. uses the channel/component\n * spread. An unrecognized spelling stays chromatic so a real accent is never\n * silently skipped (impeccable's fail-toward-detection default).\n */\nexport function isNeutralAuthoredColor(rawColor: string): boolean {\n const c = String(rawColor || \"\")\n .trim()\n .toLowerCase();\n if (!c) return false;\n if (NEUTRAL_COLOR_KEYWORDS.has(c)) return true;\n if (/^rgba?\\(/i.test(c)) {\n const channels = c.match(/^rgba?\\(\\s*([\\d.]+)[\\s,]+([\\d.]+)[\\s,]+([\\d.]+)/i);\n if (channels) {\n const values = [1, 2, 3].map((i) => Number(channels[i]));\n return Math.max(...values) - Math.min(...values) < 30;\n }\n return false;\n }\n // oklch/lch chroma is the second component; hsl saturation is the second.\n const oklch = c.match(/oklch\\(\\s*[\\d.]+%?\\s+([\\d.-]+)/i);\n if (oklch) return Number.parseFloat(oklch[1] ?? \"0\") < 0.02;\n const lch = c.match(/lch\\(\\s*[\\d.]+%?\\s+([\\d.-]+)/i);\n if (lch) return Number.parseFloat(lch[1] ?? \"0\") < 3;\n const hsl = c.match(/hsla?\\(\\s*[\\d.-]+\\s*,?\\s*([\\d.]+)%/i);\n if (hsl) return Number.parseFloat(hsl[1] ?? \"0\") < 10;\n const channels = hexChannels(c);\n if (channels) return Math.max(...channels) - Math.min(...channels) < 30;\n return false;\n}\n\nexport function hasChroma(c: Rgb | null, threshold = 30): boolean {\n if (!c) return false;\n return Math.max(c.r, c.g, c.b) - Math.min(c.r, c.g, c.b) >= threshold;\n}\n\n/** Hue in degrees (0–360) for an rgb color. */\nexport function getHue(c: Rgb | null): number {\n if (!c) return 0;\n const r = c.r / 255;\n const g = c.g / 255;\n const b = c.b / 255;\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n if (max === min) return 0;\n const d = max - min;\n let h: number;\n if (max === r) h = ((g - b) / d + (g < b ? 6 : 0)) / 6;\n else if (max === g) h = ((b - r) / d + 2) / 6;\n else h = ((r - g) / d + 4) / 6;\n return Math.round(h * 360);\n}\n\n/** Is this hue in the purple/violet/indigo band the AI-palette rule flags?\n * 225–310 covers everything the detection side bans: Tailwind indigo (~239°),\n * the indigo hero hexes (#667eea 229°, #6366f1 239°), violet (#8b5cf6 258°),\n * and purple (#7c3aed 262°+). Keep in lockstep with `AI_PURPLE_HEXES`. */\nexport function isAiPurpleHue(hue: number): boolean {\n return hue >= 225 && hue <= 310;\n}\n\n/** Is this a warm cream/parchment ground (light, r≥g≥b, small warmth)? */\nexport function isCreamColor(c: Rgb): boolean {\n if (Math.min(c.r, c.g, c.b) < 209) return false;\n if (!(c.r >= c.g && c.g >= c.b)) return false;\n const warmth = c.r - c.b;\n return warmth >= 6 && warmth <= 48;\n}\n"],"mappings":"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","names":["channels"]}
|