@innet/server 2.0.0-alpha.9 → 2.0.0-beta.10

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 (389) hide show
  1. package/README.md +1771 -799
  2. package/handler/handler.d.ts +26 -18
  3. package/handler/handler.es6.js +17 -14
  4. package/handler/handler.js +16 -13
  5. package/hooks/index.d.ts +26 -20
  6. package/hooks/index.es6.js +26 -20
  7. package/hooks/index.js +26 -20
  8. package/hooks/useAction/useAction.es6.js +1 -1
  9. package/hooks/useAction/useAction.js +1 -1
  10. package/hooks/useApi/useApi.d.ts +1 -3
  11. package/hooks/useClientIp/useClientIp.d.ts +1 -1
  12. package/hooks/useEffect/index.d.ts +1 -0
  13. package/hooks/useEffect/index.es6.js +1 -0
  14. package/hooks/useEffect/index.js +9 -0
  15. package/hooks/useEffect/useEffect.d.ts +2 -0
  16. package/hooks/useEffect/useEffect.es6.js +8 -0
  17. package/hooks/useEffect/useEffect.js +12 -0
  18. package/hooks/useEndpoint/useEndpoint.d.ts +1 -1
  19. package/hooks/useEndpoint/useEndpoint.es6.js +3 -1
  20. package/hooks/useEndpoint/useEndpoint.js +3 -1
  21. package/hooks/useHeaders/useHeaders.d.ts +0 -1
  22. package/hooks/useIsServerHttps/index.d.ts +1 -0
  23. package/hooks/useIsServerHttps/index.es6.js +1 -0
  24. package/hooks/useIsServerHttps/index.js +10 -0
  25. package/hooks/useIsServerHttps/useIsServerHttps.d.ts +3 -0
  26. package/hooks/useIsServerHttps/useIsServerHttps.es6.js +14 -0
  27. package/hooks/useIsServerHttps/useIsServerHttps.js +19 -0
  28. package/hooks/useNewSchema/useNewSchema.es6.js +2 -2
  29. package/hooks/useNewSchema/useNewSchema.js +2 -2
  30. package/hooks/useObjectSchemaContext/index.d.ts +1 -0
  31. package/hooks/useObjectSchemaContext/index.es6.js +1 -0
  32. package/hooks/useObjectSchemaContext/index.js +10 -0
  33. package/hooks/useObjectSchemaContext/useObjectSchemaContext.d.ts +3 -0
  34. package/hooks/useObjectSchemaContext/useObjectSchemaContext.es6.js +14 -0
  35. package/hooks/useObjectSchemaContext/useObjectSchemaContext.js +19 -0
  36. package/hooks/useRequest/index.es6.js +1 -1
  37. package/hooks/useRequest/index.js +0 -1
  38. package/hooks/useRequest/useRequest.d.ts +1 -5
  39. package/hooks/useRequest/useRequest.es6.js +4 -4
  40. package/hooks/useRequest/useRequest.js +3 -4
  41. package/hooks/useRequestHandler/index.d.ts +1 -0
  42. package/hooks/useRequestHandler/index.es6.js +1 -0
  43. package/hooks/useRequestHandler/index.js +10 -0
  44. package/hooks/useRequestHandler/useRequestHandler.d.ts +4 -0
  45. package/hooks/useRequestHandler/useRequestHandler.es6.js +14 -0
  46. package/hooks/useRequestHandler/useRequestHandler.js +19 -0
  47. package/hooks/useResponse/index.es6.js +1 -1
  48. package/hooks/useResponse/index.js +0 -1
  49. package/hooks/useResponse/useResponse.d.ts +1 -5
  50. package/hooks/useResponse/useResponse.es6.js +4 -4
  51. package/hooks/useResponse/useResponse.js +3 -4
  52. package/hooks/useSchemaType/useSchemaType.d.ts +3 -2
  53. package/hooks/useSchemaType/useSchemaType.es6.js +16 -9
  54. package/hooks/useSchemaType/useSchemaType.js +16 -9
  55. package/hooks/useServer/useServer.d.ts +2 -3
  56. package/hooks/useServer/useServer.es6.js +3 -1
  57. package/hooks/useServer/useServer.js +3 -1
  58. package/hooks/useServerPlugin/index.d.ts +1 -0
  59. package/hooks/useServerPlugin/index.es6.js +1 -0
  60. package/hooks/useServerPlugin/index.js +9 -0
  61. package/hooks/useServerPlugin/useServerPlugin.d.ts +2 -0
  62. package/hooks/useServerPlugin/useServerPlugin.es6.js +13 -0
  63. package/hooks/useServerPlugin/useServerPlugin.js +17 -0
  64. package/hooks/useServerPlugins/index.d.ts +1 -0
  65. package/hooks/useServerPlugins/index.es6.js +1 -0
  66. package/hooks/useServerPlugins/index.js +10 -0
  67. package/hooks/useServerPlugins/useServerPlugins.d.ts +4 -0
  68. package/hooks/useServerPlugins/useServerPlugins.es6.js +14 -0
  69. package/hooks/useServerPlugins/useServerPlugins.js +19 -0
  70. package/hooks/useServerPort/index.d.ts +1 -0
  71. package/hooks/useServerPort/index.es6.js +1 -0
  72. package/hooks/useServerPort/index.js +10 -0
  73. package/hooks/useServerPort/useServerPort.d.ts +3 -0
  74. package/hooks/useServerPort/useServerPort.es6.js +14 -0
  75. package/hooks/useServerPort/useServerPort.js +19 -0
  76. package/index.d.ts +2 -2
  77. package/index.es6.js +91 -82
  78. package/index.js +208 -184
  79. package/package.json +16 -16
  80. package/plugins/handler/serverFn/serverFn.es6.js +2 -2
  81. package/plugins/handler/serverFn/serverFn.js +2 -6
  82. package/plugins/index.d.ts +2 -2
  83. package/plugins/index.es6.js +2 -2
  84. package/plugins/index.js +2 -2
  85. package/plugins/main/api/api.d.ts +11 -8
  86. package/plugins/main/api/api.es6.js +112 -113
  87. package/plugins/main/api/api.js +112 -117
  88. package/plugins/main/body/body.d.ts +1 -0
  89. package/plugins/main/body/body.es6.js +4 -4
  90. package/plugins/main/body/body.js +4 -8
  91. package/plugins/main/contact/contact.d.ts +2 -2
  92. package/plugins/main/endpoint/endpoint.d.ts +21 -15
  93. package/plugins/main/endpoint/endpoint.es6.js +12 -10
  94. package/plugins/main/endpoint/endpoint.js +11 -13
  95. package/plugins/main/host/host.d.ts +5 -5
  96. package/plugins/main/host/host.es6.js +4 -2
  97. package/plugins/main/host/host.js +4 -6
  98. package/plugins/main/index.d.ts +9 -9
  99. package/plugins/main/index.es6.js +9 -9
  100. package/plugins/main/index.js +9 -9
  101. package/plugins/main/license/license.d.ts +5 -5
  102. package/plugins/main/param/param.d.ts +12 -11
  103. package/plugins/main/param/param.es6.js +7 -8
  104. package/plugins/main/param/param.js +6 -11
  105. package/plugins/main/preset/index.d.ts +1 -0
  106. package/plugins/main/preset/index.es6.js +1 -0
  107. package/plugins/{utils/prod → main/preset}/index.js +2 -2
  108. package/plugins/main/preset/preset.d.ts +3 -0
  109. package/plugins/main/preset/preset.es6.js +13 -0
  110. package/plugins/main/preset/preset.js +17 -0
  111. package/plugins/main/response/index.es6.js +1 -1
  112. package/plugins/main/response/index.js +1 -0
  113. package/plugins/main/response/response.d.ts +6 -1
  114. package/plugins/main/response/response.es6.js +29 -13
  115. package/plugins/main/response/response.js +28 -15
  116. package/plugins/main/return/index.d.ts +1 -0
  117. package/plugins/main/return/index.es6.js +1 -0
  118. package/plugins/main/return/index.js +9 -0
  119. package/plugins/main/return/return.d.ts +4 -0
  120. package/plugins/main/return/return.es6.js +10 -0
  121. package/plugins/main/return/return.js +14 -0
  122. package/plugins/main/server/server.d.ts +6 -6
  123. package/plugins/main/server/server.es6.js +40 -16
  124. package/plugins/main/server/server.js +39 -16
  125. package/plugins/main/tag/index.es6.js +1 -1
  126. package/plugins/main/tag/index.js +1 -0
  127. package/plugins/main/tag/tag.d.ts +10 -2
  128. package/plugins/main/tag/tag.es6.js +25 -6
  129. package/plugins/main/tag/tag.js +24 -8
  130. package/plugins/main/variable/variable.d.ts +5 -5
  131. package/plugins/main/variable/variable.es6.js +4 -3
  132. package/plugins/main/variable/variable.js +4 -3
  133. package/plugins/request/cms/cms.d.ts +1 -0
  134. package/plugins/request/cms/cms.es6.js +4 -5
  135. package/plugins/request/cms/cms.js +3 -5
  136. package/plugins/request/cookie/cookie.d.ts +2 -2
  137. package/plugins/request/cookie/cookie.es6.js +1 -2
  138. package/plugins/request/cookie/cookie.js +1 -2
  139. package/plugins/request/error/error.d.ts +41 -40
  140. package/plugins/request/error/error.es6.js +47 -45
  141. package/plugins/request/error/error.js +46 -44
  142. package/plugins/request/file/file.d.ts +1 -0
  143. package/plugins/request/file/file.es6.js +5 -7
  144. package/plugins/request/file/file.js +3 -6
  145. package/plugins/request/header/header.es6.js +1 -1
  146. package/plugins/request/header/header.js +1 -1
  147. package/plugins/request/index.d.ts +5 -5
  148. package/plugins/request/index.es6.js +5 -5
  149. package/plugins/request/index.js +5 -5
  150. package/plugins/request/proxy/proxy.d.ts +3 -1
  151. package/plugins/request/proxy/proxy.es6.js +5 -2
  152. package/plugins/request/proxy/proxy.js +5 -2
  153. package/plugins/request/redirect/redirect.d.ts +8 -7
  154. package/plugins/request/redirect/redirect.es6.js +7 -7
  155. package/plugins/request/redirect/redirect.js +7 -7
  156. package/plugins/request/success/success.d.ts +8 -6
  157. package/plugins/request/success/success.es6.js +21 -11
  158. package/plugins/request/success/success.js +20 -10
  159. package/plugins/schema/any/any.d.ts +5 -0
  160. package/plugins/schema/any/any.es6.js +27 -0
  161. package/plugins/schema/any/any.js +31 -0
  162. package/plugins/schema/array/array.d.ts +4 -0
  163. package/plugins/schema/array/array.es6.js +15 -7
  164. package/plugins/schema/array/array.js +15 -11
  165. package/plugins/schema/binary/binary.d.ts +7 -3
  166. package/plugins/schema/boolean/boolean.d.ts +1 -0
  167. package/plugins/schema/date/date.d.ts +3 -2
  168. package/plugins/schema/date/date.es6.js +8 -4
  169. package/plugins/schema/date/date.js +8 -4
  170. package/plugins/schema/field/field.d.ts +6 -0
  171. package/plugins/schema/field/field.es6.js +22 -9
  172. package/plugins/schema/field/field.js +20 -11
  173. package/plugins/schema/index.d.ts +8 -7
  174. package/plugins/schema/index.es6.js +8 -7
  175. package/plugins/schema/index.js +8 -7
  176. package/plugins/schema/integer/integer.d.ts +40 -3
  177. package/plugins/schema/integer/integer.es6.js +29 -9
  178. package/plugins/schema/integer/integer.js +29 -9
  179. package/plugins/schema/number/number.d.ts +34 -2
  180. package/plugins/schema/number/number.es6.js +21 -6
  181. package/plugins/schema/number/number.js +21 -6
  182. package/plugins/schema/object/object.d.ts +1 -0
  183. package/plugins/schema/object/object.es6.js +22 -8
  184. package/plugins/schema/object/object.js +21 -11
  185. package/plugins/schema/string/string.d.ts +29 -2
  186. package/plugins/schema/string/string.es6.js +50 -31
  187. package/plugins/schema/string/string.js +50 -31
  188. package/plugins/schema/tuple/tuple.d.ts +1 -0
  189. package/plugins/schema/tuple/tuple.es6.js +8 -9
  190. package/plugins/schema/tuple/tuple.js +7 -12
  191. package/plugins/schema/uuid/uuid.es6.js +5 -3
  192. package/plugins/schema/uuid/uuid.js +5 -3
  193. package/plugins/utils/blacklist/blacklist.d.ts +5 -0
  194. package/plugins/utils/blacklist/blacklist.es6.js +17 -0
  195. package/plugins/utils/blacklist/blacklist.js +21 -0
  196. package/plugins/utils/blacklist/index.d.ts +1 -0
  197. package/plugins/utils/blacklist/index.es6.js +1 -0
  198. package/plugins/utils/blacklist/index.js +9 -0
  199. package/plugins/utils/dts/dts.d.ts +2 -1
  200. package/plugins/utils/dts/dts.es6.js +6 -3
  201. package/plugins/utils/dts/dts.js +6 -3
  202. package/plugins/utils/env/env.d.ts +7 -0
  203. package/plugins/utils/env/env.es6.js +11 -0
  204. package/plugins/utils/env/env.js +15 -0
  205. package/plugins/utils/env/index.d.ts +1 -0
  206. package/plugins/utils/env/index.es6.js +1 -0
  207. package/plugins/utils/{dev → env}/index.js +2 -2
  208. package/plugins/utils/index.d.ts +5 -3
  209. package/plugins/utils/index.es6.js +5 -3
  210. package/plugins/utils/index.js +5 -3
  211. package/plugins/utils/protection/protection.d.ts +4 -4
  212. package/plugins/utils/protection/protection.es6.js +13 -16
  213. package/plugins/utils/protection/protection.js +13 -16
  214. package/plugins/utils/swagger/swagger.d.ts +1 -0
  215. package/plugins/utils/swagger/swagger.es6.js +8 -5
  216. package/plugins/utils/swagger/swagger.js +8 -5
  217. package/plugins/utils/ui/index.d.ts +1 -0
  218. package/plugins/utils/ui/index.es6.js +1 -0
  219. package/plugins/utils/ui/index.js +10 -0
  220. package/plugins/utils/ui/rapidoc.html.es6.js +3 -0
  221. package/plugins/utils/ui/rapidoc.html.js +7 -0
  222. package/plugins/utils/ui/redoc.html.es6.js +3 -0
  223. package/plugins/utils/ui/redoc.html.js +7 -0
  224. package/plugins/utils/ui/scalar.html.es6.js +3 -0
  225. package/plugins/utils/ui/scalar.html.js +7 -0
  226. package/plugins/utils/ui/swagger.html.es6.js +3 -0
  227. package/plugins/utils/ui/swagger.html.js +7 -0
  228. package/plugins/utils/ui/ui.d.ts +13 -0
  229. package/plugins/utils/ui/ui.es6.js +45 -0
  230. package/plugins/utils/ui/ui.js +50 -0
  231. package/plugins/utils/whitelist/index.d.ts +1 -0
  232. package/plugins/utils/whitelist/index.es6.js +1 -0
  233. package/plugins/utils/whitelist/index.js +9 -0
  234. package/plugins/utils/whitelist/whitelist.d.ts +5 -0
  235. package/plugins/utils/whitelist/whitelist.es6.js +19 -0
  236. package/plugins/utils/whitelist/whitelist.js +23 -0
  237. package/types.d.ts +21 -22
  238. package/utils/FileData/Bin.d.ts +13 -13
  239. package/utils/FileData/Bin.es6.js +2 -2
  240. package/utils/FileData/Bin.js +2 -2
  241. package/utils/action/Action.d.ts +13 -14
  242. package/utils/action/Action.es6.js +92 -92
  243. package/utils/action/Action.js +91 -91
  244. package/utils/dateFormat/dateFormat.d.ts +1 -1
  245. package/utils/dateFormat/dateFormat.es6.js +1 -1
  246. package/utils/dateFormat/dateFormat.js +1 -1
  247. package/utils/decorators/once/once.es6.js +1 -1
  248. package/utils/decorators/once/once.js +1 -1
  249. package/utils/generateTypes/generateTypes.d.ts +2 -2
  250. package/utils/generateTypes/generateTypes.es6.js +85 -25
  251. package/utils/generateTypes/generateTypes.js +85 -25
  252. package/utils/getEndpoint/getEndpoint.es6.js +2 -2
  253. package/utils/getEndpoint/getEndpoint.js +2 -2
  254. package/utils/getOrAdd/getOrAdd.d.ts +1 -1
  255. package/utils/getSafeSchema/getSafeSchema.d.ts +2 -0
  256. package/utils/getSafeSchema/getSafeSchema.es6.js +5 -0
  257. package/utils/getSafeSchema/getSafeSchema.js +9 -0
  258. package/utils/getSafeSchema/index.d.ts +1 -0
  259. package/utils/getSafeSchema/index.es6.js +1 -0
  260. package/utils/getSafeSchema/index.js +9 -0
  261. package/utils/httpOnStart/httpOnStart.d.ts +1 -1
  262. package/utils/httpOnStart/httpOnStart.es6.js +1 -1
  263. package/utils/httpOnStart/httpOnStart.js +1 -1
  264. package/utils/index.d.ts +9 -8
  265. package/utils/index.es6.js +9 -8
  266. package/utils/index.js +9 -8
  267. package/utils/parseBody/parseBody.d.ts +0 -1
  268. package/utils/parseBody/parseBody.es6.js +13 -16
  269. package/utils/parseBody/parseBody.js +13 -16
  270. package/utils/parseFormBody/parseFormBody.d.ts +0 -1
  271. package/utils/parseFormBody/parseFormBody.es6.js +41 -41
  272. package/utils/parseFormBody/parseFormBody.js +41 -41
  273. package/utils/parseSearch/parseSearch.es6.js +4 -1
  274. package/utils/parseSearch/parseSearch.js +4 -1
  275. package/utils/rules/arrayOf/arrayOf.es6.js +1 -1
  276. package/utils/rules/arrayOf/arrayOf.js +1 -1
  277. package/utils/rules/bin/bin.es6.js +4 -1
  278. package/utils/rules/bin/bin.js +4 -1
  279. package/utils/rules/binaryAccept/binaryAccept.es6.js +5 -2
  280. package/utils/rules/binaryAccept/binaryAccept.js +5 -2
  281. package/utils/rules/dateTo/dateTo.d.ts +1 -1
  282. package/utils/rules/dateTo/dateTo.es6.js +4 -1
  283. package/utils/rules/dateTo/dateTo.js +4 -1
  284. package/utils/rules/helpers.d.ts +1 -1
  285. package/utils/rules/helpers.es6.js +4 -1
  286. package/utils/rules/helpers.js +4 -1
  287. package/utils/rules/index.d.ts +17 -18
  288. package/utils/rules/index.es6.js +17 -18
  289. package/utils/rules/index.js +18 -19
  290. package/utils/rules/int/int.es6.js +17 -4
  291. package/utils/rules/int/int.js +17 -4
  292. package/utils/rules/max/max.d.ts +1 -1
  293. package/utils/rules/max/max.es6.js +10 -4
  294. package/utils/rules/max/max.js +10 -4
  295. package/utils/rules/maxBin/maxBin.es6.js +5 -2
  296. package/utils/rules/maxBin/maxBin.js +5 -2
  297. package/utils/rules/maxDate/maxDate.es6.js +5 -1
  298. package/utils/rules/maxDate/maxDate.js +5 -1
  299. package/utils/rules/maxLength/maxLength.es6.js +5 -2
  300. package/utils/rules/maxLength/maxLength.js +5 -2
  301. package/utils/rules/min/min.d.ts +1 -1
  302. package/utils/rules/min/min.es6.js +10 -4
  303. package/utils/rules/min/min.js +10 -4
  304. package/utils/rules/minBin/minBin.es6.js +5 -2
  305. package/utils/rules/minBin/minBin.js +5 -2
  306. package/utils/rules/minDate/minDate.es6.js +5 -1
  307. package/utils/rules/minDate/minDate.js +5 -1
  308. package/utils/rules/minLength/minLength.es6.js +5 -2
  309. package/utils/rules/minLength/minLength.js +5 -2
  310. package/utils/rules/num/num.es6.js +4 -1
  311. package/utils/rules/num/num.js +4 -1
  312. package/utils/rules/objectOf/objectOf.d.ts +1 -1
  313. package/utils/rules/objectOf/objectOf.es6.js +16 -3
  314. package/utils/rules/objectOf/objectOf.js +16 -3
  315. package/utils/rules/pattern/pattern.d.ts +1 -1
  316. package/utils/rules/pattern/pattern.es6.js +6 -1
  317. package/utils/rules/pattern/pattern.js +6 -1
  318. package/utils/rules/tupleOf/tupleOf.es6.js +1 -1
  319. package/utils/rules/tupleOf/tupleOf.js +1 -1
  320. package/utils/rules/values/values.es6.js +5 -2
  321. package/utils/rules/values/values.js +5 -2
  322. package/utils/stringifySearch/stringifySearch.es6.js +4 -1
  323. package/utils/stringifySearch/stringifySearch.js +4 -1
  324. package/example/app/App/App.d.ts +0 -1
  325. package/example/app/App/index.d.ts +0 -1
  326. package/example/index.d.ts +0 -1
  327. package/example/requests/index.d.ts +0 -1
  328. package/example/requests/todo/AddTodo/AddTodo.d.ts +0 -1
  329. package/example/requests/todo/AddTodo/index.d.ts +0 -1
  330. package/example/requests/todo/DeleteTodo/DeleteTodo.d.ts +0 -1
  331. package/example/requests/todo/DeleteTodo/index.d.ts +0 -1
  332. package/example/requests/todo/EditTodo/EditTodo.d.ts +0 -1
  333. package/example/requests/todo/EditTodo/index.d.ts +0 -1
  334. package/example/requests/todo/GetTodo/GetTodo.d.ts +0 -1
  335. package/example/requests/todo/GetTodo/index.d.ts +0 -1
  336. package/example/requests/todo/GetTodos/GetTodos.d.ts +0 -1
  337. package/example/requests/todo/GetTodos/index.d.ts +0 -1
  338. package/example/requests/todo/index.d.ts +0 -5
  339. package/example/requests/todo/todos.d.ts +0 -1
  340. package/example/schemas/app/ListQueryParams/ListQueryParams.d.ts +0 -1
  341. package/example/schemas/app/ListQueryParams/index.d.ts +0 -1
  342. package/example/schemas/app/ListSchema/ListSchema.d.ts +0 -4
  343. package/example/schemas/app/ListSchema/index.d.ts +0 -1
  344. package/example/schemas/app/index.d.ts +0 -2
  345. package/example/schemas/index.d.ts +0 -2
  346. package/example/schemas/todo/TodoSchema/TodoSchema.d.ts +0 -4
  347. package/example/schemas/todo/TodoSchema/index.d.ts +0 -1
  348. package/example/schemas/todo/index.d.ts +0 -1
  349. package/example/tags/Todo/Todo.d.ts +0 -1
  350. package/example/tags/Todo/index.d.ts +0 -1
  351. package/example/tags/index.d.ts +0 -1
  352. package/hooks/useRequestPlugin/index.d.ts +0 -1
  353. package/hooks/useRequestPlugin/index.es6.js +0 -1
  354. package/hooks/useRequestPlugin/index.js +0 -9
  355. package/hooks/useRequestPlugin/useRequestPlugin.d.ts +0 -2
  356. package/hooks/useRequestPlugin/useRequestPlugin.es6.js +0 -13
  357. package/hooks/useRequestPlugin/useRequestPlugin.js +0 -17
  358. package/openApi.test.d.ts +0 -1
  359. package/plugins/main/fallback/fallback.d.ts +0 -4
  360. package/plugins/main/fallback/fallback.es6.js +0 -19
  361. package/plugins/main/fallback/fallback.js +0 -23
  362. package/plugins/main/fallback/index.d.ts +0 -1
  363. package/plugins/main/fallback/index.es6.js +0 -1
  364. package/plugins/main/fallback/index.js +0 -9
  365. package/plugins/main/request/index.d.ts +0 -1
  366. package/plugins/main/request/index.es6.js +0 -1
  367. package/plugins/main/request/index.js +0 -9
  368. package/plugins/main/request/request.d.ts +0 -4
  369. package/plugins/main/request/request.es6.js +0 -21
  370. package/plugins/main/request/request.js +0 -25
  371. package/plugins/utils/dev/dev.d.ts +0 -4
  372. package/plugins/utils/dev/dev.es6.js +0 -10
  373. package/plugins/utils/dev/dev.js +0 -18
  374. package/plugins/utils/dev/index.d.ts +0 -1
  375. package/plugins/utils/dev/index.es6.js +0 -1
  376. package/plugins/utils/prod/index.d.ts +0 -1
  377. package/plugins/utils/prod/index.es6.js +0 -1
  378. package/plugins/utils/prod/prod.d.ts +0 -4
  379. package/plugins/utils/prod/prod.es6.js +0 -10
  380. package/plugins/utils/prod/prod.js +0 -18
  381. package/utils/decorators/once/once.test.d.ts +0 -1
  382. package/utils/generateTypes/generateTypes.test.d.ts +0 -1
  383. package/utils/parseSearch/parseSearch.test.d.ts +0 -1
  384. package/utils/rules/any/any.d.ts +0 -1
  385. package/utils/rules/any/any.es6.js +0 -5
  386. package/utils/rules/any/any.js +0 -9
  387. /package/{utils/rules → plugins/schema}/any/index.d.ts +0 -0
  388. /package/{utils/rules → plugins/schema}/any/index.es6.js +0 -0
  389. /package/{utils/rules → plugins/schema}/any/index.js +0 -0
@@ -1,37 +1,53 @@
1
- import innet, { useNewHandler } from 'innet';
2
- import { useProps, useChildren, useContext } from '@innet/jsx';
1
+ import { useNewHandler, innet } from 'innet';
2
+ import { useProps, useContext } from '@innet/jsx';
3
3
  import '../../../hooks/index.es6.js';
4
4
  import '../../../utils/index.es6.js';
5
+ import '../../request/index.es6.js';
6
+ import { errorStatuses } from '../../request/error/error.es6.js';
7
+ import { redirectStatuses } from '../../request/redirect/redirect.es6.js';
8
+ import { successStatuses } from '../../request/success/success.es6.js';
5
9
  import { useEndpoint, endpointContext } from '../../../hooks/useEndpoint/useEndpoint.es6.js';
6
10
  import { useThrow } from '../../../hooks/useThrow/useThrow.es6.js';
7
11
  import { schemaContext } from '../../../hooks/useSchemaContext/useSchemaContext.es6.js';
8
12
  import { getOrAdd } from '../../../utils/getOrAdd/getOrAdd.es6.js';
9
13
  import { ruleContext } from '../../../hooks/useRule/useRule.es6.js';
10
14
 
15
+ const statuses = {
16
+ ...errorStatuses,
17
+ ...redirectStatuses,
18
+ ...successStatuses,
19
+ };
11
20
  const response = () => {
12
- const { description = '', status = 'default' } = useProps() || {};
13
- const { operation, props: { path } } = useEndpoint();
14
- const children = useChildren();
21
+ var _a;
22
+ let { children, description = '', status = 'default', type = 'application/json', } = useProps() || {};
23
+ const { operation, props: { path }, } = useEndpoint();
15
24
  const handler = useNewHandler();
16
25
  const endpoint = useContext(endpointContext);
26
+ if (status in statuses) {
27
+ status = statuses[status];
28
+ }
17
29
  if (!endpoint) {
18
30
  useThrow('<{type}> MUST be placed in <endpoint> element');
19
31
  }
20
32
  if (!operation.responses) {
21
33
  operation.responses = {};
22
34
  }
23
- if (operation.responses[status]) {
24
- throw Error(`status ${status} for '${path}' already used`);
35
+ const defaultResponse = operation.responses[status];
36
+ if ((_a = defaultResponse === null || defaultResponse === void 0 ? void 0 : defaultResponse.content) === null || _a === void 0 ? void 0 : _a[type]) {
37
+ throw Error(`status ${status} and type ${type} for '${path}' already used`);
25
38
  }
26
- const schema = {};
39
+ const schema = status === 204 || !children ? undefined : {};
27
40
  const response = {
28
41
  description,
29
- content: {
30
- 'application/json': {
42
+ };
43
+ if (schema) {
44
+ response.content = {
45
+ ...defaultResponse === null || defaultResponse === void 0 ? void 0 : defaultResponse.content,
46
+ [type]: {
31
47
  schema,
32
48
  },
33
- },
34
- };
49
+ };
50
+ }
35
51
  operation.responses[status] = response;
36
52
  schemaContext.set(handler, schema);
37
53
  const rules = getOrAdd(endpoint, 'endpoint.rules', [{}, {}]);
@@ -41,4 +57,4 @@ const response = () => {
41
57
  innet(children, handler);
42
58
  };
43
59
 
44
- export { response };
60
+ export { response, statuses };
@@ -6,47 +6,60 @@ var innet = require('innet');
6
6
  var jsx = require('@innet/jsx');
7
7
  require('../../../hooks/index.js');
8
8
  require('../../../utils/index.js');
9
+ require('../../request/index.js');
10
+ var error = require('../../request/error/error.js');
11
+ var redirect = require('../../request/redirect/redirect.js');
12
+ var success = require('../../request/success/success.js');
9
13
  var useEndpoint = require('../../../hooks/useEndpoint/useEndpoint.js');
10
14
  var useThrow = require('../../../hooks/useThrow/useThrow.js');
11
15
  var useSchemaContext = require('../../../hooks/useSchemaContext/useSchemaContext.js');
12
16
  var getOrAdd = require('../../../utils/getOrAdd/getOrAdd.js');
13
17
  var useRule = require('../../../hooks/useRule/useRule.js');
14
18
 
15
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
-
17
- var innet__default = /*#__PURE__*/_interopDefaultLegacy(innet);
18
-
19
+ const statuses = {
20
+ ...error.errorStatuses,
21
+ ...redirect.redirectStatuses,
22
+ ...success.successStatuses,
23
+ };
19
24
  const response = () => {
20
- const { description = '', status = 'default' } = jsx.useProps() || {};
21
- const { operation, props: { path } } = useEndpoint.useEndpoint();
22
- const children = jsx.useChildren();
25
+ var _a;
26
+ let { children, description = '', status = 'default', type = 'application/json', } = jsx.useProps() || {};
27
+ const { operation, props: { path }, } = useEndpoint.useEndpoint();
23
28
  const handler = innet.useNewHandler();
24
29
  const endpoint = jsx.useContext(useEndpoint.endpointContext);
30
+ if (status in statuses) {
31
+ status = statuses[status];
32
+ }
25
33
  if (!endpoint) {
26
34
  useThrow.useThrow('<{type}> MUST be placed in <endpoint> element');
27
35
  }
28
36
  if (!operation.responses) {
29
37
  operation.responses = {};
30
38
  }
31
- if (operation.responses[status]) {
32
- throw Error(`status ${status} for '${path}' already used`);
39
+ const defaultResponse = operation.responses[status];
40
+ if ((_a = defaultResponse === null || defaultResponse === void 0 ? void 0 : defaultResponse.content) === null || _a === void 0 ? void 0 : _a[type]) {
41
+ throw Error(`status ${status} and type ${type} for '${path}' already used`);
33
42
  }
34
- const schema = {};
43
+ const schema = status === 204 || !children ? undefined : {};
35
44
  const response = {
36
45
  description,
37
- content: {
38
- 'application/json': {
46
+ };
47
+ if (schema) {
48
+ response.content = {
49
+ ...defaultResponse === null || defaultResponse === void 0 ? void 0 : defaultResponse.content,
50
+ [type]: {
39
51
  schema,
40
52
  },
41
- },
42
- };
53
+ };
54
+ }
43
55
  operation.responses[status] = response;
44
56
  useSchemaContext.schemaContext.set(handler, schema);
45
57
  const rules = getOrAdd.getOrAdd(endpoint, 'endpoint.rules', [{}, {}]);
46
58
  useRule.ruleContext.set(handler, rule => {
47
59
  rules.response = rule;
48
60
  });
49
- innet__default["default"](children, handler);
61
+ innet.innet(children, handler);
50
62
  };
51
63
 
52
64
  exports.response = response;
65
+ exports.statuses = statuses;
@@ -0,0 +1 @@
1
+ export * from './return';
@@ -0,0 +1 @@
1
+ export { returnPlugin } from './return.es6.js';
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _return = require('./return.js');
6
+
7
+
8
+
9
+ exports.returnPlugin = _return.returnPlugin;
@@ -0,0 +1,4 @@
1
+ import { type HandlerPlugin } from 'innet';
2
+ export interface ReturnProps {
3
+ }
4
+ export declare const returnPlugin: HandlerPlugin;
@@ -0,0 +1,10 @@
1
+ import { useChildren } from '@innet/jsx';
2
+ import '../../../hooks/index.es6.js';
3
+ import { useServerPlugin } from '../../../hooks/useServerPlugin/useServerPlugin.es6.js';
4
+
5
+ const returnPlugin = () => {
6
+ const children = useChildren();
7
+ useServerPlugin(() => children);
8
+ };
9
+
10
+ export { returnPlugin };
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsx = require('@innet/jsx');
6
+ require('../../../hooks/index.js');
7
+ var useServerPlugin = require('../../../hooks/useServerPlugin/useServerPlugin.js');
8
+
9
+ const returnPlugin = () => {
10
+ const children = jsx.useChildren();
11
+ useServerPlugin.useServerPlugin(() => children);
12
+ };
13
+
14
+ exports.returnPlugin = returnPlugin;
@@ -1,13 +1,13 @@
1
- /// <reference types="node" />
2
1
  import { type HandlerPlugin } from 'innet';
3
- import { type ServerResponse } from 'http';
2
+ import { type IncomingMessage, type ServerResponse } from 'http';
4
3
  import { type ServerStartParams, type SSL } from '../../../types';
5
4
  export interface ServerProps {
5
+ children?: any;
6
+ onClose?: () => any;
7
+ onError?: (e: Error) => any;
8
+ onRequest?: (req: IncomingMessage, res: ServerResponse) => any;
9
+ onStart?: (params: ServerStartParams) => any;
6
10
  port?: number;
7
11
  ssl?: SSL;
8
- onStart?: (params: ServerStartParams) => any;
9
- onRequest?: (req: Request, res: ServerResponse) => any;
10
- onError?: (e: Error) => any;
11
- onDestroy?: () => any;
12
12
  }
13
13
  export declare const server: HandlerPlugin;
@@ -1,24 +1,30 @@
1
- import innet, { useNewHandler, useApp } from 'innet';
1
+ import { useNewHandler, innet } from 'innet';
2
+ import { useProps } from '@innet/jsx';
2
3
  import fs from 'node:fs';
3
4
  import http from 'node:http';
4
5
  import http2 from 'node:https';
5
6
  import { onDestroy } from 'watch-state';
6
7
  import '../../../hooks/index.es6.js';
8
+ import '../../../utils/index.es6.js';
7
9
  import { serverContext } from '../../../hooks/useServer/useServer.es6.js';
10
+ import { serverPlugins } from '../../../hooks/useServerPlugins/useServerPlugins.es6.js';
11
+ import { serverPortContext } from '../../../hooks/useServerPort/useServerPort.es6.js';
12
+ import { serverHttpsContext } from '../../../hooks/useIsServerHttps/useIsServerHttps.es6.js';
13
+ import { Action } from '../../../utils/action/Action.es6.js';
14
+ import { actionContext } from '../../../hooks/useAction/useAction.es6.js';
15
+ import { requestHandlerContext } from '../../../hooks/useRequestHandler/useRequestHandler.es6.js';
8
16
 
9
- // eslint-disable-next-line @typescript-eslint/no-var-requires
10
- const isInvalidPath = require('is-invalid-path');
11
17
  const server = () => {
12
18
  var _a, _b, _c;
13
19
  const handler = useNewHandler();
14
- const { props = {}, children } = useApp();
20
+ const props = useProps();
15
21
  const { env } = process;
16
- let { ssl: { key = (_a = env.SSL_KEY) !== null && _a !== void 0 ? _a : 'localhost.key', cert = (_b = env.SSL_CRT) !== null && _b !== void 0 ? _b : 'localhost.crt', } = {}, } = props;
22
+ let { ssl: { cert = (_a = env.INNET_SSL_CRT) !== null && _a !== void 0 ? _a : 'localhost.crt', key = (_b = env.INNET_SSL_KEY) !== null && _b !== void 0 ? _b : 'localhost.key', } = {}, } = props;
17
23
  try {
18
- if (!isInvalidPath(key)) {
24
+ if (!key.startsWith('-----BEGIN PRIVATE KEY-----')) {
19
25
  key = fs.readFileSync(key).toString();
20
26
  }
21
- if (!isInvalidPath(cert)) {
27
+ if (!cert.startsWith('-----BEGIN CERTIFICATE-----')) {
22
28
  cert = fs.readFileSync(cert).toString();
23
29
  }
24
30
  }
@@ -27,23 +33,41 @@ const server = () => {
27
33
  cert = '';
28
34
  }
29
35
  const https = Boolean(key && cert);
30
- const { port = Number((_c = env.PORT) !== null && _c !== void 0 ? _c : (https ? 442 : 80)), onStart, onError, onRequest, } = props;
31
- const server = https ? http2.createServer({ key, cert }) : http.createServer();
32
- handler[serverContext.key] = { server, port };
36
+ const { onClose, onError, onRequest, onStart, port = Number((_c = env.INNET_PORT) !== null && _c !== void 0 ? _c : (https ? 443 : 80)), } = props;
37
+ const plugins = new Set();
38
+ const server = https ? http2.createServer({ cert, key }) : http.createServer();
39
+ serverContext.set(handler, { port, server });
40
+ serverPlugins.set(handler, plugins);
41
+ serverPortContext.set(handler, port);
42
+ serverHttpsContext.set(handler, https);
33
43
  onDestroy(() => {
34
- var _a;
35
- (_a = props.onDestroy) === null || _a === void 0 ? void 0 : _a.call(props);
36
44
  server.close();
37
45
  });
38
46
  if (onError) {
39
47
  server.on('error', onError);
40
48
  }
41
- if (onRequest) {
42
- server.on('request', onRequest);
49
+ if (onClose) {
50
+ server.addListener('close', onClose);
43
51
  }
44
- innet(children, handler);
52
+ server.on('request', (req, res) => {
53
+ onRequest === null || onRequest === void 0 ? void 0 : onRequest(req, res);
54
+ const action = new Action(req, res);
55
+ const requestHandler = Object.create(handler);
56
+ actionContext.set(requestHandler, action);
57
+ requestHandlerContext.set(requestHandler, requestHandler);
58
+ async function server() {
59
+ for (const plugin of plugins) {
60
+ const result = await plugin();
61
+ if (result !== undefined) {
62
+ return result;
63
+ }
64
+ }
65
+ }
66
+ innet({ props, type: server }, requestHandler);
67
+ });
68
+ innet(props.children, handler);
45
69
  server.listen(port, () => {
46
- onStart === null || onStart === void 0 ? void 0 : onStart({ port, https });
70
+ onStart === null || onStart === void 0 ? void 0 : onStart({ https, port });
47
71
  });
48
72
  };
49
73
 
@@ -3,33 +3,38 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var innet = require('innet');
6
+ var jsx = require('@innet/jsx');
6
7
  var fs = require('node:fs');
7
8
  var http = require('node:http');
8
9
  var http2 = require('node:https');
9
10
  var watchState = require('watch-state');
10
11
  require('../../../hooks/index.js');
12
+ require('../../../utils/index.js');
11
13
  var useServer = require('../../../hooks/useServer/useServer.js');
14
+ var useServerPlugins = require('../../../hooks/useServerPlugins/useServerPlugins.js');
15
+ var useServerPort = require('../../../hooks/useServerPort/useServerPort.js');
16
+ var useIsServerHttps = require('../../../hooks/useIsServerHttps/useIsServerHttps.js');
17
+ var Action = require('../../../utils/action/Action.js');
18
+ var useAction = require('../../../hooks/useAction/useAction.js');
19
+ var useRequestHandler = require('../../../hooks/useRequestHandler/useRequestHandler.js');
12
20
 
13
21
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
14
22
 
15
- var innet__default = /*#__PURE__*/_interopDefaultLegacy(innet);
16
23
  var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
17
24
  var http__default = /*#__PURE__*/_interopDefaultLegacy(http);
18
25
  var http2__default = /*#__PURE__*/_interopDefaultLegacy(http2);
19
26
 
20
- // eslint-disable-next-line @typescript-eslint/no-var-requires
21
- const isInvalidPath = require('is-invalid-path');
22
27
  const server = () => {
23
28
  var _a, _b, _c;
24
29
  const handler = innet.useNewHandler();
25
- const { props = {}, children } = innet.useApp();
30
+ const props = jsx.useProps();
26
31
  const { env } = process;
27
- let { ssl: { key = (_a = env.SSL_KEY) !== null && _a !== void 0 ? _a : 'localhost.key', cert = (_b = env.SSL_CRT) !== null && _b !== void 0 ? _b : 'localhost.crt', } = {}, } = props;
32
+ let { ssl: { cert = (_a = env.INNET_SSL_CRT) !== null && _a !== void 0 ? _a : 'localhost.crt', key = (_b = env.INNET_SSL_KEY) !== null && _b !== void 0 ? _b : 'localhost.key', } = {}, } = props;
28
33
  try {
29
- if (!isInvalidPath(key)) {
34
+ if (!key.startsWith('-----BEGIN PRIVATE KEY-----')) {
30
35
  key = fs__default["default"].readFileSync(key).toString();
31
36
  }
32
- if (!isInvalidPath(cert)) {
37
+ if (!cert.startsWith('-----BEGIN CERTIFICATE-----')) {
33
38
  cert = fs__default["default"].readFileSync(cert).toString();
34
39
  }
35
40
  }
@@ -38,23 +43,41 @@ const server = () => {
38
43
  cert = '';
39
44
  }
40
45
  const https = Boolean(key && cert);
41
- const { port = Number((_c = env.PORT) !== null && _c !== void 0 ? _c : (https ? 442 : 80)), onStart, onError, onRequest, } = props;
42
- const server = https ? http2__default["default"].createServer({ key, cert }) : http__default["default"].createServer();
43
- handler[useServer.serverContext.key] = { server, port };
46
+ const { onClose, onError, onRequest, onStart, port = Number((_c = env.INNET_PORT) !== null && _c !== void 0 ? _c : (https ? 443 : 80)), } = props;
47
+ const plugins = new Set();
48
+ const server = https ? http2__default["default"].createServer({ cert, key }) : http__default["default"].createServer();
49
+ useServer.serverContext.set(handler, { port, server });
50
+ useServerPlugins.serverPlugins.set(handler, plugins);
51
+ useServerPort.serverPortContext.set(handler, port);
52
+ useIsServerHttps.serverHttpsContext.set(handler, https);
44
53
  watchState.onDestroy(() => {
45
- var _a;
46
- (_a = props.onDestroy) === null || _a === void 0 ? void 0 : _a.call(props);
47
54
  server.close();
48
55
  });
49
56
  if (onError) {
50
57
  server.on('error', onError);
51
58
  }
52
- if (onRequest) {
53
- server.on('request', onRequest);
59
+ if (onClose) {
60
+ server.addListener('close', onClose);
54
61
  }
55
- innet__default["default"](children, handler);
62
+ server.on('request', (req, res) => {
63
+ onRequest === null || onRequest === void 0 ? void 0 : onRequest(req, res);
64
+ const action = new Action.Action(req, res);
65
+ const requestHandler = Object.create(handler);
66
+ useAction.actionContext.set(requestHandler, action);
67
+ useRequestHandler.requestHandlerContext.set(requestHandler, requestHandler);
68
+ async function server() {
69
+ for (const plugin of plugins) {
70
+ const result = await plugin();
71
+ if (result !== undefined) {
72
+ return result;
73
+ }
74
+ }
75
+ }
76
+ innet.innet({ props, type: server }, requestHandler);
77
+ });
78
+ innet.innet(props.children, handler);
56
79
  server.listen(port, () => {
57
- onStart === null || onStart === void 0 ? void 0 : onStart({ port, https });
80
+ onStart === null || onStart === void 0 ? void 0 : onStart({ https, port });
58
81
  });
59
82
  };
60
83
 
@@ -1 +1 @@
1
- export { tag } from './tag.es6.js';
1
+ export { TAG_GROUP_NAME, tag } from './tag.es6.js';
@@ -6,4 +6,5 @@ var tag = require('./tag.js');
6
6
 
7
7
 
8
8
 
9
+ exports.TAG_GROUP_NAME = tag.TAG_GROUP_NAME;
9
10
  exports.tag = tag.tag;
@@ -1,11 +1,19 @@
1
1
  import { type HandlerPlugin } from 'innet';
2
- export interface TagProps {
3
- /** The name of the tag. */
2
+ export interface TagGroup {
4
3
  name: string;
4
+ tags: string[];
5
+ }
6
+ export declare const TAG_GROUP_NAME = "x-tagGroups";
7
+ export interface TagProps {
8
+ children?: any;
5
9
  /**
6
10
  * A description for the tag.
7
11
  * [CommonMark syntax](https://spec.commonmark.org) MAY be used for rich text representation.
8
12
  * */
9
13
  description?: string;
14
+ /** A name of the tag group. */
15
+ group?: string;
16
+ /** A name of the tag. */
17
+ name: string;
10
18
  }
11
19
  export declare const tag: HandlerPlugin;
@@ -1,17 +1,20 @@
1
- import innet, { useNewHandler } from 'innet';
2
- import { useContext, useProps, useChildren } from '@innet/jsx';
1
+ import { useNewHandler, innet } from 'innet';
2
+ import { useContext, useProps } from '@innet/jsx';
3
3
  import '../../../hooks/index.es6.js';
4
4
  import { tagContext } from '../../../hooks/useTag/useTag.es6.js';
5
5
  import { useApi } from '../../../hooks/useApi/useApi.es6.js';
6
6
 
7
+ const TAG_GROUP_NAME = 'x-tagGroups';
7
8
  const tag = () => {
8
9
  if (useContext(tagContext)) {
9
10
  throw Error('You cannot use a <tag> inside another one');
10
11
  }
11
- const { name, description } = useProps();
12
- const children = useChildren();
12
+ const { children, description, group, name, } = useProps();
13
13
  const { docs } = useApi();
14
- const tag = description ? { name, description } : { name };
14
+ const tag = { name };
15
+ if (description) {
16
+ tag.description = description;
17
+ }
15
18
  if (!docs.tags) {
16
19
  docs.tags = [tag];
17
20
  }
@@ -21,9 +24,25 @@ const tag = () => {
21
24
  else {
22
25
  throw Error(`You cannot use two tags with the same name (${name})`);
23
26
  }
27
+ if (group) {
28
+ if (docs[TAG_GROUP_NAME]) {
29
+ const groups = docs[TAG_GROUP_NAME];
30
+ const tagGroup = groups.find(({ name }) => name === group);
31
+ if (tagGroup) {
32
+ tagGroup.tags.push(name);
33
+ }
34
+ else {
35
+ groups.push({ name: group, tags: [name] });
36
+ }
37
+ }
38
+ else {
39
+ // @ts-expect-error Custom field
40
+ docs[TAG_GROUP_NAME] = [{ name: group, tags: [name] }];
41
+ }
42
+ }
24
43
  const handler = useNewHandler();
25
44
  handler[tagContext.key] = tag;
26
45
  innet(children, handler);
27
46
  };
28
47
 
29
- export { tag };
48
+ export { TAG_GROUP_NAME, tag };
@@ -8,18 +8,17 @@ require('../../../hooks/index.js');
8
8
  var useTag = require('../../../hooks/useTag/useTag.js');
9
9
  var useApi = require('../../../hooks/useApi/useApi.js');
10
10
 
11
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
-
13
- var innet__default = /*#__PURE__*/_interopDefaultLegacy(innet);
14
-
11
+ const TAG_GROUP_NAME = 'x-tagGroups';
15
12
  const tag = () => {
16
13
  if (jsx.useContext(useTag.tagContext)) {
17
14
  throw Error('You cannot use a <tag> inside another one');
18
15
  }
19
- const { name, description } = jsx.useProps();
20
- const children = jsx.useChildren();
16
+ const { children, description, group, name, } = jsx.useProps();
21
17
  const { docs } = useApi.useApi();
22
- const tag = description ? { name, description } : { name };
18
+ const tag = { name };
19
+ if (description) {
20
+ tag.description = description;
21
+ }
23
22
  if (!docs.tags) {
24
23
  docs.tags = [tag];
25
24
  }
@@ -29,9 +28,26 @@ const tag = () => {
29
28
  else {
30
29
  throw Error(`You cannot use two tags with the same name (${name})`);
31
30
  }
31
+ if (group) {
32
+ if (docs[TAG_GROUP_NAME]) {
33
+ const groups = docs[TAG_GROUP_NAME];
34
+ const tagGroup = groups.find(({ name }) => name === group);
35
+ if (tagGroup) {
36
+ tagGroup.tags.push(name);
37
+ }
38
+ else {
39
+ groups.push({ name: group, tags: [name] });
40
+ }
41
+ }
42
+ else {
43
+ // @ts-expect-error Custom field
44
+ docs[TAG_GROUP_NAME] = [{ name: group, tags: [name] }];
45
+ }
46
+ }
32
47
  const handler = innet.useNewHandler();
33
48
  handler[useTag.tagContext.key] = tag;
34
- innet__default["default"](children, handler);
49
+ innet.innet(children, handler);
35
50
  };
36
51
 
52
+ exports.TAG_GROUP_NAME = TAG_GROUP_NAME;
37
53
  exports.tag = tag;
@@ -1,5 +1,10 @@
1
1
  import { type HandlerPlugin } from 'innet';
2
2
  export interface VariableProps {
3
+ /**
4
+ * An optional description for the server variable.
5
+ * [CommonMark syntax](https://spec.commonmark.org) MAY be used for rich text representation.
6
+ * */
7
+ description?: string;
3
8
  /**
4
9
  * A server url parameter
5
10
  * */
@@ -15,10 +20,5 @@ export interface VariableProps {
15
20
  * The array MUST NOT be empty.
16
21
  * */
17
22
  values?: [string, string, ...string[]];
18
- /**
19
- * An optional description for the server variable.
20
- * [CommonMark syntax](https://spec.commonmark.org) MAY be used for rich text representation.
21
- * */
22
- description?: string;
23
23
  }
24
24
  export declare const variable: HandlerPlugin;
@@ -1,16 +1,17 @@
1
- import { __rest } from 'tslib';
2
1
  import { useProps } from '@innet/jsx';
3
2
  import '../../../hooks/index.es6.js';
4
3
  import { useHost } from '../../../hooks/useHost/useHost.es6.js';
5
4
 
6
5
  const variable = () => {
7
6
  const { server } = useHost();
8
- const _a = useProps(), { key, values, value = values === null || values === void 0 ? void 0 : values[0] } = _a, rest = __rest(_a, ["key", "values", "value"]);
7
+ const { key, values,
8
+ // predefine
9
+ value = values === null || values === void 0 ? void 0 : values[0], ...rest } = useProps();
9
10
  if (!server.variables) {
10
11
  server.variables = {};
11
12
  }
12
13
  // @ts-expect-error: FIXME
13
- server.variables[key] = Object.assign(Object.assign({}, rest), { default: value, enum: values });
14
+ server.variables[key] = { ...rest, default: value, enum: values };
14
15
  };
15
16
 
16
17
  export { variable };
@@ -2,19 +2,20 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib = require('tslib');
6
5
  var jsx = require('@innet/jsx');
7
6
  require('../../../hooks/index.js');
8
7
  var useHost = require('../../../hooks/useHost/useHost.js');
9
8
 
10
9
  const variable = () => {
11
10
  const { server } = useHost.useHost();
12
- const _a = jsx.useProps(), { key, values, value = values === null || values === void 0 ? void 0 : values[0] } = _a, rest = tslib.__rest(_a, ["key", "values", "value"]);
11
+ const { key, values,
12
+ // predefine
13
+ value = values === null || values === void 0 ? void 0 : values[0], ...rest } = jsx.useProps();
13
14
  if (!server.variables) {
14
15
  server.variables = {};
15
16
  }
16
17
  // @ts-expect-error: FIXME
17
- server.variables[key] = Object.assign(Object.assign({}, rest), { default: value, enum: values });
18
+ server.variables[key] = { ...rest, default: value, enum: values };
18
19
  };
19
20
 
20
21
  exports.variable = variable;
@@ -1,4 +1,5 @@
1
1
  export interface CmsProps {
2
+ children?: any;
2
3
  dir?: string;
3
4
  prefix?: string;
4
5
  }
@@ -1,5 +1,5 @@
1
- import innet, { useHandler } from 'innet';
2
- import { useProps, useChildren } from '@innet/jsx';
1
+ import { useHandler, innet } from 'innet';
2
+ import { useProps } from '@innet/jsx';
3
3
  import path from 'node:path';
4
4
  import '../file/index.es6.js';
5
5
  import '../../../hooks/index.es6.js';
@@ -7,8 +7,7 @@ import { usePath } from '../../../hooks/usePath/usePath.es6.js';
7
7
  import { file } from '../file/file.es6.js';
8
8
 
9
9
  function cms() {
10
- const { prefix = '/', dir = '.' } = useProps() || {};
11
- const children = useChildren();
10
+ const { children, dir = process.env.INNET_CMS_DIR || '.', prefix = process.env.INNET_CMS_PREFIX || '/', } = useProps();
12
11
  const handler = useHandler();
13
12
  let url = usePath();
14
13
  if (url.startsWith(prefix)) {
@@ -18,7 +17,7 @@ function cms() {
18
17
  return innet(children, handler);
19
18
  }
20
19
  const filePath = path.join(dir, url);
21
- innet({ type: file, props: { path: filePath }, children }, handler);
20
+ innet({ children, props: { path: filePath }, type: file }, handler);
22
21
  }
23
22
 
24
23
  export { cms };