@friggframework/devtools 2.0.0--canary.398.dd443c7.0 → 2.0.0--canary.402.d2f4ae6.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 (164) hide show
  1. package/frigg-cli/.eslintrc.js +141 -0
  2. package/frigg-cli/__tests__/jest.config.js +102 -0
  3. package/frigg-cli/__tests__/unit/commands/build.test.js +483 -0
  4. package/frigg-cli/__tests__/unit/commands/install.test.js +418 -0
  5. package/frigg-cli/__tests__/unit/commands/ui.test.js +592 -0
  6. package/frigg-cli/__tests__/utils/command-tester.js +170 -0
  7. package/frigg-cli/__tests__/utils/mock-factory.js +270 -0
  8. package/frigg-cli/__tests__/utils/test-fixtures.js +463 -0
  9. package/frigg-cli/__tests__/utils/test-setup.js +286 -0
  10. package/frigg-cli/generate-command/__tests__/generate-command.test.js +312 -0
  11. package/frigg-cli/generate-command/azure-generator.js +43 -0
  12. package/frigg-cli/generate-command/gcp-generator.js +47 -0
  13. package/frigg-cli/generate-command/index.js +332 -0
  14. package/frigg-cli/generate-command/terraform-generator.js +555 -0
  15. package/frigg-cli/index.js +19 -1
  16. package/frigg-cli/init-command/backend-first-handler.js +756 -0
  17. package/frigg-cli/init-command/index.js +93 -0
  18. package/frigg-cli/init-command/template-handler.js +143 -0
  19. package/frigg-cli/package.json +51 -0
  20. package/frigg-cli/test/init-command.test.js +180 -0
  21. package/frigg-cli/test/npm-registry.test.js +319 -0
  22. package/frigg-cli/ui-command/index.js +154 -0
  23. package/frigg-cli/utils/app-resolver.js +319 -0
  24. package/frigg-cli/utils/backend-path.js +25 -0
  25. package/frigg-cli/utils/npm-registry.js +167 -0
  26. package/frigg-cli/utils/process-manager.js +199 -0
  27. package/frigg-cli/utils/repo-detection.js +405 -0
  28. package/infrastructure/serverless-template.js +177 -292
  29. package/management-ui/.eslintrc.js +22 -0
  30. package/management-ui/README.md +203 -0
  31. package/management-ui/components.json +21 -0
  32. package/management-ui/docs/phase2-integration-guide.md +320 -0
  33. package/management-ui/{dist/index.html → index.html} +1 -2
  34. package/management-ui/package-lock.json +16517 -0
  35. package/management-ui/package.json +76 -0
  36. package/management-ui/packages/devtools/frigg-cli/ui-command/index.js +302 -0
  37. package/management-ui/postcss.config.js +6 -0
  38. package/management-ui/server/api/backend.js +256 -0
  39. package/management-ui/server/api/cli.js +315 -0
  40. package/management-ui/server/api/codegen.js +663 -0
  41. package/management-ui/server/api/connections.js +857 -0
  42. package/management-ui/server/api/discovery.js +185 -0
  43. package/management-ui/server/api/environment/index.js +1 -0
  44. package/management-ui/server/api/environment/router.js +378 -0
  45. package/management-ui/server/api/environment.js +328 -0
  46. package/management-ui/server/api/integrations.js +876 -0
  47. package/management-ui/server/api/logs.js +248 -0
  48. package/management-ui/server/api/monitoring.js +282 -0
  49. package/management-ui/server/api/open-ide.js +31 -0
  50. package/management-ui/server/api/project.js +1029 -0
  51. package/management-ui/server/api/users/sessions.js +371 -0
  52. package/management-ui/server/api/users/simulation.js +254 -0
  53. package/management-ui/server/api/users.js +362 -0
  54. package/management-ui/server/api-contract.md +275 -0
  55. package/management-ui/server/index.js +873 -0
  56. package/management-ui/server/middleware/errorHandler.js +93 -0
  57. package/management-ui/server/middleware/security.js +32 -0
  58. package/management-ui/server/processManager.js +296 -0
  59. package/management-ui/server/server.js +346 -0
  60. package/management-ui/server/services/aws-monitor.js +413 -0
  61. package/management-ui/server/services/npm-registry.js +347 -0
  62. package/management-ui/server/services/template-engine.js +538 -0
  63. package/management-ui/server/utils/cliIntegration.js +220 -0
  64. package/management-ui/server/utils/environment/auditLogger.js +471 -0
  65. package/management-ui/server/utils/environment/awsParameterStore.js +264 -0
  66. package/management-ui/server/utils/environment/encryption.js +278 -0
  67. package/management-ui/server/utils/environment/envFileManager.js +286 -0
  68. package/management-ui/server/utils/import-commonjs.js +28 -0
  69. package/management-ui/server/utils/response.js +83 -0
  70. package/management-ui/server/websocket/handler.js +325 -0
  71. package/management-ui/src/App.jsx +109 -0
  72. package/management-ui/src/components/AppRouter.jsx +65 -0
  73. package/management-ui/src/components/Button.jsx +70 -0
  74. package/management-ui/src/components/Card.jsx +97 -0
  75. package/management-ui/src/components/EnvironmentCompare.jsx +400 -0
  76. package/management-ui/src/components/EnvironmentEditor.jsx +372 -0
  77. package/management-ui/src/components/EnvironmentImportExport.jsx +469 -0
  78. package/management-ui/src/components/EnvironmentSchema.jsx +491 -0
  79. package/management-ui/src/components/EnvironmentSecurity.jsx +463 -0
  80. package/management-ui/src/components/ErrorBoundary.jsx +73 -0
  81. package/management-ui/src/components/IntegrationCard.jsx +481 -0
  82. package/management-ui/src/components/IntegrationCardEnhanced.jsx +770 -0
  83. package/management-ui/src/components/IntegrationExplorer.jsx +379 -0
  84. package/management-ui/src/components/IntegrationStatus.jsx +336 -0
  85. package/management-ui/src/components/Layout.jsx +716 -0
  86. package/management-ui/src/components/LoadingSpinner.jsx +113 -0
  87. package/management-ui/src/components/RepositoryPicker.jsx +248 -0
  88. package/management-ui/src/components/SessionMonitor.jsx +350 -0
  89. package/management-ui/src/components/StatusBadge.jsx +208 -0
  90. package/management-ui/src/components/UserContextSwitcher.jsx +212 -0
  91. package/management-ui/src/components/UserSimulation.jsx +327 -0
  92. package/management-ui/src/components/Welcome.jsx +434 -0
  93. package/management-ui/src/components/codegen/APIEndpointGenerator.jsx +637 -0
  94. package/management-ui/src/components/codegen/APIModuleSelector.jsx +227 -0
  95. package/management-ui/src/components/codegen/CodeGenerationWizard.jsx +247 -0
  96. package/management-ui/src/components/codegen/CodePreviewEditor.jsx +316 -0
  97. package/management-ui/src/components/codegen/DynamicModuleForm.jsx +271 -0
  98. package/management-ui/src/components/codegen/FormBuilder.jsx +737 -0
  99. package/management-ui/src/components/codegen/IntegrationGenerator.jsx +855 -0
  100. package/management-ui/src/components/codegen/ProjectScaffoldWizard.jsx +797 -0
  101. package/management-ui/src/components/codegen/SchemaBuilder.jsx +303 -0
  102. package/management-ui/src/components/codegen/TemplateSelector.jsx +586 -0
  103. package/management-ui/src/components/codegen/index.js +10 -0
  104. package/management-ui/src/components/connections/ConnectionConfigForm.jsx +362 -0
  105. package/management-ui/src/components/connections/ConnectionHealthMonitor.jsx +182 -0
  106. package/management-ui/src/components/connections/ConnectionTester.jsx +200 -0
  107. package/management-ui/src/components/connections/EntityRelationshipMapper.jsx +292 -0
  108. package/management-ui/src/components/connections/OAuthFlow.jsx +204 -0
  109. package/management-ui/src/components/connections/index.js +5 -0
  110. package/management-ui/src/components/index.js +21 -0
  111. package/management-ui/src/components/monitoring/APIGatewayMetrics.jsx +222 -0
  112. package/management-ui/src/components/monitoring/LambdaMetrics.jsx +169 -0
  113. package/management-ui/src/components/monitoring/MetricsChart.jsx +197 -0
  114. package/management-ui/src/components/monitoring/MonitoringDashboard.jsx +393 -0
  115. package/management-ui/src/components/monitoring/SQSMetrics.jsx +246 -0
  116. package/management-ui/src/components/monitoring/index.js +6 -0
  117. package/management-ui/src/components/monitoring/monitoring.css +218 -0
  118. package/management-ui/src/components/theme-provider.jsx +52 -0
  119. package/management-ui/src/components/theme-toggle.jsx +39 -0
  120. package/management-ui/src/components/ui/badge.tsx +36 -0
  121. package/management-ui/src/components/ui/button.test.jsx +56 -0
  122. package/management-ui/src/components/ui/button.tsx +57 -0
  123. package/management-ui/src/components/ui/card.tsx +76 -0
  124. package/management-ui/src/components/ui/dropdown-menu.tsx +199 -0
  125. package/management-ui/src/components/ui/select.tsx +157 -0
  126. package/management-ui/src/components/ui/skeleton.jsx +15 -0
  127. package/management-ui/src/hooks/useFrigg.jsx +601 -0
  128. package/management-ui/src/hooks/useSocket.jsx +58 -0
  129. package/management-ui/src/index.css +193 -0
  130. package/management-ui/src/lib/utils.ts +6 -0
  131. package/management-ui/src/main.jsx +10 -0
  132. package/management-ui/src/pages/CodeGeneration.jsx +14 -0
  133. package/management-ui/src/pages/Connections.jsx +252 -0
  134. package/management-ui/src/pages/ConnectionsEnhanced.jsx +633 -0
  135. package/management-ui/src/pages/Dashboard.jsx +311 -0
  136. package/management-ui/src/pages/Environment.jsx +314 -0
  137. package/management-ui/src/pages/IntegrationConfigure.jsx +669 -0
  138. package/management-ui/src/pages/IntegrationDiscovery.jsx +567 -0
  139. package/management-ui/src/pages/IntegrationTest.jsx +742 -0
  140. package/management-ui/src/pages/Integrations.jsx +253 -0
  141. package/management-ui/src/pages/Monitoring.jsx +17 -0
  142. package/management-ui/src/pages/Simulation.jsx +155 -0
  143. package/management-ui/src/pages/Users.jsx +492 -0
  144. package/management-ui/src/services/api.js +41 -0
  145. package/management-ui/src/services/apiModuleService.js +193 -0
  146. package/management-ui/src/services/websocket-handlers.js +120 -0
  147. package/management-ui/src/test/api/project.test.js +273 -0
  148. package/management-ui/src/test/components/Welcome.test.jsx +378 -0
  149. package/management-ui/src/test/mocks/server.js +178 -0
  150. package/management-ui/src/test/setup.js +61 -0
  151. package/management-ui/src/test/utils/test-utils.jsx +134 -0
  152. package/management-ui/src/utils/repository.js +98 -0
  153. package/management-ui/src/utils/repository.test.js +118 -0
  154. package/management-ui/src/workflows/phase2-integration-workflows.js +884 -0
  155. package/management-ui/tailwind.config.js +63 -0
  156. package/management-ui/tsconfig.json +37 -0
  157. package/management-ui/tsconfig.node.json +10 -0
  158. package/management-ui/vite.config.js +26 -0
  159. package/management-ui/vitest.config.js +38 -0
  160. package/package.json +5 -5
  161. package/management-ui/dist/assets/index-BA21WgFa.js +0 -1221
  162. package/management-ui/dist/assets/index-CbM64Oba.js +0 -1221
  163. package/management-ui/dist/assets/index-CkvseXTC.css +0 -1
  164. /package/management-ui/{dist/assets/FriggLogo-B7Xx8ZW1.svg → src/assets/FriggLogo.svg} +0 -0
@@ -0,0 +1,141 @@
1
+ module.exports = {
2
+ env: {
3
+ browser: false,
4
+ es2021: true,
5
+ node: true,
6
+ jest: true
7
+ },
8
+ extends: [
9
+ 'standard'
10
+ ],
11
+ parserOptions: {
12
+ ecmaVersion: 'latest',
13
+ sourceType: 'commonjs'
14
+ },
15
+ rules: {
16
+ // Enforce consistent indentation
17
+ 'indent': ['error', 2],
18
+
19
+ // Enforce consistent spacing
20
+ 'space-before-function-paren': ['error', 'never'],
21
+ 'object-curly-spacing': ['error', 'always'],
22
+
23
+ // Enforce semicolons for consistency
24
+ 'semi': ['error', 'always'],
25
+
26
+ // Allow console.log in CLI applications
27
+ 'no-console': 'off',
28
+
29
+ // Allow process.exit in CLI applications
30
+ 'no-process-exit': 'off',
31
+
32
+ // Enforce consistent quote usage
33
+ 'quotes': ['error', 'single', { avoidEscape: true }],
34
+
35
+ // Enforce consistent comma usage
36
+ 'comma-dangle': ['error', 'never'],
37
+
38
+ // Enforce consistent line endings
39
+ 'eol-last': ['error', 'always'],
40
+
41
+ // Enforce consistent spacing around operators
42
+ 'space-infix-ops': 'error',
43
+
44
+ // Enforce consistent spacing in object literals
45
+ 'key-spacing': ['error', { beforeColon: false, afterColon: true }],
46
+
47
+ // Enforce consistent spacing in arrays
48
+ 'array-bracket-spacing': ['error', 'never'],
49
+
50
+ // Enforce consistent spacing in function calls
51
+ 'func-call-spacing': ['error', 'never'],
52
+
53
+ // Enforce consistent spacing around keywords
54
+ 'keyword-spacing': ['error', { before: true, after: true }],
55
+
56
+ // Enforce consistent line breaks
57
+ 'max-len': ['error', {
58
+ code: 120,
59
+ ignoreUrls: true,
60
+ ignoreStrings: true,
61
+ ignoreTemplateLiterals: true
62
+ }],
63
+
64
+ // Enforce consistent naming conventions
65
+ 'camelcase': ['error', { properties: 'never' }],
66
+
67
+ // Enforce consistent error handling
68
+ 'no-unused-vars': ['error', {
69
+ vars: 'all',
70
+ args: 'after-used',
71
+ ignoreRestSiblings: true
72
+ }],
73
+
74
+ // Allow async without await for command handlers
75
+ 'require-await': 'off',
76
+
77
+ // Enforce consistent return statements
78
+ 'consistent-return': 'error',
79
+
80
+ // Enforce proper error handling
81
+ 'handle-callback-err': 'error',
82
+
83
+ // Disallow modifying variables that are declared using const
84
+ 'no-const-assign': 'error',
85
+
86
+ // Disallow duplicate imports
87
+ 'no-duplicate-imports': 'error',
88
+
89
+ // Disallow unnecessary escape characters
90
+ 'no-useless-escape': 'error',
91
+
92
+ // Enforce consistent use of template literals
93
+ 'prefer-template': 'error',
94
+
95
+ // Enforce consistent use of destructuring
96
+ 'prefer-destructuring': ['error', {
97
+ array: true,
98
+ object: true
99
+ }, {
100
+ enforceForRenamedProperties: false
101
+ }]
102
+ },
103
+ overrides: [
104
+ {
105
+ files: ['**/__tests__/**/*.js', '**/*.test.js', '**/*.spec.js'],
106
+ env: {
107
+ jest: true
108
+ },
109
+ rules: {
110
+ // Allow longer lines in tests for readability
111
+ 'max-len': ['error', { code: 150 }],
112
+
113
+ // Allow anonymous functions in tests
114
+ 'func-names': 'off',
115
+
116
+ // Allow magic numbers in tests
117
+ 'no-magic-numbers': 'off',
118
+
119
+ // Allow nested describe/it blocks
120
+ 'max-nested-callbacks': 'off',
121
+
122
+ // Allow multiple expectations in tests
123
+ 'jest/prefer-expect-assertions': 'off'
124
+ }
125
+ },
126
+ {
127
+ files: ['index.js'],
128
+ rules: {
129
+ // Allow shebang in main CLI file
130
+ 'node/shebang': 'off'
131
+ }
132
+ }
133
+ ],
134
+ ignorePatterns: [
135
+ 'node_modules/',
136
+ 'coverage/',
137
+ 'dist/',
138
+ 'build/',
139
+ '*.min.js'
140
+ ]
141
+ };
@@ -0,0 +1,102 @@
1
+ module.exports = {
2
+ displayName: 'Frigg CLI Tests',
3
+ testMatch: [
4
+ '<rootDir>/__tests__/**/*.test.js',
5
+ '<rootDir>/__tests__/**/*.spec.js'
6
+ ],
7
+ testEnvironment: 'node',
8
+ collectCoverageFrom: [
9
+ '../**/*.js',
10
+ '!../**/*.test.js',
11
+ '!../**/*.spec.js',
12
+ '!../node_modules/**',
13
+ '!../__tests__/**',
14
+ '!../coverage/**'
15
+ ],
16
+ coverageDirectory: 'coverage',
17
+ coverageReporters: [
18
+ 'text',
19
+ 'text-summary',
20
+ 'html',
21
+ 'lcov',
22
+ 'json'
23
+ ],
24
+ coverageThreshold: {
25
+ global: {
26
+ branches: 85,
27
+ functions: 85,
28
+ lines: 85,
29
+ statements: 85
30
+ },
31
+ '../install-command/index.js': {
32
+ branches: 90,
33
+ functions: 90,
34
+ lines: 90,
35
+ statements: 90
36
+ },
37
+ '../build-command/index.js': {
38
+ branches: 90,
39
+ functions: 90,
40
+ lines: 90,
41
+ statements: 90
42
+ },
43
+ '../deploy-command/index.js': {
44
+ branches: 90,
45
+ functions: 90,
46
+ lines: 90,
47
+ statements: 90
48
+ },
49
+ '../ui-command/index.js': {
50
+ branches: 90,
51
+ functions: 90,
52
+ lines: 90,
53
+ statements: 90
54
+ },
55
+ '../generate-command/index.js': {
56
+ branches: 90,
57
+ functions: 90,
58
+ lines: 90,
59
+ statements: 90
60
+ }
61
+ },
62
+ setupFilesAfterEnv: [
63
+ '<rootDir>/utils/test-setup.js'
64
+ ],
65
+ testTimeout: 10000,
66
+ maxWorkers: '50%',
67
+ verbose: true,
68
+ collectCoverage: true,
69
+ coveragePathIgnorePatterns: [
70
+ '/node_modules/',
71
+ '/__tests__/',
72
+ '/coverage/',
73
+ '.test.js',
74
+ '.spec.js'
75
+ ],
76
+ moduleFileExtensions: [
77
+ 'js',
78
+ 'json',
79
+ 'node'
80
+ ],
81
+ transform: {},
82
+ testResultsProcessor: 'jest-sonar-reporter',
83
+ reporters: [
84
+ 'default',
85
+ [
86
+ 'jest-junit',
87
+ {
88
+ outputDirectory: 'coverage',
89
+ outputName: 'junit.xml',
90
+ ancestorSeparator: ' › ',
91
+ uniqueOutputName: 'false',
92
+ suiteNameTemplate: '{filepath}',
93
+ classNameTemplate: '{classname}',
94
+ titleTemplate: '{title}'
95
+ }
96
+ ]
97
+ ],
98
+ watchman: false,
99
+ forceExit: true,
100
+ detectOpenHandles: true,
101
+ errorOnDeprecated: true
102
+ };