twenty-sdk 0.1.0 → 0.1.2
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/_commonjsHelpers-DKOUU3wS.js +1 -0
- package/dist/_commonjsHelpers-DaMA6jEr.mjs +8 -0
- package/dist/application/application-config.d.ts +0 -2
- package/dist/application/field-metadata/composite-fields.d.ts +0 -1
- package/dist/application/field-metadata/field-type.d.ts +0 -1
- package/dist/application/field-metadata/field.decorator.d.ts +1 -3
- package/dist/application/field-metadata/on-delete-action.d.ts +0 -1
- package/dist/application/field-metadata/relation-type.d.ts +0 -1
- package/dist/application/field-metadata/relation.decorator.d.ts +1 -3
- package/dist/application/function-config.d.ts +0 -2
- package/dist/application/index.d.ts +0 -1
- package/dist/application/object-metadata/object.decorator.d.ts +0 -2
- package/dist/application/object-metadata/standard-object-ids.d.ts +0 -1
- package/dist/application/syncable-entity-options.type.d.ts +0 -1
- package/dist/cli/cli.d.ts +2 -0
- package/dist/cli/commands/app-add.command.d.ts +12 -0
- package/dist/cli/commands/app-dev.command.d.ts +10 -0
- package/dist/cli/commands/app-generate.command.d.ts +4 -0
- package/dist/cli/commands/app-sync.command.d.ts +7 -0
- package/dist/cli/commands/app-uninstall.command.d.ts +9 -0
- package/dist/cli/commands/app.command.d.ts +9 -0
- package/dist/cli/commands/auth.command.d.ts +9 -0
- package/dist/cli/constants/current-execution-directory.d.ts +1 -0
- package/dist/cli/services/api.service.d.ts +14 -0
- package/dist/cli/services/config.service.d.ts +14 -0
- package/dist/cli/services/generate.service.d.ts +7 -0
- package/dist/cli/types/config.types.d.ts +99 -0
- package/dist/cli/utils/convert-to-label.d.ts +1 -0
- package/dist/cli/utils/find-path-file.d.ts +1 -0
- package/dist/cli/utils/format-and-warn-ts-diagnostics.d.ts +4 -0
- package/dist/cli/utils/format-path.d.ts +1 -0
- package/dist/cli/utils/get-function-base-file.d.ts +4 -0
- package/dist/cli/utils/get-object-decorated-class.d.ts +4 -0
- package/dist/cli/utils/get-ts-program-and-diagnostics.d.ts +7 -0
- package/dist/cli/utils/jsonc-parser.d.ts +17 -0
- package/dist/cli/utils/load-env-variables.d.ts +2 -0
- package/dist/cli/utils/load-manifest.d.ts +9 -0
- package/dist/cli.cjs +242 -0
- package/dist/cli.mjs +9506 -0
- package/dist/index.cjs +11 -11
- package/dist/index.d.ts +0 -1
- package/dist/index.mjs +300 -302
- package/package.json +19 -15
- package/dist/application/application-config.d.ts.map +0 -1
- package/dist/application/field-metadata/composite-fields.d.ts.map +0 -1
- package/dist/application/field-metadata/field-type.d.ts.map +0 -1
- package/dist/application/field-metadata/field.decorator.d.ts.map +0 -1
- package/dist/application/field-metadata/on-delete-action.d.ts.map +0 -1
- package/dist/application/field-metadata/relation-type.d.ts.map +0 -1
- package/dist/application/field-metadata/relation.decorator.d.ts.map +0 -1
- package/dist/application/function-config.d.ts.map +0 -1
- package/dist/application/index.d.ts.map +0 -1
- package/dist/application/object-metadata/object.decorator.d.ts.map +0 -1
- package/dist/application/object-metadata/standard-object-ids.d.ts.map +0 -1
- package/dist/application/syncable-entity-options.type.d.ts.map +0 -1
- package/dist/cli/cli.js +0 -39
- package/dist/cli/cli.js.map +0 -1
- package/dist/cli/commands/app-add.command.js +0 -143
- package/dist/cli/commands/app-add.command.js.map +0 -1
- package/dist/cli/commands/app-dev.command.js +0 -60
- package/dist/cli/commands/app-dev.command.js.map +0 -1
- package/dist/cli/commands/app-generate.command.js +0 -18
- package/dist/cli/commands/app-generate.command.js.map +0 -1
- package/dist/cli/commands/app-sync.command.js +0 -48
- package/dist/cli/commands/app-sync.command.js.map +0 -1
- package/dist/cli/commands/app-uninstall.command.js +0 -46
- package/dist/cli/commands/app-uninstall.command.js.map +0 -1
- package/dist/cli/commands/app.command.js +0 -99
- package/dist/cli/commands/app.command.js.map +0 -1
- package/dist/cli/commands/auth.command.js +0 -128
- package/dist/cli/commands/auth.command.js.map +0 -1
- package/dist/cli/constants/current-execution-directory.js +0 -2
- package/dist/cli/constants/current-execution-directory.js.map +0 -1
- package/dist/cli/services/api.service.js +0 -171
- package/dist/cli/services/api.service.js.map +0 -1
- package/dist/cli/services/config.service.js +0 -83
- package/dist/cli/services/config.service.js.map +0 -1
- package/dist/cli/services/generate.service.js +0 -45
- package/dist/cli/services/generate.service.js.map +0 -1
- package/dist/cli/types/config.types.js +0 -2
- package/dist/cli/types/config.types.js.map +0 -1
- package/dist/cli/utils/convert-to-label.js +0 -6
- package/dist/cli/utils/convert-to-label.js.map +0 -1
- package/dist/cli/utils/find-path-file.js +0 -10
- package/dist/cli/utils/find-path-file.js.map +0 -1
- package/dist/cli/utils/format-and-warn-ts-diagnostics.js +0 -12
- package/dist/cli/utils/format-and-warn-ts-diagnostics.js.map +0 -1
- package/dist/cli/utils/format-path.js +0 -8
- package/dist/cli/utils/format-path.js.map +0 -1
- package/dist/cli/utils/get-function-base-file.js +0 -28
- package/dist/cli/utils/get-function-base-file.js.map +0 -1
- package/dist/cli/utils/get-object-decorated-class.js +0 -16
- package/dist/cli/utils/get-object-decorated-class.js.map +0 -1
- package/dist/cli/utils/get-ts-program-and-diagnostics.js +0 -35
- package/dist/cli/utils/get-ts-program-and-diagnostics.js.map +0 -1
- package/dist/cli/utils/jsonc-parser.js +0 -45
- package/dist/cli/utils/jsonc-parser.js.map +0 -1
- package/dist/cli/utils/load-env-variables.js +0 -15
- package/dist/cli/utils/load-env-variables.js.map +0 -1
- package/dist/cli/utils/load-manifest.js +0 -377
- package/dist/cli/utils/load-manifest.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
package/package.json
CHANGED
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "twenty-sdk",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"license": "AGPL-3.0",
|
|
3
|
+
"version": "0.1.2",
|
|
5
4
|
"main": "dist/index.cjs",
|
|
6
5
|
"module": "dist/index.mjs",
|
|
7
6
|
"types": "dist/index.d.ts",
|
|
8
7
|
"bin": {
|
|
9
|
-
"twenty": "dist/cli
|
|
8
|
+
"twenty": "dist/cli.cjs"
|
|
9
|
+
},
|
|
10
|
+
"files": [
|
|
11
|
+
"dist"
|
|
12
|
+
],
|
|
13
|
+
"scripts": {
|
|
14
|
+
"build": "npx rimraf dist && npx vite build"
|
|
10
15
|
},
|
|
11
16
|
"keywords": [
|
|
12
17
|
"twenty",
|
|
@@ -16,12 +21,14 @@
|
|
|
16
21
|
"application",
|
|
17
22
|
"development"
|
|
18
23
|
],
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
+
"exports": {
|
|
25
|
+
".": {
|
|
26
|
+
"types": "./dist/index.d.ts",
|
|
27
|
+
"import": "./dist/index.mjs",
|
|
28
|
+
"require": "./dist/index.cjs"
|
|
29
|
+
}
|
|
24
30
|
},
|
|
31
|
+
"license": "AGPL-3.0",
|
|
25
32
|
"dependencies": {
|
|
26
33
|
"@genql/cli": "^3.0.3",
|
|
27
34
|
"axios": "^1.6.0",
|
|
@@ -52,16 +59,13 @@
|
|
|
52
59
|
"jest": "^29.5.0",
|
|
53
60
|
"tsx": "^4.7.0",
|
|
54
61
|
"vite": "^7.0.0",
|
|
55
|
-
"vite-plugin-dts": "
|
|
62
|
+
"vite-plugin-dts": "^4.5.4",
|
|
56
63
|
"vite-tsconfig-paths": "^4.2.1",
|
|
57
64
|
"wait-on": "^7.2.0"
|
|
58
65
|
},
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
|
|
62
|
-
"import": "./dist/index.mjs",
|
|
63
|
-
"require": "./dist/index.cjs"
|
|
64
|
-
}
|
|
66
|
+
"engines": {
|
|
67
|
+
"node": "^24.5.0",
|
|
68
|
+
"yarn": "^4.0.2"
|
|
65
69
|
},
|
|
66
70
|
"typesVersions": {
|
|
67
71
|
"*": {}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"application-config.d.ts","sourceRoot":"","sources":["../../src/application/application-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAE5E,KAAK,mBAAmB,GAAG,qBAAqB,GAAG;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,qBAAqB,GAAG;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CAC5D,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"composite-fields.d.ts","sourceRoot":"","sources":["../../../src/application/field-metadata/composite-fields.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,aAAa,IAAI,UAAU,EAC3B,eAAe,IAAI,YAAY,EAC/B,gBAAgB,IAAI,aAAa,EACjC,cAAc,IAAI,WAAW,EAC7B,gBAAgB,IAAI,aAAa,EACjC,aAAa,IAAI,UAAU,EAC3B,cAAc,IAAI,WAAW,EAC7B,kBAAkB,IAAI,aAAa,EACpC,MAAM,qBAAqB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"field-type.d.ts","sourceRoot":"","sources":["../../../src/application/field-metadata/field-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,IAAI,SAAS,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"field.decorator.d.ts","sourceRoot":"","sources":["../../../src/application/field-metadata/field.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC/B,MAAM,qBAAqB,CAAC;AAE7B,KAAK,YAAY,CACf,CAAC,SAAS,iBAAiB,GAAG,OAAO,CACnC,iBAAiB,EAEjB,iBAAiB,CAAC,QAAQ,CAC3B,IACC,qBAAqB,GAAG;IAC1B,IAAI,EAAE,CAAC,CAAC;IACR,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,yBAAyB,CAAC,CAAC,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,iBAAiB,EAC/C,GAAG,YAAY,CAAC,CAAC,CAAC,KACjB,iBAEF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"on-delete-action.d.ts","sourceRoot":"","sources":["../../../src/application/field-metadata/on-delete-action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"relation-type.d.ts","sourceRoot":"","sources":["../../../src/application/field-metadata/relation-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"relation.decorator.d.ts","sourceRoot":"","sources":["../../../src/application/field-metadata/relation.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAE7B,UAAU,mCAAmC,CAAC,MAAM;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oCAAoC,EAAE,MAAM,CAAC;IAC7C,mBAAmB,CAAC,EAAE,MAAM,MAAM,CAAC;IACnC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,UAAU,mCAAmC,CAAC,MAAM,CAClD,SAAQ,mCAAmC,CAAC,MAAM,CAAC;IACnD,eAAe,CAAC,EAAE,KAAK,CAAC;CACzB;AAED,UAAU,iCAAiC,CAAC,MAAM,CAChD,SAAQ,mCAAmC,CAAC,MAAM,CAAC;IACnD,eAAe,EAAE,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,4BAA4B,CAAC,MAAM,IACpC,mCAAmC,CAAC,MAAM,CAAC,GAC3C,iCAAiC,CAAC,MAAM,CAAC,CAAC;AAE9C,KAAK,6BAA6B,CAAC,MAAM,IACvC,4BAA4B,CAAC,MAAM,CAAC,GAAG;IACrC,IAAI,EAAE,YAAY,CAAC,WAAW,CAAC;CAChC,CAAC;AAEJ,KAAK,iCAAiC,CAAC,MAAM,SAAS,MAAM,IAC1D,4BAA4B,CAAC,MAAM,CAAC,GAAG;IACrC,IAAI,EAAE,YAAY,CAAC,WAAW,CAAC;IAC/B,mBAAmB,EAAE,MAAM,MAAM,CAAC;CACnC,CAAC;AAEJ,KAAK,eAAe,CAAC,CAAC,SAAS,MAAM,IAAI,qBAAqB,GAC5D,CAAC,6BAA6B,CAAC,CAAC,CAAC,GAAG,iCAAiC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE5E,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,MAAM,EACvC,GAAG,eAAe,CAAC,CAAC,CAAC,KACpB,iBAEF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"function-config.d.ts","sourceRoot":"","sources":["../../src/application/function-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAE5E,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACxD,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,eAAe,GAAG,qBAAqB,GAC1C,CAAC,YAAY,GAAG,WAAW,GAAG,oBAAoB,CAAC,CAAC;AAEtD,MAAM,MAAM,cAAc,GAAG,qBAAqB,GAAG;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;CAC9B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/application/index.ts"],"names":[],"mappings":"AASA,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,YAAY,EACV,UAAU,EACV,YAAY,EACZ,aAAa,EACb,WAAW,EACX,aAAa,EACb,UAAU,EACV,WAAW,EACX,aAAa,GACd,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,qCAAqC,EAAE,MAAM,uCAAuC,CAAC;AAC9F,YAAY,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"object.decorator.d.ts","sourceRoot":"","sources":["../../../src/application/object-metadata/object.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAE7E,KAAK,qBAAqB,GAAG,qBAAqB,GAAG;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,MAAM,GAAI,GAAG,qBAAqB,KAAG,cAEjD,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"standard-object-ids.d.ts","sourceRoot":"","sources":["../../../src/application/object-metadata/standard-object-ids.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,IAAI,qCAAqC,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"syncable-entity-options.type.d.ts","sourceRoot":"","sources":["../../src/application/syncable-entity-options.type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAAG;IAAE,mBAAmB,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
package/dist/cli/cli.js
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import chalk from 'chalk';
|
|
3
|
-
import { Command, CommanderError } from 'commander';
|
|
4
|
-
import { readFileSync } from 'fs';
|
|
5
|
-
import { join } from 'path';
|
|
6
|
-
import { AppCommand } from './commands/app.command';
|
|
7
|
-
import { AuthCommand } from './commands/auth.command';
|
|
8
|
-
import { ConfigService } from './services/config.service';
|
|
9
|
-
const packageJson = JSON.parse(readFileSync(join(__dirname, '../../package.json'), 'utf-8'));
|
|
10
|
-
const program = new Command();
|
|
11
|
-
program
|
|
12
|
-
.name('twenty')
|
|
13
|
-
.description('CLI for Twenty application development')
|
|
14
|
-
.version(packageJson.version);
|
|
15
|
-
program.option('--workspace <name>', 'Use a specific workspace configuration', 'default');
|
|
16
|
-
program.hook('preAction', (thisCommand) => {
|
|
17
|
-
const opts = thisCommand.optsWithGlobals
|
|
18
|
-
? thisCommand.optsWithGlobals()
|
|
19
|
-
: thisCommand.opts();
|
|
20
|
-
const workspace = opts.workspace;
|
|
21
|
-
ConfigService.setActiveWorkspace(workspace);
|
|
22
|
-
console.log(chalk.gray(`👩💻 Workspace - ${ConfigService.getActiveWorkspace()}`));
|
|
23
|
-
});
|
|
24
|
-
program.addCommand(new AuthCommand().getCommand());
|
|
25
|
-
program.addCommand(new AppCommand().getCommand());
|
|
26
|
-
program.exitOverride();
|
|
27
|
-
try {
|
|
28
|
-
program.parse();
|
|
29
|
-
}
|
|
30
|
-
catch (error) {
|
|
31
|
-
if (error instanceof CommanderError) {
|
|
32
|
-
process.exit(error.exitCode);
|
|
33
|
-
}
|
|
34
|
-
if (error instanceof Error) {
|
|
35
|
-
console.error(chalk.red('Error:'), error.message);
|
|
36
|
-
process.exit(1);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=cli.js.map
|
package/dist/cli/cli.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC5B,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,CAC7D,CAAC;AAEF,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,wCAAwC,CAAC;KACrD,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAEhC,OAAO,CAAC,MAAM,CACZ,oBAAoB,EACpB,wCAAwC,EACxC,SAAS,CACV,CAAC;AAEF,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,WAAW,EAAE,EAAE;IACxC,MAAM,IAAI,GAAI,WAAmB,CAAC,eAAe;QAC/C,CAAC,CAAE,WAAmB,CAAC,eAAe,EAAE;QACxC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IACvB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACjC,aAAa,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,qBAAqB,aAAa,CAAC,kBAAkB,EAAE,EAAE,CAAC,CACtE,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,UAAU,CAAC,IAAI,WAAW,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;AACnD,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;AAElD,OAAO,CAAC,YAAY,EAAE,CAAC;AAEvB,IAAI,CAAC;IACH,OAAO,CAAC,KAAK,EAAE,CAAC;AAClB,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;QACpC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import * as fs from 'fs-extra';
|
|
3
|
-
import inquirer from 'inquirer';
|
|
4
|
-
import { join } from 'path';
|
|
5
|
-
import camelcase from 'lodash.camelcase';
|
|
6
|
-
import { CURRENT_EXECUTION_DIRECTORY } from '../constants/current-execution-directory';
|
|
7
|
-
import { getObjectDecoratedClass } from '../utils/get-object-decorated-class';
|
|
8
|
-
import { getFunctionBaseFile } from '../utils/get-function-base-file';
|
|
9
|
-
import { convertToLabel } from '../utils/convert-to-label';
|
|
10
|
-
export var SyncableEntity;
|
|
11
|
-
(function (SyncableEntity) {
|
|
12
|
-
SyncableEntity["AGENT"] = "agent";
|
|
13
|
-
SyncableEntity["OBJECT"] = "object";
|
|
14
|
-
SyncableEntity["FUNCTION"] = "function";
|
|
15
|
-
})(SyncableEntity || (SyncableEntity = {}));
|
|
16
|
-
export const isSyncableEntity = (value) => {
|
|
17
|
-
return Object.values(SyncableEntity).includes(value);
|
|
18
|
-
};
|
|
19
|
-
export class AppAddCommand {
|
|
20
|
-
async execute(entityType, path) {
|
|
21
|
-
try {
|
|
22
|
-
const appPath = join(CURRENT_EXECUTION_DIRECTORY, path !== null && path !== void 0 ? path : '');
|
|
23
|
-
await fs.ensureDir(appPath);
|
|
24
|
-
const entity = entityType !== null && entityType !== void 0 ? entityType : (await this.getEntity());
|
|
25
|
-
if (entity === SyncableEntity.OBJECT) {
|
|
26
|
-
const entityData = await this.getObjectData();
|
|
27
|
-
const name = entityData.nameSingular;
|
|
28
|
-
const objectFileName = `${camelcase(name)}.ts`;
|
|
29
|
-
const decoratedObject = getObjectDecoratedClass({
|
|
30
|
-
data: entityData,
|
|
31
|
-
name,
|
|
32
|
-
});
|
|
33
|
-
await fs.writeFile(join(appPath, objectFileName), decoratedObject);
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
if (entity === SyncableEntity.FUNCTION) {
|
|
37
|
-
const entityName = await this.getEntityName(entity);
|
|
38
|
-
const objectFileName = `${camelcase(entityName)}.ts`;
|
|
39
|
-
const decoratedServerlessFunction = getFunctionBaseFile({
|
|
40
|
-
name: entityName,
|
|
41
|
-
});
|
|
42
|
-
await fs.writeFile(join(appPath, objectFileName), decoratedServerlessFunction);
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
catch (error) {
|
|
47
|
-
console.error(chalk.red(`Add new entity failed:`), error instanceof Error ? error.message : error);
|
|
48
|
-
process.exit(1);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
async getEntity() {
|
|
52
|
-
const { entity } = await inquirer.prompt([
|
|
53
|
-
{
|
|
54
|
-
type: 'select',
|
|
55
|
-
name: 'entity',
|
|
56
|
-
message: `What entity do you want to create?`,
|
|
57
|
-
default: '',
|
|
58
|
-
choices: [SyncableEntity.FUNCTION, SyncableEntity.OBJECT],
|
|
59
|
-
},
|
|
60
|
-
]);
|
|
61
|
-
return entity;
|
|
62
|
-
}
|
|
63
|
-
async getEntityName(entity) {
|
|
64
|
-
const { name } = await inquirer.prompt([
|
|
65
|
-
{
|
|
66
|
-
type: 'input',
|
|
67
|
-
name: 'name',
|
|
68
|
-
message: `Enter a name for your new ${entity}:`,
|
|
69
|
-
default: '',
|
|
70
|
-
validate: (input) => {
|
|
71
|
-
if (input.length === 0) {
|
|
72
|
-
return `${entity} name is required`;
|
|
73
|
-
}
|
|
74
|
-
if (!/^[a-z0-9-]+$/.test(input)) {
|
|
75
|
-
return 'Name must contain only lowercase letters, numbers, and hyphens';
|
|
76
|
-
}
|
|
77
|
-
return true;
|
|
78
|
-
},
|
|
79
|
-
},
|
|
80
|
-
]);
|
|
81
|
-
return name;
|
|
82
|
-
}
|
|
83
|
-
async getObjectData() {
|
|
84
|
-
return inquirer.prompt([
|
|
85
|
-
{
|
|
86
|
-
type: 'input',
|
|
87
|
-
name: 'nameSingular',
|
|
88
|
-
message: 'Enter a name singular for your object (eg: company):',
|
|
89
|
-
default: '',
|
|
90
|
-
validate: (input) => {
|
|
91
|
-
if (!input || input.trim().length === 0) {
|
|
92
|
-
return 'Please enter a non empty string';
|
|
93
|
-
}
|
|
94
|
-
return true;
|
|
95
|
-
},
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
type: 'input',
|
|
99
|
-
name: 'namePlural',
|
|
100
|
-
message: 'Enter a name plural for your object (eg: companies):',
|
|
101
|
-
default: '',
|
|
102
|
-
validate: (input, answers) => {
|
|
103
|
-
if (input.trim() === (answers === null || answers === void 0 ? void 0 : answers.nameSingular.trim())) {
|
|
104
|
-
return 'Name plural must be different from name singular';
|
|
105
|
-
}
|
|
106
|
-
if (!input || input.trim().length === 0) {
|
|
107
|
-
return 'Please enter a non empty string';
|
|
108
|
-
}
|
|
109
|
-
return true;
|
|
110
|
-
},
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
type: 'input',
|
|
114
|
-
name: 'labelSingular',
|
|
115
|
-
message: 'Enter a label singular for your object:',
|
|
116
|
-
default: (answers) => {
|
|
117
|
-
return convertToLabel(answers.nameSingular);
|
|
118
|
-
},
|
|
119
|
-
validate: (input) => {
|
|
120
|
-
if (!input || input.trim().length === 0) {
|
|
121
|
-
return 'Please enter a non empty string';
|
|
122
|
-
}
|
|
123
|
-
return true;
|
|
124
|
-
},
|
|
125
|
-
},
|
|
126
|
-
{
|
|
127
|
-
type: 'input',
|
|
128
|
-
name: 'labelPlural',
|
|
129
|
-
message: 'Enter a label plural for your object:',
|
|
130
|
-
default: (answers) => {
|
|
131
|
-
return convertToLabel(answers.namePlural);
|
|
132
|
-
},
|
|
133
|
-
validate: (input) => {
|
|
134
|
-
if (!input || input.trim().length === 0) {
|
|
135
|
-
return 'Please enter a non empty string';
|
|
136
|
-
}
|
|
137
|
-
return true;
|
|
138
|
-
},
|
|
139
|
-
},
|
|
140
|
-
]);
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
//# sourceMappingURL=app-add.command.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app-add.command.js","sourceRoot":"","sources":["../../../src/cli/commands/app-add.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import * as chokidar from 'chokidar';
|
|
3
|
-
import { CURRENT_EXECUTION_DIRECTORY } from '../constants/current-execution-directory';
|
|
4
|
-
import { AppSyncCommand } from './app-sync.command';
|
|
5
|
-
export class AppDevCommand {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.syncCommand = new AppSyncCommand();
|
|
8
|
-
}
|
|
9
|
-
async execute(options) {
|
|
10
|
-
var _a;
|
|
11
|
-
try {
|
|
12
|
-
const appPath = (_a = options.appPath) !== null && _a !== void 0 ? _a : CURRENT_EXECUTION_DIRECTORY;
|
|
13
|
-
const debounceMs = parseInt(options.debounce, 10);
|
|
14
|
-
this.logStartupInfo(appPath, debounceMs);
|
|
15
|
-
await this.syncCommand.execute(appPath);
|
|
16
|
-
const watcher = this.setupFileWatcher(appPath, debounceMs);
|
|
17
|
-
this.setupGracefulShutdown(watcher);
|
|
18
|
-
}
|
|
19
|
-
catch (error) {
|
|
20
|
-
console.error(chalk.red('Development mode failed:'), error instanceof Error ? error.message : error);
|
|
21
|
-
process.exit(1);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
logStartupInfo(appPath, debounceMs) {
|
|
25
|
-
console.log(chalk.blue('🚀 Starting Twenty Application Development Mode'));
|
|
26
|
-
console.log(chalk.gray(`📁 App Path: ${appPath}`));
|
|
27
|
-
console.log(chalk.gray(`⏱️ Debounce: ${debounceMs}ms`));
|
|
28
|
-
console.log('');
|
|
29
|
-
}
|
|
30
|
-
setupFileWatcher(appPath, debounceMs) {
|
|
31
|
-
const watcher = chokidar.watch(appPath, {
|
|
32
|
-
ignored: /node_modules|\.git/,
|
|
33
|
-
persistent: true,
|
|
34
|
-
});
|
|
35
|
-
let timeout = null;
|
|
36
|
-
const debouncedSync = () => {
|
|
37
|
-
if (timeout) {
|
|
38
|
-
clearTimeout(timeout);
|
|
39
|
-
}
|
|
40
|
-
timeout = setTimeout(async () => {
|
|
41
|
-
console.log(chalk.blue('🔄 Changes detected, syncing...'));
|
|
42
|
-
await this.syncCommand.execute(appPath);
|
|
43
|
-
console.log(chalk.gray('👀 Watching for changes... (Press Ctrl+C to stop)'));
|
|
44
|
-
}, debounceMs);
|
|
45
|
-
};
|
|
46
|
-
watcher.on('change', () => {
|
|
47
|
-
debouncedSync();
|
|
48
|
-
});
|
|
49
|
-
console.log(chalk.gray('👀 Watching for changes... (Press Ctrl+C to stop)'));
|
|
50
|
-
return watcher;
|
|
51
|
-
}
|
|
52
|
-
setupGracefulShutdown(watcher) {
|
|
53
|
-
process.on('SIGINT', () => {
|
|
54
|
-
console.log(chalk.yellow('\n🛑 Stopping development mode...'));
|
|
55
|
-
watcher.close();
|
|
56
|
-
process.exit(0);
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
//# sourceMappingURL=app-dev.command.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app-dev.command.js","sourceRoot":"","sources":["../../../src/cli/commands/app-dev.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import { GenerateService } from '../services/generate.service';
|
|
3
|
-
import { CURRENT_EXECUTION_DIRECTORY } from '../constants/current-execution-directory';
|
|
4
|
-
export class AppGenerateCommand {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.generateService = new GenerateService();
|
|
7
|
-
}
|
|
8
|
-
async execute(appPath = CURRENT_EXECUTION_DIRECTORY) {
|
|
9
|
-
try {
|
|
10
|
-
await this.generateService.generateClient(appPath);
|
|
11
|
-
}
|
|
12
|
-
catch (error) {
|
|
13
|
-
console.error(chalk.red('Generate Twenty client failed:'), error instanceof Error ? error.message : error);
|
|
14
|
-
throw error;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=app-generate.command.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app-generate.command.js","sourceRoot":"","sources":["../../../src/cli/commands/app-generate.command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AAEvF,MAAM,OAAO,kBAAkB;IAA/B;QACU,oBAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAalD,CAAC;IAXC,KAAK,CAAC,OAAO,CAAC,UAAkB,2BAA2B;QACzD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,EAC3C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import { CURRENT_EXECUTION_DIRECTORY } from '../constants/current-execution-directory';
|
|
3
|
-
import { ApiService } from '../services/api.service';
|
|
4
|
-
import { GenerateService } from '../services/generate.service';
|
|
5
|
-
import { loadManifest } from '../utils/load-manifest';
|
|
6
|
-
export class AppSyncCommand {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.apiService = new ApiService();
|
|
9
|
-
this.generateService = new GenerateService();
|
|
10
|
-
}
|
|
11
|
-
async execute(appPath = CURRENT_EXECUTION_DIRECTORY) {
|
|
12
|
-
try {
|
|
13
|
-
console.log(chalk.blue('🚀 Syncing Twenty Application'));
|
|
14
|
-
console.log(chalk.gray(`📁 App Path: ${appPath}`));
|
|
15
|
-
console.log('');
|
|
16
|
-
return await this.synchronize({ appPath });
|
|
17
|
-
}
|
|
18
|
-
catch (error) {
|
|
19
|
-
console.error(chalk.red('Sync failed:'), error instanceof Error ? error.message : error);
|
|
20
|
-
throw error;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
async synchronize({ appPath }) {
|
|
24
|
-
const { manifest, packageJson, yarnLock, shouldGenerate } = await loadManifest(appPath);
|
|
25
|
-
let serverlessSyncResult = await this.apiService.syncApplication({
|
|
26
|
-
manifest,
|
|
27
|
-
packageJson,
|
|
28
|
-
yarnLock,
|
|
29
|
-
});
|
|
30
|
-
if (shouldGenerate) {
|
|
31
|
-
await this.generateService.generateClient(appPath);
|
|
32
|
-
const { manifest: manifestWithClient } = await loadManifest(appPath);
|
|
33
|
-
serverlessSyncResult = await this.apiService.syncApplication({
|
|
34
|
-
manifest: manifestWithClient,
|
|
35
|
-
packageJson,
|
|
36
|
-
yarnLock,
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
if (serverlessSyncResult.success === false) {
|
|
40
|
-
console.error(chalk.red('❌ Serverless functions Sync failed:'), serverlessSyncResult.error);
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
console.log(chalk.green('✅ Serverless functions synced successfully'));
|
|
44
|
-
}
|
|
45
|
-
return serverlessSyncResult;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=app-sync.command.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app-sync.command.js","sourceRoot":"","sources":["../../../src/cli/commands/app-sync.command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,OAAO,cAAc;IAA3B;QACU,eAAU,GAAG,IAAI,UAAU,EAAE,CAAC;QAC9B,oBAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAqDlD,CAAC;IAnDC,KAAK,CAAC,OAAO,CACX,UAAkB,2BAA2B;QAE7C,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEhB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,EACzB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,EAAuB;QACxD,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,GACvD,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;QAE9B,IAAI,oBAAoB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;YAC/D,QAAQ;YACR,WAAW;YACX,QAAQ;SACT,CAAC,CAAC;QAEH,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAEnD,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;YAErE,oBAAoB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;gBAC3D,QAAQ,EAAE,kBAAkB;gBAC5B,WAAW;gBACX,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;QAED,IAAI,oBAAoB,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAC3C,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,qCAAqC,CAAC,EAChD,oBAAoB,CAAC,KAAK,CAC3B,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,oBAAoB,CAAC;IAC9B,CAAC;CACF"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import inquirer from 'inquirer';
|
|
3
|
-
import { CURRENT_EXECUTION_DIRECTORY } from '../constants/current-execution-directory';
|
|
4
|
-
import { ApiService } from '../services/api.service';
|
|
5
|
-
import { loadManifest } from '../utils/load-manifest';
|
|
6
|
-
export class AppUninstallCommand {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.apiService = new ApiService();
|
|
9
|
-
}
|
|
10
|
-
async execute({ appPath = CURRENT_EXECUTION_DIRECTORY, askForConfirmation, }) {
|
|
11
|
-
try {
|
|
12
|
-
console.log(chalk.blue('🚀 Uninstall Twenty Application'));
|
|
13
|
-
console.log(chalk.gray(`📁 App Path: ${appPath}`));
|
|
14
|
-
console.log('');
|
|
15
|
-
if (askForConfirmation && !(await this.confirmationPrompt())) {
|
|
16
|
-
console.error(chalk.red('⛔️ Aborting uninstall'));
|
|
17
|
-
process.exit(1);
|
|
18
|
-
}
|
|
19
|
-
const { manifest } = await loadManifest(appPath);
|
|
20
|
-
const result = await this.apiService.uninstallApplication(manifest.application.universalIdentifier);
|
|
21
|
-
if (result.success === false) {
|
|
22
|
-
console.error(chalk.red('❌ Uninstall failed:'), result.error);
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
console.log(chalk.green('✅ Application uninstalled successfully'));
|
|
26
|
-
}
|
|
27
|
-
return result;
|
|
28
|
-
}
|
|
29
|
-
catch (error) {
|
|
30
|
-
console.error(chalk.red('Uninstall failed:'), error instanceof Error ? error.message : error);
|
|
31
|
-
throw error;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
async confirmationPrompt() {
|
|
35
|
-
const { confirmation } = await inquirer.prompt([
|
|
36
|
-
{
|
|
37
|
-
type: 'confirm',
|
|
38
|
-
name: 'confirmation',
|
|
39
|
-
message: 'Are you sure you want to uninstall this application?',
|
|
40
|
-
default: false,
|
|
41
|
-
},
|
|
42
|
-
]);
|
|
43
|
-
return confirmation;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=app-uninstall.command.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app-uninstall.command.js","sourceRoot":"","sources":["../../../src/cli/commands/app-uninstall.command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,OAAO,mBAAmB;IAAhC;QACU,eAAU,GAAG,IAAI,UAAU,EAAE,CAAC;IAqDxC,CAAC;IAnDC,KAAK,CAAC,OAAO,CAAC,EACZ,OAAO,GAAG,2BAA2B,EACrC,kBAAkB,GAInB;QACC,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEhB,IAAI,kBAAkB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC;gBAC7D,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC;gBAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,oBAAoB,CACvD,QAAQ,CAAC,WAAW,CAAC,mBAAmB,CACzC,CAAC;YAEF,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC,CAAC;YACrE,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAC9B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC7C;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE,sDAAsD;gBAC/D,OAAO,EAAE,KAAK;aACf;SACF,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC;IACtB,CAAC;CACF"}
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import { Command } from 'commander';
|
|
3
|
-
import { AppAddCommand, isSyncableEntity, SyncableEntity, } from './app-add.command';
|
|
4
|
-
import { AppUninstallCommand } from './app-uninstall.command';
|
|
5
|
-
import { AppDevCommand } from './app-dev.command';
|
|
6
|
-
import { AppSyncCommand } from './app-sync.command';
|
|
7
|
-
import { formatPath } from '../utils/format-path';
|
|
8
|
-
import { AppGenerateCommand } from './app-generate.command';
|
|
9
|
-
export class AppCommand {
|
|
10
|
-
constructor() {
|
|
11
|
-
this.devCommand = new AppDevCommand();
|
|
12
|
-
this.syncCommand = new AppSyncCommand();
|
|
13
|
-
this.uninstallCommand = new AppUninstallCommand();
|
|
14
|
-
this.addCommand = new AppAddCommand();
|
|
15
|
-
this.generateCommand = new AppGenerateCommand();
|
|
16
|
-
}
|
|
17
|
-
getCommand() {
|
|
18
|
-
const appCommand = new Command('app');
|
|
19
|
-
appCommand.description('Application development commands');
|
|
20
|
-
appCommand
|
|
21
|
-
.command('dev [appPath]')
|
|
22
|
-
.description('Watch and sync local application changes')
|
|
23
|
-
.option('-d, --debounce <ms>', 'Debounce delay in milliseconds', '1000')
|
|
24
|
-
.action(async (appPath, options) => {
|
|
25
|
-
await this.devCommand.execute({
|
|
26
|
-
...options,
|
|
27
|
-
appPath: formatPath(appPath),
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
appCommand
|
|
31
|
-
.command('sync [appPath]')
|
|
32
|
-
.description('Sync application to Twenty')
|
|
33
|
-
.action(async (appPath) => {
|
|
34
|
-
try {
|
|
35
|
-
const result = await this.syncCommand.execute(formatPath(appPath));
|
|
36
|
-
if (!result.success) {
|
|
37
|
-
process.exit(1);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
catch (_a) {
|
|
41
|
-
process.exit(1);
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
appCommand
|
|
45
|
-
.command('uninstall [appPath]')
|
|
46
|
-
.description('Uninstall application from Twenty')
|
|
47
|
-
.action(async (appPath) => {
|
|
48
|
-
try {
|
|
49
|
-
const result = await this.uninstallCommand.execute({
|
|
50
|
-
appPath: formatPath(appPath),
|
|
51
|
-
askForConfirmation: true,
|
|
52
|
-
});
|
|
53
|
-
if (!result.success) {
|
|
54
|
-
process.exit(1);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
catch (_a) {
|
|
58
|
-
process.exit(1);
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
// Keeping to avoid breaking changes
|
|
62
|
-
appCommand
|
|
63
|
-
.command('delete [appPath]', { hidden: true })
|
|
64
|
-
.description('Delete application from Twenty')
|
|
65
|
-
.action(async (appPath) => {
|
|
66
|
-
try {
|
|
67
|
-
const result = await this.uninstallCommand.execute({
|
|
68
|
-
appPath: formatPath(appPath),
|
|
69
|
-
askForConfirmation: true,
|
|
70
|
-
});
|
|
71
|
-
if (!result.success) {
|
|
72
|
-
process.exit(1);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
catch (_a) {
|
|
76
|
-
process.exit(1);
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
appCommand
|
|
80
|
-
.command('add [entityType]')
|
|
81
|
-
.option('--path <path>', 'Path in which the entity should be created.')
|
|
82
|
-
.description(`Add a new entity to your application (${Object.values(SyncableEntity).join('|')})`)
|
|
83
|
-
.action(async (entityType, options) => {
|
|
84
|
-
if (entityType && !isSyncableEntity(entityType)) {
|
|
85
|
-
console.error(chalk.red(`Invalid entity type "${entityType}". Must be one of: ${Object.values(SyncableEntity).join('|')}`));
|
|
86
|
-
process.exit(1);
|
|
87
|
-
}
|
|
88
|
-
await this.addCommand.execute(entityType, options === null || options === void 0 ? void 0 : options.path);
|
|
89
|
-
});
|
|
90
|
-
appCommand
|
|
91
|
-
.command('generate [outputPath]')
|
|
92
|
-
.description('Generate Twenty client')
|
|
93
|
-
.action(async (appPath) => {
|
|
94
|
-
await this.generateCommand.execute(formatPath(appPath));
|
|
95
|
-
});
|
|
96
|
-
return appCommand;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
//# sourceMappingURL=app.command.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app.command.js","sourceRoot":"","sources":["../../../src/cli/commands/app.command.ts"],"names":[],"mappings":"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"}
|