@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,326 +1,350 @@
1
1
  <template>
2
- <div id="app">
3
- <!-- Dev Tools Modal -->
4
- <DevToolsModal
5
- v-if="showDevTools"
6
- :store="gxpStore"
7
- :current-layout="currentLayoutName"
8
- @close="showDevTools = false"
9
- @change-layout="changeLayout"
10
- />
11
-
12
- <!-- Main Application -->
13
- <component
14
- :is="currentLayout"
15
- :usr-lang="userLanguage"
16
- :portal-settings="themeSettings"
17
- :portal-language="portalStringsList"
18
- :portal-navigation="portalNavigationList"
19
- :portal-assets="portalAssetList"
20
- >
21
- <!-- Your Custom Plugin Content -->
22
- <Plugin
23
- :router="mockRouter"
24
- />
25
- </component>
26
-
27
- <!-- Dev Tools Toggle Button (visible in corner) -->
28
- <button
29
- class="gx-devtools-trigger"
30
- @click="showDevTools = true"
31
- title="Open Dev Tools (Ctrl+Shift+D)"
32
- >
33
- <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
34
- <circle cx="12" cy="12" r="3"/>
35
- <path d="M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42"/>
36
- </svg>
37
- </button>
38
- </div>
2
+ <div id="app">
3
+ <!-- Dev Tools Modal -->
4
+ <DevToolsModal
5
+ v-if="showDevTools"
6
+ :store="gxpStore"
7
+ :current-layout="currentLayoutName"
8
+ @close="showDevTools = false"
9
+ @change-layout="changeLayout"
10
+ />
11
+
12
+ <!-- Main Application -->
13
+ <component
14
+ :is="currentLayout"
15
+ :usr-lang="userLanguage"
16
+ :portal-settings="themeSettings"
17
+ :portal-language="portalStringsList"
18
+ :portal-navigation="portalNavigationList"
19
+ :portal-assets="portalAssetList"
20
+ >
21
+ <!-- Your Custom Plugin Content -->
22
+ <Plugin :router="mockRouter" />
23
+ </component>
24
+
25
+ <!-- Dev Tools Toggle Button (visible in corner) -->
26
+ <button
27
+ class="gx-devtools-trigger"
28
+ @click="showDevTools = true"
29
+ title="Open Dev Tools (Ctrl+Shift+D)"
30
+ >
31
+ <svg
32
+ width="20"
33
+ height="20"
34
+ viewBox="0 0 24 24"
35
+ fill="none"
36
+ stroke="currentColor"
37
+ stroke-width="2"
38
+ >
39
+ <circle cx="12" cy="12" r="3" />
40
+ <path
41
+ d="M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42"
42
+ />
43
+ </svg>
44
+ </button>
45
+ </div>
39
46
  </template>
40
47
 
41
48
  <style scoped>
42
49
  #app {
43
- font-family: Avenir, Helvetica, Arial, sans-serif;
44
- -webkit-font-smoothing: antialiased;
45
- -moz-osx-font-smoothing: grayscale;
50
+ font-family: Avenir, Helvetica, Arial, sans-serif;
51
+ -webkit-font-smoothing: antialiased;
52
+ -moz-osx-font-smoothing: grayscale;
46
53
  }
47
54
 
48
55
  .gx-devtools-trigger {
49
- position: fixed;
50
- bottom: 20px;
51
- right: 20px;
52
- width: 44px;
53
- height: 44px;
54
- border-radius: 50%;
55
- background: #1e1e1e;
56
- border: 2px solid #3d3d3d;
57
- color: #61dafb;
58
- cursor: pointer;
59
- display: flex;
60
- align-items: center;
61
- justify-content: center;
62
- z-index: 99998;
63
- transition: all 0.2s;
64
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
56
+ position: fixed;
57
+ bottom: 20px;
58
+ right: 20px;
59
+ width: 44px;
60
+ height: 44px;
61
+ border-radius: 50%;
62
+ background: #1e1e1e;
63
+ border: 2px solid #3d3d3d;
64
+ color: #61dafb;
65
+ cursor: pointer;
66
+ display: flex;
67
+ align-items: center;
68
+ justify-content: center;
69
+ z-index: 99998;
70
+ transition: all 0.2s;
71
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
65
72
  }
66
73
 
67
74
  .gx-devtools-trigger:hover {
68
- background: #2d2d2d;
69
- border-color: #61dafb;
70
- transform: scale(1.1);
75
+ background: #2d2d2d;
76
+ border-color: #61dafb;
77
+ transform: scale(1.1);
71
78
  }
72
79
 
73
80
  .gx-devtools-trigger svg {
74
- animation: spin 10s linear infinite;
81
+ animation: spin 10s linear infinite;
75
82
  }
76
83
 
77
84
  @keyframes spin {
78
- from { transform: rotate(0deg); }
79
- to { transform: rotate(360deg); }
85
+ from {
86
+ transform: rotate(0deg);
87
+ }
88
+ to {
89
+ transform: rotate(360deg);
90
+ }
80
91
  }
81
92
  </style>
82
93
 
83
94
  <script setup>
84
- import { ref, shallowRef, onMounted, onUnmounted } from "vue";
95
+ import { ref, shallowRef, onMounted, onUnmounted } from "vue"
85
96
 
86
97
  // These imports use aliases configured in vite.config.js
87
98
  // @/ points to the client project's src/ directory
88
99
  // @layouts/ points to the client project's theme-layouts/ directory
89
- import Plugin from "@/Plugin.vue";
90
- import "@layouts/AdditionalStyling.css";
91
- import SystemLayout from "@layouts/SystemLayout.vue";
92
- import PrivateLayout from "@layouts/PrivateLayout.vue";
93
- import PublicLayout from "@layouts/PublicLayout.vue";
100
+ import Plugin from "@/Plugin.vue"
101
+ import "@layouts/AdditionalStyling.css"
102
+ import SystemLayout from "@layouts/SystemLayout.vue"
103
+ import PrivateLayout from "@layouts/PrivateLayout.vue"
104
+ import PublicLayout from "@layouts/PublicLayout.vue"
94
105
 
95
106
  // Dev Tools
96
- import DevToolsModal from "./dev-tools/DevToolsModal.vue";
107
+ import DevToolsModal from "./dev-tools/DevToolsModal.vue"
97
108
 
98
109
  // Initialize the GxP store from client project's stores/index.js
99
110
  // which re-exports useGxpStore from either the toolkit or a local copy
100
- import { useGxpStore } from "@/stores/index.js";
101
- window.useGxpStore = { useGxpStore };
111
+ import { useGxpStore } from "@/stores/index.js"
112
+ window.useGxpStore = { useGxpStore }
102
113
  // App state management
103
- const showDevTools = ref(false);
104
- const currentLayout = shallowRef(PublicLayout);
105
- const currentLayoutName = ref('public');
106
- const currentPage = ref('start');
107
- const isLoading = ref(false);
108
- const loadingMessage = ref('Loading...');
114
+ const showDevTools = ref(false)
115
+ const currentLayout = shallowRef(PublicLayout)
116
+ const currentLayoutName = ref("public")
117
+ const currentPage = ref("start")
118
+ const isLoading = ref(false)
119
+ const loadingMessage = ref("Loading...")
109
120
 
110
121
  // Layout management
111
122
  const changeLayout = (layout) => {
112
- currentLayoutName.value = layout;
113
- switch (layout) {
114
- case 'system':
115
- currentLayout.value = SystemLayout;
116
- break;
117
- case 'private':
118
- currentLayout.value = PrivateLayout;
119
- break;
120
- default:
121
- currentLayout.value = PublicLayout;
122
- currentLayoutName.value = 'public';
123
- break;
124
- }
125
- console.log(`[GxP] Layout changed to: ${currentLayoutName.value}`);
126
- };
123
+ currentLayoutName.value = layout
124
+ switch (layout) {
125
+ case "system":
126
+ currentLayout.value = SystemLayout
127
+ break
128
+ case "private":
129
+ currentLayout.value = PrivateLayout
130
+ break
131
+ default:
132
+ currentLayout.value = PublicLayout
133
+ currentLayoutName.value = "public"
134
+ break
135
+ }
136
+ console.log(`[GxP] Layout changed to: ${currentLayoutName.value}`)
137
+ }
127
138
 
128
139
  // Expose layout control to window
129
- window.changeLayout = changeLayout;
140
+ window.changeLayout = changeLayout
130
141
 
131
142
  // Initialize the GxP store
132
- const gxpStore = useGxpStore();
143
+ const gxpStore = useGxpStore()
133
144
  gxpStore.sockets?.primary?.listenForStateChange?.((event) => {
134
- console.log('🔗 GXP Store: State change event received', event);
135
- });
145
+ console.log("🔗 GXP Store: State change event received", event)
146
+ })
136
147
 
137
148
  // Navigation functions
138
149
  const goToPage = (page) => {
139
- currentPage.value = page;
140
- };
150
+ currentPage.value = page
151
+ }
141
152
 
142
153
  const resetToStart = () => {
143
- currentPage.value = 'start';
144
- };
154
+ currentPage.value = "start"
155
+ }
145
156
 
146
- const showLoading = (message = 'Loading...') => {
147
- loadingMessage.value = message;
148
- isLoading.value = true;
149
- };
157
+ const showLoading = (message = "Loading...") => {
158
+ loadingMessage.value = message
159
+ isLoading.value = true
160
+ }
150
161
 
151
162
  const hideLoading = () => {
152
- isLoading.value = false;
153
- };
163
+ isLoading.value = false
164
+ }
154
165
 
155
166
  const logout = () => {
156
- alert("Logging Out");
157
- };
167
+ alert("Logging Out")
168
+ }
158
169
 
159
170
  // Mock router to simulate platform navigation during development
160
171
  const mockRouter = {
161
- visit: (url, options = {}) => {
162
- console.log(`🔗 Mock Router: Navigating to ${url}`, options);
163
-
164
- // Simulate platform navigation behavior
165
- if (options.onStart) options.onStart();
166
-
167
- // Map platform routes to local pages
168
- const routeMap = {
169
- '/start': 'start',
170
- '/plugin': 'plugin',
171
- '/final': 'final',
172
- '/camera': 'plugin',
173
- '/results': 'plugin',
174
- '/share': 'plugin',
175
- '/instructions': 'plugin'
176
- };
177
-
178
- const targetPage = routeMap[url] || 'plugin';
179
-
180
- // Simulate async navigation
181
- setTimeout(() => {
182
- goToPage(targetPage);
183
- if (options.onFinish) options.onFinish();
184
- }, 100);
185
- }
186
- };
187
-
188
- const userLanguage = "";
172
+ visit: (url, options = {}) => {
173
+ console.log(`🔗 Mock Router: Navigating to ${url}`, options)
174
+
175
+ // Simulate platform navigation behavior
176
+ if (options.onStart) options.onStart()
177
+
178
+ // Map platform routes to local pages
179
+ const routeMap = {
180
+ "/start": "start",
181
+ "/plugin": "plugin",
182
+ "/final": "final",
183
+ "/camera": "plugin",
184
+ "/results": "plugin",
185
+ "/share": "plugin",
186
+ "/instructions": "plugin",
187
+ }
188
+
189
+ const targetPage = routeMap[url] || "plugin"
190
+
191
+ // Simulate async navigation
192
+ setTimeout(() => {
193
+ goToPage(targetPage)
194
+ if (options.onFinish) options.onFinish()
195
+ }, 100)
196
+ },
197
+ }
198
+
199
+ const userLanguage = ""
189
200
 
190
201
  // Theme configuration
191
202
  const themeSettings = {
192
- background_color: "#ffffff",
193
- text_color: "#333333",
194
- primary_color: "#FFD600",
195
- start_background_color: "linear-gradient(135deg, #667eea 0%, #764ba2 100%)",
196
- start_text_color: "#ffffff",
197
- final_background_color: "#4CAF50",
198
- final_text_color: "#ffffff",
199
- };
203
+ background_color: "#ffffff",
204
+ text_color: "#333333",
205
+ primary_color: "#FFD600",
206
+ start_background_color: "linear-gradient(135deg, #667eea 0%, #764ba2 100%)",
207
+ start_text_color: "#ffffff",
208
+ final_background_color: "#4CAF50",
209
+ final_text_color: "#ffffff",
210
+ }
200
211
 
201
212
  const themeColors = {
202
- background_color: "#ffffff",
203
- };
213
+ background_color: "#ffffff",
214
+ }
204
215
 
205
- const permissionFlags = [];
206
- const sockets = {};
207
- const userAuth = {};
216
+ const permissionFlags = []
217
+ const sockets = {}
218
+ const userAuth = {}
208
219
 
209
220
  // Update dependencyList with all the dependencies that will be set through the custom admin panel
210
221
  const dependencyList = {
211
- "project_location": 4
212
- };
222
+ project_location: 4,
223
+ }
213
224
 
214
225
  // Update pluginVars with all the variables that will be set through the custom admin panel
215
226
  const pluginVars = {
216
- "primary_color": "#FFD600",
217
- "projectId": 39,
218
- "apiPageAuthId": "46|j7vCLmx2KG70Ig8R5mtUcNMFcHExvFPZEOv31kKGe1033f2b",
219
- "apiBaseUrl": "https://api.efcloud.app",
220
- "idle_timeout": "30",
221
- };
227
+ primary_color: "#FFD600",
228
+ projectId: 39,
229
+ apiPageAuthId: "46|j7vCLmx2KG70Ig8R5mtUcNMFcHExvFPZEOv31kKGe1033f2b",
230
+ apiBaseUrl: "https://api.efcloud.app",
231
+ idle_timeout: "30",
232
+ }
222
233
 
223
- const userSession = "";
234
+ const userSession = ""
224
235
 
225
236
  const portalNavigationList = [
226
- {title: "Start", route: "/start"},
227
- {title: "Plugin", route: "/plugin"},
228
- {title: "Final", route: "/final"},
229
- {title: "Logout", route: "/logout", system_type: "logout"},
230
- ];
237
+ { title: "Start", route: "/start" },
238
+ { title: "Plugin", route: "/plugin" },
239
+ { title: "Final", route: "/final" },
240
+ { title: "Logout", route: "/logout", system_type: "logout" },
241
+ ]
231
242
 
232
243
  // Update assetList with all the assets that will be selected through the custom admin panel
233
244
  const appAssetList = {
234
- "main_logo": "https://dashboard.eventfinity.test/storage/assets/69/2HyPwh1692319982.png",
235
- "background_image": "https://dashboard.eventfinity.test/storage/assets/69/2HyPwh1692319982.png",
236
- };
245
+ main_logo:
246
+ "https://dashboard.eventfinity.test/storage/assets/69/2HyPwh1692319982.png",
247
+ background_image:
248
+ "https://dashboard.eventfinity.test/storage/assets/69/2HyPwh1692319982.png",
249
+ }
237
250
 
238
251
  const portalAssetList = {
239
- "main_logo": "https://dashboard.eventfinity.test/storage/assets/69/2HyPwh1692319982.png",
240
- "background_image": "https://dashboard.eventfinity.test/storage/assets/69/2HyPwh1692319982.png",
241
- };
252
+ main_logo:
253
+ "https://dashboard.eventfinity.test/storage/assets/69/2HyPwh1692319982.png",
254
+ background_image:
255
+ "https://dashboard.eventfinity.test/storage/assets/69/2HyPwh1692319982.png",
256
+ }
242
257
 
243
258
  const portalStringsList = {
244
- "start_line_one": "Welcome to Your App!",
245
- "start_line_two": "Touch to begin your experience",
246
- "start_touch_start": "Get started by touching the button below",
247
- "final_line_one": "Thank You!",
248
- "final_line_two": "Your experience has been completed successfully",
249
- "final_line_three": "Touch anywhere to start over",
250
- "welcome_text": "Hello World",
251
- };
259
+ start_line_one: "Welcome to Your App!",
260
+ start_line_two: "Touch to begin your experience",
261
+ start_touch_start: "Get started by touching the button below",
262
+ final_line_one: "Thank You!",
263
+ final_line_two: "Your experience has been completed successfully",
264
+ final_line_three: "Touch anywhere to start over",
265
+ welcome_text: "Hello World",
266
+ }
252
267
 
253
268
  const appStringsList = {
254
- "start_line_one": "Welcome to Your App!",
255
- "start_line_two": "Touch to begin your experience",
256
- "start_touch_start": "Get started by touching the button below",
257
- "final_line_one": "Thank You!",
258
- "final_line_two": "Your experience has been completed successfully",
259
- "final_line_three": "Touch anywhere to start over",
260
- "welcome_text": "Hello World",
261
- };
269
+ start_line_one: "Welcome to Your App!",
270
+ start_line_two: "Touch to begin your experience",
271
+ start_touch_start: "Get started by touching the button below",
272
+ final_line_one: "Thank You!",
273
+ final_line_two: "Your experience has been completed successfully",
274
+ final_line_three: "Touch anywhere to start over",
275
+ welcome_text: "Hello World",
276
+ }
262
277
 
263
278
  // Keyboard shortcut handler
264
279
  function handleKeydown(e) {
265
- // Ctrl+Shift+D (or Cmd+Shift+D on Mac) to toggle dev tools
266
- if ((e.ctrlKey || e.metaKey) && e.shiftKey && e.key === 'D') {
267
- e.preventDefault();
268
- showDevTools.value = !showDevTools.value;
269
- }
280
+ // Ctrl+Shift+D (or Cmd+Shift+D on Mac) to toggle dev tools
281
+ if ((e.ctrlKey || e.metaKey) && e.shiftKey && e.key === "D") {
282
+ e.preventDefault()
283
+ showDevTools.value = !showDevTools.value
284
+ }
270
285
  }
271
286
 
272
287
  // Setup window.gxDevTools API
273
288
  function setupDevToolsAPI() {
274
- window.gxDevTools = {
275
- open: () => {
276
- showDevTools.value = true;
277
- console.log('[GxP] Dev Tools opened');
278
- },
279
- close: () => {
280
- showDevTools.value = false;
281
- console.log('[GxP] Dev Tools closed');
282
- },
283
- toggle: () => {
284
- showDevTools.value = !showDevTools.value;
285
- console.log(`[GxP] Dev Tools ${showDevTools.value ? 'opened' : 'closed'}`);
286
- },
287
- isOpen: () => showDevTools.value,
288
- // Convenience methods
289
- store: () => gxpStore,
290
- setLayout: (layout) => changeLayout(layout),
291
- getLayout: () => currentLayoutName.value,
292
- };
293
-
294
- // Legacy support
295
- window.toggleConfigPanel = () => window.gxDevTools.toggle();
289
+ window.gxDevTools = {
290
+ open: () => {
291
+ showDevTools.value = true
292
+ console.log("[GxP] Dev Tools opened")
293
+ },
294
+ close: () => {
295
+ showDevTools.value = false
296
+ console.log("[GxP] Dev Tools closed")
297
+ },
298
+ toggle: () => {
299
+ showDevTools.value = !showDevTools.value
300
+ console.log(`[GxP] Dev Tools ${showDevTools.value ? "opened" : "closed"}`)
301
+ },
302
+ isOpen: () => showDevTools.value,
303
+ // Convenience methods
304
+ store: () => gxpStore,
305
+ setLayout: (layout) => changeLayout(layout),
306
+ getLayout: () => currentLayoutName.value,
307
+ }
308
+
309
+ // Legacy support
310
+ window.toggleConfigPanel = () => window.gxDevTools.toggle()
296
311
  }
297
312
 
298
313
  // Expose functions for use in Plugin component
299
314
  defineExpose({
300
- goToPage,
301
- resetToStart,
302
- showLoading,
303
- hideLoading,
304
- gxpStore
305
- });
315
+ goToPage,
316
+ resetToStart,
317
+ showLoading,
318
+ hideLoading,
319
+ gxpStore,
320
+ })
306
321
 
307
322
  onMounted(() => {
308
- // Setup keyboard shortcut
309
- document.addEventListener('keydown', handleKeydown);
310
-
311
- // Setup dev tools API
312
- setupDevToolsAPI();
313
-
314
- // Welcome message
315
- console.log('%c GxP Developer Toolkit ', 'background: #61dafb; color: #1e1e1e; font-size: 14px; padding: 4px 8px; border-radius: 4px;');
316
- console.log('%c Dev Tools: Press Ctrl+Shift+D or click the gear icon ', 'color: #888; font-size: 12px;');
317
- console.log('%c Console API: window.gxDevTools.open() / .close() / .toggle() ', 'color: #888; font-size: 12px;');
318
- });
323
+ // Setup keyboard shortcut
324
+ document.addEventListener("keydown", handleKeydown)
325
+
326
+ // Setup dev tools API
327
+ setupDevToolsAPI()
328
+
329
+ // Welcome message
330
+ console.log(
331
+ "%c GxP Developer Toolkit ",
332
+ "background: #61dafb; color: #1e1e1e; font-size: 14px; padding: 4px 8px; border-radius: 4px;",
333
+ )
334
+ console.log(
335
+ "%c Dev Tools: Press Ctrl+Shift+D or click the gear icon ",
336
+ "color: #888; font-size: 12px;",
337
+ )
338
+ console.log(
339
+ "%c Console API: window.gxDevTools.open() / .close() / .toggle() ",
340
+ "color: #888; font-size: 12px;",
341
+ )
342
+ })
319
343
 
320
344
  onUnmounted(() => {
321
- document.removeEventListener('keydown', handleKeydown);
322
- delete window.gxDevTools;
323
- delete window.toggleConfigPanel;
324
- delete window.changeLayout;
325
- });
345
+ document.removeEventListener("keydown", handleKeydown)
346
+ delete window.gxDevTools
347
+ delete window.toggleConfigPanel
348
+ delete window.changeLayout
349
+ })
326
350
  </script>