@gxp-dev/tools 2.0.63 → 2.0.64

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 (182) hide show
  1. package/README.md +32 -31
  2. package/bin/gx-devtools.js +74 -54
  3. package/bin/lib/cli.js +23 -21
  4. package/bin/lib/commands/add-dependency.js +366 -325
  5. package/bin/lib/commands/assets.js +137 -139
  6. package/bin/lib/commands/build.js +169 -174
  7. package/bin/lib/commands/datastore.js +181 -183
  8. package/bin/lib/commands/dev.js +127 -131
  9. package/bin/lib/commands/extensions.js +147 -149
  10. package/bin/lib/commands/extract-config.js +73 -67
  11. package/bin/lib/commands/index.js +12 -12
  12. package/bin/lib/commands/init.js +342 -240
  13. package/bin/lib/commands/publish.js +69 -75
  14. package/bin/lib/commands/socket.js +69 -69
  15. package/bin/lib/commands/ssl.js +14 -14
  16. package/bin/lib/constants.js +10 -24
  17. package/bin/lib/tui/App.tsx +761 -705
  18. package/bin/lib/tui/components/AIPanel.tsx +191 -171
  19. package/bin/lib/tui/components/CommandInput.tsx +394 -343
  20. package/bin/lib/tui/components/GeminiPanel.tsx +175 -151
  21. package/bin/lib/tui/components/Header.tsx +23 -21
  22. package/bin/lib/tui/components/LogPanel.tsx +244 -220
  23. package/bin/lib/tui/components/TabBar.tsx +50 -48
  24. package/bin/lib/tui/components/WelcomeScreen.tsx +126 -71
  25. package/bin/lib/tui/index.tsx +37 -39
  26. package/bin/lib/tui/services/AIService.ts +518 -462
  27. package/bin/lib/tui/services/ExtensionService.ts +140 -129
  28. package/bin/lib/tui/services/GeminiService.ts +367 -337
  29. package/bin/lib/tui/services/ServiceManager.ts +344 -322
  30. package/bin/lib/tui/services/SocketService.ts +168 -168
  31. package/bin/lib/tui/services/ViteService.ts +88 -88
  32. package/bin/lib/tui/services/index.ts +47 -22
  33. package/bin/lib/utils/ai-scaffold.js +291 -280
  34. package/bin/lib/utils/extract-config.js +157 -140
  35. package/bin/lib/utils/files.js +82 -86
  36. package/bin/lib/utils/index.js +7 -7
  37. package/bin/lib/utils/paths.js +34 -34
  38. package/bin/lib/utils/prompts.js +194 -169
  39. package/bin/lib/utils/ssl.js +79 -81
  40. package/browser-extensions/README.md +0 -1
  41. package/browser-extensions/chrome/background.js +244 -237
  42. package/browser-extensions/chrome/content.js +32 -29
  43. package/browser-extensions/chrome/devtools.html +7 -7
  44. package/browser-extensions/chrome/devtools.js +19 -19
  45. package/browser-extensions/chrome/inspector.js +802 -767
  46. package/browser-extensions/chrome/manifest.json +71 -63
  47. package/browser-extensions/chrome/panel.html +674 -636
  48. package/browser-extensions/chrome/panel.js +722 -712
  49. package/browser-extensions/chrome/popup.html +586 -543
  50. package/browser-extensions/chrome/popup.js +282 -244
  51. package/browser-extensions/chrome/rules.json +1 -1
  52. package/browser-extensions/chrome/test-chrome.html +216 -136
  53. package/browser-extensions/chrome/test-mixed-content.html +284 -189
  54. package/browser-extensions/chrome/test-uri-pattern.html +221 -198
  55. package/browser-extensions/firefox/README.md +9 -6
  56. package/browser-extensions/firefox/background.js +221 -218
  57. package/browser-extensions/firefox/content.js +55 -52
  58. package/browser-extensions/firefox/debug-errors.html +386 -228
  59. package/browser-extensions/firefox/debug-https.html +153 -105
  60. package/browser-extensions/firefox/devtools.html +7 -7
  61. package/browser-extensions/firefox/devtools.js +23 -20
  62. package/browser-extensions/firefox/inspector.js +802 -767
  63. package/browser-extensions/firefox/manifest.json +68 -68
  64. package/browser-extensions/firefox/panel.html +674 -636
  65. package/browser-extensions/firefox/panel.js +722 -712
  66. package/browser-extensions/firefox/popup.html +572 -535
  67. package/browser-extensions/firefox/popup.js +281 -236
  68. package/browser-extensions/firefox/test-gramercy.html +170 -125
  69. package/browser-extensions/firefox/test-imports.html +59 -55
  70. package/browser-extensions/firefox/test-masking.html +231 -140
  71. package/browser-extensions/firefox/test-uri-pattern.html +221 -198
  72. package/dist/tui/App.d.ts +1 -1
  73. package/dist/tui/App.d.ts.map +1 -1
  74. package/dist/tui/App.js +154 -150
  75. package/dist/tui/App.js.map +1 -1
  76. package/dist/tui/components/AIPanel.d.ts.map +1 -1
  77. package/dist/tui/components/AIPanel.js +42 -35
  78. package/dist/tui/components/AIPanel.js.map +1 -1
  79. package/dist/tui/components/CommandInput.d.ts +1 -1
  80. package/dist/tui/components/CommandInput.d.ts.map +1 -1
  81. package/dist/tui/components/CommandInput.js +92 -62
  82. package/dist/tui/components/CommandInput.js.map +1 -1
  83. package/dist/tui/components/GeminiPanel.d.ts.map +1 -1
  84. package/dist/tui/components/GeminiPanel.js +37 -30
  85. package/dist/tui/components/GeminiPanel.js.map +1 -1
  86. package/dist/tui/components/Header.d.ts.map +1 -1
  87. package/dist/tui/components/Header.js +1 -1
  88. package/dist/tui/components/Header.js.map +1 -1
  89. package/dist/tui/components/LogPanel.d.ts +1 -1
  90. package/dist/tui/components/LogPanel.d.ts.map +1 -1
  91. package/dist/tui/components/LogPanel.js +26 -24
  92. package/dist/tui/components/LogPanel.js.map +1 -1
  93. package/dist/tui/components/TabBar.d.ts +2 -2
  94. package/dist/tui/components/TabBar.d.ts.map +1 -1
  95. package/dist/tui/components/TabBar.js +11 -11
  96. package/dist/tui/components/TabBar.js.map +1 -1
  97. package/dist/tui/components/WelcomeScreen.d.ts.map +1 -1
  98. package/dist/tui/components/WelcomeScreen.js +6 -6
  99. package/dist/tui/components/WelcomeScreen.js.map +1 -1
  100. package/dist/tui/index.d.ts.map +1 -1
  101. package/dist/tui/index.js +8 -8
  102. package/dist/tui/index.js.map +1 -1
  103. package/dist/tui/services/AIService.d.ts +2 -2
  104. package/dist/tui/services/AIService.d.ts.map +1 -1
  105. package/dist/tui/services/AIService.js +165 -125
  106. package/dist/tui/services/AIService.js.map +1 -1
  107. package/dist/tui/services/ExtensionService.d.ts +1 -1
  108. package/dist/tui/services/ExtensionService.d.ts.map +1 -1
  109. package/dist/tui/services/ExtensionService.js +33 -26
  110. package/dist/tui/services/ExtensionService.js.map +1 -1
  111. package/dist/tui/services/GeminiService.d.ts +1 -1
  112. package/dist/tui/services/GeminiService.d.ts.map +1 -1
  113. package/dist/tui/services/GeminiService.js +87 -76
  114. package/dist/tui/services/GeminiService.js.map +1 -1
  115. package/dist/tui/services/ServiceManager.d.ts +3 -3
  116. package/dist/tui/services/ServiceManager.d.ts.map +1 -1
  117. package/dist/tui/services/ServiceManager.js +72 -58
  118. package/dist/tui/services/ServiceManager.js.map +1 -1
  119. package/dist/tui/services/SocketService.d.ts.map +1 -1
  120. package/dist/tui/services/SocketService.js +32 -32
  121. package/dist/tui/services/SocketService.js.map +1 -1
  122. package/dist/tui/services/ViteService.d.ts.map +1 -1
  123. package/dist/tui/services/ViteService.js +26 -28
  124. package/dist/tui/services/ViteService.js.map +1 -1
  125. package/dist/tui/services/index.d.ts +6 -6
  126. package/dist/tui/services/index.d.ts.map +1 -1
  127. package/dist/tui/services/index.js +6 -6
  128. package/dist/tui/services/index.js.map +1 -1
  129. package/mcp/gxp-api-server.js +83 -81
  130. package/package.json +109 -93
  131. package/runtime/PortalContainer.vue +258 -234
  132. package/runtime/dev-tools/DevToolsModal.vue +153 -155
  133. package/runtime/dev-tools/LayoutSwitcher.vue +144 -140
  134. package/runtime/dev-tools/MockDataEditor.vue +456 -433
  135. package/runtime/dev-tools/SocketSimulator.vue +379 -371
  136. package/runtime/dev-tools/StoreInspector.vue +517 -455
  137. package/runtime/dev-tools/index.js +5 -5
  138. package/runtime/fallback-layouts/PrivateLayout.vue +2 -2
  139. package/runtime/fallback-layouts/PublicLayout.vue +2 -2
  140. package/runtime/fallback-layouts/SystemLayout.vue +2 -2
  141. package/runtime/gxpStringsPlugin.js +159 -134
  142. package/runtime/index.html +17 -19
  143. package/runtime/main.js +24 -22
  144. package/runtime/mock-api/auth-middleware.js +15 -15
  145. package/runtime/mock-api/image-generator.js +46 -46
  146. package/runtime/mock-api/index.js +55 -55
  147. package/runtime/mock-api/response-generator.js +116 -105
  148. package/runtime/mock-api/route-generator.js +107 -84
  149. package/runtime/mock-api/socket-triggers.js +94 -93
  150. package/runtime/mock-api/spec-loader.js +79 -80
  151. package/runtime/package.json +3 -0
  152. package/runtime/server.js +68 -68
  153. package/runtime/stores/gxpPortalConfigStore.js +204 -186
  154. package/runtime/stores/index.js +2 -2
  155. package/runtime/vite-inspector-plugin.js +858 -707
  156. package/runtime/vite-source-tracker-plugin.js +132 -113
  157. package/runtime/vite.config.js +191 -139
  158. package/scripts/launch-chrome.js +41 -41
  159. package/scripts/pack-chrome.js +38 -39
  160. package/socket-events/AiSessionMessageCreated.json +17 -17
  161. package/socket-events/SocialStreamPostCreated.json +23 -23
  162. package/socket-events/SocialStreamPostVariantCompleted.json +22 -22
  163. package/template/.claude/agents/gxp-developer.md +100 -99
  164. package/template/.claude/settings.json +7 -7
  165. package/template/AGENTS.md +30 -23
  166. package/template/GEMINI.md +20 -20
  167. package/template/README.md +70 -53
  168. package/template/app-manifest.json +2 -4
  169. package/template/configuration.json +10 -10
  170. package/template/default-styling.css +1 -1
  171. package/template/index.html +18 -20
  172. package/template/main.js +24 -22
  173. package/template/src/DemoPage.vue +415 -362
  174. package/template/src/Plugin.vue +76 -85
  175. package/template/src/stores/index.js +3 -3
  176. package/template/src/stores/test-data.json +164 -172
  177. package/template/theme-layouts/AdditionalStyling.css +50 -50
  178. package/template/theme-layouts/PrivateLayout.vue +8 -12
  179. package/template/theme-layouts/PublicLayout.vue +8 -12
  180. package/template/theme-layouts/SystemLayout.vue +8 -12
  181. package/template/vite.extend.js +45 -0
  182. package/template/vite.config.js +0 -409
@@ -1,93 +1,93 @@
1
1
  /* Theme CSS Variables */
2
2
  :root {
3
- --primary: #000000;
4
- --page_background_color: #000466;
5
- --page_text_color: #FFFFFF;
6
- --input_field_background_color: #03054a;
7
- --input_field_text_color: #FFFFFF;
8
- --input_field_border_color: #888C92;
9
- --primary_button_background_color: #FFFFFF;
10
- --primary_button_text_color: #000596;
11
- --primary_button_border_color: #FFFFFF;
12
- --secondary_button_background_color: #000466;
13
- --secondary_button_text_color: #FFFFFF;
14
- --secondary_button_border_color: #FFFFFF;
15
- --tertiary_button_background_color: #FFFFFF00;
16
- --tertiary_button_text_color: #FFFFFF;
17
- --tertiary_button_border_color: #FFFFFF00;
18
- --spinner_background_color: #03054A;
19
- --spinner_color: #FFFFFF;
20
- --modal_background_color: #FFFFFF;
21
- --modal_text_color: #222222;
22
- --modal_primary_button_background_color: #000596;
23
- --modal_primary_button_text_color: #FFFFFF;
24
- --modal_primary_button_border_color: #000596;
25
- --modal_secondary_button_background_color: #FFFFFF;
26
- --modal_secondary_button_text_color: #000596;
27
- --modal_secondary_button_border_color: #000596;
3
+ --primary: #000000;
4
+ --page_background_color: #000466;
5
+ --page_text_color: #ffffff;
6
+ --input_field_background_color: #03054a;
7
+ --input_field_text_color: #ffffff;
8
+ --input_field_border_color: #888c92;
9
+ --primary_button_background_color: #ffffff;
10
+ --primary_button_text_color: #000596;
11
+ --primary_button_border_color: #ffffff;
12
+ --secondary_button_background_color: #000466;
13
+ --secondary_button_text_color: #ffffff;
14
+ --secondary_button_border_color: #ffffff;
15
+ --tertiary_button_background_color: #ffffff00;
16
+ --tertiary_button_text_color: #ffffff;
17
+ --tertiary_button_border_color: #ffffff00;
18
+ --spinner_background_color: #03054a;
19
+ --spinner_color: #ffffff;
20
+ --modal_background_color: #ffffff;
21
+ --modal_text_color: #222222;
22
+ --modal_primary_button_background_color: #000596;
23
+ --modal_primary_button_text_color: #ffffff;
24
+ --modal_primary_button_border_color: #000596;
25
+ --modal_secondary_button_background_color: #ffffff;
26
+ --modal_secondary_button_text_color: #000596;
27
+ --modal_secondary_button_border_color: #000596;
28
28
  }
29
29
 
30
30
  /* Primary Color */
31
31
  .primary {
32
- color: var(--primary, #000000);
32
+ color: var(--primary, #000000);
33
33
  }
34
34
 
35
35
  /* Page Styles */
36
36
  .page {
37
- background-color: var(--page_background_color, #000466);
38
- color: var(--page_text_color, #FFFFFF);
37
+ background-color: var(--page_background_color, #000466);
38
+ color: var(--page_text_color, #ffffff);
39
39
  }
40
40
 
41
41
  /* Input Field Styles */
42
42
  .input-field {
43
- background-color: var(--input_field_background_color, #03054a);
44
- color: var(--input_field_text_color, #FFFFFF);
45
- border-color: var(--input_field_border_color, #888C92);
43
+ background-color: var(--input_field_background_color, #03054a);
44
+ color: var(--input_field_text_color, #ffffff);
45
+ border-color: var(--input_field_border_color, #888c92);
46
46
  }
47
47
 
48
48
  /* Primary Button Styles */
49
49
  .primary-button {
50
- background-color: var(--primary_button_background_color, #FFFFFF);
51
- color: var(--primary_button_text_color, #000596);
52
- border-color: var(--primary_button_border_color, #FFFFFF);
50
+ background-color: var(--primary_button_background_color, #ffffff);
51
+ color: var(--primary_button_text_color, #000596);
52
+ border-color: var(--primary_button_border_color, #ffffff);
53
53
  }
54
54
 
55
55
  /* Secondary Button Styles */
56
56
  .secondary-button {
57
- background-color: var(--secondary_button_background_color, #000466);
58
- color: var(--secondary_button_text_color, #FFFFFF);
59
- border-color: var(--secondary_button_border_color, #FFFFFF);
57
+ background-color: var(--secondary_button_background_color, #000466);
58
+ color: var(--secondary_button_text_color, #ffffff);
59
+ border-color: var(--secondary_button_border_color, #ffffff);
60
60
  }
61
61
 
62
62
  /* Tertiary Button Styles */
63
63
  .tertiary-button {
64
- background-color: var(--tertiary_button_background_color, #FFFFFF00);
65
- color: var(--tertiary_button_text_color, #FFFFFF);
66
- border-color: var(--tertiary_button_border_color, #FFFFFF00);
64
+ background-color: var(--tertiary_button_background_color, #ffffff00);
65
+ color: var(--tertiary_button_text_color, #ffffff);
66
+ border-color: var(--tertiary_button_border_color, #ffffff00);
67
67
  }
68
68
 
69
69
  /* Spinner Styles */
70
70
  .spinner {
71
- background-color: var(--spinner_background_color, #03054A);
72
- color: var(--spinner_color, #FFFFFF);
71
+ background-color: var(--spinner_background_color, #03054a);
72
+ color: var(--spinner_color, #ffffff);
73
73
  }
74
74
 
75
75
  /* Modal Styles */
76
76
  .modal {
77
- background-color: var(--modal_background_color, #FFFFFF);
78
- color: var(--modal_text_color, #222222);
77
+ background-color: var(--modal_background_color, #ffffff);
78
+ color: var(--modal_text_color, #222222);
79
79
  }
80
80
 
81
81
  /* Modal Primary Button Styles */
82
82
  .modal-primary-button {
83
- background-color: var(--modal_primary_button_background_color, #000596);
84
- color: var(--modal_primary_button_text_color, #FFFFFF);
85
- border-color: var(--modal_primary_button_border_color, #000596);
83
+ background-color: var(--modal_primary_button_background_color, #000596);
84
+ color: var(--modal_primary_button_text_color, #ffffff);
85
+ border-color: var(--modal_primary_button_border_color, #000596);
86
86
  }
87
87
 
88
88
  /* Modal Secondary Button Styles */
89
89
  .modal-secondary-button {
90
- background-color: var(--modal_secondary_button_background_color, #FFFFFF);
91
- color: var(--modal_secondary_button_text_color, #000596);
92
- border-color: var(--modal_secondary_button_border_color, #000596);
90
+ background-color: var(--modal_secondary_button_background_color, #ffffff);
91
+ color: var(--modal_secondary_button_text_color, #000596);
92
+ border-color: var(--modal_secondary_button_border_color, #000596);
93
93
  }
@@ -2,21 +2,19 @@
2
2
  <slot />
3
3
  </template>
4
4
 
5
- <style scoped>
6
-
7
- </style>
5
+ <style scoped></style>
8
6
 
9
7
  <script setup>
10
- import { ref } from "vue";
8
+ import { ref } from "vue"
11
9
  defineOptions({
12
10
  inheritAttrs: false,
13
- });
11
+ })
14
12
 
15
13
  const props = defineProps({
16
- usrLang: {
17
- type: String,
18
- required: true,
19
- },
14
+ usrLang: {
15
+ type: String,
16
+ required: true,
17
+ },
20
18
  portalSettings: {
21
19
  type: Object,
22
20
  required: true,
@@ -33,7 +31,5 @@ const props = defineProps({
33
31
  type: Object,
34
32
  required: true,
35
33
  },
36
- });
37
-
34
+ })
38
35
  </script>
39
-
@@ -2,21 +2,19 @@
2
2
  <slot />
3
3
  </template>
4
4
 
5
- <style scoped>
6
-
7
- </style>
5
+ <style scoped></style>
8
6
 
9
7
  <script setup>
10
- import { ref } from "vue";
8
+ import { ref } from "vue"
11
9
  defineOptions({
12
10
  inheritAttrs: false,
13
- });
11
+ })
14
12
 
15
13
  const props = defineProps({
16
- usrLang: {
17
- type: String,
18
- required: true,
19
- },
14
+ usrLang: {
15
+ type: String,
16
+ required: true,
17
+ },
20
18
  portalSettings: {
21
19
  type: Object,
22
20
  required: true,
@@ -33,7 +31,5 @@ const props = defineProps({
33
31
  type: Object,
34
32
  required: true,
35
33
  },
36
- });
37
-
34
+ })
38
35
  </script>
39
-
@@ -2,21 +2,19 @@
2
2
  <slot />
3
3
  </template>
4
4
 
5
- <style scoped>
6
-
7
- </style>
5
+ <style scoped></style>
8
6
 
9
7
  <script setup>
10
- import { ref } from "vue";
8
+ import { ref } from "vue"
11
9
  defineOptions({
12
10
  inheritAttrs: false,
13
- });
11
+ })
14
12
 
15
13
  const props = defineProps({
16
- usrLang: {
17
- type: String,
18
- required: true,
19
- },
14
+ usrLang: {
15
+ type: String,
16
+ required: true,
17
+ },
20
18
  portalSettings: {
21
19
  type: Object,
22
20
  required: true,
@@ -33,7 +31,5 @@ const props = defineProps({
33
31
  type: Object,
34
32
  required: true,
35
33
  },
36
- });
37
-
34
+ })
38
35
  </script>
39
-
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Extend the GxP runtime Vite config without replacing it.
3
+ *
4
+ * The toolkit loads this file (if present at the project root) and deep-merges
5
+ * the returned config into its runtime Vite config:
6
+ * - arrays (plugins, resolve.dedupe, ...) are concatenated
7
+ * - objects (resolve.alias, define, server, build.rollupOptions, ...) are
8
+ * merged key-by-key
9
+ * - primitives overwrite
10
+ *
11
+ * Two shapes are supported:
12
+ * 1. A plain config object (below).
13
+ * 2. A function `({ mode, command, env, runtimeConfig }) => config` — use
14
+ * this if you need env/mode-aware extension, or want to read the base
15
+ * runtime config to decide what to add.
16
+ *
17
+ * Only the fields you care about need to appear here; everything else keeps
18
+ * whatever the runtime set. Uncomment the blocks below as you need them.
19
+ */
20
+
21
+ // import path from "path";
22
+ // import { fileURLToPath } from "url";
23
+
24
+ // const __dirname = path.dirname(fileURLToPath(import.meta.url));
25
+
26
+ export default {
27
+ // resolve: {
28
+ // alias: {
29
+ // // "@" is already set to the project's src/ by the runtime — override
30
+ // // or add new aliases here as needed.
31
+ // "@components": path.resolve(__dirname, "src/components"),
32
+ // "@pages": path.resolve(__dirname, "src/pages"),
33
+ // "@composables": path.resolve(__dirname, "src/composables"),
34
+ // "@stores": path.resolve(__dirname, "src/stores"),
35
+ // "@helpers": path.resolve(__dirname, "src/helpers"),
36
+ // "@assets": path.resolve(__dirname, "src/assets"),
37
+ // },
38
+ // },
39
+ // Add extra Vite plugins here. They run after the runtime's plugins.
40
+ // plugins: [somePlugin()],
41
+ // Expose extra compile-time constants to your app.
42
+ // define: {
43
+ // "import.meta.env.VITE_MY_FLAG": JSON.stringify("value"),
44
+ // },
45
+ }