proteum 1.0.3 → 2.0.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 (184) hide show
  1. package/AGENTS.md +92 -0
  2. package/agents/codex/AGENTS.md +95 -0
  3. package/agents/codex/CODING_STYLE.md +71 -0
  4. package/agents/codex/agents.md.zip +0 -0
  5. package/agents/codex/client/AGENTS.md +102 -0
  6. package/agents/codex/client/pages/AGENTS.md +35 -0
  7. package/agents/codex/server/routes/AGENTS.md +12 -0
  8. package/agents/codex/server/services/AGENTS.md +137 -0
  9. package/agents/codex/tests/AGENTS.md +8 -0
  10. package/cli/app/config.ts +12 -17
  11. package/cli/app/index.ts +59 -99
  12. package/cli/bin.js +1 -1
  13. package/cli/commands/build.ts +23 -12
  14. package/cli/commands/check.ts +19 -0
  15. package/cli/commands/deploy/app.ts +4 -8
  16. package/cli/commands/deploy/web.ts +16 -20
  17. package/cli/commands/dev.ts +185 -75
  18. package/cli/commands/devEvents.ts +106 -0
  19. package/cli/commands/init.ts +63 -57
  20. package/cli/commands/lint.ts +21 -0
  21. package/cli/commands/refresh.ts +6 -6
  22. package/cli/commands/typecheck.ts +18 -0
  23. package/cli/compiler/client/identite.ts +79 -49
  24. package/cli/compiler/client/index.ts +132 -214
  25. package/cli/compiler/common/bundleAnalysis.ts +94 -0
  26. package/cli/compiler/common/clientManifest.ts +67 -0
  27. package/cli/compiler/common/controllers.ts +288 -0
  28. package/cli/compiler/common/files/autres.ts +7 -18
  29. package/cli/compiler/common/files/images.ts +40 -37
  30. package/cli/compiler/common/files/style.ts +12 -25
  31. package/cli/compiler/common/generatedRouteModules.ts +368 -0
  32. package/cli/compiler/common/index.ts +29 -68
  33. package/cli/compiler/common/loaders/forbid-ssr-import.js +13 -0
  34. package/cli/compiler/common/rspackAliases.ts +13 -0
  35. package/cli/compiler/common/scripts.ts +37 -0
  36. package/cli/compiler/index.ts +764 -234
  37. package/cli/compiler/server/index.ts +52 -77
  38. package/cli/compiler/writeIfChanged.ts +21 -0
  39. package/cli/index.ts +65 -90
  40. package/cli/paths.ts +51 -57
  41. package/cli/print.ts +17 -11
  42. package/cli/tsconfig.json +5 -4
  43. package/cli/utils/agents.ts +100 -0
  44. package/cli/utils/check.ts +71 -0
  45. package/cli/utils/index.ts +1 -3
  46. package/cli/utils/keyboard.ts +8 -25
  47. package/cli/utils/runProcess.ts +30 -0
  48. package/client/app/component.tsx +29 -29
  49. package/client/app/index.ts +36 -57
  50. package/client/app/service.ts +7 -12
  51. package/client/app.tsconfig.json +2 -2
  52. package/client/components/Dialog/Manager.ssr.tsx +40 -0
  53. package/client/components/Dialog/Manager.tsx +119 -150
  54. package/client/components/Dialog/status.tsx +3 -3
  55. package/client/components/index.ts +1 -1
  56. package/client/components/types.d.ts +1 -3
  57. package/client/dev/hmr.ts +65 -0
  58. package/client/global.d.ts +2 -2
  59. package/client/hooks.ts +6 -9
  60. package/client/index.ts +2 -1
  61. package/client/islands/index.ts +7 -0
  62. package/client/islands/useDeferredModule.ts +199 -0
  63. package/client/pages/_layout/index.tsx +4 -12
  64. package/client/pages/useHeader.tsx +14 -21
  65. package/client/router.ts +27 -0
  66. package/client/services/router/components/Link.tsx +34 -27
  67. package/client/services/router/components/Page.tsx +6 -14
  68. package/client/services/router/components/router.ssr.tsx +36 -0
  69. package/client/services/router/components/router.tsx +63 -83
  70. package/client/services/router/index.tsx +185 -220
  71. package/client/services/router/request/api.ts +97 -119
  72. package/client/services/router/request/history.ts +2 -2
  73. package/client/services/router/request/index.ts +13 -12
  74. package/client/services/router/request/multipart.ts +72 -62
  75. package/client/services/router/response/index.tsx +68 -61
  76. package/client/services/router/response/page.ts +28 -32
  77. package/client/utils/dom.ts +17 -33
  78. package/common/app/index.ts +3 -3
  79. package/common/data/chaines/index.ts +22 -23
  80. package/common/data/dates.ts +35 -70
  81. package/common/data/markdown.ts +42 -39
  82. package/common/dev/serverHotReload.ts +26 -0
  83. package/common/errors/index.tsx +110 -142
  84. package/common/router/contracts.ts +29 -0
  85. package/common/router/index.ts +89 -108
  86. package/common/router/layouts.ts +34 -47
  87. package/common/router/pageSetup.ts +50 -0
  88. package/common/router/register.ts +53 -24
  89. package/common/router/request/api.ts +30 -36
  90. package/common/router/request/index.ts +2 -8
  91. package/common/router/response/index.ts +8 -15
  92. package/common/router/response/page.ts +70 -58
  93. package/common/utils.ts +1 -1
  94. package/eslint.js +62 -0
  95. package/package.json +12 -45
  96. package/prettier.config.cjs +9 -0
  97. package/scripts/cleanup-generated-controllers.ts +62 -0
  98. package/scripts/fix-reference-app-typing.ts +490 -0
  99. package/scripts/refactor-client-app-imports.ts +244 -0
  100. package/scripts/refactor-client-pages.ts +587 -0
  101. package/scripts/refactor-server-controllers.ts +470 -0
  102. package/scripts/refactor-server-runtime-aliases.ts +360 -0
  103. package/scripts/restore-client-app-import-files.ts +41 -0
  104. package/scripts/restore-files-from-git-head.ts +20 -0
  105. package/scripts/update-codex-agents.ts +35 -0
  106. package/server/app/commands.ts +35 -64
  107. package/server/app/container/config.ts +39 -69
  108. package/server/app/container/console/index.ts +202 -248
  109. package/server/app/container/index.ts +33 -71
  110. package/server/app/controller/index.ts +61 -0
  111. package/server/app/index.ts +39 -105
  112. package/server/app/service/container.ts +41 -42
  113. package/server/app/service/index.ts +120 -147
  114. package/server/context.ts +1 -1
  115. package/server/index.ts +25 -1
  116. package/server/services/auth/index.ts +75 -115
  117. package/server/services/auth/router/index.ts +31 -32
  118. package/server/services/auth/router/request.ts +14 -16
  119. package/server/services/cron/CronTask.ts +13 -26
  120. package/server/services/cron/index.ts +14 -36
  121. package/server/services/disks/driver.ts +40 -58
  122. package/server/services/disks/drivers/local/index.ts +79 -90
  123. package/server/services/disks/drivers/s3/index.ts +116 -163
  124. package/server/services/disks/index.ts +23 -38
  125. package/server/services/email/index.ts +45 -104
  126. package/server/services/email/utils.ts +14 -27
  127. package/server/services/fetch/index.ts +53 -85
  128. package/server/services/prisma/Facet.ts +39 -91
  129. package/server/services/prisma/index.ts +74 -110
  130. package/server/services/router/generatedRuntime.ts +29 -0
  131. package/server/services/router/http/index.ts +77 -72
  132. package/server/services/router/http/multipart.ts +19 -42
  133. package/server/services/router/index.ts +378 -365
  134. package/server/services/router/request/api.ts +26 -25
  135. package/server/services/router/request/index.ts +44 -51
  136. package/server/services/router/request/service.ts +7 -11
  137. package/server/services/router/request/validation/zod.ts +111 -148
  138. package/server/services/router/response/index.ts +110 -125
  139. package/server/services/router/response/mask/Filter.ts +31 -72
  140. package/server/services/router/response/mask/index.ts +8 -15
  141. package/server/services/router/response/mask/selecteurs.ts +11 -25
  142. package/server/services/router/response/page/clientManifest.ts +25 -0
  143. package/server/services/router/response/page/document.tsx +199 -127
  144. package/server/services/router/response/page/index.tsx +89 -94
  145. package/server/services/router/service.ts +13 -15
  146. package/server/services/schema/index.ts +17 -26
  147. package/server/services/schema/request.ts +19 -33
  148. package/server/services/schema/router/index.ts +8 -11
  149. package/server/services/security/encrypt/aes/index.ts +15 -35
  150. package/server/utils/slug.ts +29 -32
  151. package/skills/clean-project-code/SKILL.md +63 -0
  152. package/skills/clean-project-code/agents/openai.yaml +4 -0
  153. package/tsconfig.common.json +4 -3
  154. package/tsconfig.json +4 -1
  155. package/types/aliases.d.ts +17 -21
  156. package/types/controller-input.test.ts +48 -0
  157. package/types/express-extra.d.ts +6 -0
  158. package/types/global/constants.d.ts +1 -0
  159. package/types/global/express-extra.d.ts +6 -0
  160. package/types/global/modules.d.ts +13 -16
  161. package/types/global/utils.d.ts +17 -49
  162. package/types/global/vendors.d.ts +62 -0
  163. package/types/icons.d.ts +65 -1
  164. package/types/uuid.d.ts +3 -0
  165. package/types/vendors.d.ts +62 -0
  166. package/cli/compiler/common/babel/index.ts +0 -173
  167. package/cli/compiler/common/babel/plugins/index.ts +0 -0
  168. package/cli/compiler/common/babel/plugins/services.ts +0 -586
  169. package/cli/compiler/common/babel/routes/imports.ts +0 -127
  170. package/cli/compiler/common/babel/routes/routes.ts +0 -1170
  171. package/client/services/captcha/index.ts +0 -67
  172. package/client/services/socket/index.ts +0 -147
  173. package/common/data/rte/nodes.ts +0 -83
  174. package/common/data/stats.ts +0 -90
  175. package/common/utils/rte.ts +0 -183
  176. package/server/services/auth/old.ts +0 -277
  177. package/server/services/cache/commands.ts +0 -41
  178. package/server/services/cache/index.ts +0 -297
  179. package/server/services/cache/service.json +0 -6
  180. package/server/services/socket/index.ts +0 -162
  181. package/server/services/socket/scope.ts +0 -226
  182. package/server/services/socket/service.json +0 -6
  183. package/server/services_old/SocketClient.ts +0 -92
  184. package/server/services_old/Token.old.ts +0 -97
@@ -23,8 +23,7 @@ declare const PROTEUM_ROUTER_PORT_OVERRIDE: number | null;
23
23
 
24
24
  declare global {
25
25
  namespace Config {
26
-
27
- type EnvName = TEnvConfig["name"];
26
+ type EnvName = TEnvConfig['name'];
28
27
 
29
28
  type Env = TEnvConfig;
30
29
  type Identity = AppIdentityConfig;
@@ -61,84 +60,60 @@ declare global {
61
60
  level: 'log'
62
61
  */
63
62
 
64
- export type TEnvName = TEnvConfig["name"];
63
+ export type TEnvName = TEnvConfig['name'];
65
64
  export type TEnvConfig = {
66
- name: 'local' | 'server',
67
- profile: 'dev' | 'testing' | 'prod',
68
-
69
- router: {
70
- port: number,
71
- domains: TDomainsList
72
- },
73
- console: {
74
- enable: boolean,
75
- debug: boolean,
76
- bufferLimit: number,
77
- level: TLogProfile,
78
- },
79
- }
80
-
81
- type AppIdentityConfig = {
65
+ name: 'local' | 'server';
66
+ profile: 'dev' | 'testing' | 'prod';
82
67
 
83
- name: string,
84
- identifier: string,
85
- description: string,
86
- author: {
87
- name: string,
88
- url: string,
89
- email: string
90
- },
68
+ router: { port: number; domains: TDomainsList };
69
+ console: { enable: boolean; debug: boolean; bufferLimit: number; level: TLogProfile };
70
+ };
91
71
 
92
- social: {
72
+ type AppIdentityConfig = {
73
+ name: string;
74
+ identifier: string;
75
+ description: string;
76
+ author: { name: string; url: string; email: string };
93
77
 
94
- },
78
+ social: {};
95
79
 
96
- locale: string
97
- language: string
98
- maincolor: string,
99
- iconsPack?: string,
80
+ locale: string;
81
+ language: string;
82
+ maincolor: string;
83
+ iconsPack?: string;
100
84
 
101
85
  web: {
102
- title: string,
103
- titleSuffix: string,
104
- fullTitle: string,
105
- description: string,
106
- version: string,
107
- metas?: {[name: string]: string},
108
- jsonld?: {[name: string]: string},
109
- }
110
- }
111
-
112
- export type AppConfig = {
113
- env: Config.Env,
114
- identity: Config.Identity,
115
- }
86
+ title: string;
87
+ titleSuffix: string;
88
+ fullTitle: string;
89
+ description: string;
90
+ version: string;
91
+ metas?: { [name: string]: string };
92
+ jsonld?: { [name: string]: string };
93
+ };
94
+ };
95
+
96
+ export type AppConfig = { env: Config.Env; identity: Config.Identity };
116
97
 
117
98
  const debug = false;
118
99
 
119
100
  const getRouterPortOverride = () => {
120
- if (
121
- typeof PROTEUM_ROUTER_PORT_OVERRIDE !== 'undefined'
122
- && PROTEUM_ROUTER_PORT_OVERRIDE !== null
123
- )
101
+ if (typeof PROTEUM_ROUTER_PORT_OVERRIDE !== 'undefined' && PROTEUM_ROUTER_PORT_OVERRIDE !== null)
124
102
  return PROTEUM_ROUTER_PORT_OVERRIDE;
125
103
 
126
104
  return undefined;
127
- }
105
+ };
128
106
 
129
107
  /*----------------------------------
130
108
  - LOADE
131
109
  ----------------------------------*/
132
110
  export default class ConfigParser {
133
-
134
111
  public constructor(
135
112
  public appDir: string,
136
- public envName?: string
137
- ) {
113
+ public envName?: string,
114
+ ) {}
138
115
 
139
- }
140
-
141
- private loadYaml( filepath: string ) {
116
+ private loadYaml(filepath: string) {
142
117
  debug && console.info(`Loading config ${filepath}`);
143
118
  const rawConfig = fs.readFileSync(filepath, 'utf-8');
144
119
  return yaml.parse(rawConfig);
@@ -147,26 +122,21 @@ export default class ConfigParser {
147
122
  public env(): TEnvConfig {
148
123
  // We assume that when we run 5htp dev, we're in local
149
124
  // Otherwise, we're in production environment (docker)
150
- console.log("[app] Using environment:", process.env.NODE_ENV);
125
+ console.log('[app] Using environment:', process.env.NODE_ENV);
151
126
  const envFileName = this.appDir + '/env.yaml';
152
- const envFile = this.loadYaml( envFileName );
127
+ const envFile = this.loadYaml(envFileName);
153
128
  const routerPortOverride = getRouterPortOverride();
154
129
  return {
155
130
  ...envFile,
156
- router: routerPortOverride === undefined
157
- ? envFile.router
158
- : {
159
- ...envFile.router,
160
- port: routerPortOverride
161
- },
162
- version: BUILD_DATE
163
- }
131
+ router: routerPortOverride === undefined ? envFile.router : { ...envFile.router, port: routerPortOverride },
132
+ version: BUILD_DATE,
133
+ };
164
134
  }
165
135
 
166
136
  public identity() {
167
137
  const identityFile = this.appDir + '/identity.yaml';
168
138
  debug && console.info(`Loading identity ${identityFile}`);
169
- return this.loadYaml( identityFile );
139
+ return this.loadYaml(identityFile);
170
140
  }
171
141
  }
172
142