geeto 0.1.0-beta.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/LICENSE +21 -0
- package/README.md +152 -0
- package/lib/api/copilot-adapter.d.ts +11 -0
- package/lib/api/copilot-adapter.d.ts.map +1 -0
- package/lib/api/copilot-adapter.js +41 -0
- package/lib/api/copilot-adapter.js.map +1 -0
- package/lib/api/copilot-sdk.d.ts +48 -0
- package/lib/api/copilot-sdk.d.ts.map +1 -0
- package/lib/api/copilot-sdk.js +451 -0
- package/lib/api/copilot-sdk.js.map +1 -0
- package/lib/api/copilot.d.ts +21 -0
- package/lib/api/copilot.d.ts.map +1 -0
- package/lib/api/copilot.js +87 -0
- package/lib/api/copilot.js.map +1 -0
- package/lib/api/gemini-sdk.d.ts +24 -0
- package/lib/api/gemini-sdk.d.ts.map +1 -0
- package/lib/api/gemini-sdk.js +245 -0
- package/lib/api/gemini-sdk.js.map +1 -0
- package/lib/api/gemini.d.ts +21 -0
- package/lib/api/gemini.d.ts.map +1 -0
- package/lib/api/gemini.js +87 -0
- package/lib/api/gemini.js.map +1 -0
- package/lib/api/openrouter-sdk.d.ts +58 -0
- package/lib/api/openrouter-sdk.d.ts.map +1 -0
- package/lib/api/openrouter-sdk.js +341 -0
- package/lib/api/openrouter-sdk.js.map +1 -0
- package/lib/api/openrouter.d.ts +17 -0
- package/lib/api/openrouter.d.ts.map +1 -0
- package/lib/api/openrouter.js +111 -0
- package/lib/api/openrouter.js.map +1 -0
- package/lib/api/trello.d.ts +17 -0
- package/lib/api/trello.d.ts.map +1 -0
- package/lib/api/trello.js +72 -0
- package/lib/api/trello.js.map +1 -0
- package/lib/cli/input.d.ts +39 -0
- package/lib/cli/input.d.ts.map +1 -0
- package/lib/cli/input.js +119 -0
- package/lib/cli/input.js.map +1 -0
- package/lib/cli/menu.d.ts +9 -0
- package/lib/cli/menu.d.ts.map +1 -0
- package/lib/cli/menu.js +201 -0
- package/lib/cli/menu.js.map +1 -0
- package/lib/core/constants.d.ts +22 -0
- package/lib/core/constants.d.ts.map +1 -0
- package/lib/core/constants.js +24 -0
- package/lib/core/constants.js.map +1 -0
- package/lib/core/copilot-setup.d.ts +13 -0
- package/lib/core/copilot-setup.d.ts.map +1 -0
- package/lib/core/copilot-setup.js +447 -0
- package/lib/core/copilot-setup.js.map +1 -0
- package/lib/core/gemini-setup.d.ts +8 -0
- package/lib/core/gemini-setup.d.ts.map +1 -0
- package/lib/core/gemini-setup.js +84 -0
- package/lib/core/gemini-setup.js.map +1 -0
- package/lib/core/menu-constants.d.ts +24 -0
- package/lib/core/menu-constants.d.ts.map +1 -0
- package/lib/core/menu-constants.js +22 -0
- package/lib/core/menu-constants.js.map +1 -0
- package/lib/core/openrouter-setup.d.ts +8 -0
- package/lib/core/openrouter-setup.d.ts.map +1 -0
- package/lib/core/openrouter-setup.js +73 -0
- package/lib/core/openrouter-setup.js.map +1 -0
- package/lib/core/setup.d.ts +21 -0
- package/lib/core/setup.d.ts.map +1 -0
- package/lib/core/setup.js +88 -0
- package/lib/core/setup.js.map +1 -0
- package/lib/core/trello-setup.d.ts +8 -0
- package/lib/core/trello-setup.d.ts.map +1 -0
- package/lib/core/trello-setup.js +107 -0
- package/lib/core/trello-setup.js.map +1 -0
- package/lib/index.d.ts +3 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +250 -0
- package/lib/index.js.map +1 -0
- package/lib/types/index.d.ts +78 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/index.js +2 -0
- package/lib/types/index.js.map +1 -0
- package/lib/utils/branch-naming.d.ts +11 -0
- package/lib/utils/branch-naming.d.ts.map +1 -0
- package/lib/utils/branch-naming.js +396 -0
- package/lib/utils/branch-naming.js.map +1 -0
- package/lib/utils/colors.d.ts +14 -0
- package/lib/utils/colors.d.ts.map +1 -0
- package/lib/utils/colors.js +14 -0
- package/lib/utils/colors.js.map +1 -0
- package/lib/utils/commit-helpers.d.ts +53 -0
- package/lib/utils/commit-helpers.d.ts.map +1 -0
- package/lib/utils/commit-helpers.js +177 -0
- package/lib/utils/commit-helpers.js.map +1 -0
- package/lib/utils/config.d.ts +87 -0
- package/lib/utils/config.d.ts.map +1 -0
- package/lib/utils/config.js +326 -0
- package/lib/utils/config.js.map +1 -0
- package/lib/utils/display.d.ts +27 -0
- package/lib/utils/display.d.ts.map +1 -0
- package/lib/utils/display.js +116 -0
- package/lib/utils/display.js.map +1 -0
- package/lib/utils/error-helpers.d.ts +27 -0
- package/lib/utils/error-helpers.d.ts.map +1 -0
- package/lib/utils/error-helpers.js +102 -0
- package/lib/utils/error-helpers.js.map +1 -0
- package/lib/utils/exec.d.ts +18 -0
- package/lib/utils/exec.d.ts.map +1 -0
- package/lib/utils/exec.js +96 -0
- package/lib/utils/exec.js.map +1 -0
- package/lib/utils/git-ai-errors.d.ts +10 -0
- package/lib/utils/git-ai-errors.d.ts.map +1 -0
- package/lib/utils/git-ai-errors.js +71 -0
- package/lib/utils/git-ai-errors.js.map +1 -0
- package/lib/utils/git-ai.d.ts +26 -0
- package/lib/utils/git-ai.d.ts.map +1 -0
- package/lib/utils/git-ai.js +603 -0
- package/lib/utils/git-ai.js.map +1 -0
- package/lib/utils/git-commands.d.ts +21 -0
- package/lib/utils/git-commands.d.ts.map +1 -0
- package/lib/utils/git-commands.js +58 -0
- package/lib/utils/git-commands.js.map +1 -0
- package/lib/utils/git-errors.d.ts +76 -0
- package/lib/utils/git-errors.d.ts.map +1 -0
- package/lib/utils/git-errors.js +565 -0
- package/lib/utils/git-errors.js.map +1 -0
- package/lib/utils/git.d.ts +61 -0
- package/lib/utils/git.d.ts.map +1 -0
- package/lib/utils/git.js +245 -0
- package/lib/utils/git.js.map +1 -0
- package/lib/utils/logging.d.ts +25 -0
- package/lib/utils/logging.d.ts.map +1 -0
- package/lib/utils/logging.js +71 -0
- package/lib/utils/logging.js.map +1 -0
- package/lib/utils/menu-builders.d.ts +47 -0
- package/lib/utils/menu-builders.d.ts.map +1 -0
- package/lib/utils/menu-builders.js +34 -0
- package/lib/utils/menu-builders.js.map +1 -0
- package/lib/utils/platform.d.ts +13 -0
- package/lib/utils/platform.d.ts.map +1 -0
- package/lib/utils/platform.js +32 -0
- package/lib/utils/platform.js.map +1 -0
- package/lib/utils/spinner-wrapper.d.ts +16 -0
- package/lib/utils/spinner-wrapper.d.ts.map +1 -0
- package/lib/utils/spinner-wrapper.js +56 -0
- package/lib/utils/spinner-wrapper.js.map +1 -0
- package/lib/utils/state.d.ts +22 -0
- package/lib/utils/state.d.ts.map +1 -0
- package/lib/utils/state.js +75 -0
- package/lib/utils/state.js.map +1 -0
- package/lib/utils/time.d.ts +4 -0
- package/lib/utils/time.d.ts.map +1 -0
- package/lib/utils/time.js +29 -0
- package/lib/utils/time.js.map +1 -0
- package/lib/utils/type-guards.d.ts +10 -0
- package/lib/utils/type-guards.d.ts.map +1 -0
- package/lib/utils/type-guards.js +29 -0
- package/lib/utils/type-guards.js.map +1 -0
- package/lib/workflows/ai-provider.d.ts +13 -0
- package/lib/workflows/ai-provider.d.ts.map +1 -0
- package/lib/workflows/ai-provider.js +55 -0
- package/lib/workflows/ai-provider.js.map +1 -0
- package/lib/workflows/author.d.ts +4 -0
- package/lib/workflows/author.d.ts.map +1 -0
- package/lib/workflows/author.js +80 -0
- package/lib/workflows/author.js.map +1 -0
- package/lib/workflows/branch-helpers.d.ts +9 -0
- package/lib/workflows/branch-helpers.d.ts.map +1 -0
- package/lib/workflows/branch-helpers.js +406 -0
- package/lib/workflows/branch-helpers.js.map +1 -0
- package/lib/workflows/branch-utils.d.ts +9 -0
- package/lib/workflows/branch-utils.d.ts.map +1 -0
- package/lib/workflows/branch-utils.js +61 -0
- package/lib/workflows/branch-utils.js.map +1 -0
- package/lib/workflows/branch.d.ts +12 -0
- package/lib/workflows/branch.d.ts.map +1 -0
- package/lib/workflows/branch.js +555 -0
- package/lib/workflows/branch.js.map +1 -0
- package/lib/workflows/cleanup.d.ts +10 -0
- package/lib/workflows/cleanup.d.ts.map +1 -0
- package/lib/workflows/cleanup.js +287 -0
- package/lib/workflows/cleanup.js.map +1 -0
- package/lib/workflows/commit.d.ts +10 -0
- package/lib/workflows/commit.d.ts.map +1 -0
- package/lib/workflows/commit.js +771 -0
- package/lib/workflows/commit.js.map +1 -0
- package/lib/workflows/main-steps.d.ts +12 -0
- package/lib/workflows/main-steps.d.ts.map +1 -0
- package/lib/workflows/main-steps.js +407 -0
- package/lib/workflows/main-steps.js.map +1 -0
- package/lib/workflows/main.d.ts +8 -0
- package/lib/workflows/main.d.ts.map +1 -0
- package/lib/workflows/main.js +720 -0
- package/lib/workflows/main.js.map +1 -0
- package/lib/workflows/security-gate.d.ts +8 -0
- package/lib/workflows/security-gate.d.ts.map +1 -0
- package/lib/workflows/security-gate.js +447 -0
- package/lib/workflows/security-gate.js.map +1 -0
- package/lib/workflows/settings.d.ts +15 -0
- package/lib/workflows/settings.d.ts.map +1 -0
- package/lib/workflows/settings.js +438 -0
- package/lib/workflows/settings.js.map +1 -0
- package/lib/workflows/trello-menu.d.ts +16 -0
- package/lib/workflows/trello-menu.d.ts.map +1 -0
- package/lib/workflows/trello-menu.js +361 -0
- package/lib/workflows/trello-menu.js.map +1 -0
- package/package.json +112 -0
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* State management for checkpoint recovery
|
|
3
|
+
*/
|
|
4
|
+
import fs from 'node:fs';
|
|
5
|
+
import { ensureGeetoIgnored } from './config.js';
|
|
6
|
+
import { STEP } from '../core/constants.js';
|
|
7
|
+
const STATE_FILE = '.geeto/geeto-state.json';
|
|
8
|
+
/**
|
|
9
|
+
* Save state to checkpoint file
|
|
10
|
+
*/
|
|
11
|
+
export const saveState = (state) => {
|
|
12
|
+
// Ensure .geeto is in .gitignore
|
|
13
|
+
ensureGeetoIgnored();
|
|
14
|
+
// Ensure .geeto directory exists
|
|
15
|
+
const stateDir = STATE_FILE.slice(0, STATE_FILE.lastIndexOf('/'));
|
|
16
|
+
if (!fs.existsSync(stateDir)) {
|
|
17
|
+
fs.mkdirSync(stateDir, { recursive: true });
|
|
18
|
+
}
|
|
19
|
+
fs.writeFileSync(STATE_FILE, JSON.stringify(state, null, 2));
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Load state from checkpoint file
|
|
23
|
+
*/
|
|
24
|
+
export const loadState = () => {
|
|
25
|
+
try {
|
|
26
|
+
if (fs.existsSync(STATE_FILE)) {
|
|
27
|
+
return JSON.parse(fs.readFileSync(STATE_FILE, 'utf8'));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
// Ignore errors
|
|
32
|
+
}
|
|
33
|
+
return null;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Reset checkpoint but preserve configured AI provider and models.
|
|
37
|
+
* Useful for "Start fresh" while keeping AI settings.
|
|
38
|
+
*/
|
|
39
|
+
export const preserveProviderState = (state) => {
|
|
40
|
+
try {
|
|
41
|
+
const minimal = {
|
|
42
|
+
step: STEP.INIT,
|
|
43
|
+
workingBranch: '',
|
|
44
|
+
targetBranch: '',
|
|
45
|
+
currentBranch: state.currentBranch ?? '',
|
|
46
|
+
timestamp: new Date().toISOString(),
|
|
47
|
+
aiProvider: state.aiProvider,
|
|
48
|
+
copilotModel: state.copilotModel,
|
|
49
|
+
openrouterModel: state.openrouterModel,
|
|
50
|
+
geminiModel: state.geminiModel,
|
|
51
|
+
};
|
|
52
|
+
// Reuse save logic to ensure .geeto exists and is ignored
|
|
53
|
+
saveState(minimal);
|
|
54
|
+
}
|
|
55
|
+
catch {
|
|
56
|
+
// Ignore errors
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Get human-readable step name
|
|
61
|
+
*/
|
|
62
|
+
export const getStepName = (step) => {
|
|
63
|
+
const stepNames = {
|
|
64
|
+
0: 'Initial',
|
|
65
|
+
1: 'Staging completed',
|
|
66
|
+
2: 'Branch created',
|
|
67
|
+
3: 'Commit completed',
|
|
68
|
+
4: 'Push completed',
|
|
69
|
+
5: 'Merge completed',
|
|
70
|
+
6: 'Cleanup',
|
|
71
|
+
7: 'Done',
|
|
72
|
+
};
|
|
73
|
+
return stepNames[step] ?? 'Unknown';
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/utils/state.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAA;AAGxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAE3C,MAAM,UAAU,GAAG,yBAAyB,CAAA;AAE5C;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAiB,EAAQ,EAAE;IACnD,iCAAiC;IACjC,kBAAkB,EAAE,CAAA;IAEpB,iCAAiC;IACjC,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;IACjE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC7C,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAC9D,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,GAAsB,EAAE;IAC/C,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAe,CAAA;QACtE,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,gBAAgB;IAClB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAiB,EAAQ,EAAE;IAC/D,IAAI,CAAC;QACH,MAAM,OAAO,GAAe;YAC1B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,aAAa,EAAE,EAAE;YACjB,YAAY,EAAE,EAAE;YAChB,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,EAAE;YACxC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAA;QAED,0DAA0D;QAC1D,SAAS,CAAC,OAAO,CAAC,CAAA;IACpB,CAAC;IAAC,MAAM,CAAC;QACP,gBAAgB;IAClB,CAAC;AACH,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAY,EAAU,EAAE;IAClD,MAAM,SAAS,GAA2B;QACxC,CAAC,EAAE,SAAS;QACZ,CAAC,EAAE,mBAAmB;QACtB,CAAC,EAAE,gBAAgB;QACnB,CAAC,EAAE,kBAAkB;QACrB,CAAC,EAAE,gBAAgB;QACnB,CAAC,EAAE,iBAAiB;QACpB,CAAC,EAAE,SAAS;QACZ,CAAC,EAAE,MAAM;KACV,CAAA;IACD,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,SAAS,CAAA;AACrC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../src/utils/time.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,eAAO,MAAM,qBAAqB,GAAI,MAAM,MAAM,KAAG,MA6BpD,CAAA;AAED,eAAe,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/** Format an ISO timestamp to a locale-aware string (uses system locale). */
|
|
2
|
+
export const formatTimestampLocale = (iso) => {
|
|
3
|
+
if (!iso) {
|
|
4
|
+
return 'unknown';
|
|
5
|
+
}
|
|
6
|
+
const detectLocale = () => {
|
|
7
|
+
const env = process.env.LC_ALL ?? process.env.LC_MESSAGES ?? process.env.LANG ?? process.env.LANGUAGE;
|
|
8
|
+
if (!env) {
|
|
9
|
+
return undefined;
|
|
10
|
+
}
|
|
11
|
+
const localePart = env.split('.')[0] ?? '';
|
|
12
|
+
return localePart ? localePart.replace('_', '-') : undefined;
|
|
13
|
+
};
|
|
14
|
+
const locale = detectLocale();
|
|
15
|
+
try {
|
|
16
|
+
if (locale && Intl?.DateTimeFormat) {
|
|
17
|
+
const supported = Intl.DateTimeFormat.supportedLocalesOf([locale]);
|
|
18
|
+
if (supported?.length) {
|
|
19
|
+
return new Date(iso).toLocaleString(supported[0]);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
// ignore and fall back to runtime default
|
|
25
|
+
}
|
|
26
|
+
return new Date(iso).toLocaleString();
|
|
27
|
+
};
|
|
28
|
+
export default formatTimestampLocale;
|
|
29
|
+
//# sourceMappingURL=time.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time.js","sourceRoot":"","sources":["../../src/utils/time.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAY,EAAU,EAAE;IAC5D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,YAAY,GAAG,GAAuB,EAAE;QAC5C,MAAM,GAAG,GACP,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAA;QAC3F,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC1C,OAAO,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAC9D,CAAC,CAAA;IAED,MAAM,MAAM,GAAG,YAAY,EAAE,CAAA;IAE7B,IAAI,CAAC;QACH,IAAI,MAAM,IAAI,IAAI,EAAE,cAAc,EAAE,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;YAClE,IAAI,SAAS,EAAE,MAAM,EAAE,CAAC;gBACtB,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;YACnD,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0CAA0C;IAC5C,CAAC;IAED,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,CAAA;AACvC,CAAC,CAAA;AAED,eAAe,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type guard utilities
|
|
3
|
+
*/
|
|
4
|
+
export declare function isString(value: unknown): value is string;
|
|
5
|
+
export declare function isNumber(value: unknown): value is number;
|
|
6
|
+
export declare function isError(value: unknown): value is Error;
|
|
7
|
+
export declare function getErrorMessage(error: unknown): string;
|
|
8
|
+
export declare function assertNonNull<T>(value: T | null | undefined, message?: string): T;
|
|
9
|
+
export declare function isDefined<T>(value: T | null | undefined): value is T;
|
|
10
|
+
//# sourceMappingURL=type-guards.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type-guards.d.ts","sourceRoot":"","sources":["../../src/utils/type-guards.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExD;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExD;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,KAAK,CAEtD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAItD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAKjF;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,IAAI,CAAC,CAEpE"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type guard utilities
|
|
3
|
+
*/
|
|
4
|
+
export function isString(value) {
|
|
5
|
+
return typeof value === 'string';
|
|
6
|
+
}
|
|
7
|
+
export function isNumber(value) {
|
|
8
|
+
return typeof value === 'number' && !Number.isNaN(value);
|
|
9
|
+
}
|
|
10
|
+
export function isError(value) {
|
|
11
|
+
return value instanceof Error;
|
|
12
|
+
}
|
|
13
|
+
export function getErrorMessage(error) {
|
|
14
|
+
if (isError(error))
|
|
15
|
+
return error.message;
|
|
16
|
+
if (isString(error))
|
|
17
|
+
return error;
|
|
18
|
+
return String(error);
|
|
19
|
+
}
|
|
20
|
+
export function assertNonNull(value, message) {
|
|
21
|
+
if (value == null) {
|
|
22
|
+
throw new Error(message ?? 'Unexpected null/undefined value');
|
|
23
|
+
}
|
|
24
|
+
return value;
|
|
25
|
+
}
|
|
26
|
+
export function isDefined(value) {
|
|
27
|
+
return value != null;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=type-guards.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type-guards.js","sourceRoot":"","sources":["../../src/utils/type-guards.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAA;AAClC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;AAC1D,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAc;IACpC,OAAO,KAAK,YAAY,KAAK,CAAA;AAC/B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,OAAO,CAAA;IACxC,IAAI,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACjC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;AACtB,CAAC;AAED,MAAM,UAAU,aAAa,CAAI,KAA2B,EAAE,OAAgB;IAC5E,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,iCAAiC,CAAC,CAAA;IAC/D,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,UAAU,SAAS,CAAI,KAA2B;IACtD,OAAO,KAAK,IAAI,IAAI,CAAA;AACtB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AI Provider selection workflow - handles AI provider and model selection
|
|
3
|
+
*/
|
|
4
|
+
import type { CopilotModel } from '../api/copilot.js';
|
|
5
|
+
import type { GeminiModel } from '../api/gemini.js';
|
|
6
|
+
import type { OpenRouterModel } from '../api/openrouter.js';
|
|
7
|
+
export declare const handleAIProviderSelection: () => Promise<{
|
|
8
|
+
aiProvider: "gemini" | "copilot" | "openrouter" | "manual";
|
|
9
|
+
copilotModel?: CopilotModel;
|
|
10
|
+
openrouterModel?: OpenRouterModel;
|
|
11
|
+
geminiModel?: GeminiModel;
|
|
12
|
+
}>;
|
|
13
|
+
//# sourceMappingURL=ai-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-provider.d.ts","sourceRoot":"","sources":["../../src/workflows/ai-provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAO3D,eAAO,MAAM,yBAAyB,QAAa,OAAO,CAAC;IACzD,UAAU,EAAE,QAAQ,GAAG,SAAS,GAAG,YAAY,GAAG,QAAQ,CAAA;IAC1D,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CA4DA,CAAA"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AI Provider selection workflow - handles AI provider and model selection
|
|
3
|
+
*/
|
|
4
|
+
// SelectOption type previously used for model lists; not needed after refactor
|
|
5
|
+
import { select } from '../cli/menu.js';
|
|
6
|
+
import { chooseModelForProvider } from '../utils/git-ai.js';
|
|
7
|
+
export const handleAIProviderSelection = async () => {
|
|
8
|
+
let aiProvider;
|
|
9
|
+
let copilotModel;
|
|
10
|
+
let openrouterModel;
|
|
11
|
+
let geminiModel;
|
|
12
|
+
// AI provider selection loop
|
|
13
|
+
while (true) {
|
|
14
|
+
aiProvider = (await select('Choose AI Provider for branch naming and commit messages:', [
|
|
15
|
+
{ label: 'Gemini', value: 'gemini' },
|
|
16
|
+
{ label: 'GitHub Copilot (Recommended)', value: 'copilot' },
|
|
17
|
+
{ label: 'OpenRouter', value: 'openrouter' },
|
|
18
|
+
{ label: 'Manual', value: 'manual' },
|
|
19
|
+
]));
|
|
20
|
+
// Setup the selected AI provider using centralized helper where possible
|
|
21
|
+
if (aiProvider === 'manual') {
|
|
22
|
+
// No model selection required; proceed
|
|
23
|
+
break;
|
|
24
|
+
}
|
|
25
|
+
const chosen = await chooseModelForProvider(aiProvider, undefined, 'Back to AI provider menu');
|
|
26
|
+
if (!chosen) {
|
|
27
|
+
// setup failed or was cancelled; re-run provider selection
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
if (chosen === 'back') {
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
// Assign chosen model to the appropriate variable
|
|
34
|
+
switch (aiProvider) {
|
|
35
|
+
case 'gemini': {
|
|
36
|
+
geminiModel = chosen;
|
|
37
|
+
break;
|
|
38
|
+
}
|
|
39
|
+
case 'copilot': {
|
|
40
|
+
copilotModel = chosen;
|
|
41
|
+
console.log('');
|
|
42
|
+
break;
|
|
43
|
+
}
|
|
44
|
+
case 'openrouter': {
|
|
45
|
+
openrouterModel = chosen;
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
// No default
|
|
49
|
+
}
|
|
50
|
+
// If we get here, user has made their choice
|
|
51
|
+
break;
|
|
52
|
+
}
|
|
53
|
+
return { aiProvider, copilotModel, openrouterModel, geminiModel };
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=ai-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-provider.js","sourceRoot":"","sources":["../../src/workflows/ai-provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,+EAA+E;AAE/E,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAE3D,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,IAK3C,EAAE;IACH,IAAI,UAA0D,CAAA;IAC9D,IAAI,YAAsC,CAAA;IAC1C,IAAI,eAA4C,CAAA;IAChD,IAAI,WAAoC,CAAA;IAExC,6BAA6B;IAC7B,OAAO,IAAI,EAAE,CAAC;QACZ,UAAU,GAAG,CAAC,MAAM,MAAM,CAAC,2DAA2D,EAAE;YACtF,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;YACpC,EAAE,KAAK,EAAE,8BAA8B,EAAE,KAAK,EAAE,SAAS,EAAE;YAC3D,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;YAC5C,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;SACrC,CAAC,CAAmD,CAAA;QAErD,yEAAyE;QACzE,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC5B,uCAAuC;YACvC,MAAK;QACP,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,sBAAsB,CACzC,UAAiD,EACjD,SAAS,EACT,0BAA0B,CAC3B,CAAA;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,2DAA2D;YAC3D,SAAQ;QACV,CAAC;QACD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,SAAQ;QACV,CAAC;QAED,kDAAkD;QAClD,QAAQ,UAAU,EAAE,CAAC;YACnB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,WAAW,GAAG,MAAqB,CAAA;gBAEnC,MAAK;YACP,CAAC;YACD,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,YAAY,GAAG,MAAsB,CAAA;gBACrC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBAEf,MAAK;YACP,CAAC;YACD,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,eAAe,GAAG,MAAyB,CAAA;gBAE3C,MAAK;YACP,CAAC;YACD,aAAa;QACf,CAAC;QAED,6CAA6C;QAC7C,MAAK;IACP,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,CAAA;AACnE,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"author.d.ts","sourceRoot":"","sources":["../../src/workflows/author.ts"],"names":[],"mappings":"AAKA,mEAAmE;AACnE,eAAO,MAAM,eAAe,QAAa,OAAO,CAAC,IAAI,CAyFpD,CAAA;AAED,eAAe,eAAe,CAAA"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
// no confirm prompt here; callers control return/exit behavior
|
|
2
|
+
import { select } from '../cli/menu.js';
|
|
3
|
+
import { colors } from '../utils/colors.js';
|
|
4
|
+
import { commandExists, exec } from '../utils/exec.js';
|
|
5
|
+
/** Simple author tools menu. Shows Geeto developer information. */
|
|
6
|
+
export const showAuthorTools = async () => {
|
|
7
|
+
// Geeto developer information
|
|
8
|
+
const geetoAuthor = {
|
|
9
|
+
name: 'Agung Maulana Malik',
|
|
10
|
+
email: 'amdev142@gmail.com',
|
|
11
|
+
url: 'https://github.com/rust142',
|
|
12
|
+
};
|
|
13
|
+
const githubProfile = 'https://github.com/rust142';
|
|
14
|
+
const saweriaUrl = 'https://saweria.co/rust142';
|
|
15
|
+
const linkedinUrl = 'https://www.linkedin.com/in/agungid/';
|
|
16
|
+
const whatsappNumber = '+6283842741577';
|
|
17
|
+
console.log(`${colors.cyan}┌─ About Author ──────────────────────────────────────────┐${colors.reset}`);
|
|
18
|
+
console.log(`${colors.cyan}│${colors.reset} Author: ${colors.cyan}${geetoAuthor.name}${colors.reset}`);
|
|
19
|
+
console.log(`${colors.cyan}│${colors.reset} Email: ${colors.cyan}${geetoAuthor.email}${colors.reset}`);
|
|
20
|
+
console.log(`${colors.cyan}│${colors.reset} WhatsApp: ${colors.cyan}${whatsappNumber}${colors.reset}`);
|
|
21
|
+
console.log(`${colors.cyan}└─────────────────────────────────────────────────────────┘${colors.reset}`);
|
|
22
|
+
const choice = await select('What would you like to do?', [
|
|
23
|
+
{ label: 'Open GitHub profile', value: 'open_github' },
|
|
24
|
+
{ label: 'Open Saweria (Support author)', value: 'open_saweria' },
|
|
25
|
+
{ label: 'Open LinkedIn (Connect with author)', value: 'open_linkedin' },
|
|
26
|
+
{ label: 'Print all URLs', value: 'print_all' },
|
|
27
|
+
{ label: 'Back to main menu', value: 'back' },
|
|
28
|
+
]);
|
|
29
|
+
let opener = null;
|
|
30
|
+
if (commandExists('open')) {
|
|
31
|
+
opener = 'open';
|
|
32
|
+
}
|
|
33
|
+
else if (commandExists('xdg-open')) {
|
|
34
|
+
opener = 'xdg-open';
|
|
35
|
+
}
|
|
36
|
+
const openUrl = (url) => {
|
|
37
|
+
if (opener) {
|
|
38
|
+
try {
|
|
39
|
+
exec(`${opener} ${url}`);
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
console.log('Could not open browser.');
|
|
43
|
+
}
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
console.log('No system opener available; copy the URL manually:');
|
|
47
|
+
console.log(url);
|
|
48
|
+
};
|
|
49
|
+
switch (choice) {
|
|
50
|
+
case 'open_github': {
|
|
51
|
+
openUrl(githubProfile);
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
case 'open_saweria': {
|
|
55
|
+
openUrl(saweriaUrl);
|
|
56
|
+
break;
|
|
57
|
+
}
|
|
58
|
+
case 'open_linkedin': {
|
|
59
|
+
openUrl(linkedinUrl);
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
case 'print_all': {
|
|
63
|
+
console.log('GitHub:', githubProfile);
|
|
64
|
+
console.log('Saweria:', saweriaUrl);
|
|
65
|
+
console.log('LinkedIn:', linkedinUrl);
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
case 'back': {
|
|
69
|
+
// Return to caller (main menu)
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
default: {
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// Return to caller (main menu)
|
|
77
|
+
return;
|
|
78
|
+
};
|
|
79
|
+
export default showAuthorTools;
|
|
80
|
+
//# sourceMappingURL=author.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"author.js","sourceRoot":"","sources":["../../src/workflows/author.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { BranchStrategyConfig, GeetoState } from '../types/index.js';
|
|
2
|
+
export interface TrelloCaseResult {
|
|
3
|
+
workingBranch?: string;
|
|
4
|
+
selectedNamingStrategy?: 'title-full' | 'title-ai' | 'ai' | 'manual';
|
|
5
|
+
branchFlowComplete: boolean;
|
|
6
|
+
branchMenuShown: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function handleTrelloCase(state: GeetoState, branchConfig: BranchStrategyConfig | null, separator: '-' | '_', defaultPrefix: string): Promise<TrelloCaseResult>;
|
|
9
|
+
//# sourceMappingURL=branch-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"branch-helpers.d.ts","sourceRoot":"","sources":["../../src/workflows/branch-helpers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AA8BzE,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,sBAAsB,CAAC,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,GAAG,QAAQ,CAAA;IACpE,kBAAkB,EAAE,OAAO,CAAA;IAC3B,eAAe,EAAE,OAAO,CAAA;CACzB;AAED,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,UAAU,EACjB,YAAY,EAAE,oBAAoB,GAAG,IAAI,EACzC,SAAS,EAAE,GAAG,GAAG,GAAG,EACpB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,gBAAgB,CAAC,CAid3B"}
|