@decantr/cli 1.7.20 → 1.7.22
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/bin.js
CHANGED
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
scaffoldProject,
|
|
15
15
|
syncRegistry,
|
|
16
16
|
writeExecutionPackBundleArtifacts
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-SN7C63TF.js";
|
|
18
18
|
import {
|
|
19
19
|
buildGuardRegistryContext,
|
|
20
20
|
scanProjectInteractions
|
|
@@ -5942,7 +5942,7 @@ async function main() {
|
|
|
5942
5942
|
break;
|
|
5943
5943
|
}
|
|
5944
5944
|
case "upgrade": {
|
|
5945
|
-
const { cmdUpgrade } = await import("./upgrade-
|
|
5945
|
+
const { cmdUpgrade } = await import("./upgrade-HN6REFEX.js");
|
|
5946
5946
|
const applyFlag = args.includes("--apply");
|
|
5947
5947
|
await cmdUpgrade(process.cwd(), { apply: applyFlag });
|
|
5948
5948
|
break;
|
|
@@ -867,6 +867,421 @@ ${themeBody}
|
|
|
867
867
|
["max-width", "28rem"],
|
|
868
868
|
["margin-inline", "auto"]
|
|
869
869
|
]);
|
|
870
|
+
emitRule('.d-shell[data-layout="top-nav-main"]', [
|
|
871
|
+
["flex-direction", "column"],
|
|
872
|
+
["height", "100vh"],
|
|
873
|
+
["overflow", "hidden"]
|
|
874
|
+
]);
|
|
875
|
+
emitRule('.d-shell[data-layout="minimal-header"]', [
|
|
876
|
+
["flex-direction", "column"],
|
|
877
|
+
["height", "100vh"],
|
|
878
|
+
["overflow", "hidden"]
|
|
879
|
+
]);
|
|
880
|
+
emitRule('.d-shell[data-layout="full-bleed"]', [
|
|
881
|
+
["flex-direction", "column"],
|
|
882
|
+
["height", "100vh"],
|
|
883
|
+
["overflow", "hidden"]
|
|
884
|
+
]);
|
|
885
|
+
emitRule('.d-shell[data-layout="full-bleed"] .d-shell-body', [["padding", "0"]]);
|
|
886
|
+
emitRule('.d-shell[data-layout="recipefork-top-nav"]', [
|
|
887
|
+
["flex-direction", "column"],
|
|
888
|
+
["height", "100vh"],
|
|
889
|
+
["overflow", "hidden"]
|
|
890
|
+
]);
|
|
891
|
+
emitRule('.d-shell[data-layout="canvas-overlay"]', [
|
|
892
|
+
["display", "grid"],
|
|
893
|
+
["grid-template-rows", "52px 1fr"],
|
|
894
|
+
["grid-template-columns", "1fr"],
|
|
895
|
+
["height", "100vh"],
|
|
896
|
+
["overflow", "hidden"],
|
|
897
|
+
["position", "relative"]
|
|
898
|
+
]);
|
|
899
|
+
emitRule('.d-shell[data-layout="canvas-overlay"] .d-shell-body', [
|
|
900
|
+
["padding", "0"],
|
|
901
|
+
["overflow", "hidden"],
|
|
902
|
+
["position", "relative"]
|
|
903
|
+
]);
|
|
904
|
+
emitRule('.d-shell[data-layout="chat-portal"]', [
|
|
905
|
+
["display", "grid"],
|
|
906
|
+
["grid-template-columns", "280px 1fr"],
|
|
907
|
+
["grid-template-rows", "52px 1fr"],
|
|
908
|
+
["grid-template-areas", '"nav header" "nav body"'],
|
|
909
|
+
["height", "100vh"],
|
|
910
|
+
["overflow", "hidden"]
|
|
911
|
+
]);
|
|
912
|
+
emitRule('.d-shell[data-layout="chat-portal"] .d-shell-sidebar', [["grid-area", "nav"]]);
|
|
913
|
+
emitRule('.d-shell[data-layout="chat-portal"] .d-shell-header', [["grid-area", "header"]]);
|
|
914
|
+
emitRule('.d-shell[data-layout="chat-portal"] .d-shell-body', [["grid-area", "body"]]);
|
|
915
|
+
lines.push("@media (max-width: 767.98px) {");
|
|
916
|
+
lines.push(' .d-shell[data-layout="chat-portal"] {');
|
|
917
|
+
lines.push(" grid-template-columns: 1fr;");
|
|
918
|
+
lines.push(' grid-template-areas: "header" "body";');
|
|
919
|
+
lines.push(" }");
|
|
920
|
+
lines.push(' .d-shell[data-layout="chat-portal"] .d-shell-sidebar {');
|
|
921
|
+
lines.push(" display: none;");
|
|
922
|
+
lines.push(" }");
|
|
923
|
+
lines.push("}");
|
|
924
|
+
lines.push("");
|
|
925
|
+
emitRule('.d-shell[data-layout="copilot-overlay"]', [
|
|
926
|
+
["display", "grid"],
|
|
927
|
+
["grid-template-columns", "1fr 360px"],
|
|
928
|
+
["grid-template-rows", "56px 1fr"],
|
|
929
|
+
["grid-template-areas", '"header header" "body copilot"'],
|
|
930
|
+
["height", "100vh"],
|
|
931
|
+
["overflow", "hidden"],
|
|
932
|
+
["transition", "grid-template-columns 0.2s ease"]
|
|
933
|
+
]);
|
|
934
|
+
emitRule('.d-shell[data-layout="copilot-overlay"] .d-shell-header', [["grid-area", "header"]]);
|
|
935
|
+
emitRule('.d-shell[data-layout="copilot-overlay"] .d-shell-body', [["grid-area", "body"]]);
|
|
936
|
+
emitRule('.d-shell[data-layout="copilot-overlay"] .d-shell-copilot', [["grid-area", "copilot"]]);
|
|
937
|
+
emitRule('.d-shell[data-layout="copilot-overlay"][data-copilot-collapsed="true"]', [
|
|
938
|
+
["grid-template-columns", "1fr 0px"]
|
|
939
|
+
]);
|
|
940
|
+
lines.push("@media (max-width: 767.98px) {");
|
|
941
|
+
lines.push(' .d-shell[data-layout="copilot-overlay"] {');
|
|
942
|
+
lines.push(" grid-template-columns: 1fr;");
|
|
943
|
+
lines.push(' grid-template-areas: "header" "body";');
|
|
944
|
+
lines.push(" }");
|
|
945
|
+
lines.push(' .d-shell[data-layout="copilot-overlay"] .d-shell-copilot {');
|
|
946
|
+
lines.push(" display: none;");
|
|
947
|
+
lines.push(" }");
|
|
948
|
+
lines.push(' .d-shell[data-layout="copilot-overlay"] .d-shell-copilot[data-mobile-open="true"] {');
|
|
949
|
+
lines.push(" display: flex;");
|
|
950
|
+
lines.push(" position: fixed;");
|
|
951
|
+
lines.push(" inset: 0 0 0 auto;");
|
|
952
|
+
lines.push(" width: min(360px, 100vw);");
|
|
953
|
+
lines.push(" z-index: 50;");
|
|
954
|
+
lines.push(" }");
|
|
955
|
+
lines.push("}");
|
|
956
|
+
lines.push("");
|
|
957
|
+
emitRule('.d-shell[data-layout="terminal-split"]', [
|
|
958
|
+
["display", "grid"],
|
|
959
|
+
["grid-template-rows", "24px 1fr 28px"],
|
|
960
|
+
["grid-template-columns", "1fr"],
|
|
961
|
+
["height", "100vh"],
|
|
962
|
+
["overflow", "hidden"]
|
|
963
|
+
]);
|
|
964
|
+
emitRule('.d-shell[data-layout="terminal-split"] .d-shell-body', [["overflow", "hidden"]]);
|
|
965
|
+
emitRule('.d-shell[data-layout="three-column-browser"]', [
|
|
966
|
+
["display", "grid"],
|
|
967
|
+
["grid-template-columns", "220px 320px 1fr"],
|
|
968
|
+
["grid-template-rows", "52px 1fr"],
|
|
969
|
+
["grid-template-areas", '"header header header" "nav list detail"'],
|
|
970
|
+
["height", "100vh"],
|
|
971
|
+
["overflow", "hidden"]
|
|
972
|
+
]);
|
|
973
|
+
emitRule('.d-shell[data-layout="three-column-browser"] .d-shell-header', [
|
|
974
|
+
["grid-area", "header"]
|
|
975
|
+
]);
|
|
976
|
+
emitRule('.d-shell[data-layout="three-column-browser"] .d-shell-sidebar', [["grid-area", "nav"]]);
|
|
977
|
+
emitRule('.d-shell[data-layout="three-column-browser"] .d-shell-list', [["grid-area", "list"]]);
|
|
978
|
+
emitRule('.d-shell[data-layout="three-column-browser"] .d-shell-main', [["grid-area", "detail"]]);
|
|
979
|
+
lines.push("@media (max-width: 1023.98px) {");
|
|
980
|
+
lines.push(' .d-shell[data-layout="three-column-browser"] {');
|
|
981
|
+
lines.push(" grid-template-columns: 320px 1fr;");
|
|
982
|
+
lines.push(' grid-template-areas: "header header" "list detail";');
|
|
983
|
+
lines.push(" }");
|
|
984
|
+
lines.push(' .d-shell[data-layout="three-column-browser"] .d-shell-sidebar {');
|
|
985
|
+
lines.push(" display: none;");
|
|
986
|
+
lines.push(" }");
|
|
987
|
+
lines.push("}");
|
|
988
|
+
lines.push("@media (max-width: 767.98px) {");
|
|
989
|
+
lines.push(' .d-shell[data-layout="three-column-browser"] {');
|
|
990
|
+
lines.push(" grid-template-columns: 1fr;");
|
|
991
|
+
lines.push(' grid-template-areas: "header" "detail";');
|
|
992
|
+
lines.push(" }");
|
|
993
|
+
lines.push(' .d-shell[data-layout="three-column-browser"] .d-shell-list {');
|
|
994
|
+
lines.push(" display: none;");
|
|
995
|
+
lines.push(" }");
|
|
996
|
+
lines.push("}");
|
|
997
|
+
lines.push("");
|
|
998
|
+
emitRule('.d-shell[data-layout="workspace-aside"]', [
|
|
999
|
+
["display", "grid"],
|
|
1000
|
+
["grid-template-columns", "240px 1fr 280px"],
|
|
1001
|
+
["grid-template-rows", "52px 1fr"],
|
|
1002
|
+
["grid-template-areas", '"nav header header" "nav body aside"'],
|
|
1003
|
+
["height", "100vh"],
|
|
1004
|
+
["overflow", "hidden"]
|
|
1005
|
+
]);
|
|
1006
|
+
emitRule('.d-shell[data-layout="workspace-aside"] .d-shell-sidebar', [["grid-area", "nav"]]);
|
|
1007
|
+
emitRule('.d-shell[data-layout="workspace-aside"] .d-shell-header', [["grid-area", "header"]]);
|
|
1008
|
+
emitRule('.d-shell[data-layout="workspace-aside"] .d-shell-body', [["grid-area", "body"]]);
|
|
1009
|
+
emitRule('.d-shell[data-layout="workspace-aside"] .d-shell-aside', [["grid-area", "aside"]]);
|
|
1010
|
+
lines.push("@media (max-width: 1279.98px) {");
|
|
1011
|
+
lines.push(' .d-shell[data-layout="workspace-aside"] {');
|
|
1012
|
+
lines.push(" grid-template-columns: 240px 1fr;");
|
|
1013
|
+
lines.push(' grid-template-areas: "nav header" "nav body";');
|
|
1014
|
+
lines.push(" }");
|
|
1015
|
+
lines.push(' .d-shell[data-layout="workspace-aside"] .d-shell-aside {');
|
|
1016
|
+
lines.push(" display: none;");
|
|
1017
|
+
lines.push(" }");
|
|
1018
|
+
lines.push("}");
|
|
1019
|
+
lines.push("@media (max-width: 1023.98px) {");
|
|
1020
|
+
lines.push(' .d-shell[data-layout="workspace-aside"] {');
|
|
1021
|
+
lines.push(" grid-template-columns: 1fr;");
|
|
1022
|
+
lines.push(' grid-template-areas: "header" "body";');
|
|
1023
|
+
lines.push(" }");
|
|
1024
|
+
lines.push(' .d-shell[data-layout="workspace-aside"] .d-shell-sidebar {');
|
|
1025
|
+
lines.push(" display: none;");
|
|
1026
|
+
lines.push(" }");
|
|
1027
|
+
lines.push("}");
|
|
1028
|
+
lines.push("");
|
|
1029
|
+
emitRule(".d-shell-list", [
|
|
1030
|
+
["display", "flex"],
|
|
1031
|
+
["flex-direction", "column"],
|
|
1032
|
+
["border-right", "1px solid var(--d-border)"],
|
|
1033
|
+
["background", "var(--d-surface)"],
|
|
1034
|
+
["overflow-y", "auto"],
|
|
1035
|
+
["min-width", "0"]
|
|
1036
|
+
]);
|
|
1037
|
+
emitRule(".d-shell-copilot", [
|
|
1038
|
+
["display", "flex"],
|
|
1039
|
+
["flex-direction", "column"],
|
|
1040
|
+
["border-left", "1px solid var(--d-border)"],
|
|
1041
|
+
["background", "var(--d-surface)"],
|
|
1042
|
+
["overflow", "hidden"],
|
|
1043
|
+
["min-width", "0"],
|
|
1044
|
+
["transition", "transform 0.2s ease"]
|
|
1045
|
+
]);
|
|
1046
|
+
emitRule(".d-shell-status-bar", [
|
|
1047
|
+
["display", "flex"],
|
|
1048
|
+
["align-items", "center"],
|
|
1049
|
+
["gap", "1rem"],
|
|
1050
|
+
["padding", "0 0.75rem"],
|
|
1051
|
+
["font-size", "var(--d-text-xs)"],
|
|
1052
|
+
["color", "var(--d-text-muted)"],
|
|
1053
|
+
["background", "var(--d-surface)"],
|
|
1054
|
+
["border-bottom", "1px solid var(--d-border)"],
|
|
1055
|
+
["flex-shrink", "0"]
|
|
1056
|
+
]);
|
|
1057
|
+
emitRule(".d-shell-hotkey-bar", [
|
|
1058
|
+
["display", "flex"],
|
|
1059
|
+
["align-items", "center"],
|
|
1060
|
+
["gap", "0.75rem"],
|
|
1061
|
+
["padding", "0 0.75rem"],
|
|
1062
|
+
["font-size", "var(--d-text-xs)"],
|
|
1063
|
+
["color", "var(--d-text-muted)"],
|
|
1064
|
+
["background", "var(--d-surface)"],
|
|
1065
|
+
["border-top", "1px solid var(--d-border)"],
|
|
1066
|
+
["flex-shrink", "0"]
|
|
1067
|
+
]);
|
|
1068
|
+
emitRule(".d-shell-overlay", [
|
|
1069
|
+
["position", "absolute"],
|
|
1070
|
+
["z-index", "10"],
|
|
1071
|
+
["background", "var(--d-surface)"],
|
|
1072
|
+
["border", "1px solid var(--d-border)"],
|
|
1073
|
+
["border-radius", "var(--d-radius)"],
|
|
1074
|
+
["box-shadow", "var(--d-elevation-3, 0 6px 16px rgba(0,0,0,0.18))"],
|
|
1075
|
+
["padding", "0.75rem"],
|
|
1076
|
+
["min-width", "200px"],
|
|
1077
|
+
["max-width", "320px"]
|
|
1078
|
+
]);
|
|
1079
|
+
emitRule('.d-shell-overlay[data-corner="top-left"]', [
|
|
1080
|
+
["top", "1rem"],
|
|
1081
|
+
["left", "1rem"]
|
|
1082
|
+
]);
|
|
1083
|
+
emitRule('.d-shell-overlay[data-corner="top-right"]', [
|
|
1084
|
+
["top", "1rem"],
|
|
1085
|
+
["right", "1rem"]
|
|
1086
|
+
]);
|
|
1087
|
+
emitRule('.d-shell-overlay[data-corner="bottom-left"]', [
|
|
1088
|
+
["bottom", "1rem"],
|
|
1089
|
+
["left", "1rem"]
|
|
1090
|
+
]);
|
|
1091
|
+
emitRule('.d-shell-overlay[data-corner="bottom-right"]', [
|
|
1092
|
+
["bottom", "1rem"],
|
|
1093
|
+
["right", "1rem"]
|
|
1094
|
+
]);
|
|
1095
|
+
emitRule(".d-tooltip", [
|
|
1096
|
+
["position", "absolute"],
|
|
1097
|
+
["z-index", "20"],
|
|
1098
|
+
["padding", "0.375rem 0.625rem"],
|
|
1099
|
+
["font-size", "var(--d-text-xs)"],
|
|
1100
|
+
["line-height", "var(--d-leading-snug)"],
|
|
1101
|
+
["color", "var(--d-bg)"],
|
|
1102
|
+
["background", "var(--d-text)"],
|
|
1103
|
+
["border-radius", "var(--d-radius-sm)"],
|
|
1104
|
+
["white-space", "nowrap"],
|
|
1105
|
+
["pointer-events", "none"],
|
|
1106
|
+
["box-shadow", "var(--d-elevation-2, 0 4px 12px rgba(0,0,0,0.15))"]
|
|
1107
|
+
]);
|
|
1108
|
+
emitRule('.d-tooltip[data-position="top"]', [
|
|
1109
|
+
["bottom", "100%"],
|
|
1110
|
+
["left", "50%"],
|
|
1111
|
+
["transform", "translate(-50%, -0.375rem)"]
|
|
1112
|
+
]);
|
|
1113
|
+
emitRule('.d-tooltip[data-position="bottom"]', [
|
|
1114
|
+
["top", "100%"],
|
|
1115
|
+
["left", "50%"],
|
|
1116
|
+
["transform", "translate(-50%, 0.375rem)"]
|
|
1117
|
+
]);
|
|
1118
|
+
emitRule('.d-tooltip[data-position="left"]', [
|
|
1119
|
+
["right", "100%"],
|
|
1120
|
+
["top", "50%"],
|
|
1121
|
+
["transform", "translate(-0.375rem, -50%)"]
|
|
1122
|
+
]);
|
|
1123
|
+
emitRule('.d-tooltip[data-position="right"]', [
|
|
1124
|
+
["left", "100%"],
|
|
1125
|
+
["top", "50%"],
|
|
1126
|
+
["transform", "translate(0.375rem, -50%)"]
|
|
1127
|
+
]);
|
|
1128
|
+
emitRule(".d-empty-state", [
|
|
1129
|
+
["display", "flex"],
|
|
1130
|
+
["flex-direction", "column"],
|
|
1131
|
+
["align-items", "center"],
|
|
1132
|
+
["justify-content", "center"],
|
|
1133
|
+
["gap", "0.75rem"],
|
|
1134
|
+
["padding", "3rem 1.5rem"],
|
|
1135
|
+
["text-align", "center"],
|
|
1136
|
+
["color", "var(--d-text-muted)"]
|
|
1137
|
+
]);
|
|
1138
|
+
emitRule(".d-breadcrumb", [
|
|
1139
|
+
["display", "flex"],
|
|
1140
|
+
["align-items", "center"],
|
|
1141
|
+
["gap", "0.375rem"],
|
|
1142
|
+
["flex-wrap", "wrap"],
|
|
1143
|
+
["font-size", "var(--d-text-sm)"],
|
|
1144
|
+
["color", "var(--d-text-muted)"]
|
|
1145
|
+
]);
|
|
1146
|
+
emitRule(".d-breadcrumb-item", [
|
|
1147
|
+
["color", "var(--d-text-muted)"],
|
|
1148
|
+
["text-decoration", "none"],
|
|
1149
|
+
[
|
|
1150
|
+
"transition",
|
|
1151
|
+
"color var(--d-motion-fast, 150ms) var(--d-motion-ease-out, cubic-bezier(0,0,0.2,1))"
|
|
1152
|
+
]
|
|
1153
|
+
]);
|
|
1154
|
+
emitRule(".d-breadcrumb-item:hover", [["color", "var(--d-text)"]]);
|
|
1155
|
+
emitRule('.d-breadcrumb-item[data-current="true"]', [
|
|
1156
|
+
["color", "var(--d-text)"],
|
|
1157
|
+
["font-weight", "var(--d-weight-medium)"],
|
|
1158
|
+
["pointer-events", "none"]
|
|
1159
|
+
]);
|
|
1160
|
+
emitRule(".d-breadcrumb-separator", [
|
|
1161
|
+
["color", "var(--d-text-muted)"],
|
|
1162
|
+
["opacity", "0.5"],
|
|
1163
|
+
["user-select", "none"]
|
|
1164
|
+
]);
|
|
1165
|
+
emitRule(".d-avatar", [
|
|
1166
|
+
["display", "inline-flex"],
|
|
1167
|
+
["align-items", "center"],
|
|
1168
|
+
["justify-content", "center"],
|
|
1169
|
+
["width", "32px"],
|
|
1170
|
+
["height", "32px"],
|
|
1171
|
+
["border-radius", "50%"],
|
|
1172
|
+
["background", "var(--d-surface)"],
|
|
1173
|
+
["color", "var(--d-text)"],
|
|
1174
|
+
["font-size", "var(--d-text-xs)"],
|
|
1175
|
+
["font-weight", "var(--d-weight-medium)"],
|
|
1176
|
+
["overflow", "hidden"],
|
|
1177
|
+
["flex-shrink", "0"],
|
|
1178
|
+
["border", "1px solid var(--d-border)"]
|
|
1179
|
+
]);
|
|
1180
|
+
emitRule('.d-avatar[data-size="sm"]', [
|
|
1181
|
+
["width", "24px"],
|
|
1182
|
+
["height", "24px"]
|
|
1183
|
+
]);
|
|
1184
|
+
emitRule('.d-avatar[data-size="lg"]', [
|
|
1185
|
+
["width", "48px"],
|
|
1186
|
+
["height", "48px"],
|
|
1187
|
+
["font-size", "var(--d-text-sm)"]
|
|
1188
|
+
]);
|
|
1189
|
+
emitRule(".d-icon-well", [
|
|
1190
|
+
["display", "inline-flex"],
|
|
1191
|
+
["align-items", "center"],
|
|
1192
|
+
["justify-content", "center"],
|
|
1193
|
+
["width", "48px"],
|
|
1194
|
+
["height", "48px"],
|
|
1195
|
+
["border-radius", "var(--d-radius)"],
|
|
1196
|
+
["background", "color-mix(in srgb, var(--d-primary) 12%, transparent)"],
|
|
1197
|
+
["color", "var(--d-primary)"],
|
|
1198
|
+
["flex-shrink", "0"]
|
|
1199
|
+
]);
|
|
1200
|
+
emitRule('.d-icon-well[data-size="sm"]', [
|
|
1201
|
+
["width", "32px"],
|
|
1202
|
+
["height", "32px"]
|
|
1203
|
+
]);
|
|
1204
|
+
emitRule('.d-icon-well[data-size="lg"]', [
|
|
1205
|
+
["width", "64px"],
|
|
1206
|
+
["height", "64px"]
|
|
1207
|
+
]);
|
|
1208
|
+
emitRule(".d-toggle", [
|
|
1209
|
+
["position", "relative"],
|
|
1210
|
+
["display", "inline-block"],
|
|
1211
|
+
["width", "36px"],
|
|
1212
|
+
["height", "20px"],
|
|
1213
|
+
["border-radius", "9999px"],
|
|
1214
|
+
["background", "var(--d-border)"],
|
|
1215
|
+
["border", "none"],
|
|
1216
|
+
["cursor", "pointer"],
|
|
1217
|
+
["flex-shrink", "0"],
|
|
1218
|
+
[
|
|
1219
|
+
"transition",
|
|
1220
|
+
"background var(--d-motion-fast, 150ms) var(--d-motion-ease-out, cubic-bezier(0,0,0.2,1))"
|
|
1221
|
+
]
|
|
1222
|
+
]);
|
|
1223
|
+
emitRule('.d-toggle[data-on="true"]', [["background", "var(--d-primary)"]]);
|
|
1224
|
+
emitRule(".d-toggle::after", [
|
|
1225
|
+
["content", '""'],
|
|
1226
|
+
["position", "absolute"],
|
|
1227
|
+
["top", "2px"],
|
|
1228
|
+
["left", "2px"],
|
|
1229
|
+
["width", "16px"],
|
|
1230
|
+
["height", "16px"],
|
|
1231
|
+
["border-radius", "50%"],
|
|
1232
|
+
["background", "var(--d-bg)"],
|
|
1233
|
+
[
|
|
1234
|
+
"transition",
|
|
1235
|
+
"transform var(--d-motion-fast, 150ms) var(--d-motion-ease-out, cubic-bezier(0,0,0.2,1))"
|
|
1236
|
+
]
|
|
1237
|
+
]);
|
|
1238
|
+
emitRule('.d-toggle[data-on="true"]::after', [["transform", "translateX(16px)"]]);
|
|
1239
|
+
emitRule(".d-toggle:focus-visible", [
|
|
1240
|
+
["outline", "2px solid var(--d-primary)"],
|
|
1241
|
+
["outline-offset", "2px"]
|
|
1242
|
+
]);
|
|
1243
|
+
emitRule(".d-toc", [
|
|
1244
|
+
["position", "sticky"],
|
|
1245
|
+
["top", "1rem"],
|
|
1246
|
+
["display", "flex"],
|
|
1247
|
+
["flex-direction", "column"],
|
|
1248
|
+
["gap", "0.25rem"],
|
|
1249
|
+
["padding", "1rem"],
|
|
1250
|
+
["font-size", "var(--d-text-sm)"],
|
|
1251
|
+
["border-left", "2px solid var(--d-border)"],
|
|
1252
|
+
["max-height", "calc(100vh - 2rem)"],
|
|
1253
|
+
["overflow-y", "auto"]
|
|
1254
|
+
]);
|
|
1255
|
+
emitRule(".d-toc-item", [
|
|
1256
|
+
["color", "var(--d-text-muted)"],
|
|
1257
|
+
["text-decoration", "none"],
|
|
1258
|
+
["padding", "0.25rem 0.5rem"],
|
|
1259
|
+
["border-radius", "var(--d-radius-sm)"],
|
|
1260
|
+
[
|
|
1261
|
+
"transition",
|
|
1262
|
+
"color var(--d-motion-fast, 150ms) var(--d-motion-ease-out, cubic-bezier(0,0,0.2,1)), background var(--d-motion-fast, 150ms) var(--d-motion-ease-out, cubic-bezier(0,0,0.2,1))"
|
|
1263
|
+
]
|
|
1264
|
+
]);
|
|
1265
|
+
emitRule(".d-toc-item:hover", [
|
|
1266
|
+
["color", "var(--d-text)"],
|
|
1267
|
+
["background", "var(--d-surface)"]
|
|
1268
|
+
]);
|
|
1269
|
+
emitRule('.d-toc-item[data-current="true"]', [
|
|
1270
|
+
["color", "var(--d-primary)"],
|
|
1271
|
+
["font-weight", "var(--d-weight-medium)"]
|
|
1272
|
+
]);
|
|
1273
|
+
emitRule(".d-popover", [
|
|
1274
|
+
["position", "absolute"],
|
|
1275
|
+
["z-index", "30"],
|
|
1276
|
+
["background", "var(--d-surface)"],
|
|
1277
|
+
["border", "1px solid var(--d-border)"],
|
|
1278
|
+
["border-radius", "var(--d-radius)"],
|
|
1279
|
+
["box-shadow", "var(--d-elevation-3, 0 6px 16px rgba(0,0,0,0.18))"],
|
|
1280
|
+
["min-width", "200px"],
|
|
1281
|
+
["max-width", "320px"],
|
|
1282
|
+
["padding", "0.25rem"],
|
|
1283
|
+
["overflow", "hidden"]
|
|
1284
|
+
]);
|
|
870
1285
|
emitRule(".d-modal", [
|
|
871
1286
|
["position", "fixed"],
|
|
872
1287
|
["inset", "0"],
|
|
@@ -2467,6 +2882,26 @@ import './styles/treatments.css'; // Treatments + theme decorators
|
|
|
2467
2882
|
import './styles/global.css'; // Resets
|
|
2468
2883
|
\`\`\`
|
|
2469
2884
|
|
|
2885
|
+
### Atoms in 5 minutes \u2014 DO NOT inline-style layout, spacing, or typography
|
|
2886
|
+
|
|
2887
|
+
\`@decantr/css\` is your default tool for layout, spacing, sizing, flex/grid, position, typography. Anywhere you'd reach for \`style={{ ... }}\` to set those properties, use \`css('...')\` instead.
|
|
2888
|
+
|
|
2889
|
+
| \u274C Inline (DO NOT) | \u2705 Atom (DO) |
|
|
2890
|
+
|--------------------|------------|
|
|
2891
|
+
| \`style={{ display: 'flex', gap: '1rem' }}\` | \`className={css('_flex _gap4')}\` |
|
|
2892
|
+
| \`style={{ flexDirection: 'column', alignItems: 'center' }}\` | \`className={css('_col _items-center')}\` |
|
|
2893
|
+
| \`style={{ padding: '1rem 1.5rem' }}\` | \`className={css('_py4 _px6')}\` |
|
|
2894
|
+
| \`style={{ width: '100%', maxWidth: '40rem' }}\` | \`className={css('_w-full _maxw[40rem]')}\` |
|
|
2895
|
+
| \`style={{ display: 'grid', gridTemplateColumns: 'repeat(3, 1fr)' }}\` | \`className={css('_grid _gc3')}\` |
|
|
2896
|
+
| \`style={{ position: 'sticky', top: 0 }}\` | \`className={css('_sticky _t0')}\` |
|
|
2897
|
+
| \`style={{ marginInline: 'auto' }}\` | \`className={css('_mxauto')}\` |
|
|
2898
|
+
|
|
2899
|
+
**Inline \`style={{ ... }}\` is ONLY acceptable for these cases:**
|
|
2900
|
+
1. **CSS custom property writes** \u2014 \`style={{ '--d-stagger-index': i }}\` (the contract REQUIRES inline writes for dynamic CSS-var values that loop variables / animation indices feed into).
|
|
2901
|
+
2. **Truly dynamic geometry** \u2014 computed positions for draggable nodes, real-time pan/zoom \`transform\` values, dynamic gradient hue interpolation, layout coordinates calculated from data.
|
|
2902
|
+
|
|
2903
|
+
If you're writing >5 inline styles in a component for layout/spacing/sizing, **stop** and migrate them to atoms. Inline styles for static visual values (colors, gradients, shadows, radii, font-size, padding, margin, gap, flex/grid layout) are a contract violation \u2014 \`decantr audit\` will surface them.
|
|
2904
|
+
|
|
2470
2905
|
### Runtime Rules
|
|
2471
2906
|
|
|
2472
2907
|
- Use the real \`@decantr/css\` runtime for atoms. If \`package.json\` does not already depend on \`@decantr/css\`, add it before building.
|
|
@@ -4609,7 +5044,7 @@ function generateQuickStart(input) {
|
|
|
4609
5044
|
if (decorators.length > 0) {
|
|
4610
5045
|
const count = decorators.length;
|
|
4611
5046
|
lines.push(
|
|
4612
|
-
`**Theme decorators:** ${count} class${count === 1 ? "" : "es"} \u2014 see
|
|
5047
|
+
`**Theme decorators:** ${count} class${count === 1 ? "" : "es"} \u2014 see \`section-${section.id}-pack.md\` for the Class | Intent | Apply-to contract`
|
|
4613
5048
|
);
|
|
4614
5049
|
}
|
|
4615
5050
|
const pLower = personality.join(" ").toLowerCase();
|
|
@@ -4770,40 +5205,12 @@ function generateSectionContext(input) {
|
|
|
4770
5205
|
);
|
|
4771
5206
|
lines.push("");
|
|
4772
5207
|
const decoratorDefs = input.themeData?.decorator_definitions;
|
|
4773
|
-
const
|
|
4774
|
-
if (
|
|
4775
|
-
const renderableEntries = Object.entries(decoratorDefs).filter(
|
|
4776
|
-
([, def]) => def.intent || def.description || def.usage && def.usage.length > 0
|
|
4777
|
-
);
|
|
4778
|
-
if (renderableEntries.length > 0) {
|
|
4779
|
-
lines.push(`## Required Theme Decorators (${themeName})`);
|
|
4780
|
-
lines.push("");
|
|
4781
|
-
lines.push(
|
|
4782
|
-
`These classes carry the active theme's visual identity. Tokens alone give bones; decorators give personality. Generated source MUST apply these \u2014 without them, the page reads as "themed colors only" with no theme character.`
|
|
4783
|
-
);
|
|
4784
|
-
lines.push("");
|
|
4785
|
-
lines.push("| Class | Intent | Apply to |");
|
|
4786
|
-
lines.push("|-------|--------|----------|");
|
|
4787
|
-
for (const [name, def] of renderableEntries) {
|
|
4788
|
-
const intent = escCell(def.intent || def.description || "");
|
|
4789
|
-
const applyTo = escCell((def.usage || []).join(", "));
|
|
4790
|
-
lines.push(`| \`.${name}\` | ${intent} | ${applyTo} |`);
|
|
4791
|
-
}
|
|
4792
|
-
lines.push("");
|
|
4793
|
-
}
|
|
4794
|
-
} else if (decorators.length > 0) {
|
|
4795
|
-
lines.push(`## Required Theme Decorators (${themeName})`);
|
|
4796
|
-
lines.push("");
|
|
5208
|
+
const totalDecoratorCount = decoratorDefs && Object.keys(decoratorDefs).length || decorators.length;
|
|
5209
|
+
if (totalDecoratorCount > 0) {
|
|
4797
5210
|
lines.push(
|
|
4798
|
-
|
|
5211
|
+
`**Theme decorators:** ${totalDecoratorCount} \`${themeName}-*\` classes \u2014 full Class/Intent/Apply-to table in \`section-${section.id}-pack.md\` (preferred) and DECANTR.md "Decorator Quick Reference". MUST apply.`
|
|
4799
5212
|
);
|
|
4800
5213
|
lines.push("");
|
|
4801
|
-
lines.push("| Class | Description |");
|
|
4802
|
-
lines.push("|-------|-------------|");
|
|
4803
|
-
for (const d of decorators) {
|
|
4804
|
-
lines.push(`| \`.${d.name}\` | ${escCell(d.description)} |`);
|
|
4805
|
-
}
|
|
4806
|
-
lines.push("");
|
|
4807
5214
|
}
|
|
4808
5215
|
if (themeHints) {
|
|
4809
5216
|
if (themeHints.preferred && themeHints.preferred.length > 0) {
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import "./chunk-
|
|
2
|
-
import "./chunk-
|
|
1
|
+
import "./chunk-BWUEX3IA.js";
|
|
2
|
+
import "./chunk-SN7C63TF.js";
|
|
3
3
|
import "./chunk-QRQCPD3C.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@decantr/cli",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.22",
|
|
4
4
|
"description": "Decantr CLI — scaffold, audit, and maintain Decantr projects from the terminal",
|
|
5
5
|
"author": "Decantr AI",
|
|
6
6
|
"license": "MIT",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"access": "public"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@decantr/core": "1.0.
|
|
30
|
+
"@decantr/core": "1.0.4",
|
|
31
31
|
"@decantr/essence-spec": "1.0.5",
|
|
32
32
|
"@decantr/registry": "1.0.2",
|
|
33
33
|
"@decantr/verifier": "1.0.3"
|