cmssy-cli 0.21.0 → 0.25.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.
Files changed (72) hide show
  1. package/config.d.ts +1 -1
  2. package/dist/cli.js +131 -30
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/build.d.ts +1 -0
  5. package/dist/commands/build.d.ts.map +1 -1
  6. package/dist/commands/build.js +56 -12
  7. package/dist/commands/build.js.map +1 -1
  8. package/dist/commands/create.d.ts.map +1 -1
  9. package/dist/commands/create.js +22 -2
  10. package/dist/commands/create.js.map +1 -1
  11. package/dist/commands/dev.d.ts.map +1 -1
  12. package/dist/commands/dev.js +652 -410
  13. package/dist/commands/dev.js.map +1 -1
  14. package/dist/commands/init.d.ts.map +1 -1
  15. package/dist/commands/init.js +3 -1
  16. package/dist/commands/init.js.map +1 -1
  17. package/dist/commands/migrate.d.ts.map +1 -1
  18. package/dist/commands/migrate.js +3 -1
  19. package/dist/commands/migrate.js.map +1 -1
  20. package/dist/commands/publish.js +31 -4
  21. package/dist/commands/publish.js.map +1 -1
  22. package/dist/dev-ui/app.js +166 -19
  23. package/dist/dev-ui/index.html +138 -0
  24. package/dist/dev-ui-react/App.tsx +164 -0
  25. package/dist/dev-ui-react/__tests__/previewData.test.ts +193 -0
  26. package/dist/dev-ui-react/components/BlocksList.tsx +232 -0
  27. package/dist/dev-ui-react/components/Editor.tsx +469 -0
  28. package/dist/dev-ui-react/components/Preview.tsx +146 -0
  29. package/dist/dev-ui-react/hooks/useBlocks.ts +80 -0
  30. package/dist/dev-ui-react/index.html +13 -0
  31. package/dist/dev-ui-react/main.tsx +8 -0
  32. package/dist/dev-ui-react/styles.css +856 -0
  33. package/dist/dev-ui-react/types.ts +45 -0
  34. package/dist/types/block-config.d.ts +100 -2
  35. package/dist/types/block-config.d.ts.map +1 -1
  36. package/dist/types/block-config.js +6 -1
  37. package/dist/types/block-config.js.map +1 -1
  38. package/dist/utils/block-config.js +3 -3
  39. package/dist/utils/block-config.js.map +1 -1
  40. package/dist/utils/blocks-meta-cache.d.ts +28 -0
  41. package/dist/utils/blocks-meta-cache.d.ts.map +1 -0
  42. package/dist/utils/blocks-meta-cache.js +72 -0
  43. package/dist/utils/blocks-meta-cache.js.map +1 -0
  44. package/dist/utils/builder.d.ts +3 -0
  45. package/dist/utils/builder.d.ts.map +1 -1
  46. package/dist/utils/builder.js +17 -14
  47. package/dist/utils/builder.js.map +1 -1
  48. package/dist/utils/field-schema.d.ts +2 -0
  49. package/dist/utils/field-schema.d.ts.map +1 -1
  50. package/dist/utils/field-schema.js +21 -4
  51. package/dist/utils/field-schema.js.map +1 -1
  52. package/dist/utils/scanner.d.ts +5 -3
  53. package/dist/utils/scanner.d.ts.map +1 -1
  54. package/dist/utils/scanner.js +23 -16
  55. package/dist/utils/scanner.js.map +1 -1
  56. package/dist/utils/type-generator.d.ts +7 -1
  57. package/dist/utils/type-generator.d.ts.map +1 -1
  58. package/dist/utils/type-generator.js +58 -41
  59. package/dist/utils/type-generator.js.map +1 -1
  60. package/package.json +8 -3
  61. package/dist/commands/deploy.d.ts +0 -9
  62. package/dist/commands/deploy.d.ts.map +0 -1
  63. package/dist/commands/deploy.js +0 -226
  64. package/dist/commands/deploy.js.map +0 -1
  65. package/dist/commands/push.d.ts +0 -9
  66. package/dist/commands/push.d.ts.map +0 -1
  67. package/dist/commands/push.js +0 -199
  68. package/dist/commands/push.js.map +0 -1
  69. package/dist/utils/blockforge-config.d.ts +0 -19
  70. package/dist/utils/blockforge-config.d.ts.map +0 -1
  71. package/dist/utils/blockforge-config.js +0 -19
  72. package/dist/utils/blockforge-config.js.map +0 -1
@@ -11,6 +11,8 @@ export interface ScanOptions {
11
11
  requirePackageJson?: boolean;
12
12
  /** Custom working directory (default: process.cwd()) */
13
13
  cwd?: string;
14
+ /** Only scan specific blocks/templates by name (case-insensitive) */
15
+ names?: string[];
14
16
  }
15
17
  export interface ScannedResource {
16
18
  type: "block" | "template";
@@ -26,9 +28,9 @@ export interface ScannedResource {
26
28
  /**
27
29
  * Scan blocks and templates directories with configurable options.
28
30
  * Supports 3 modes:
29
- * - Strict mode (build): throwuje błędy, wymaga block.config.ts + walidacja
30
- * - Lenient mode (dev): warny, ładuje preview.json, metadata
31
- * - Minimal mode (package): tylko package.json, bez walidacji
31
+ * - Strict mode (build): throws errors, requires block.config.ts + validation
32
+ * - Lenient mode (dev): warns, loads preview.json, metadata
33
+ * - Minimal mode (package): only package.json, no validation
32
34
  */
33
35
  export declare function scanResources(options?: ScanOptions): Promise<ScannedResource[]>;
34
36
  //# sourceMappingURL=scanner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../../src/utils/scanner.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,WAAW;IAC1B,wDAAwD;IACxD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sCAAsC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yCAAyC;IACzC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2CAA2C;IAC3C,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,WAAW,CAAC,EAAE,GAAG,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,eAAe,EAAE,CAAC,CAqC5B"}
1
+ {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../../src/utils/scanner.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,WAAW;IAC1B,wDAAwD;IACxD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sCAAsC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yCAAyC;IACzC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2CAA2C;IAC3C,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,WAAW,CAAC,EAAE,GAAG,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,eAAe,EAAE,CAAC,CAwC5B"}
@@ -6,12 +6,12 @@ import { getPackageJson } from "./cmssy-config.js";
6
6
  /**
7
7
  * Scan blocks and templates directories with configurable options.
8
8
  * Supports 3 modes:
9
- * - Strict mode (build): throwuje błędy, wymaga block.config.ts + walidacja
10
- * - Lenient mode (dev): warny, ładuje preview.json, metadata
11
- * - Minimal mode (package): tylko package.json, bez walidacji
9
+ * - Strict mode (build): throws errors, requires block.config.ts + validation
10
+ * - Lenient mode (dev): warns, loads preview.json, metadata
11
+ * - Minimal mode (package): only package.json, no validation
12
12
  */
13
13
  export async function scanResources(options = {}) {
14
- const { strict = false, loadConfig = true, validateSchema: shouldValidate = true, loadPreview = false, requirePackageJson = true, cwd = process.cwd(), } = options;
14
+ const { strict = false, loadConfig = true, validateSchema: shouldValidate = true, loadPreview = false, requirePackageJson = true, cwd = process.cwd(), names, } = options;
15
15
  const resources = [];
16
16
  // Scan blocks
17
17
  await scanDirectory({
@@ -23,6 +23,7 @@ export async function scanResources(options = {}) {
23
23
  shouldValidate,
24
24
  loadPreview,
25
25
  requirePackageJson,
26
+ names,
26
27
  });
27
28
  // Scan templates
28
29
  await scanDirectory({
@@ -34,18 +35,24 @@ export async function scanResources(options = {}) {
34
35
  shouldValidate,
35
36
  loadPreview,
36
37
  requirePackageJson,
38
+ names,
37
39
  });
38
40
  return resources;
39
41
  }
40
42
  async function scanDirectory(opts) {
41
- const { type, dir, resources, strict, loadConfig, shouldValidate, loadPreview, requirePackageJson } = opts;
43
+ const { type, dir, resources, strict, loadConfig, shouldValidate, loadPreview, requirePackageJson, names } = opts;
42
44
  if (!fs.existsSync(dir)) {
43
45
  return;
44
46
  }
45
- const itemDirs = fs
47
+ let itemDirs = fs
46
48
  .readdirSync(dir, { withFileTypes: true })
47
49
  .filter((dirent) => dirent.isDirectory())
48
50
  .map((dirent) => dirent.name);
51
+ // Filter by names if provided (case-insensitive)
52
+ if (names && names.length > 0) {
53
+ const lowerNames = names.map((n) => n.toLowerCase());
54
+ itemDirs = itemDirs.filter((name) => lowerNames.includes(name.toLowerCase()));
55
+ }
49
56
  for (const itemName of itemDirs) {
50
57
  const itemPath = path.join(dir, itemName);
51
58
  // Try loading block.config.ts if requested
@@ -69,11 +76,12 @@ async function scanDirectory(opts) {
69
76
  }
70
77
  if (strict) {
71
78
  console.warn(chalk.yellow(`Warning: Skipping ${itemName} - no block.config.ts found`));
79
+ continue;
72
80
  }
73
- continue;
81
+ // In non-strict mode, continue without config
74
82
  }
75
- // Validate schema if requested
76
- if (shouldValidate) {
83
+ // Validate schema if requested and config exists and has schema
84
+ if (shouldValidate && blockConfig && blockConfig.schema) {
77
85
  const validation = await validateSchema(blockConfig.schema, itemPath);
78
86
  if (!validation.valid) {
79
87
  const errorMessage = `\nValidation ${strict ? "errors" : "warnings"} in ${itemName}:`;
@@ -85,22 +93,19 @@ async function scanDirectory(opts) {
85
93
  else {
86
94
  console.warn(chalk.yellow(errorMessage));
87
95
  validation.errors.forEach((err) => console.warn(chalk.yellow(` - ${err}`)));
88
- continue;
96
+ // Don't skip in non-strict - just warn
89
97
  }
90
98
  }
91
99
  }
92
100
  }
93
- // Load package.json
101
+ // Load package.json (optional in non-strict mode)
94
102
  const pkg = getPackageJson(itemPath);
95
103
  if (requirePackageJson && (!pkg || !pkg.name || !pkg.version)) {
96
104
  const message = `${type === "block" ? "Block" : "Template"} "${itemName}" must have package.json with name and version`;
97
105
  if (strict) {
98
106
  throw new Error(message);
99
107
  }
100
- else {
101
- console.warn(chalk.yellow(`Warning: ${message}`));
102
- continue;
103
- }
108
+ // In non-strict mode, continue without valid package.json
104
109
  }
105
110
  // Load preview.json if requested
106
111
  let previewData = {};
@@ -116,11 +121,13 @@ async function scanDirectory(opts) {
116
121
  name: itemName,
117
122
  path: itemPath,
118
123
  packageJson: pkg,
124
+ // Default displayName from directory name (PascalCase)
125
+ displayName: itemName.split('-').map(w => w.charAt(0).toUpperCase() + w.slice(1)).join(''),
119
126
  };
120
127
  // Add optional fields if block.config.ts was loaded
121
128
  if (blockConfig) {
122
129
  resource.blockConfig = blockConfig;
123
- resource.displayName = blockConfig.name || itemName;
130
+ resource.displayName = blockConfig.name || resource.displayName;
124
131
  resource.description = blockConfig.description || pkg?.description;
125
132
  resource.category = blockConfig.category;
126
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../src/utils/scanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../src/utils/scanner.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,9 @@
1
1
  import { FieldConfig } from "../types/block-config.js";
2
- export declare function generateTypes(blockPath: string, schema: Record<string, FieldConfig>): Promise<void>;
2
+ import { FieldTypeDefinition } from "./field-schema.js";
3
+ export interface GenerateTypesOptions {
4
+ blockPath: string;
5
+ schema: Record<string, FieldConfig>;
6
+ fieldTypes?: FieldTypeDefinition[];
7
+ }
8
+ export declare function generateTypes(options: GenerateTypesOptions): Promise<void>;
3
9
  //# sourceMappingURL=type-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-generator.d.ts","sourceRoot":"","sources":["../../src/utils/type-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EAGZ,MAAM,0BAA0B,CAAC;AAElC,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAClC,OAAO,CAAC,IAAI,CAAC,CAaf"}
1
+ {"version":3,"file":"type-generator.d.ts","sourceRoot":"","sources":["../../src/utils/type-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EAGZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAsBxD,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAC;CACpC;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAchF"}
@@ -1,7 +1,27 @@
1
1
  import fs from "fs-extra";
2
2
  import path from "path";
3
- export async function generateTypes(blockPath, schema) {
4
- const typeDefinition = generateTypeDefinition(schema);
3
+ // Default value type mappings (used when field types are not provided)
4
+ const DEFAULT_VALUE_TYPES = {
5
+ singleLine: "string",
6
+ multiLine: "string",
7
+ richText: "string",
8
+ numeric: "number",
9
+ date: "string",
10
+ media: "string",
11
+ link: "string",
12
+ select: "string",
13
+ multiselect: "string[]",
14
+ boolean: "boolean",
15
+ color: "string",
16
+ slider: "number",
17
+ repeater: "Record<string, unknown>[]",
18
+ form: "string",
19
+ emailTemplate: "string",
20
+ emailConfiguration: "string",
21
+ };
22
+ export async function generateTypes(options) {
23
+ const { blockPath, schema, fieldTypes } = options;
24
+ const typeDefinition = generateTypeDefinition({ schema, fieldTypes, indent: " " });
5
25
  const outputPath = path.join(blockPath, "src", "block.d.ts");
6
26
  const fileContent = `// Auto-generated from block.config.ts
7
27
  // DO NOT EDIT - This file is automatically regenerated
@@ -12,11 +32,12 @@ ${typeDefinition}
12
32
  `;
13
33
  await fs.writeFile(outputPath, fileContent);
14
34
  }
15
- function generateTypeDefinition(schema, indent = " ") {
35
+ function generateTypeDefinition(options) {
36
+ const { schema, fieldTypes, indent = " " } = options;
16
37
  const lines = [];
17
38
  Object.entries(schema).forEach(([key, field]) => {
18
39
  const optional = field.required ? "" : "?";
19
- const tsType = mapFieldTypeToTypeScript(field);
40
+ const tsType = mapFieldTypeToTypeScript({ field, fieldTypes, indent });
20
41
  if (field.helpText) {
21
42
  lines.push(`${indent}/** ${field.helpText} */`);
22
43
  }
@@ -24,45 +45,41 @@ function generateTypeDefinition(schema, indent = " ") {
24
45
  });
25
46
  return lines.join("\n");
26
47
  }
27
- function mapFieldTypeToTypeScript(field) {
28
- switch (field.type) {
29
- case "singleLine":
30
- case "multiLine":
31
- case "richText":
32
- case "link":
33
- case "color":
34
- return "string";
35
- case "numeric":
36
- case "slider":
37
- return "number";
38
- case "boolean":
39
- return "boolean";
40
- case "date":
41
- return "string";
42
- case "media":
43
- return "{ url: string; alt?: string; width?: number; height?: number }";
44
- case "select": {
45
- const selectField = field;
46
- if (selectField.options && selectField.options.length > 0) {
47
- const unionTypes = selectField.options
48
- .map((opt) => `"${opt.value}"`)
49
- .join(" | ");
50
- return unionTypes;
51
- }
52
- return "string";
48
+ function mapFieldTypeToTypeScript(options) {
49
+ const { field, fieldTypes, indent = " " } = options;
50
+ // Special handling for select (generate union type from options)
51
+ if (field.type === "select") {
52
+ const selectField = field;
53
+ if (selectField.options && selectField.options.length > 0) {
54
+ const unionTypes = selectField.options
55
+ .map((opt) => `"${opt.value}"`)
56
+ .join(" | ");
57
+ return unionTypes;
53
58
  }
54
- case "multiselect":
55
- return "string[]";
56
- case "repeater": {
57
- const repeaterField = field;
58
- if (repeaterField.schema) {
59
- const nestedType = `{\n${generateTypeDefinition(repeaterField.schema, " ")}\n }`;
60
- return `Array<${nestedType}>`;
61
- }
62
- return "any[]";
59
+ return "string";
60
+ }
61
+ // Special handling for repeater (generate nested type from schema)
62
+ if (field.type === "repeater") {
63
+ const repeaterField = field;
64
+ if (repeaterField.schema) {
65
+ const nestedIndent = indent + " ";
66
+ const nestedType = `{\n${generateTypeDefinition({
67
+ schema: repeaterField.schema,
68
+ fieldTypes,
69
+ indent: nestedIndent,
70
+ })}\n${indent}}`;
71
+ return `Array<${nestedType}>`;
72
+ }
73
+ return "any[]";
74
+ }
75
+ // Look up valueType from backend field types
76
+ if (fieldTypes) {
77
+ const fieldTypeDef = fieldTypes.find((ft) => ft.type === field.type);
78
+ if (fieldTypeDef?.valueType) {
79
+ return fieldTypeDef.valueType;
63
80
  }
64
- default:
65
- return "any";
66
81
  }
82
+ // Fall back to default mappings
83
+ return DEFAULT_VALUE_TYPES[field.type] || "any";
67
84
  }
68
85
  //# sourceMappingURL=type-generator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-generator.js","sourceRoot":"","sources":["../../src/utils/type-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AAOxB,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,SAAiB,EACjB,MAAmC;IAEnC,MAAM,cAAc,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IAE7D,MAAM,WAAW,GAAG;;;;EAIpB,cAAc;;CAEf,CAAC;IAEA,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAAmC,EACnC,MAAM,GAAG,IAAI;IAEb,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3C,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAE/C,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,KAAK,CAAC,QAAQ,KAAK,CAAC,CAAC;QAClD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,GAAG,GAAG,QAAQ,KAAK,MAAM,GAAG,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAkB;IAClD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,YAAY,CAAC;QAClB,KAAK,WAAW,CAAC;QACjB,KAAK,UAAU,CAAC;QAChB,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC;QAElB,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAElB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QAEnB,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC;QAElB,KAAK,OAAO;YACV,OAAO,gEAAgE,CAAC;QAE1E,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,WAAW,GAAG,KAA0B,CAAC;YAC/C,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1D,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO;qBACnC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC;qBAC9B,IAAI,CAAC,KAAK,CAAC,CAAC;gBACf,OAAO,UAAU,CAAC;YACpB,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,KAAK,aAAa;YAChB,OAAO,UAAU,CAAC;QAEpB,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,aAAa,GAAG,KAA4B,CAAC;YACnD,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;gBACzB,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAC7C,aAAa,CAAC,MAAM,EACpB,MAAM,CACP,OAAO,CAAC;gBACT,OAAO,SAAS,UAAU,GAAG,CAAC;YAChC,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"type-generator.js","sourceRoot":"","sources":["../../src/utils/type-generator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cmssy-cli",
3
- "version": "0.21.0",
3
+ "version": "0.25.0",
4
4
  "description": "Unified CLI for building and publishing blocks to Cmssy marketplace",
5
5
  "type": "module",
6
6
  "bin": {
@@ -12,7 +12,7 @@
12
12
  "./config": "./config.js"
13
13
  },
14
14
  "scripts": {
15
- "build": "tsc && tsc config.ts --module esnext --target esnext --moduleResolution bundler && tsc config.ts --declaration --emitDeclarationOnly --module esnext --target esnext --moduleResolution bundler && cp -r src/dev-ui dist/",
15
+ "build": "tsc && tsc config.ts --module esnext --target esnext --moduleResolution bundler && tsc config.ts --declaration --emitDeclarationOnly --module esnext --target esnext --moduleResolution bundler && cp -r src/dev-ui-react dist/",
16
16
  "dev": "tsc --watch",
17
17
  "test": "vitest run",
18
18
  "test:watch": "vitest",
@@ -46,6 +46,8 @@
46
46
  "node": ">=18.0.0"
47
47
  },
48
48
  "dependencies": {
49
+ "@tailwindcss/postcss": "^4.1.18",
50
+ "@vitejs/plugin-react": "^5.1.2",
49
51
  "archiver": "^7.0.1",
50
52
  "chalk": "^5.3.0",
51
53
  "chokidar": "^4.0.1",
@@ -62,8 +64,10 @@
62
64
  "node-fetch": "^3.3.2",
63
65
  "ora": "^8.0.1",
64
66
  "postcss": "^8.4.49",
67
+ "postcss-import": "^16.1.1",
65
68
  "semver": "^7.6.3",
66
- "tsx": "^4.21.0"
69
+ "tsx": "^4.21.0",
70
+ "vite": "^7.3.1"
67
71
  },
68
72
  "devDependencies": {
69
73
  "@types/archiver": "^7.0.0",
@@ -73,6 +77,7 @@
73
77
  "@types/inquirer": "^9.0.7",
74
78
  "@types/node": "^22.10.2",
75
79
  "@types/node-fetch": "^2.6.13",
80
+ "@types/postcss-import": "^14.0.3",
76
81
  "@types/semver": "^7.7.1",
77
82
  "@vitest/coverage-v8": "^4.0.18",
78
83
  "typescript": "^5.7.2",
@@ -1,9 +0,0 @@
1
- interface DeployOptions {
2
- all?: boolean;
3
- blocks?: string[];
4
- templates?: string[];
5
- dryRun?: boolean;
6
- }
7
- export declare function deployCommand(options: DeployOptions): Promise<void>;
8
- export {};
9
- //# sourceMappingURL=deploy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AASA,UAAU,aAAa;IACrB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AASD,wBAAsB,aAAa,CAAC,OAAO,EAAE,aAAa,iBA4EzD"}
@@ -1,226 +0,0 @@
1
- import chalk from "chalk";
2
- import FormData from "form-data";
3
- import fs from "fs-extra";
4
- import fetch from "node-fetch";
5
- import ora from "ora";
6
- import path from "path";
7
- import { hasConfig, loadConfig } from "../utils/config.js";
8
- import { createClient, PUBLISH_PACKAGE_MUTATION } from "../utils/graphql.js";
9
- export async function deployCommand(options) {
10
- console.log(chalk.blue.bold("\n🔨 Cmssy - Deploy to Marketplace\n"));
11
- // Check configuration
12
- if (!hasConfig()) {
13
- console.error(chalk.red("✖ Not configured. Run: cmssy configure\n"));
14
- process.exit(1);
15
- }
16
- const config = loadConfig();
17
- // Find cmssy.config.js
18
- const configPath = path.join(process.cwd(), "cmssy.config.js");
19
- if (!fs.existsSync(configPath)) {
20
- console.error(chalk.red("✖ Not a cmssy project (missing cmssy.config.js)\n"));
21
- process.exit(1);
22
- }
23
- // Scan for packages to deploy
24
- const packages = await scanPackages(options);
25
- if (packages.length === 0) {
26
- console.log(chalk.yellow("⚠ No packages found to deploy\n"));
27
- return;
28
- }
29
- console.log(chalk.cyan(`Found ${packages.length} package(s) to deploy:\n`));
30
- packages.forEach((pkg) => {
31
- console.log(chalk.white(` • ${pkg.packageJson.name} v${pkg.packageJson.version}`));
32
- });
33
- console.log("");
34
- if (options.dryRun) {
35
- console.log(chalk.yellow("🔍 Dry run mode - nothing will be published\n"));
36
- return;
37
- }
38
- // Deploy each package
39
- const client = createClient();
40
- let successCount = 0;
41
- let errorCount = 0;
42
- for (const pkg of packages) {
43
- const spinner = ora(`Uploading ${pkg.packageJson.name} to Cmssy...`).start();
44
- try {
45
- await deployPackage(client, pkg, config.apiToken, config.apiUrl);
46
- spinner.succeed(chalk.green(`${pkg.packageJson.name} submitted for review`));
47
- successCount++;
48
- }
49
- catch (error) {
50
- spinner.fail(chalk.red(`${pkg.packageJson.name} failed`));
51
- console.error(chalk.red(` Error: ${error.message}\n`));
52
- errorCount++;
53
- }
54
- }
55
- console.log("");
56
- if (errorCount === 0) {
57
- console.log(chalk.green.bold(`✓ ${successCount} package(s) submitted for review\n`));
58
- console.log(chalk.cyan("Your packages are pending Cmssy review."));
59
- console.log(chalk.cyan("You'll be notified when they're approved.\n"));
60
- }
61
- else {
62
- console.log(chalk.yellow(`⚠ ${successCount} succeeded, ${errorCount} failed\n`));
63
- }
64
- }
65
- async function scanPackages(options) {
66
- const packages = [];
67
- // Scan blocks
68
- const blocksDir = path.join(process.cwd(), "blocks");
69
- if (fs.existsSync(blocksDir)) {
70
- const blockDirs = fs
71
- .readdirSync(blocksDir, { withFileTypes: true })
72
- .filter((dirent) => dirent.isDirectory())
73
- .map((dirent) => dirent.name);
74
- for (const blockName of blockDirs) {
75
- // Filter by options
76
- if (options.blocks && !options.blocks.includes(blockName)) {
77
- continue;
78
- }
79
- if (!options.all && !options.blocks) {
80
- continue; // Skip unless --all or specifically listed
81
- }
82
- const blockPath = path.join(blocksDir, blockName);
83
- const pkgPath = path.join(blockPath, "package.json");
84
- if (!fs.existsSync(pkgPath))
85
- continue;
86
- const packageJson = fs.readJsonSync(pkgPath);
87
- if (!packageJson.cmssy)
88
- continue;
89
- packages.push({
90
- type: "block",
91
- name: blockName,
92
- path: blockPath,
93
- packageJson,
94
- });
95
- }
96
- }
97
- // Scan templates
98
- const templatesDir = path.join(process.cwd(), "templates");
99
- if (fs.existsSync(templatesDir)) {
100
- const templateDirs = fs
101
- .readdirSync(templatesDir, { withFileTypes: true })
102
- .filter((dirent) => dirent.isDirectory())
103
- .map((dirent) => dirent.name);
104
- for (const templateName of templateDirs) {
105
- // Filter by options
106
- if (options.templates && !options.templates.includes(templateName)) {
107
- continue;
108
- }
109
- if (!options.all && !options.templates) {
110
- continue;
111
- }
112
- const templatePath = path.join(templatesDir, templateName);
113
- const pkgPath = path.join(templatePath, "package.json");
114
- if (!fs.existsSync(pkgPath))
115
- continue;
116
- const packageJson = fs.readJsonSync(pkgPath);
117
- if (!packageJson.cmssy)
118
- continue;
119
- packages.push({
120
- type: "template",
121
- name: templateName,
122
- path: templatePath,
123
- packageJson,
124
- });
125
- }
126
- }
127
- return packages;
128
- }
129
- async function uploadFilesToBackend(packagePublicPath, packageName, version, apiUrl, apiToken) {
130
- const form = new FormData();
131
- // Add package metadata
132
- form.append("packageName", packageName);
133
- form.append("version", version);
134
- // Add index.js file
135
- const indexJsPath = path.join(packagePublicPath, "index.js");
136
- if (!fs.existsSync(indexJsPath)) {
137
- throw new Error(`index.js not found at ${indexJsPath}`);
138
- }
139
- form.append("component", fs.createReadStream(indexJsPath), {
140
- filename: "index.js",
141
- contentType: "application/javascript",
142
- });
143
- // Add index.css if exists
144
- const indexCssPath = path.join(packagePublicPath, "index.css");
145
- if (fs.existsSync(indexCssPath)) {
146
- form.append("css", fs.createReadStream(indexCssPath), {
147
- filename: "index.css",
148
- contentType: "text/css",
149
- });
150
- }
151
- // Add package.json
152
- const packageJsonPath = path.join(packagePublicPath, "package.json");
153
- let pkgJsonToUpload = packageJsonPath;
154
- if (!fs.existsSync(packageJsonPath)) {
155
- // If package.json doesn't exist in build output, use source
156
- pkgJsonToUpload = path.join(path.dirname(path.dirname(packagePublicPath)), "package.json");
157
- }
158
- form.append("packageJson", fs.createReadStream(pkgJsonToUpload), {
159
- filename: "package.json",
160
- contentType: "application/json",
161
- });
162
- // Determine API base URL (remove /graphql suffix if present)
163
- const apiBase = apiUrl.replace("/graphql", "");
164
- const uploadUrl = `${apiBase}/api/upload-package`;
165
- // Upload to backend
166
- const response = await fetch(uploadUrl, {
167
- method: "POST",
168
- headers: {
169
- Authorization: `Bearer ${apiToken}`,
170
- ...form.getHeaders(),
171
- },
172
- body: form,
173
- });
174
- if (!response.ok) {
175
- const errorText = await response.text();
176
- throw new Error(`Upload failed: ${response.statusText}. ${errorText}`);
177
- }
178
- const result = (await response.json());
179
- return {
180
- componentUrl: result.componentUrl,
181
- cssUrl: result.cssUrl || null,
182
- packageJsonUrl: result.packageJsonUrl,
183
- };
184
- }
185
- async function deployPackage(client, pkg, apiToken, apiUrl) {
186
- const { packageJson } = pkg;
187
- const metadata = packageJson.cmssy;
188
- // Find built files in public/ directory
189
- const publicDir = path.join(process.cwd(), "public");
190
- const packagePublicPath = path.join(publicDir, packageJson.name, packageJson.version);
191
- if (!fs.existsSync(packagePublicPath)) {
192
- throw new Error(`Build output not found at ${packagePublicPath}. Run: cmssy build`);
193
- }
194
- // Upload package files to Cmssy backend, which uploads to Vercel Blob
195
- const { componentUrl, cssUrl, packageJsonUrl } = await uploadFilesToBackend(packagePublicPath, packageJson.name, packageJson.version, apiUrl, apiToken);
196
- // Build input
197
- const input = {
198
- name: packageJson.name,
199
- version: packageJson.version,
200
- displayName: metadata.displayName,
201
- description: packageJson.description || metadata.description || "",
202
- longDescription: metadata.longDescription || packageJson.description || "",
203
- packageType: metadata.packageType || pkg.type,
204
- category: metadata.category || "other",
205
- tags: metadata.tags || [],
206
- componentUrl,
207
- cssUrl,
208
- packageJsonUrl,
209
- schemaFields: metadata.schemaFields || null,
210
- defaultContent: metadata.defaultContent || null,
211
- vendorName: packageJson.author?.name || packageJson.author || "Unknown",
212
- vendorEmail: packageJson.author?.email || null,
213
- vendorUrl: packageJson.author?.url || packageJson.homepage || null,
214
- licenseType: metadata.pricing?.licenseType || "free",
215
- priceCents: metadata.pricing?.priceCents || 0,
216
- };
217
- // Send mutation
218
- const result = await client.request(PUBLISH_PACKAGE_MUTATION, {
219
- token: apiToken,
220
- input,
221
- });
222
- if (!result.publishPackage.success) {
223
- throw new Error(result.publishPackage.message);
224
- }
225
- }
226
- //# sourceMappingURL=deploy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAgB7E,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAsB;IACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;IAErE,sBAAsB;IACtB,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;QACjB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAE5B,uBAAuB;IACvB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAC/D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAC/D,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,8BAA8B;IAC9B,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;IAE7C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAC7D,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,QAAQ,CAAC,MAAM,0BAA0B,CAAC,CAAC,CAAC;IAC5E,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACvB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,WAAW,CAAC,IAAI,KAAK,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CACvE,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAAC,CAAC;QAC3E,OAAO;IACT,CAAC;IAED,sBAAsB;IACtB,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,GAAG,CACjB,aAAa,GAAG,CAAC,WAAW,CAAC,IAAI,cAAc,CAChD,CAAC,KAAK,EAAE,CAAC;QAEV,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,QAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAClE,OAAO,CAAC,OAAO,CACb,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,uBAAuB,CAAC,CAC5D,CAAC;YACF,YAAY,EAAE,CAAC;QACjB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC;YAC1D,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;YACxD,UAAU,EAAE,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,YAAY,oCAAoC,CAAC,CACxE,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC,CAAC;IACzE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,KAAK,YAAY,eAAe,UAAU,WAAW,CAAC,CACpE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,OAAsB;IAChD,MAAM,QAAQ,GAAkB,EAAE,CAAC;IAEnC,cAAc;IACd,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;IACrD,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,EAAE;aACjB,WAAW,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aAC/C,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;aACxC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEhC,KAAK,MAAM,SAAS,IAAI,SAAS,EAAE,CAAC;YAClC,oBAAoB;YACpB,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1D,SAAS;YACX,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACpC,SAAS,CAAC,2CAA2C;YACvD,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YAErD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;gBAAE,SAAS;YAEtC,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC7C,IAAI,CAAC,WAAW,CAAC,KAAK;gBAAE,SAAS;YAEjC,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,WAAW;aACZ,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;IAC3D,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,MAAM,YAAY,GAAG,EAAE;aACpB,WAAW,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aAClD,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;aACxC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEhC,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE,CAAC;YACxC,oBAAoB;YACpB,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACnE,SAAS;YACX,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBACvC,SAAS;YACX,CAAC;YAED,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;YAExD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;gBAAE,SAAS;YAEtC,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC7C,IAAI,CAAC,WAAW,CAAC,KAAK;gBAAE,SAAS;YAEjC,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,YAAY;gBAClB,WAAW;aACZ,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAcD,KAAK,UAAU,oBAAoB,CACjC,iBAAyB,EACzB,WAAmB,EACnB,OAAe,EACf,MAAc,EACd,QAAgB;IAEhB,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;IAE5B,uBAAuB;IACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAEhC,oBAAoB;IACpB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAC7D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,WAAW,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE;QACzD,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE,wBAAwB;KACtC,CAAC,CAAC;IAEH,0BAA0B;IAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;IAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE;YACpD,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,UAAU;SACxB,CAAC,CAAC;IACL,CAAC;IAED,mBAAmB;IACnB,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;IACrE,IAAI,eAAe,GAAG,eAAe,CAAC;IAEtC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,4DAA4D;QAC5D,eAAe,GAAG,IAAI,CAAC,IAAI,CACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,EAC7C,cAAc,CACf,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,gBAAgB,CAAC,eAAe,CAAC,EAAE;QAC/D,QAAQ,EAAE,cAAc;QACxB,WAAW,EAAE,kBAAkB;KAChC,CAAC,CAAC;IAEH,6DAA6D;IAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,GAAG,OAAO,qBAAqB,CAAC;IAElD,oBAAoB;IACpB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE;QACtC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,QAAQ,EAAE;YACnC,GAAG,IAAI,CAAC,UAAU,EAAE;SACrB;QACD,IAAI,EAAE,IAAI;KACX,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAmB,CAAC;IAEzD,OAAO;QACL,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;QAC7B,cAAc,EAAE,MAAM,CAAC,cAAc;KACtC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,MAAW,EACX,GAAgB,EAChB,QAAgB,EAChB,MAAc;IAEd,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;IAC5B,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC;IAEnC,wCAAwC;IACxC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;IACrD,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CACjC,SAAS,EACT,WAAW,CAAC,IAAI,EAChB,WAAW,CAAC,OAAO,CACpB,CAAC;IAEF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CACb,6BAA6B,iBAAiB,oBAAoB,CACnE,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,oBAAoB,CACzE,iBAAiB,EACjB,WAAW,CAAC,IAAI,EAChB,WAAW,CAAC,OAAO,EACnB,MAAM,EACN,QAAQ,CACT,CAAC;IAEF,cAAc;IACd,MAAM,KAAK,GAAG;QACZ,IAAI,EAAE,WAAW,CAAC,IAAI;QACtB,OAAO,EAAE,WAAW,CAAC,OAAO;QAC5B,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,WAAW,EAAE,WAAW,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW,IAAI,EAAE;QAClE,eAAe,EAAE,QAAQ,CAAC,eAAe,IAAI,WAAW,CAAC,WAAW,IAAI,EAAE;QAC1E,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI;QAC7C,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,OAAO;QACtC,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,EAAE;QACzB,YAAY;QACZ,MAAM;QACN,cAAc;QACd,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,IAAI;QAC3C,cAAc,EAAE,QAAQ,CAAC,cAAc,IAAI,IAAI;QAC/C,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,IAAI,WAAW,CAAC,MAAM,IAAI,SAAS;QACvE,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,KAAK,IAAI,IAAI;QAC9C,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,QAAQ,IAAI,IAAI;QAClE,WAAW,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,IAAI,MAAM;QACpD,UAAU,EAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,IAAI,CAAC;KAC9C,CAAC;IAEF,gBAAgB;IAChB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,wBAAwB,EAAE;QAC5D,KAAK,EAAE,QAAQ;QACf,KAAK;KACN,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;AACH,CAAC"}
@@ -1,9 +0,0 @@
1
- interface PushOptions {
2
- workspace?: string;
3
- all?: boolean;
4
- blocks?: string[];
5
- templates?: string[];
6
- }
7
- export declare function pushCommand(options: PushOptions): Promise<void>;
8
- export {};
9
- //# sourceMappingURL=push.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"AASA,UAAU,WAAW;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AASD,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,iBAuFrD"}