@medalsocial/pilot 0.1.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 (149) hide show
  1. package/dist/bin/pilot.d.ts +3 -0
  2. package/dist/bin/pilot.d.ts.map +1 -0
  3. package/dist/bin/pilot.js +64 -0
  4. package/dist/bin/pilot.js.map +1 -0
  5. package/dist/colors.d.ts +12 -0
  6. package/dist/colors.d.ts.map +1 -0
  7. package/dist/colors.js +12 -0
  8. package/dist/colors.js.map +1 -0
  9. package/dist/commands/crew.d.ts +2 -0
  10. package/dist/commands/crew.d.ts.map +1 -0
  11. package/dist/commands/crew.js +7 -0
  12. package/dist/commands/crew.js.map +1 -0
  13. package/dist/commands/help.d.ts +2 -0
  14. package/dist/commands/help.d.ts.map +1 -0
  15. package/dist/commands/help.js +7 -0
  16. package/dist/commands/help.js.map +1 -0
  17. package/dist/commands/plugins.d.ts +2 -0
  18. package/dist/commands/plugins.d.ts.map +1 -0
  19. package/dist/commands/plugins.js +17 -0
  20. package/dist/commands/plugins.js.map +1 -0
  21. package/dist/commands/repl.d.ts +2 -0
  22. package/dist/commands/repl.d.ts.map +1 -0
  23. package/dist/commands/repl.js +7 -0
  24. package/dist/commands/repl.js.map +1 -0
  25. package/dist/commands/status.d.ts +2 -0
  26. package/dist/commands/status.d.ts.map +1 -0
  27. package/dist/commands/status.js +7 -0
  28. package/dist/commands/status.js.map +1 -0
  29. package/dist/commands/training.d.ts +2 -0
  30. package/dist/commands/training.d.ts.map +1 -0
  31. package/dist/commands/training.js +7 -0
  32. package/dist/commands/training.js.map +1 -0
  33. package/dist/commands/up.d.ts +2 -0
  34. package/dist/commands/up.d.ts.map +1 -0
  35. package/dist/commands/up.js +7 -0
  36. package/dist/commands/up.js.map +1 -0
  37. package/dist/commands/update.d.ts +2 -0
  38. package/dist/commands/update.d.ts.map +1 -0
  39. package/dist/commands/update.js +10 -0
  40. package/dist/commands/update.js.map +1 -0
  41. package/dist/components/Header.d.ts +7 -0
  42. package/dist/components/Header.d.ts.map +1 -0
  43. package/dist/components/Header.js +8 -0
  44. package/dist/components/Header.js.map +1 -0
  45. package/dist/components/Modal.d.ts +9 -0
  46. package/dist/components/Modal.d.ts.map +1 -0
  47. package/dist/components/Modal.js +7 -0
  48. package/dist/components/Modal.js.map +1 -0
  49. package/dist/components/ProgressBar.d.ts +8 -0
  50. package/dist/components/ProgressBar.d.ts.map +1 -0
  51. package/dist/components/ProgressBar.js +10 -0
  52. package/dist/components/ProgressBar.js.map +1 -0
  53. package/dist/components/SplitPanel.d.ts +9 -0
  54. package/dist/components/SplitPanel.d.ts.map +1 -0
  55. package/dist/components/SplitPanel.js +7 -0
  56. package/dist/components/SplitPanel.js.map +1 -0
  57. package/dist/components/StatusBar.d.ts +9 -0
  58. package/dist/components/StatusBar.d.ts.map +1 -0
  59. package/dist/components/StatusBar.js +7 -0
  60. package/dist/components/StatusBar.js.map +1 -0
  61. package/dist/components/Step.d.ts +9 -0
  62. package/dist/components/Step.d.ts.map +1 -0
  63. package/dist/components/Step.js +14 -0
  64. package/dist/components/Step.js.map +1 -0
  65. package/dist/components/TabBar.d.ts +9 -0
  66. package/dist/components/TabBar.d.ts.map +1 -0
  67. package/dist/components/TabBar.js +7 -0
  68. package/dist/components/TabBar.js.map +1 -0
  69. package/dist/components/ThinkingRow.d.ts +6 -0
  70. package/dist/components/ThinkingRow.d.ts.map +1 -0
  71. package/dist/components/ThinkingRow.js +7 -0
  72. package/dist/components/ThinkingRow.js.map +1 -0
  73. package/dist/components/index.d.ts +9 -0
  74. package/dist/components/index.d.ts.map +1 -0
  75. package/dist/components/index.js +9 -0
  76. package/dist/components/index.js.map +1 -0
  77. package/dist/crew/members.d.ts +3 -0
  78. package/dist/crew/members.d.ts.map +1 -0
  79. package/dist/crew/members.js +33 -0
  80. package/dist/crew/members.js.map +1 -0
  81. package/dist/hooks/useListNav.d.ts +12 -0
  82. package/dist/hooks/useListNav.d.ts.map +1 -0
  83. package/dist/hooks/useListNav.js +27 -0
  84. package/dist/hooks/useListNav.js.map +1 -0
  85. package/dist/index.d.ts +2 -0
  86. package/dist/index.d.ts.map +1 -0
  87. package/dist/index.js +2 -0
  88. package/dist/index.js.map +1 -0
  89. package/dist/plugins/bundled.d.ts +3 -0
  90. package/dist/plugins/bundled.d.ts.map +1 -0
  91. package/dist/plugins/bundled.js +42 -0
  92. package/dist/plugins/bundled.js.map +1 -0
  93. package/dist/plugins/discover.d.ts +10 -0
  94. package/dist/plugins/discover.d.ts.map +1 -0
  95. package/dist/plugins/discover.js +48 -0
  96. package/dist/plugins/discover.js.map +1 -0
  97. package/dist/plugins/loader.d.ts +3 -0
  98. package/dist/plugins/loader.d.ts.map +1 -0
  99. package/dist/plugins/loader.js +28 -0
  100. package/dist/plugins/loader.js.map +1 -0
  101. package/dist/plugins/manifest.d.ts +76 -0
  102. package/dist/plugins/manifest.d.ts.map +1 -0
  103. package/dist/plugins/manifest.js +27 -0
  104. package/dist/plugins/manifest.js.map +1 -0
  105. package/dist/plugins/types.d.ts +16 -0
  106. package/dist/plugins/types.d.ts.map +1 -0
  107. package/dist/plugins/types.js +2 -0
  108. package/dist/plugins/types.js.map +1 -0
  109. package/dist/screens/Home.d.ts +2 -0
  110. package/dist/screens/Home.d.ts.map +1 -0
  111. package/dist/screens/Home.js +12 -0
  112. package/dist/screens/Home.js.map +1 -0
  113. package/dist/screens/Plugins.d.ts +7 -0
  114. package/dist/screens/Plugins.d.ts.map +1 -0
  115. package/dist/screens/Plugins.js +58 -0
  116. package/dist/screens/Plugins.js.map +1 -0
  117. package/dist/screens/Repl.d.ts +2 -0
  118. package/dist/screens/Repl.d.ts.map +1 -0
  119. package/dist/screens/Repl.js +17 -0
  120. package/dist/screens/Repl.js.map +1 -0
  121. package/dist/screens/Training.d.ts +2 -0
  122. package/dist/screens/Training.d.ts.map +1 -0
  123. package/dist/screens/Training.js +52 -0
  124. package/dist/screens/Training.js.map +1 -0
  125. package/dist/screens/Update.d.ts +6 -0
  126. package/dist/screens/Update.d.ts.map +1 -0
  127. package/dist/screens/Update.js +57 -0
  128. package/dist/screens/Update.js.map +1 -0
  129. package/dist/screens/Welcome.d.ts +6 -0
  130. package/dist/screens/Welcome.d.ts.map +1 -0
  131. package/dist/screens/Welcome.js +13 -0
  132. package/dist/screens/Welcome.js.map +1 -0
  133. package/dist/settings.d.ts +11 -0
  134. package/dist/settings.d.ts.map +1 -0
  135. package/dist/settings.js +27 -0
  136. package/dist/settings.js.map +1 -0
  137. package/dist/training/types.d.ts +20 -0
  138. package/dist/training/types.d.ts.map +1 -0
  139. package/dist/training/types.js +2 -0
  140. package/dist/training/types.js.map +1 -0
  141. package/dist/types.d.ts +31 -0
  142. package/dist/types.d.ts.map +1 -0
  143. package/dist/types.js +2 -0
  144. package/dist/types.js.map +1 -0
  145. package/dist/update/checker.d.ts +12 -0
  146. package/dist/update/checker.d.ts.map +1 -0
  147. package/dist/update/checker.js +48 -0
  148. package/dist/update/checker.js.map +1 -0
  149. package/package.json +43 -0
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=pilot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pilot.d.ts","sourceRoot":"","sources":["../../src/bin/pilot.ts"],"names":[],"mappings":""}
@@ -0,0 +1,64 @@
1
+ #!/usr/bin/env node
2
+ import { program } from 'commander';
3
+ import { createRequire } from 'module';
4
+ const require = createRequire(import.meta.url);
5
+ const pkg = require('../../package.json');
6
+ program
7
+ .name('pilot')
8
+ .description('Your AI crew, ready to fly.')
9
+ .version(pkg.version, '-v, --version');
10
+ program
11
+ .command('up [template]')
12
+ .description('One-click setup — install templates, skills, crew bindings')
13
+ .action(async (template) => {
14
+ const { runUp } = await import('../commands/up.js');
15
+ await runUp(template);
16
+ });
17
+ program
18
+ .command('crew')
19
+ .description('Manage your AI crew')
20
+ .action(async () => {
21
+ const { runCrew } = await import('../commands/crew.js');
22
+ await runCrew();
23
+ });
24
+ program
25
+ .command('training')
26
+ .description('Knowledge base — teach your crew about your brand')
27
+ .action(async () => {
28
+ const { runTraining } = await import('../commands/training.js');
29
+ await runTraining();
30
+ });
31
+ program
32
+ .command('plugins')
33
+ .description('Browse and manage plugins')
34
+ .action(async () => {
35
+ const { runPlugins } = await import('../commands/plugins.js');
36
+ await runPlugins();
37
+ });
38
+ program
39
+ .command('update')
40
+ .description('Check for and apply updates')
41
+ .action(async () => {
42
+ const { runUpdate } = await import('../commands/update.js');
43
+ await runUpdate();
44
+ });
45
+ program
46
+ .command('status')
47
+ .description('Machine and system health')
48
+ .action(async () => {
49
+ const { runStatus } = await import('../commands/status.js');
50
+ await runStatus();
51
+ });
52
+ program
53
+ .command('help')
54
+ .description('Help reference')
55
+ .action(async () => {
56
+ const { runHelp } = await import('../commands/help.js');
57
+ await runHelp();
58
+ });
59
+ program.action(async () => {
60
+ const { runRepl } = await import('../commands/repl.js');
61
+ await runRepl();
62
+ });
63
+ program.parseAsync();
64
+ //# sourceMappingURL=pilot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pilot.js","sourceRoot":"","sources":["../../src/bin/pilot.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEvC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAE1C,OAAO;KACJ,IAAI,CAAC,OAAO,CAAC;KACb,WAAW,CAAC,6BAA6B,CAAC;KAC1C,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;AAEzC,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,4DAA4D,CAAC;KACzE,MAAM,CAAC,KAAK,EAAE,QAAiB,EAAE,EAAE;IAClC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;IACpD,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;AACxB,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,qBAAqB,CAAC;KAClC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACxD,MAAM,OAAO,EAAE,CAAC;AAClB,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,mDAAmD,CAAC;KAChE,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAChE,MAAM,WAAW,EAAE,CAAC;AACtB,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,2BAA2B,CAAC;KACxC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;IAC9D,MAAM,UAAU,EAAE,CAAC;AACrB,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAC5D,MAAM,SAAS,EAAE,CAAC;AACpB,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,2BAA2B,CAAC;KACxC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAC5D,MAAM,SAAS,EAAE,CAAC;AACpB,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gBAAgB,CAAC;KAC7B,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACxD,MAAM,OAAO,EAAE,CAAC;AAClB,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;IACxB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACxD,MAAM,OAAO,EAAE,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,UAAU,EAAE,CAAC"}
@@ -0,0 +1,12 @@
1
+ export declare const colors: {
2
+ readonly bg: "#09090B";
3
+ readonly card: "#18181B";
4
+ readonly border: "#2E2E33";
5
+ readonly primary: "#9A6AC2";
6
+ readonly success: "#2DD4BF";
7
+ readonly warning: "#FBBF24";
8
+ readonly error: "#EF4444";
9
+ readonly text: "#F4F4F5";
10
+ readonly muted: "#71717A";
11
+ };
12
+ //# sourceMappingURL=colors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../src/colors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;;;;;CAUT,CAAC"}
package/dist/colors.js ADDED
@@ -0,0 +1,12 @@
1
+ export const colors = {
2
+ bg: '#09090B',
3
+ card: '#18181B',
4
+ border: '#2E2E33',
5
+ primary: '#9A6AC2',
6
+ success: '#2DD4BF',
7
+ warning: '#FBBF24',
8
+ error: '#EF4444',
9
+ text: '#F4F4F5',
10
+ muted: '#71717A',
11
+ };
12
+ //# sourceMappingURL=colors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colors.js","sourceRoot":"","sources":["../src/colors.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,SAAS;IACjB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,SAAS;CACR,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function runCrew(): Promise<void>;
2
+ //# sourceMappingURL=crew.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crew.d.ts","sourceRoot":"","sources":["../../src/commands/crew.ts"],"names":[],"mappings":"AAIA,wBAAsB,OAAO,kBAI5B"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { render, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ export async function runCrew() {
5
+ render(React.createElement(Text, { color: colors.muted }, 'pilot crew — coming soon'));
6
+ }
7
+ //# sourceMappingURL=crew.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crew.js","sourceRoot":"","sources":["../../src/commands/crew.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,CACJ,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,0BAA0B,CAAC,CAC/E,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function runHelp(): Promise<void>;
2
+ //# sourceMappingURL=help.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"AAIA,wBAAsB,OAAO,kBAI5B"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { render, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ export async function runHelp() {
5
+ render(React.createElement(Text, { color: colors.muted }, 'pilot help — coming soon'));
6
+ }
7
+ //# sourceMappingURL=help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,CACJ,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,0BAA0B,CAAC,CAC/E,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function runPlugins(): Promise<void>;
2
+ //# sourceMappingURL=plugins.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/commands/plugins.ts"],"names":[],"mappings":"AAQA,wBAAsB,UAAU,kBAU/B"}
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { render } from 'ink';
3
+ import { join } from 'node:path';
4
+ import { homedir } from 'node:os';
5
+ import { Plugins } from '../screens/Plugins.js';
6
+ import { discoverPlugins } from '../plugins/discover.js';
7
+ import { loadSettings } from '../settings.js';
8
+ export async function runPlugins() {
9
+ const userDir = join(homedir(), '.pilot', 'plugins');
10
+ const settings = loadSettings();
11
+ const plugins = discoverPlugins({
12
+ userDir,
13
+ enabledState: settings.plugins,
14
+ });
15
+ render(React.createElement(Plugins, { plugins }));
16
+ }
17
+ //# sourceMappingURL=plugins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../src/commands/plugins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAEhC,MAAM,OAAO,GAAG,eAAe,CAAC;QAC9B,OAAO;QACP,YAAY,EAAE,QAAQ,CAAC,OAAO;KAC/B,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;AACpD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function runRepl(): Promise<void>;
2
+ //# sourceMappingURL=repl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../../src/commands/repl.ts"],"names":[],"mappings":"AAIA,wBAAsB,OAAO,kBAE5B"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { render } from 'ink';
3
+ import { Repl } from '../screens/Repl.js';
4
+ export async function runRepl() {
5
+ render(React.createElement(Repl));
6
+ }
7
+ //# sourceMappingURL=repl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/commands/repl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AACpC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function runStatus(): Promise<void>;
2
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAIA,wBAAsB,SAAS,kBAI9B"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { render, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ export async function runStatus() {
5
+ render(React.createElement(Text, { color: colors.muted }, 'pilot status — coming soon'));
6
+ }
7
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,CACJ,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,4BAA4B,CAAC,CACjF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function runTraining(): Promise<void>;
2
+ //# sourceMappingURL=training.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"training.d.ts","sourceRoot":"","sources":["../../src/commands/training.ts"],"names":[],"mappings":"AAIA,wBAAsB,WAAW,kBAEhC"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { render } from 'ink';
3
+ import { Training } from '../screens/Training.js';
4
+ export async function runTraining() {
5
+ render(React.createElement(Training));
6
+ }
7
+ //# sourceMappingURL=training.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"training.js","sourceRoot":"","sources":["../../src/commands/training.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;AACxC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function runUp(template?: string): Promise<void>;
2
+ //# sourceMappingURL=up.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"up.d.ts","sourceRoot":"","sources":["../../src/commands/up.ts"],"names":[],"mappings":"AAIA,wBAAsB,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,iBAI5C"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { render, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ export async function runUp(template) {
5
+ render(React.createElement(Text, { color: colors.muted }, 'pilot up — coming soon'));
6
+ }
7
+ //# sourceMappingURL=up.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"up.js","sourceRoot":"","sources":["../../src/commands/up.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,QAAiB;IAC3C,MAAM,CACJ,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,wBAAwB,CAAC,CAC7E,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function runUpdate(): Promise<void>;
2
+ //# sourceMappingURL=update.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAQA,wBAAsB,SAAS,kBAE9B"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { render } from 'ink';
3
+ import { createRequire } from 'module';
4
+ import { Update } from '../screens/Update.js';
5
+ const require = createRequire(import.meta.url);
6
+ const pkg = require('../../package.json');
7
+ export async function runUpdate() {
8
+ render(React.createElement(Update, { currentVersion: pkg.version }));
9
+ }
10
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,cAAc,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AACvE,CAAC"}
@@ -0,0 +1,7 @@
1
+ interface HeaderProps {
2
+ size?: 'small' | 'medium' | 'large';
3
+ subtitle?: string;
4
+ }
5
+ export declare function Header({ size, subtitle }: HeaderProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
7
+ //# sourceMappingURL=Header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../src/components/Header.tsx"],"names":[],"mappings":"AAMA,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,MAAM,CAAC,EAAE,IAAe,EAAE,QAAQ,EAAE,EAAE,WAAW,2CAShE"}
@@ -0,0 +1,8 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ const LOGO_SMALL = '✈ pilot | medal social';
5
+ export function Header({ size = 'medium', subtitle }) {
6
+ return (_jsxs(Box, { flexDirection: "column", alignItems: "center", gap: 0, children: [_jsx(Text, { color: colors.primary, bold: true, children: size === 'small' ? '✈ pilot' : LOGO_SMALL }), subtitle && _jsx(Text, { color: colors.muted, children: subtitle })] }));
7
+ }
8
+ //# sourceMappingURL=Header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../src/components/Header.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,UAAU,GAAG,wBAAwB,CAAC;AAO5C,MAAM,UAAU,MAAM,CAAC,EAAE,IAAI,GAAG,QAAQ,EAAE,QAAQ,EAAe;IAC/D,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aACpD,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,kBAC9B,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,GACrC,EACN,QAAQ,IAAI,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,YAAG,QAAQ,GAAQ,IACrD,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface ModalProps {
3
+ title: string;
4
+ children: React.ReactNode;
5
+ footer?: React.ReactNode;
6
+ }
7
+ export declare function Modal({ title, children, footer }: ModalProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=Modal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../src/components/Modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B;AAED,wBAAgB,KAAK,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,2CAyB5D"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ export function Modal({ title, children, footer }) {
5
+ return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: colors.border, paddingX: 2, paddingY: 1, children: [_jsxs(Box, { justifyContent: "space-between", children: [_jsx(Text, { bold: true, color: colors.text, children: title }), _jsx(Text, { color: colors.muted, children: "esc" })] }), _jsx(Box, { flexDirection: "column", marginTop: 1, children: children }), footer && (_jsx(Box, { marginTop: 1, justifyContent: "flex-end", children: footer }))] }));
6
+ }
7
+ //# sourceMappingURL=Modal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../src/components/Modal.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAQtC,MAAM,UAAU,KAAK,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAc;IAC3D,OAAO,CACL,MAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,MAAM,CAAC,MAAM,EAC1B,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,aAEX,MAAC,GAAG,IAAC,cAAc,EAAC,eAAe,aACjC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,MAAM,CAAC,IAAI,YAC1B,KAAK,GACD,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,oBAAY,IACjC,EACN,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,YACrC,QAAQ,GACL,EACL,MAAM,IAAI,CACT,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,cAAc,EAAC,UAAU,YACzC,MAAM,GACH,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ interface ProgressBarProps {
2
+ progress: number;
3
+ width?: number;
4
+ label?: string;
5
+ }
6
+ export declare function ProgressBar({ progress, width, label }: ProgressBarProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=ProgressBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressBar.d.ts","sourceRoot":"","sources":["../../src/components/ProgressBar.tsx"],"names":[],"mappings":"AAIA,UAAU,gBAAgB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,KAAU,EAAE,KAAK,EAAE,EAAE,gBAAgB,2CAa5E"}
@@ -0,0 +1,10 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ export function ProgressBar({ progress, width = 40, label }) {
5
+ const clamped = Math.max(0, Math.min(1, progress));
6
+ const filled = Math.round(clamped * width);
7
+ const empty = width - filled;
8
+ return (_jsxs(Box, { flexDirection: "column", gap: 0, children: [_jsxs(Text, { children: [_jsx(Text, { color: colors.primary, children: '█'.repeat(filled) }), _jsx(Text, { color: colors.border, children: '░'.repeat(empty) })] }), label && _jsx(Text, { color: colors.muted, children: label })] }));
9
+ }
10
+ //# sourceMappingURL=ProgressBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressBar.js","sourceRoot":"","sources":["../../src/components/ProgressBar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAQtC,MAAM,UAAU,WAAW,CAAC,EAAE,QAAQ,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,EAAoB;IAC3E,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAC7B,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aAChC,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,YAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAQ,EACxD,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,YAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAQ,IACjD,EACN,KAAK,IAAI,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,YAAG,KAAK,GAAQ,IAC/C,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface SplitPanelProps {
3
+ sidebar: React.ReactNode;
4
+ detail: React.ReactNode;
5
+ sidebarWidth?: number;
6
+ }
7
+ export declare function SplitPanel({ sidebar, detail, sidebarWidth, }: SplitPanelProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=SplitPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SplitPanel.d.ts","sourceRoot":"","sources":["../../src/components/SplitPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,eAAe;IACvB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,MAAM,EACN,YAAiB,GAClB,EAAE,eAAe,2CAmBjB"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ export function SplitPanel({ sidebar, detail, sidebarWidth = 30, }) {
5
+ return (_jsxs(Box, { flexGrow: 1, children: [_jsx(Box, { flexDirection: "column", width: sidebarWidth, borderStyle: "single", borderLeft: false, borderTop: false, borderBottom: false, borderColor: colors.border, children: sidebar }), _jsx(Box, { flexDirection: "column", flexGrow: 1, paddingX: 1, children: detail })] }));
6
+ }
7
+ //# sourceMappingURL=SplitPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SplitPanel.js","sourceRoot":"","sources":["../../src/components/SplitPanel.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAQtC,MAAM,UAAU,UAAU,CAAC,EACzB,OAAO,EACP,MAAM,EACN,YAAY,GAAG,EAAE,GACD;IAChB,OAAO,CACL,MAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,aACd,KAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,KAAK,EAAE,YAAY,EACnB,WAAW,EAAC,QAAQ,EACpB,UAAU,EAAE,KAAK,EACjB,SAAS,EAAE,KAAK,EAChB,YAAY,EAAE,KAAK,EACnB,WAAW,EAAE,MAAM,CAAC,MAAM,YAEzB,OAAO,GACJ,EACN,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,YACjD,MAAM,GACH,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ interface StatusBarProps {
2
+ items: Array<{
3
+ label: string;
4
+ color?: string;
5
+ }>;
6
+ }
7
+ export declare function StatusBar({ items }: StatusBarProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=StatusBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatusBar.d.ts","sourceRoot":"","sources":["../../src/components/StatusBar.tsx"],"names":[],"mappings":"AAIA,UAAU,cAAc;IACtB,KAAK,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjD;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,2CAmBlD"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Box, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ export function StatusBar({ items }) {
5
+ return (_jsx(Box, { borderStyle: "single", borderTop: true, borderBottom: false, borderLeft: false, borderRight: false, borderColor: colors.border, children: _jsx(Box, { gap: 2, paddingX: 1, children: items.map((item, i) => (_jsx(Text, { color: item.color ?? colors.muted, children: item.label }, i))) }) }));
6
+ }
7
+ //# sourceMappingURL=StatusBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatusBar.js","sourceRoot":"","sources":["../../src/components/StatusBar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAMtC,MAAM,UAAU,SAAS,CAAC,EAAE,KAAK,EAAkB;IACjD,OAAO,CACL,KAAC,GAAG,IACF,WAAW,EAAC,QAAQ,EACpB,SAAS,QACT,YAAY,EAAE,KAAK,EACnB,UAAU,EAAE,KAAK,EACjB,WAAW,EAAE,KAAK,EAClB,WAAW,EAAE,MAAM,CAAC,MAAM,YAE1B,KAAC,GAAG,IAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,YACrB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,KAAC,IAAI,IAAS,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,YAC5C,IAAI,CAAC,KAAK,IADF,CAAC,CAEL,CACR,CAAC,GACE,GACF,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { StepStatus } from '../types.js';
2
+ interface StepProps {
3
+ label: string;
4
+ status: StepStatus;
5
+ detail?: string;
6
+ }
7
+ export declare function Step({ label, status, detail }: StepProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=Step.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Step.d.ts","sourceRoot":"","sources":["../../src/components/Step.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAS9C,UAAU,SAAS;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,2CAWxD"}
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ const icons = {
5
+ done: { char: '✓', color: colors.success },
6
+ active: { char: '⠸', color: colors.warning },
7
+ waiting: { char: '○', color: colors.muted },
8
+ error: { char: '✗', color: colors.error },
9
+ };
10
+ export function Step({ label, status, detail }) {
11
+ const icon = icons[status];
12
+ return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: icon.color, children: icon.char }), _jsx(Text, { color: status === 'waiting' ? colors.muted : colors.text, children: label }), detail && _jsx(Text, { color: colors.muted, children: detail })] }));
13
+ }
14
+ //# sourceMappingURL=Step.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Step.js","sourceRoot":"","sources":["../../src/components/Step.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,MAAM,KAAK,GAAwD;IACjE,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE;IAC1C,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE;IAC5C,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE;IAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE;CAC1C,CAAC;AAQF,MAAM,UAAU,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAa;IACvD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3B,OAAO,CACL,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,YAAG,IAAI,CAAC,IAAI,GAAQ,EAC3C,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,YAC3D,KAAK,GACD,EACN,MAAM,IAAI,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,YAAG,MAAM,GAAQ,IACjD,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { Tab, TabId } from '../types.js';
2
+ interface TabBarProps {
3
+ tabs: Tab[];
4
+ activeTab: TabId;
5
+ onSelect?: (id: TabId) => void;
6
+ }
7
+ export declare function TabBar({ tabs, activeTab }: TabBarProps): import("react/jsx-runtime").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=TabBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabBar.d.ts","sourceRoot":"","sources":["../../src/components/TabBar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE9C,UAAU,WAAW;IACnB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,SAAS,EAAE,KAAK,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,KAAK,IAAI,CAAC;CAChC;AAED,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,WAAW,2CAsBtD"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Box, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ export function TabBar({ tabs, activeTab }) {
5
+ return (_jsx(Box, { gap: 2, paddingX: 1, borderStyle: "single", borderTop: false, borderLeft: false, borderRight: false, borderColor: colors.border, children: tabs.map((tab) => (_jsx(Text, { color: tab.id === activeTab ? colors.primary : colors.muted, bold: tab.id === activeTab, children: tab.label }, tab.id))) }));
6
+ }
7
+ //# sourceMappingURL=TabBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabBar.js","sourceRoot":"","sources":["../../src/components/TabBar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAStC,MAAM,UAAU,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAe;IACrD,OAAO,CACL,KAAC,GAAG,IACF,GAAG,EAAE,CAAC,EACN,QAAQ,EAAE,CAAC,EACX,WAAW,EAAC,QAAQ,EACpB,SAAS,EAAE,KAAK,EAChB,UAAU,EAAE,KAAK,EACjB,WAAW,EAAE,KAAK,EAClB,WAAW,EAAE,MAAM,CAAC,MAAM,YAEzB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACjB,KAAC,IAAI,IAEH,KAAK,EAAE,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAC3D,IAAI,EAAE,GAAG,CAAC,EAAE,KAAK,SAAS,YAEzB,GAAG,CAAC,KAAK,IAJL,GAAG,CAAC,EAAE,CAKN,CACR,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ interface ThinkingRowProps {
2
+ tool: string;
3
+ }
4
+ export declare function ThinkingRow({ tool }: ThinkingRowProps): import("react/jsx-runtime").JSX.Element;
5
+ export {};
6
+ //# sourceMappingURL=ThinkingRow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThinkingRow.d.ts","sourceRoot":"","sources":["../../src/components/ThinkingRow.tsx"],"names":[],"mappings":"AAIA,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,WAAW,CAAC,EAAE,IAAI,EAAE,EAAE,gBAAgB,2CAOrD"}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Text } from 'ink';
3
+ import { colors } from '../colors.js';
4
+ export function ThinkingRow({ tool }) {
5
+ return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: colors.primary, children: "\u25C6" }), _jsx(Text, { color: colors.muted, children: tool })] }));
6
+ }
7
+ //# sourceMappingURL=ThinkingRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThinkingRow.js","sourceRoot":"","sources":["../../src/components/ThinkingRow.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAMtC,MAAM,UAAU,WAAW,CAAC,EAAE,IAAI,EAAoB;IACpD,OAAO,CACL,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,uBAAU,EACrC,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,YAAG,IAAI,GAAQ,IACpC,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ export { Step } from './Step.js';
2
+ export { ProgressBar } from './ProgressBar.js';
3
+ export { StatusBar } from './StatusBar.js';
4
+ export { SplitPanel } from './SplitPanel.js';
5
+ export { TabBar } from './TabBar.js';
6
+ export { ThinkingRow } from './ThinkingRow.js';
7
+ export { Modal } from './Modal.js';
8
+ export { Header } from './Header.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,9 @@
1
+ export { Step } from './Step.js';
2
+ export { ProgressBar } from './ProgressBar.js';
3
+ export { StatusBar } from './StatusBar.js';
4
+ export { SplitPanel } from './SplitPanel.js';
5
+ export { TabBar } from './TabBar.js';
6
+ export { ThinkingRow } from './ThinkingRow.js';
7
+ export { Modal } from './Modal.js';
8
+ export { Header } from './Header.js';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { CrewMember } from '../types.js';
2
+ export declare const defaultCrew: CrewMember[];
3
+ //# sourceMappingURL=members.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"members.d.ts","sourceRoot":"","sources":["../../src/crew/members.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,eAAO,MAAM,WAAW,EAAE,UAAU,EA+BnC,CAAC"}
@@ -0,0 +1,33 @@
1
+ export const defaultCrew = [
2
+ {
3
+ role: 'Brand Lead',
4
+ description: 'Learns your voice, trains all other leads',
5
+ skills: ['brand-voice', 'tone-analysis'],
6
+ color: '#9A6AC2',
7
+ },
8
+ {
9
+ role: 'Marketing Lead',
10
+ description: 'Social posts, campaigns, content calendar',
11
+ skills: ['content-writer', 'social-scheduler'],
12
+ color: '#2DD4BF',
13
+ },
14
+ {
15
+ role: 'Tech Lead',
16
+ description: 'Suite builds, deploys, code review',
17
+ skills: ['nextmedal', 'deploy'],
18
+ color: '#3B82F6',
19
+ },
20
+ {
21
+ role: 'CS Lead',
22
+ description: 'Tickets, escalation, customer retention',
23
+ skills: ['support-agent'],
24
+ color: '#F59E0B',
25
+ },
26
+ {
27
+ role: 'Sales Lead',
28
+ description: 'Outreach, pipeline, lead scoring',
29
+ skills: ['outreach'],
30
+ color: '#EF4444',
31
+ },
32
+ ];
33
+ //# sourceMappingURL=members.js.map