idea-manager 1.3.4 → 1.3.6

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 (199) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +24 -0
  3. package/.next/build-manifest.json +20 -0
  4. package/.next/diagnostics/build-diagnostics.json +6 -0
  5. package/.next/diagnostics/framework.json +1 -0
  6. package/.next/export-marker.json +6 -0
  7. package/.next/images-manifest.json +67 -0
  8. package/.next/next-minimal-server.js.nft.json +1 -0
  9. package/.next/next-server.js.nft.json +1 -0
  10. package/.next/package.json +1 -0
  11. package/.next/prerender-manifest.json +85 -0
  12. package/.next/react-loadable-manifest.json +1 -0
  13. package/.next/required-server-files.js +325 -0
  14. package/.next/required-server-files.json +325 -0
  15. package/.next/routes-manifest.json +209 -0
  16. package/.next/server/app/_global-error/page.js +3 -0
  17. package/.next/server/app/_global-error/page.js.nft.json +1 -0
  18. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
  19. package/.next/server/app/_global-error.html +2 -0
  20. package/.next/server/app/_global-error.meta +16 -0
  21. package/.next/server/app/_global-error.rsc +12 -0
  22. package/.next/server/app/_global-error.segments/_full.segment.rsc +12 -0
  23. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
  24. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +4 -0
  25. package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
  26. package/.next/server/app/_global-error.segments/_index.segment.rsc +4 -0
  27. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  28. package/.next/server/app/_not-found/page.js +6 -0
  29. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  30. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
  31. package/.next/server/app/_not-found.html +5 -0
  32. package/.next/server/app/_not-found.meta +16 -0
  33. package/.next/server/app/_not-found.rsc +17 -0
  34. package/.next/server/app/_not-found.segments/_full.segment.rsc +17 -0
  35. package/.next/server/app/_not-found.segments/_head.segment.rsc +6 -0
  36. package/.next/server/app/_not-found.segments/_index.segment.rsc +6 -0
  37. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
  38. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +4 -0
  39. package/.next/server/app/_not-found.segments/_tree.segment.rsc +5 -0
  40. package/.next/server/app/api/archive/route.js +83 -0
  41. package/.next/server/app/api/archive/route.js.nft.json +1 -0
  42. package/.next/server/app/api/archive/route_client-reference-manifest.js +1 -0
  43. package/.next/server/app/api/filesystem/route.js +1 -0
  44. package/.next/server/app/api/filesystem/route.js.nft.json +1 -0
  45. package/.next/server/app/api/filesystem/route_client-reference-manifest.js +1 -0
  46. package/.next/server/app/api/filesystem/tree/route.js +1 -0
  47. package/.next/server/app/api/filesystem/tree/route.js.nft.json +1 -0
  48. package/.next/server/app/api/filesystem/tree/route_client-reference-manifest.js +1 -0
  49. package/.next/server/app/api/global-memo/route.js +77 -0
  50. package/.next/server/app/api/global-memo/route.js.nft.json +1 -0
  51. package/.next/server/app/api/global-memo/route_client-reference-manifest.js +1 -0
  52. package/.next/server/app/api/health/route.js +1 -0
  53. package/.next/server/app/api/health/route.js.nft.json +1 -0
  54. package/.next/server/app/api/health/route_client-reference-manifest.js +1 -0
  55. package/.next/server/app/api/projects/[id]/apply-distribute/route.js +97 -0
  56. package/.next/server/app/api/projects/[id]/apply-distribute/route.js.nft.json +1 -0
  57. package/.next/server/app/api/projects/[id]/apply-distribute/route_client-reference-manifest.js +1 -0
  58. package/.next/server/app/api/projects/[id]/auto-distribute/route.js +45 -0
  59. package/.next/server/app/api/projects/[id]/auto-distribute/route.js.nft.json +1 -0
  60. package/.next/server/app/api/projects/[id]/auto-distribute/route_client-reference-manifest.js +1 -0
  61. package/.next/server/app/api/projects/[id]/brainstorm/route.js +77 -0
  62. package/.next/server/app/api/projects/[id]/brainstorm/route.js.nft.json +1 -0
  63. package/.next/server/app/api/projects/[id]/brainstorm/route_client-reference-manifest.js +1 -0
  64. package/.next/server/app/api/projects/[id]/git-sync/route.js +77 -0
  65. package/.next/server/app/api/projects/[id]/git-sync/route.js.nft.json +1 -0
  66. package/.next/server/app/api/projects/[id]/git-sync/route_client-reference-manifest.js +1 -0
  67. package/.next/server/app/api/projects/[id]/route.js +77 -0
  68. package/.next/server/app/api/projects/[id]/route.js.nft.json +1 -0
  69. package/.next/server/app/api/projects/[id]/route_client-reference-manifest.js +1 -0
  70. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/route.js +91 -0
  71. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/route.js.nft.json +1 -0
  72. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/route_client-reference-manifest.js +1 -0
  73. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route.js +22 -0
  74. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route.js.nft.json +1 -0
  75. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route_client-reference-manifest.js +1 -0
  76. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route.js +77 -0
  77. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route.js.nft.json +1 -0
  78. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route_client-reference-manifest.js +1 -0
  79. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route.js +83 -0
  80. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route.js.nft.json +1 -0
  81. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route_client-reference-manifest.js +1 -0
  82. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/route.js +83 -0
  83. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/route.js.nft.json +1 -0
  84. package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/route_client-reference-manifest.js +1 -0
  85. package/.next/server/app/api/projects/[id]/sub-projects/route.js +91 -0
  86. package/.next/server/app/api/projects/[id]/sub-projects/route.js.nft.json +1 -0
  87. package/.next/server/app/api/projects/[id]/sub-projects/route_client-reference-manifest.js +1 -0
  88. package/.next/server/app/api/projects/route.js +77 -0
  89. package/.next/server/app/api/projects/route.js.nft.json +1 -0
  90. package/.next/server/app/api/projects/route_client-reference-manifest.js +1 -0
  91. package/.next/server/app/api/sync/route.js +77 -0
  92. package/.next/server/app/api/sync/route.js.nft.json +1 -0
  93. package/.next/server/app/api/sync/route_client-reference-manifest.js +1 -0
  94. package/.next/server/app/index.html +5 -0
  95. package/.next/server/app/index.meta +14 -0
  96. package/.next/server/app/index.rsc +21 -0
  97. package/.next/server/app/index.segments/__PAGE__.segment.rsc +9 -0
  98. package/.next/server/app/index.segments/_full.segment.rsc +21 -0
  99. package/.next/server/app/index.segments/_head.segment.rsc +6 -0
  100. package/.next/server/app/index.segments/_index.segment.rsc +6 -0
  101. package/.next/server/app/index.segments/_tree.segment.rsc +5 -0
  102. package/.next/server/app/page.js +23 -0
  103. package/.next/server/app/page.js.nft.json +1 -0
  104. package/.next/server/app/page_client-reference-manifest.js +1 -0
  105. package/.next/server/app/projects/[id]/page.js +6 -0
  106. package/.next/server/app/projects/[id]/page.js.nft.json +1 -0
  107. package/.next/server/app/projects/[id]/page_client-reference-manifest.js +1 -0
  108. package/.next/server/app-paths-manifest.json +24 -0
  109. package/.next/server/chunks/445.js +22 -0
  110. package/.next/server/chunks/471.js +13 -0
  111. package/.next/server/chunks/482.js +1 -0
  112. package/.next/server/chunks/806.js +77 -0
  113. package/.next/server/chunks/813.js +1 -0
  114. package/.next/server/functions-config-manifest.json +4 -0
  115. package/.next/server/interception-route-rewrite-manifest.js +1 -0
  116. package/.next/server/middleware-build-manifest.js +1 -0
  117. package/.next/server/middleware-manifest.json +6 -0
  118. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  119. package/.next/server/next-font-manifest.js +1 -0
  120. package/.next/server/next-font-manifest.json +1 -0
  121. package/.next/server/pages/404.html +5 -0
  122. package/.next/server/pages/500.html +2 -0
  123. package/.next/server/pages-manifest.json +4 -0
  124. package/.next/server/server-reference-manifest.js +1 -0
  125. package/.next/server/server-reference-manifest.json +1 -0
  126. package/.next/server/webpack-runtime.js +1 -0
  127. package/.next/static/chunks/151-332d463cd8bd4db6.js +1 -0
  128. package/.next/static/chunks/4bd1b696-096d35a2bd1da3af.js +1 -0
  129. package/.next/static/chunks/794-37dad9bbc14b04b8.js +2 -0
  130. package/.next/static/chunks/app/_global-error/page-fd75b71b49e9729e.js +1 -0
  131. package/.next/static/chunks/app/_not-found/page-abee8833f317bce2.js +1 -0
  132. package/.next/static/chunks/app/api/archive/route-fd75b71b49e9729e.js +1 -0
  133. package/.next/static/chunks/app/api/filesystem/route-fd75b71b49e9729e.js +1 -0
  134. package/.next/static/chunks/app/api/filesystem/tree/route-fd75b71b49e9729e.js +1 -0
  135. package/.next/static/chunks/app/api/global-memo/route-fd75b71b49e9729e.js +1 -0
  136. package/.next/static/chunks/app/api/health/route-fd75b71b49e9729e.js +1 -0
  137. package/.next/static/chunks/app/api/projects/[id]/apply-distribute/route-fd75b71b49e9729e.js +1 -0
  138. package/.next/static/chunks/app/api/projects/[id]/auto-distribute/route-fd75b71b49e9729e.js +1 -0
  139. package/.next/static/chunks/app/api/projects/[id]/brainstorm/route-fd75b71b49e9729e.js +1 -0
  140. package/.next/static/chunks/app/api/projects/[id]/git-sync/route-fd75b71b49e9729e.js +1 -0
  141. package/.next/static/chunks/app/api/projects/[id]/route-fd75b71b49e9729e.js +1 -0
  142. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/route-fd75b71b49e9729e.js +1 -0
  143. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route-fd75b71b49e9729e.js +1 -0
  144. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route-fd75b71b49e9729e.js +1 -0
  145. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route-fd75b71b49e9729e.js +1 -0
  146. package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/route-fd75b71b49e9729e.js +1 -0
  147. package/.next/static/chunks/app/api/projects/[id]/sub-projects/route-fd75b71b49e9729e.js +1 -0
  148. package/.next/static/chunks/app/api/projects/route-fd75b71b49e9729e.js +1 -0
  149. package/.next/static/chunks/app/api/sync/route-fd75b71b49e9729e.js +1 -0
  150. package/.next/static/chunks/app/layout-52917f6c941a9818.js +1 -0
  151. package/.next/static/chunks/app/page-6bd6387a28d57acb.js +18 -0
  152. package/.next/static/chunks/app/projects/[id]/page-822db6c758e612c4.js +1 -0
  153. package/.next/static/chunks/framework-75892d61b920805f.js +1 -0
  154. package/.next/static/chunks/main-app-35159df8e1c56fc3.js +1 -0
  155. package/.next/static/chunks/main-f1d55fffd3cc9809.js +5 -0
  156. package/.next/static/chunks/next/dist/client/components/builtin/app-error-fd75b71b49e9729e.js +1 -0
  157. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-fd75b71b49e9729e.js +1 -0
  158. package/.next/static/chunks/next/dist/client/components/builtin/global-error-25a0b2af2b25843d.js +1 -0
  159. package/.next/static/chunks/next/dist/client/components/builtin/not-found-fd75b71b49e9729e.js +1 -0
  160. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-fd75b71b49e9729e.js +1 -0
  161. package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  162. package/.next/static/chunks/webpack-046a553649a22885.js +1 -0
  163. package/.next/static/css/cd2b29b661e5554a.css +3 -0
  164. package/.next/static/media/4cf2300e9c8272f7-s.p.woff2 +0 -0
  165. package/.next/static/media/747892c23ea88013-s.woff2 +0 -0
  166. package/.next/static/media/8d697b304b401681-s.woff2 +0 -0
  167. package/.next/static/media/93f479601ee12b01-s.p.woff2 +0 -0
  168. package/.next/static/media/9610d9e46709d722-s.woff2 +0 -0
  169. package/.next/static/media/ba015fad6dcf6784-s.woff2 +0 -0
  170. package/.next/static/pg-uaAz_0WfqjOVXsPpiN/_buildManifest.js +1 -0
  171. package/.next/static/pg-uaAz_0WfqjOVXsPpiN/_ssgManifest.js +1 -0
  172. package/.next/trace +3 -0
  173. package/.next/trace-build +1 -0
  174. package/.next/types/app/api/archive/route.ts +350 -0
  175. package/.next/types/app/api/filesystem/route.ts +350 -0
  176. package/.next/types/app/api/filesystem/tree/route.ts +350 -0
  177. package/.next/types/app/api/global-memo/route.ts +350 -0
  178. package/.next/types/app/api/health/route.ts +350 -0
  179. package/.next/types/app/api/projects/[id]/apply-distribute/route.ts +350 -0
  180. package/.next/types/app/api/projects/[id]/auto-distribute/route.ts +350 -0
  181. package/.next/types/app/api/projects/[id]/brainstorm/route.ts +350 -0
  182. package/.next/types/app/api/projects/[id]/git-sync/route.ts +350 -0
  183. package/.next/types/app/api/projects/[id]/route.ts +350 -0
  184. package/.next/types/app/api/projects/[id]/sub-projects/[subId]/route.ts +350 -0
  185. package/.next/types/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route.ts +350 -0
  186. package/.next/types/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route.ts +350 -0
  187. package/.next/types/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route.ts +350 -0
  188. package/.next/types/app/api/projects/[id]/sub-projects/[subId]/tasks/route.ts +350 -0
  189. package/.next/types/app/api/projects/[id]/sub-projects/route.ts +350 -0
  190. package/.next/types/app/api/projects/route.ts +350 -0
  191. package/.next/types/app/api/sync/route.ts +350 -0
  192. package/.next/types/app/layout.ts +86 -0
  193. package/.next/types/app/page.ts +86 -0
  194. package/.next/types/app/projects/[id]/page.ts +86 -0
  195. package/.next/types/package.json +1 -0
  196. package/.next/types/routes.d.ts +91 -0
  197. package/.next/types/validator.ts +241 -0
  198. package/package.json +6 -3
  199. package/src/cli.ts +1 -1
@@ -0,0 +1,350 @@
1
+ // File: /Users/young/Toy/idea-manager/src/app/api/sync/route.ts
2
+ import * as entry from '../../../../../src/app/api/sync/route.js'
3
+ import type { NextRequest } from 'next/server.js'
4
+
5
+ import type { PrefetchForTypeCheckInternal } from 'next/dist/build/segment-config/app/app-segment-config.js'
6
+
7
+ type TEntry = typeof import('../../../../../src/app/api/sync/route.js')
8
+
9
+ type SegmentParams<T extends Object = any> = T extends Record<string, any>
10
+ ? { [K in keyof T]: T[K] extends string ? string | string[] | undefined : never }
11
+ : T
12
+
13
+ // Check that the entry is a valid entry
14
+ checkFields<Diff<{
15
+ GET?: Function
16
+ HEAD?: Function
17
+ OPTIONS?: Function
18
+ POST?: Function
19
+ PUT?: Function
20
+ DELETE?: Function
21
+ PATCH?: Function
22
+ config?: {}
23
+ generateStaticParams?: Function
24
+ unstable_prefetch?: PrefetchForTypeCheckInternal
25
+ revalidate?: RevalidateRange<TEntry> | false
26
+ dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
27
+ dynamicParams?: boolean
28
+ fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
29
+ preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
30
+ runtime?: 'nodejs' | 'experimental-edge' | 'edge'
31
+ maxDuration?: number
32
+
33
+ }, TEntry, ''>>()
34
+
35
+ type RouteContext = { params: Promise<SegmentParams> }
36
+ // Check the prop type of the entry function
37
+ if ('GET' in entry) {
38
+ checkFields<
39
+ Diff<
40
+ ParamCheck<Request | NextRequest>,
41
+ {
42
+ __tag__: 'GET'
43
+ __param_position__: 'first'
44
+ __param_type__: FirstArg<MaybeField<TEntry, 'GET'>>
45
+ },
46
+ 'GET'
47
+ >
48
+ >()
49
+ checkFields<
50
+ Diff<
51
+ ParamCheck<RouteContext>,
52
+ {
53
+ __tag__: 'GET'
54
+ __param_position__: 'second'
55
+ __param_type__: SecondArg<MaybeField<TEntry, 'GET'>>
56
+ },
57
+ 'GET'
58
+ >
59
+ >()
60
+
61
+ checkFields<
62
+ Diff<
63
+ {
64
+ __tag__: 'GET',
65
+ __return_type__: Response | void | never | Promise<Response | void | never>
66
+ },
67
+ {
68
+ __tag__: 'GET',
69
+ __return_type__: ReturnType<MaybeField<TEntry, 'GET'>>
70
+ },
71
+ 'GET'
72
+ >
73
+ >()
74
+ }
75
+ // Check the prop type of the entry function
76
+ if ('HEAD' in entry) {
77
+ checkFields<
78
+ Diff<
79
+ ParamCheck<Request | NextRequest>,
80
+ {
81
+ __tag__: 'HEAD'
82
+ __param_position__: 'first'
83
+ __param_type__: FirstArg<MaybeField<TEntry, 'HEAD'>>
84
+ },
85
+ 'HEAD'
86
+ >
87
+ >()
88
+ checkFields<
89
+ Diff<
90
+ ParamCheck<RouteContext>,
91
+ {
92
+ __tag__: 'HEAD'
93
+ __param_position__: 'second'
94
+ __param_type__: SecondArg<MaybeField<TEntry, 'HEAD'>>
95
+ },
96
+ 'HEAD'
97
+ >
98
+ >()
99
+
100
+ checkFields<
101
+ Diff<
102
+ {
103
+ __tag__: 'HEAD',
104
+ __return_type__: Response | void | never | Promise<Response | void | never>
105
+ },
106
+ {
107
+ __tag__: 'HEAD',
108
+ __return_type__: ReturnType<MaybeField<TEntry, 'HEAD'>>
109
+ },
110
+ 'HEAD'
111
+ >
112
+ >()
113
+ }
114
+ // Check the prop type of the entry function
115
+ if ('OPTIONS' in entry) {
116
+ checkFields<
117
+ Diff<
118
+ ParamCheck<Request | NextRequest>,
119
+ {
120
+ __tag__: 'OPTIONS'
121
+ __param_position__: 'first'
122
+ __param_type__: FirstArg<MaybeField<TEntry, 'OPTIONS'>>
123
+ },
124
+ 'OPTIONS'
125
+ >
126
+ >()
127
+ checkFields<
128
+ Diff<
129
+ ParamCheck<RouteContext>,
130
+ {
131
+ __tag__: 'OPTIONS'
132
+ __param_position__: 'second'
133
+ __param_type__: SecondArg<MaybeField<TEntry, 'OPTIONS'>>
134
+ },
135
+ 'OPTIONS'
136
+ >
137
+ >()
138
+
139
+ checkFields<
140
+ Diff<
141
+ {
142
+ __tag__: 'OPTIONS',
143
+ __return_type__: Response | void | never | Promise<Response | void | never>
144
+ },
145
+ {
146
+ __tag__: 'OPTIONS',
147
+ __return_type__: ReturnType<MaybeField<TEntry, 'OPTIONS'>>
148
+ },
149
+ 'OPTIONS'
150
+ >
151
+ >()
152
+ }
153
+ // Check the prop type of the entry function
154
+ if ('POST' in entry) {
155
+ checkFields<
156
+ Diff<
157
+ ParamCheck<Request | NextRequest>,
158
+ {
159
+ __tag__: 'POST'
160
+ __param_position__: 'first'
161
+ __param_type__: FirstArg<MaybeField<TEntry, 'POST'>>
162
+ },
163
+ 'POST'
164
+ >
165
+ >()
166
+ checkFields<
167
+ Diff<
168
+ ParamCheck<RouteContext>,
169
+ {
170
+ __tag__: 'POST'
171
+ __param_position__: 'second'
172
+ __param_type__: SecondArg<MaybeField<TEntry, 'POST'>>
173
+ },
174
+ 'POST'
175
+ >
176
+ >()
177
+
178
+ checkFields<
179
+ Diff<
180
+ {
181
+ __tag__: 'POST',
182
+ __return_type__: Response | void | never | Promise<Response | void | never>
183
+ },
184
+ {
185
+ __tag__: 'POST',
186
+ __return_type__: ReturnType<MaybeField<TEntry, 'POST'>>
187
+ },
188
+ 'POST'
189
+ >
190
+ >()
191
+ }
192
+ // Check the prop type of the entry function
193
+ if ('PUT' in entry) {
194
+ checkFields<
195
+ Diff<
196
+ ParamCheck<Request | NextRequest>,
197
+ {
198
+ __tag__: 'PUT'
199
+ __param_position__: 'first'
200
+ __param_type__: FirstArg<MaybeField<TEntry, 'PUT'>>
201
+ },
202
+ 'PUT'
203
+ >
204
+ >()
205
+ checkFields<
206
+ Diff<
207
+ ParamCheck<RouteContext>,
208
+ {
209
+ __tag__: 'PUT'
210
+ __param_position__: 'second'
211
+ __param_type__: SecondArg<MaybeField<TEntry, 'PUT'>>
212
+ },
213
+ 'PUT'
214
+ >
215
+ >()
216
+
217
+ checkFields<
218
+ Diff<
219
+ {
220
+ __tag__: 'PUT',
221
+ __return_type__: Response | void | never | Promise<Response | void | never>
222
+ },
223
+ {
224
+ __tag__: 'PUT',
225
+ __return_type__: ReturnType<MaybeField<TEntry, 'PUT'>>
226
+ },
227
+ 'PUT'
228
+ >
229
+ >()
230
+ }
231
+ // Check the prop type of the entry function
232
+ if ('DELETE' in entry) {
233
+ checkFields<
234
+ Diff<
235
+ ParamCheck<Request | NextRequest>,
236
+ {
237
+ __tag__: 'DELETE'
238
+ __param_position__: 'first'
239
+ __param_type__: FirstArg<MaybeField<TEntry, 'DELETE'>>
240
+ },
241
+ 'DELETE'
242
+ >
243
+ >()
244
+ checkFields<
245
+ Diff<
246
+ ParamCheck<RouteContext>,
247
+ {
248
+ __tag__: 'DELETE'
249
+ __param_position__: 'second'
250
+ __param_type__: SecondArg<MaybeField<TEntry, 'DELETE'>>
251
+ },
252
+ 'DELETE'
253
+ >
254
+ >()
255
+
256
+ checkFields<
257
+ Diff<
258
+ {
259
+ __tag__: 'DELETE',
260
+ __return_type__: Response | void | never | Promise<Response | void | never>
261
+ },
262
+ {
263
+ __tag__: 'DELETE',
264
+ __return_type__: ReturnType<MaybeField<TEntry, 'DELETE'>>
265
+ },
266
+ 'DELETE'
267
+ >
268
+ >()
269
+ }
270
+ // Check the prop type of the entry function
271
+ if ('PATCH' in entry) {
272
+ checkFields<
273
+ Diff<
274
+ ParamCheck<Request | NextRequest>,
275
+ {
276
+ __tag__: 'PATCH'
277
+ __param_position__: 'first'
278
+ __param_type__: FirstArg<MaybeField<TEntry, 'PATCH'>>
279
+ },
280
+ 'PATCH'
281
+ >
282
+ >()
283
+ checkFields<
284
+ Diff<
285
+ ParamCheck<RouteContext>,
286
+ {
287
+ __tag__: 'PATCH'
288
+ __param_position__: 'second'
289
+ __param_type__: SecondArg<MaybeField<TEntry, 'PATCH'>>
290
+ },
291
+ 'PATCH'
292
+ >
293
+ >()
294
+
295
+ checkFields<
296
+ Diff<
297
+ {
298
+ __tag__: 'PATCH',
299
+ __return_type__: Response | void | never | Promise<Response | void | never>
300
+ },
301
+ {
302
+ __tag__: 'PATCH',
303
+ __return_type__: ReturnType<MaybeField<TEntry, 'PATCH'>>
304
+ },
305
+ 'PATCH'
306
+ >
307
+ >()
308
+ }
309
+
310
+ // Check the arguments and return type of the generateStaticParams function
311
+ if ('generateStaticParams' in entry) {
312
+ checkFields<Diff<{ params: SegmentParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
313
+ checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
314
+ }
315
+
316
+ export interface PageProps {
317
+ params?: Promise<SegmentParams>
318
+ searchParams?: Promise<any>
319
+ }
320
+ export interface LayoutProps {
321
+ children?: React.ReactNode
322
+
323
+ params?: Promise<SegmentParams>
324
+ }
325
+
326
+ // =============
327
+ // Utility types
328
+ type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
329
+
330
+ // If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
331
+ type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
332
+ type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
333
+
334
+ type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
335
+ type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
336
+ type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
337
+
338
+ type ParamCheck<T> = {
339
+ __tag__: string
340
+ __param_position__: string
341
+ __param_type__: T
342
+ }
343
+
344
+ function checkFields<_ extends { [k in keyof any]: never }>() {}
345
+
346
+ // https://github.com/sindresorhus/type-fest
347
+ type Numeric = number | bigint
348
+ type Zero = 0 | 0n
349
+ type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
350
+ type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'
@@ -0,0 +1,86 @@
1
+ // File: /Users/young/Toy/idea-manager/src/app/layout.tsx
2
+ import * as entry from '../../../src/app/layout.js'
3
+ import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
4
+
5
+ import type { PrefetchForTypeCheckInternal } from 'next/dist/build/segment-config/app/app-segment-config.js'
6
+
7
+ type TEntry = typeof import('../../../src/app/layout.js')
8
+
9
+ type SegmentParams<T extends Object = any> = T extends Record<string, any>
10
+ ? { [K in keyof T]: T[K] extends string ? string | string[] | undefined : never }
11
+ : T
12
+
13
+ // Check that the entry is a valid entry
14
+ checkFields<Diff<{
15
+ default: Function
16
+ config?: {}
17
+ generateStaticParams?: Function
18
+ unstable_prefetch?: PrefetchForTypeCheckInternal
19
+ revalidate?: RevalidateRange<TEntry> | false
20
+ dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
21
+ dynamicParams?: boolean
22
+ fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
23
+ preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
24
+ runtime?: 'nodejs' | 'experimental-edge' | 'edge'
25
+ maxDuration?: number
26
+
27
+ metadata?: any
28
+ generateMetadata?: Function
29
+ viewport?: any
30
+ generateViewport?: Function
31
+
32
+ }, TEntry, ''>>()
33
+
34
+
35
+ // Check the prop type of the entry function
36
+ checkFields<Diff<LayoutProps, FirstArg<TEntry['default']>, 'default'>>()
37
+
38
+ // Check the arguments and return type of the generateMetadata function
39
+ if ('generateMetadata' in entry) {
40
+ checkFields<Diff<LayoutProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
41
+ checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
42
+ }
43
+
44
+ // Check the arguments and return type of the generateViewport function
45
+ if ('generateViewport' in entry) {
46
+ checkFields<Diff<LayoutProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
47
+ checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
48
+ }
49
+
50
+ // Check the arguments and return type of the generateStaticParams function
51
+ if ('generateStaticParams' in entry) {
52
+ checkFields<Diff<{ params: SegmentParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
53
+ checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
54
+ }
55
+
56
+ export interface PageProps {
57
+ params?: Promise<SegmentParams>
58
+ searchParams?: Promise<any>
59
+ }
60
+ export interface LayoutProps {
61
+ children?: React.ReactNode
62
+
63
+ params?: Promise<SegmentParams>
64
+ }
65
+
66
+ // =============
67
+ // Utility types
68
+ type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
69
+
70
+ // If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
71
+ type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
72
+ type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
73
+
74
+ type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
75
+ type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
76
+ type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
77
+
78
+
79
+
80
+ function checkFields<_ extends { [k in keyof any]: never }>() {}
81
+
82
+ // https://github.com/sindresorhus/type-fest
83
+ type Numeric = number | bigint
84
+ type Zero = 0 | 0n
85
+ type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
86
+ type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'
@@ -0,0 +1,86 @@
1
+ // File: /Users/young/Toy/idea-manager/src/app/page.tsx
2
+ import * as entry from '../../../src/app/page.js'
3
+ import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
4
+
5
+ import type { PrefetchForTypeCheckInternal } from 'next/dist/build/segment-config/app/app-segment-config.js'
6
+
7
+ type TEntry = typeof import('../../../src/app/page.js')
8
+
9
+ type SegmentParams<T extends Object = any> = T extends Record<string, any>
10
+ ? { [K in keyof T]: T[K] extends string ? string | string[] | undefined : never }
11
+ : T
12
+
13
+ // Check that the entry is a valid entry
14
+ checkFields<Diff<{
15
+ default: Function
16
+ config?: {}
17
+ generateStaticParams?: Function
18
+ unstable_prefetch?: PrefetchForTypeCheckInternal
19
+ revalidate?: RevalidateRange<TEntry> | false
20
+ dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
21
+ dynamicParams?: boolean
22
+ fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
23
+ preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
24
+ runtime?: 'nodejs' | 'experimental-edge' | 'edge'
25
+ maxDuration?: number
26
+
27
+ metadata?: any
28
+ generateMetadata?: Function
29
+ viewport?: any
30
+ generateViewport?: Function
31
+
32
+ }, TEntry, ''>>()
33
+
34
+
35
+ // Check the prop type of the entry function
36
+ checkFields<Diff<PageProps, FirstArg<TEntry['default']>, 'default'>>()
37
+
38
+ // Check the arguments and return type of the generateMetadata function
39
+ if ('generateMetadata' in entry) {
40
+ checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
41
+ checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
42
+ }
43
+
44
+ // Check the arguments and return type of the generateViewport function
45
+ if ('generateViewport' in entry) {
46
+ checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
47
+ checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
48
+ }
49
+
50
+ // Check the arguments and return type of the generateStaticParams function
51
+ if ('generateStaticParams' in entry) {
52
+ checkFields<Diff<{ params: SegmentParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
53
+ checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
54
+ }
55
+
56
+ export interface PageProps {
57
+ params?: Promise<SegmentParams>
58
+ searchParams?: Promise<any>
59
+ }
60
+ export interface LayoutProps {
61
+ children?: React.ReactNode
62
+
63
+ params?: Promise<SegmentParams>
64
+ }
65
+
66
+ // =============
67
+ // Utility types
68
+ type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
69
+
70
+ // If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
71
+ type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
72
+ type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
73
+
74
+ type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
75
+ type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
76
+ type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
77
+
78
+
79
+
80
+ function checkFields<_ extends { [k in keyof any]: never }>() {}
81
+
82
+ // https://github.com/sindresorhus/type-fest
83
+ type Numeric = number | bigint
84
+ type Zero = 0 | 0n
85
+ type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
86
+ type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'
@@ -0,0 +1,86 @@
1
+ // File: /Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx
2
+ import * as entry from '../../../../../src/app/projects/[id]/page.js'
3
+ import type { ResolvingMetadata, ResolvingViewport } from 'next/dist/lib/metadata/types/metadata-interface.js'
4
+
5
+ import type { PrefetchForTypeCheckInternal } from 'next/dist/build/segment-config/app/app-segment-config.js'
6
+
7
+ type TEntry = typeof import('../../../../../src/app/projects/[id]/page.js')
8
+
9
+ type SegmentParams<T extends Object = any> = T extends Record<string, any>
10
+ ? { [K in keyof T]: T[K] extends string ? string | string[] | undefined : never }
11
+ : T
12
+
13
+ // Check that the entry is a valid entry
14
+ checkFields<Diff<{
15
+ default: Function
16
+ config?: {}
17
+ generateStaticParams?: Function
18
+ unstable_prefetch?: PrefetchForTypeCheckInternal
19
+ revalidate?: RevalidateRange<TEntry> | false
20
+ dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
21
+ dynamicParams?: boolean
22
+ fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
23
+ preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
24
+ runtime?: 'nodejs' | 'experimental-edge' | 'edge'
25
+ maxDuration?: number
26
+
27
+ metadata?: any
28
+ generateMetadata?: Function
29
+ viewport?: any
30
+ generateViewport?: Function
31
+
32
+ }, TEntry, ''>>()
33
+
34
+
35
+ // Check the prop type of the entry function
36
+ checkFields<Diff<PageProps, FirstArg<TEntry['default']>, 'default'>>()
37
+
38
+ // Check the arguments and return type of the generateMetadata function
39
+ if ('generateMetadata' in entry) {
40
+ checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
41
+ checkFields<Diff<ResolvingMetadata, SecondArg<MaybeField<TEntry, 'generateMetadata'>>, 'generateMetadata'>>()
42
+ }
43
+
44
+ // Check the arguments and return type of the generateViewport function
45
+ if ('generateViewport' in entry) {
46
+ checkFields<Diff<PageProps, FirstArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
47
+ checkFields<Diff<ResolvingViewport, SecondArg<MaybeField<TEntry, 'generateViewport'>>, 'generateViewport'>>()
48
+ }
49
+
50
+ // Check the arguments and return type of the generateStaticParams function
51
+ if ('generateStaticParams' in entry) {
52
+ checkFields<Diff<{ params: SegmentParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
53
+ checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
54
+ }
55
+
56
+ export interface PageProps {
57
+ params?: Promise<SegmentParams>
58
+ searchParams?: Promise<any>
59
+ }
60
+ export interface LayoutProps {
61
+ children?: React.ReactNode
62
+
63
+ params?: Promise<SegmentParams>
64
+ }
65
+
66
+ // =============
67
+ // Utility types
68
+ type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
69
+
70
+ // If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
71
+ type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
72
+ type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
73
+
74
+ type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
75
+ type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
76
+ type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
77
+
78
+
79
+
80
+ function checkFields<_ extends { [k in keyof any]: never }>() {}
81
+
82
+ // https://github.com/sindresorhus/type-fest
83
+ type Numeric = number | bigint
84
+ type Zero = 0 | 0n
85
+ type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
86
+ type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'
@@ -0,0 +1 @@
1
+ {"type": "module"}