cmssy-cli 0.12.2 → 0.13.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/config.d.ts +2 -0
- package/dist/cli.js +1 -1
- package/dist/commands/build.d.ts.map +1 -1
- package/dist/commands/build.js +20 -171
- package/dist/commands/build.js.map +1 -1
- package/dist/commands/configure.js +2 -2
- package/dist/commands/configure.js.map +1 -1
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +86 -306
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/package.d.ts.map +1 -1
- package/dist/commands/package.js +18 -43
- package/dist/commands/package.js.map +1 -1
- package/dist/dev-ui/app.js +74 -0
- package/dist/dev-ui/index.html +1075 -811
- package/dist/types/block-config.d.ts +1 -1
- package/dist/types/block-config.d.ts.map +1 -1
- package/dist/utils/block-config.d.ts +1 -1
- package/dist/utils/block-config.d.ts.map +1 -1
- package/dist/utils/block-config.js +9 -7
- package/dist/utils/block-config.js.map +1 -1
- package/dist/utils/builder.d.ts +31 -0
- package/dist/utils/builder.d.ts.map +1 -0
- package/dist/utils/builder.js +135 -0
- package/dist/utils/builder.js.map +1 -0
- package/dist/utils/field-schema.js +20 -20
- package/dist/utils/field-schema.js.map +1 -1
- package/dist/utils/scanner.d.ts +34 -0
- package/dist/utils/scanner.d.ts.map +1 -0
- package/dist/utils/scanner.js +133 -0
- package/dist/utils/scanner.js.map +1 -0
- package/dist/utils/type-generator.js +6 -5
- package/dist/utils/type-generator.js.map +1 -1
- package/package.json +3 -2
package/dist/commands/package.js
CHANGED
|
@@ -4,6 +4,7 @@ import chalk from "chalk";
|
|
|
4
4
|
import ora from "ora";
|
|
5
5
|
import archiver from "archiver";
|
|
6
6
|
import { loadConfig } from "../utils/cmssy-config.js";
|
|
7
|
+
import { scanResources } from "../utils/scanner.js";
|
|
7
8
|
export async function packageCommand(packageNames = [], options) {
|
|
8
9
|
const cwd = process.cwd();
|
|
9
10
|
// Load cmssy config
|
|
@@ -15,12 +16,26 @@ export async function packageCommand(packageNames = [], options) {
|
|
|
15
16
|
console.error(chalk.red("✖ Not a Cmssy project (missing cmssy.config.js)"));
|
|
16
17
|
process.exit(1);
|
|
17
18
|
}
|
|
18
|
-
// Scan for blocks and templates
|
|
19
|
-
const
|
|
20
|
-
|
|
19
|
+
// Scan for blocks and templates (minimal mode - no validation, just package.json)
|
|
20
|
+
const scannedResources = await scanResources({
|
|
21
|
+
strict: false,
|
|
22
|
+
loadConfig: false,
|
|
23
|
+
validateSchema: false,
|
|
24
|
+
loadPreview: false,
|
|
25
|
+
requirePackageJson: true,
|
|
26
|
+
cwd,
|
|
27
|
+
});
|
|
28
|
+
if (scannedResources.length === 0) {
|
|
21
29
|
console.log(chalk.yellow("⚠ No blocks or templates found"));
|
|
22
30
|
return;
|
|
23
31
|
}
|
|
32
|
+
// Map ScannedResource to local Resource interface
|
|
33
|
+
const resources = scannedResources.map((r) => ({
|
|
34
|
+
name: r.name,
|
|
35
|
+
type: r.type,
|
|
36
|
+
dir: r.path, // ScannedResource uses 'path', local uses 'dir'
|
|
37
|
+
packageJson: r.packageJson,
|
|
38
|
+
}));
|
|
24
39
|
// Determine which packages to package
|
|
25
40
|
let toPackage = [];
|
|
26
41
|
if (options.all) {
|
|
@@ -54,46 +69,6 @@ export async function packageCommand(packageNames = [], options) {
|
|
|
54
69
|
}
|
|
55
70
|
console.log(chalk.green(`\n✓ Successfully packaged ${toPackage.length} package(s) to ${outputDir}`));
|
|
56
71
|
}
|
|
57
|
-
async function scanResources(cwd) {
|
|
58
|
-
const resources = [];
|
|
59
|
-
// Scan blocks
|
|
60
|
-
const blocksDir = path.join(cwd, "blocks");
|
|
61
|
-
if (await fs.pathExists(blocksDir)) {
|
|
62
|
-
const blockDirs = await fs.readdir(blocksDir);
|
|
63
|
-
for (const name of blockDirs) {
|
|
64
|
-
const blockDir = path.join(blocksDir, name);
|
|
65
|
-
const packageJsonPath = path.join(blockDir, "package.json");
|
|
66
|
-
if (await fs.pathExists(packageJsonPath)) {
|
|
67
|
-
const packageJson = await fs.readJson(packageJsonPath);
|
|
68
|
-
resources.push({
|
|
69
|
-
name,
|
|
70
|
-
type: "block",
|
|
71
|
-
dir: blockDir,
|
|
72
|
-
packageJson,
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
// Scan templates
|
|
78
|
-
const templatesDir = path.join(cwd, "templates");
|
|
79
|
-
if (await fs.pathExists(templatesDir)) {
|
|
80
|
-
const templateDirs = await fs.readdir(templatesDir);
|
|
81
|
-
for (const name of templateDirs) {
|
|
82
|
-
const templateDir = path.join(templatesDir, name);
|
|
83
|
-
const packageJsonPath = path.join(templateDir, "package.json");
|
|
84
|
-
if (await fs.pathExists(packageJsonPath)) {
|
|
85
|
-
const packageJson = await fs.readJson(packageJsonPath);
|
|
86
|
-
resources.push({
|
|
87
|
-
name,
|
|
88
|
-
type: "template",
|
|
89
|
-
dir: templateDir,
|
|
90
|
-
packageJson,
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
return resources;
|
|
96
|
-
}
|
|
97
72
|
async function packageResource(resource, outputDir) {
|
|
98
73
|
const spinner = ora(`Packaging ${resource.type} ${chalk.cyan(resource.name)}`).start();
|
|
99
74
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package.js","sourceRoot":"","sources":["../../src/commands/package.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"package.js","sourceRoot":"","sources":["../../src/commands/package.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAmB,MAAM,qBAAqB,CAAC;AAcrE,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,eAAyB,EAAE,EAC3B,OAAuB;IAEvB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,oBAAoB;IACpB,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAC7D,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,kFAAkF;IAClF,MAAM,gBAAgB,GAAG,MAAM,aAAa,CAAC;QAC3C,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,KAAK;QACjB,cAAc,EAAE,KAAK;QACrB,WAAW,EAAE,KAAK;QAClB,kBAAkB,EAAE,IAAI;QACxB,GAAG;KACJ,CAAC,CAAC;IAEH,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IAED,kDAAkD;IAClD,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7C,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,gDAAgD;QAC7D,WAAW,EAAE,CAAC,CAAC,WAAW;KAC3B,CAAC,CAAC,CAAC;IAEJ,sCAAsC;IACtC,IAAI,SAAS,GAAG,EAAE,CAAC;IAEnB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,SAAS,GAAG,SAAS,CAAC;IACxB,CAAC;SAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,yBAAyB;QACzB,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YACxD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC,CAAC;gBACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,+CAA+C,CAAC;YACxD,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC;YACrC,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC;YAC7C,KAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,CACvC,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,0BAA0B;IAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,IAAI,UAAU,CAAC,CAAC;IAC/D,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAE9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,SAAS,CAAC,MAAM,kBAAkB,CAAC,CAAC,CAAC;IAE9E,wBAAwB;IACxB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CACT,6BAA6B,SAAS,CAAC,MAAM,kBAAkB,SAAS,EAAE,CAC3E,CACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,QAAkB,EAAE,SAAiB;IAClE,MAAM,OAAO,GAAG,GAAG,CACjB,aAAa,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAC1D,CAAC,KAAK,EAAE,CAAC;IAEV,IAAI,CAAC;QACH,yBAAyB;QACzB,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,OAAO,IAAI,OAAO,CAAC;QACxD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAC1B,SAAS,EACT,GAAG,QAAQ,CAAC,IAAI,IAAI,OAAO,MAAM,CAClC,CAAC;QAEF,sBAAsB;QACtB,MAAM,MAAM,GAAG,EAAE,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE;YAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,sBAAsB;SAC3C,CAAC,CAAC;QAEH,4BAA4B;QAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACtB,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACnD,OAAO,CAAC,OAAO,CACb,YAAY,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,CACtE,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC1B,MAAM,GAAG,CAAC;QACZ,CAAC,CAAC,CAAC;QAEH,8BAA8B;QAC9B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErB,uBAAuB;QACvB,sBAAsB;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC9C,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACnC,CAAC;QAED,kBAAkB;QAClB,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAChE,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,iCAAiC;QACjC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;QACnE,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,8BAA8B;QAC9B,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAChE,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,2BAA2B;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QACxD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,0CAA0C;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CACzB,OAAO,CAAC,GAAG,EAAE,EACb,QAAQ,EACR,QAAQ,CAAC,WAAW,CAAC,IAAI,EACzB,OAAO,CACR,CAAC;QACF,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;QAED,mBAAmB;QACnB,MAAM,OAAO,CAAC,QAAQ,EAAE,CAAC;QAEzB,uBAAuB;QACvB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CACV,qBAAqB,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAC7D,KAAK,CAAC,OACR,EAAE,CACH,CAAC;QACF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
package/dist/dev-ui/app.js
CHANGED
|
@@ -749,5 +749,79 @@ function showPublishError(message) {
|
|
|
749
749
|
`;
|
|
750
750
|
}
|
|
751
751
|
|
|
752
|
+
// Panel Toggle Functionality - Collapsed Sidebar
|
|
753
|
+
let leftPanelCollapsed = false;
|
|
754
|
+
let rightPanelCollapsed = false;
|
|
755
|
+
|
|
756
|
+
window.toggleLeftPanel = function() {
|
|
757
|
+
const container = document.getElementById('container');
|
|
758
|
+
const toggleBtn = document.getElementById('toggle-left');
|
|
759
|
+
|
|
760
|
+
leftPanelCollapsed = !leftPanelCollapsed;
|
|
761
|
+
|
|
762
|
+
if (leftPanelCollapsed) {
|
|
763
|
+
container.classList.add('left-collapsed');
|
|
764
|
+
toggleBtn.setAttribute('title', 'Expand panel (Ctrl+B)');
|
|
765
|
+
} else {
|
|
766
|
+
container.classList.remove('left-collapsed');
|
|
767
|
+
toggleBtn.setAttribute('title', 'Collapse panel (Ctrl+B)');
|
|
768
|
+
}
|
|
769
|
+
|
|
770
|
+
// Save preference
|
|
771
|
+
localStorage.setItem('leftPanelCollapsed', leftPanelCollapsed);
|
|
772
|
+
};
|
|
773
|
+
|
|
774
|
+
window.toggleRightPanel = function() {
|
|
775
|
+
const container = document.getElementById('container');
|
|
776
|
+
const toggleBtn = document.getElementById('toggle-right');
|
|
777
|
+
|
|
778
|
+
rightPanelCollapsed = !rightPanelCollapsed;
|
|
779
|
+
|
|
780
|
+
if (rightPanelCollapsed) {
|
|
781
|
+
container.classList.add('right-collapsed');
|
|
782
|
+
toggleBtn.setAttribute('title', 'Expand panel (Ctrl+E)');
|
|
783
|
+
} else {
|
|
784
|
+
container.classList.remove('right-collapsed');
|
|
785
|
+
toggleBtn.setAttribute('title', 'Collapse panel (Ctrl+E)');
|
|
786
|
+
}
|
|
787
|
+
|
|
788
|
+
// Save preference
|
|
789
|
+
localStorage.setItem('rightPanelCollapsed', rightPanelCollapsed);
|
|
790
|
+
};
|
|
791
|
+
|
|
792
|
+
// Restore panel states from localStorage
|
|
793
|
+
function restorePanelStates() {
|
|
794
|
+
const savedLeftState = localStorage.getItem('leftPanelCollapsed');
|
|
795
|
+
const savedRightState = localStorage.getItem('rightPanelCollapsed');
|
|
796
|
+
|
|
797
|
+
if (savedLeftState === 'true') {
|
|
798
|
+
leftPanelCollapsed = false; // Set to false so toggle will flip it
|
|
799
|
+
toggleLeftPanel();
|
|
800
|
+
}
|
|
801
|
+
|
|
802
|
+
if (savedRightState === 'true') {
|
|
803
|
+
rightPanelCollapsed = false; // Set to false so toggle will flip it
|
|
804
|
+
toggleRightPanel();
|
|
805
|
+
}
|
|
806
|
+
}
|
|
807
|
+
|
|
808
|
+
// Keyboard shortcuts
|
|
809
|
+
document.addEventListener('keydown', (event) => {
|
|
810
|
+
// Ctrl+B (or Cmd+B on Mac) - Toggle left panel
|
|
811
|
+
if ((event.ctrlKey || event.metaKey) && event.key === 'b') {
|
|
812
|
+
event.preventDefault();
|
|
813
|
+
toggleLeftPanel();
|
|
814
|
+
}
|
|
815
|
+
|
|
816
|
+
// Ctrl+E (or Cmd+E on Mac) - Toggle right panel
|
|
817
|
+
if ((event.ctrlKey || event.metaKey) && event.key === 'e') {
|
|
818
|
+
event.preventDefault();
|
|
819
|
+
toggleRightPanel();
|
|
820
|
+
}
|
|
821
|
+
});
|
|
822
|
+
|
|
752
823
|
// Start the app
|
|
753
824
|
init();
|
|
825
|
+
|
|
826
|
+
// Restore panel states after init
|
|
827
|
+
setTimeout(restorePanelStates, 100);
|