@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
@@ -8,14 +8,14 @@ var useResponse = require('../../../hooks/useResponse/useResponse.js');
8
8
  var useHeaders = require('../../../hooks/useHeaders/useHeaders.js');
9
9
 
10
10
  const redirectStatuses = {
11
- multipleChoices: 300,
12
- movedPermanently: 301,
13
11
  found: 302,
14
- seeOther: 303,
12
+ movedPermanently: 301,
13
+ multipleChoices: 300,
15
14
  notModified: 304,
16
- useProxy: 305,
17
- temporaryRedirect: 307,
18
15
  permanentRedirect: 308,
16
+ seeOther: 303,
17
+ temporaryRedirect: 307,
18
+ useProxy: 305,
19
19
  };
20
20
  function getStatus(status) {
21
21
  if (typeof status === 'number')
@@ -34,10 +34,10 @@ const redirect = () => {
34
34
  }
35
35
  const headers = useHeaders.useHeaders();
36
36
  const props = jsx.useProps();
37
- const { to, status = 301, encode } = props;
37
+ const { encode, status = 301, to, } = props;
38
38
  res.writeHead(getStatus(status), {
39
- location: encode ? customEncode(to) : to,
40
39
  'Cache-Control': (_a = headers['Cache-Control']) !== null && _a !== void 0 ? _a : 'no-cache, no-store, must-revalidate',
40
+ location: encode ? customEncode(to) : to,
41
41
  });
42
42
  res.end();
43
43
  };
@@ -1,17 +1,19 @@
1
1
  import { type HandlerPlugin } from 'innet';
2
2
  export declare const successStatuses: {
3
- readonly ok: 200;
4
- readonly created: 201;
5
3
  readonly accepted: 202;
6
- readonly outside: 203;
4
+ readonly alreadyReported: 208;
5
+ readonly created: 201;
6
+ readonly multiStatus: 207;
7
7
  readonly noContent: 204;
8
- readonly resetContent: 205;
8
+ readonly ok: 200;
9
+ readonly outside: 203;
9
10
  readonly partialContent: 206;
10
- readonly multiStatus: 207;
11
- readonly alreadyReported: 208;
11
+ readonly resetContent: 205;
12
12
  };
13
13
  export type SuccessStatuses = keyof typeof successStatuses;
14
14
  export interface SuccessProps {
15
+ children?: any;
15
16
  status?: SuccessStatuses | number;
17
+ type?: string;
16
18
  }
17
19
  export declare const success: HandlerPlugin;
@@ -1,31 +1,41 @@
1
- import { useChildren, useProps } from '@innet/jsx';
1
+ import { useProps } from '@innet/jsx';
2
2
  import '../../../hooks/index.es6.js';
3
3
  import '../../../utils/index.es6.js';
4
4
  import { useResponse } from '../../../hooks/useResponse/useResponse.es6.js';
5
5
  import { JSONString } from '../../../utils/JSONString/JSONString.es6.js';
6
6
 
7
7
  const successStatuses = {
8
- ok: 200,
9
- created: 201,
10
8
  accepted: 202,
11
- outside: 203,
9
+ alreadyReported: 208,
10
+ created: 201,
11
+ multiStatus: 207,
12
12
  noContent: 204,
13
- resetContent: 205,
13
+ ok: 200,
14
+ outside: 203,
14
15
  partialContent: 206,
15
- multiStatus: 207,
16
- alreadyReported: 208,
16
+ resetContent: 205,
17
17
  };
18
18
  const success = () => {
19
- const children = useChildren();
20
- const props = useProps();
19
+ const { children, status, type, } = useProps();
21
20
  const res = useResponse();
22
- const status = props === null || props === void 0 ? void 0 : props.status;
23
21
  if (!res) {
24
22
  throw Error('<success> MUST be in <request>');
25
23
  }
26
24
  res.statusCode = typeof status === 'string' ? successStatuses[status] : status !== null && status !== void 0 ? status : ((children) ? 200 : 204);
27
25
  if (children) {
28
- res.write(JSONString(children[0]));
26
+ const child = children;
27
+ const contentType = type || (['bigint', 'boolean', 'number', 'string'].includes(typeof child)
28
+ ? 'text/plain'
29
+ : 'application/json');
30
+ const content = contentType === 'application/json' ? JSONString(child) : String(child);
31
+ res.setHeader('Content-Type', contentType);
32
+ res.setHeader('Content-Length', content.length);
33
+ if (contentType === 'application/json') {
34
+ res.write(JSONString(child));
35
+ }
36
+ else {
37
+ res.write(String(child));
38
+ }
29
39
  }
30
40
  res.end();
31
41
  };
@@ -9,27 +9,37 @@ var useResponse = require('../../../hooks/useResponse/useResponse.js');
9
9
  var JSONString = require('../../../utils/JSONString/JSONString.js');
10
10
 
11
11
  const successStatuses = {
12
- ok: 200,
13
- created: 201,
14
12
  accepted: 202,
15
- outside: 203,
13
+ alreadyReported: 208,
14
+ created: 201,
15
+ multiStatus: 207,
16
16
  noContent: 204,
17
- resetContent: 205,
17
+ ok: 200,
18
+ outside: 203,
18
19
  partialContent: 206,
19
- multiStatus: 207,
20
- alreadyReported: 208,
20
+ resetContent: 205,
21
21
  };
22
22
  const success = () => {
23
- const children = jsx.useChildren();
24
- const props = jsx.useProps();
23
+ const { children, status, type, } = jsx.useProps();
25
24
  const res = useResponse.useResponse();
26
- const status = props === null || props === void 0 ? void 0 : props.status;
27
25
  if (!res) {
28
26
  throw Error('<success> MUST be in <request>');
29
27
  }
30
28
  res.statusCode = typeof status === 'string' ? successStatuses[status] : status !== null && status !== void 0 ? status : ((children) ? 200 : 204);
31
29
  if (children) {
32
- res.write(JSONString.JSONString(children[0]));
30
+ const child = children;
31
+ const contentType = type || (['bigint', 'boolean', 'number', 'string'].includes(typeof child)
32
+ ? 'text/plain'
33
+ : 'application/json');
34
+ const content = contentType === 'application/json' ? JSONString.JSONString(child) : String(child);
35
+ res.setHeader('Content-Type', contentType);
36
+ res.setHeader('Content-Length', content.length);
37
+ if (contentType === 'application/json') {
38
+ res.write(JSONString.JSONString(child));
39
+ }
40
+ else {
41
+ res.write(String(child));
42
+ }
33
43
  }
34
44
  res.end();
35
45
  };
@@ -0,0 +1,5 @@
1
+ import { type HandlerPlugin } from 'innet';
2
+ import { type BaseSchemaProps } from '../../../types';
3
+ export interface AnyProps extends BaseSchemaProps<any> {
4
+ }
5
+ export declare const any: HandlerPlugin;
@@ -0,0 +1,27 @@
1
+ import { useProps } from '@innet/jsx';
2
+ import '../../../hooks/index.es6.js';
3
+ import '../../../hooks/useParentRule/index.es6.js';
4
+ import '../../../utils/index.es6.js';
5
+ import { useSchemaType } from '../../../hooks/useSchemaType/useSchemaType.es6.js';
6
+ import { defaultTo } from '../../../utils/rules/defaultTo/defaultTo.es6.js';
7
+ import { useParentRule } from '../../../hooks/useParentRule/useParentRule.es6.js';
8
+ import { useRule } from '../../../hooks/useRule/useRule.es6.js';
9
+ import { pipe } from '../../../utils/rules/pipe/pipe.es6.js';
10
+
11
+ const any = () => {
12
+ const props = useProps();
13
+ useSchemaType('any', props);
14
+ const rules = [];
15
+ if ((props === null || props === void 0 ? void 0 : props.default) !== undefined) {
16
+ rules.push(defaultTo(props.default));
17
+ }
18
+ if ((props === null || props === void 0 ? void 0 : props.default) === undefined) {
19
+ const parentRule = useParentRule();
20
+ useRule(parentRule(pipe(...rules)));
21
+ }
22
+ else {
23
+ useRule(pipe(...rules));
24
+ }
25
+ };
26
+
27
+ export { any };
@@ -0,0 +1,31 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsx = require('@innet/jsx');
6
+ require('../../../hooks/index.js');
7
+ require('../../../hooks/useParentRule/index.js');
8
+ require('../../../utils/index.js');
9
+ var useSchemaType = require('../../../hooks/useSchemaType/useSchemaType.js');
10
+ var defaultTo = require('../../../utils/rules/defaultTo/defaultTo.js');
11
+ var useParentRule = require('../../../hooks/useParentRule/useParentRule.js');
12
+ var useRule = require('../../../hooks/useRule/useRule.js');
13
+ var pipe = require('../../../utils/rules/pipe/pipe.js');
14
+
15
+ const any = () => {
16
+ const props = jsx.useProps();
17
+ useSchemaType.useSchemaType('any', props);
18
+ const rules = [];
19
+ if ((props === null || props === void 0 ? void 0 : props.default) !== undefined) {
20
+ rules.push(defaultTo.defaultTo(props.default));
21
+ }
22
+ if ((props === null || props === void 0 ? void 0 : props.default) === undefined) {
23
+ const parentRule = useParentRule.useParentRule();
24
+ useRule.useRule(parentRule(pipe.pipe(...rules)));
25
+ }
26
+ else {
27
+ useRule.useRule(pipe.pipe(...rules));
28
+ }
29
+ };
30
+
31
+ exports.any = any;
@@ -1,5 +1,9 @@
1
1
  import { type HandlerPlugin } from 'innet';
2
2
  import { type BaseSchemaProps } from '../../../types';
3
3
  export interface ArrayProps extends BaseSchemaProps<any[]> {
4
+ children?: any;
5
+ maxItems?: number;
6
+ minItems?: number;
7
+ uniqueItems?: boolean;
4
8
  }
5
9
  export declare const array: HandlerPlugin;
@@ -1,6 +1,5 @@
1
- import innet, { useNewHandler } from 'innet';
2
- import { useContext, useProps, useChildren } from '@innet/jsx';
3
- import { callHandler } from '@innet/utils';
1
+ import { useNewHandler, innet } from 'innet';
2
+ import { useContext, useProps } from '@innet/jsx';
4
3
  import '../../../hooks/index.es6.js';
5
4
  import '../../../hooks/useParentRule/index.es6.js';
6
5
  import '../../../utils/index.es6.js';
@@ -13,17 +12,26 @@ import { defaultTo } from '../../../utils/rules/defaultTo/defaultTo.es6.js';
13
12
  import { pipe } from '../../../utils/rules/pipe/pipe.es6.js';
14
13
  import { arrayOf } from '../../../utils/rules/arrayOf/arrayOf.es6.js';
15
14
  import { oneOf } from '../../../utils/rules/oneOf/oneOf.es6.js';
15
+ import { useEffect } from '../../../hooks/useEffect/useEffect.es6.js';
16
16
 
17
17
  const array = () => {
18
18
  useBlock('path');
19
19
  const setRule = useContext(ruleContext);
20
20
  const handler = useNewHandler();
21
- const props = useProps();
21
+ const { children, maxItems, minItems, uniqueItems, ...props } = useProps();
22
22
  const schema = useSchemaType('array', props);
23
- const children = useChildren();
24
23
  const fieldSchema = {};
25
24
  handler[schemaContext.key] = fieldSchema;
26
25
  schema.items = fieldSchema;
26
+ if (maxItems) {
27
+ schema.maxItems = maxItems;
28
+ }
29
+ if (minItems) {
30
+ schema.minItems = minItems;
31
+ }
32
+ if (uniqueItems) {
33
+ schema.uniqueItems = uniqueItems;
34
+ }
27
35
  if (setRule) {
28
36
  let oneOfRulesMap;
29
37
  const rules = [];
@@ -45,11 +53,11 @@ const array = () => {
45
53
  }
46
54
  });
47
55
  innet(children, handler);
48
- innet(() => {
56
+ useEffect(() => {
49
57
  if (!oneOfRulesMap && setRule) {
50
58
  setRule(rootRule(e => e));
51
59
  }
52
- }, callHandler);
60
+ });
53
61
  return;
54
62
  }
55
63
  innet(children, handler);
@@ -4,7 +4,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var innet = require('innet');
6
6
  var jsx = require('@innet/jsx');
7
- var utils = require('@innet/utils');
8
7
  require('../../../hooks/index.js');
9
8
  require('../../../hooks/useParentRule/index.js');
10
9
  require('../../../utils/index.js');
@@ -17,21 +16,26 @@ var defaultTo = require('../../../utils/rules/defaultTo/defaultTo.js');
17
16
  var pipe = require('../../../utils/rules/pipe/pipe.js');
18
17
  var arrayOf = require('../../../utils/rules/arrayOf/arrayOf.js');
19
18
  var oneOf = require('../../../utils/rules/oneOf/oneOf.js');
20
-
21
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
22
-
23
- var innet__default = /*#__PURE__*/_interopDefaultLegacy(innet);
19
+ var useEffect = require('../../../hooks/useEffect/useEffect.js');
24
20
 
25
21
  const array = () => {
26
22
  useBlock.useBlock('path');
27
23
  const setRule = jsx.useContext(useRule.ruleContext);
28
24
  const handler = innet.useNewHandler();
29
- const props = jsx.useProps();
25
+ const { children, maxItems, minItems, uniqueItems, ...props } = jsx.useProps();
30
26
  const schema = useSchemaType.useSchemaType('array', props);
31
- const children = jsx.useChildren();
32
27
  const fieldSchema = {};
33
28
  handler[useSchemaContext.schemaContext.key] = fieldSchema;
34
29
  schema.items = fieldSchema;
30
+ if (maxItems) {
31
+ schema.maxItems = maxItems;
32
+ }
33
+ if (minItems) {
34
+ schema.minItems = minItems;
35
+ }
36
+ if (uniqueItems) {
37
+ schema.uniqueItems = uniqueItems;
38
+ }
35
39
  if (setRule) {
36
40
  let oneOfRulesMap;
37
41
  const rules = [];
@@ -52,15 +56,15 @@ const array = () => {
52
56
  setRule(rootRule(oneOf.oneOf(oneOfRulesMap)));
53
57
  }
54
58
  });
55
- innet__default["default"](children, handler);
56
- innet__default["default"](() => {
59
+ innet.innet(children, handler);
60
+ useEffect.useEffect(() => {
57
61
  if (!oneOfRulesMap && setRule) {
58
62
  setRule(rootRule(e => e));
59
63
  }
60
- }, utils.callHandler);
64
+ });
61
65
  return;
62
66
  }
63
- innet__default["default"](children, handler);
67
+ innet.innet(children, handler);
64
68
  };
65
69
 
66
70
  exports.array = array;
@@ -1,9 +1,13 @@
1
1
  import { type HandlerPlugin } from 'innet';
2
2
  export interface BinaryProps {
3
- ref?: string;
4
- description?: string;
5
3
  accept?: string;
6
- min?: number;
4
+ deprecated: boolean;
5
+ description?: string;
7
6
  max?: number;
7
+ min?: number;
8
+ readOnly: boolean;
9
+ ref?: string;
10
+ title?: string;
11
+ writeOnly: boolean;
8
12
  }
9
13
  export declare const binary: HandlerPlugin;
@@ -1,5 +1,6 @@
1
1
  import { type HandlerPlugin } from 'innet';
2
2
  import { type BaseSchemaProps } from '../../../types';
3
3
  export interface BooleanProps extends BaseSchemaProps<boolean> {
4
+ const?: boolean;
4
5
  }
5
6
  export declare const boolean: HandlerPlugin;
@@ -1,8 +1,9 @@
1
1
  import { type HandlerPlugin } from 'innet';
2
2
  import { type ValuesSchemaProps } from '../../../types';
3
3
  import { type DateFormat } from '../../../utils';
4
- export interface DateProps extends ValuesSchemaProps<DateFormat> {
5
- min?: DateFormat;
4
+ export interface DateProps extends Omit<ValuesSchemaProps<DateFormat>, 'const'> {
5
+ const?: string;
6
6
  max?: DateFormat;
7
+ min?: DateFormat;
7
8
  }
8
9
  export declare const date: HandlerPlugin;
@@ -1,4 +1,3 @@
1
- import { __rest } from 'tslib';
2
1
  import { useProps } from '@innet/jsx';
3
2
  import '../../../hooks/index.es6.js';
4
3
  import '../../../hooks/useParentRule/index.es6.js';
@@ -16,7 +15,7 @@ import { useRule } from '../../../hooks/useRule/useRule.es6.js';
16
15
  import { pipe } from '../../../utils/rules/pipe/pipe.es6.js';
17
16
 
18
17
  const date = () => {
19
- const _a = useProps() || {}, { min, max, default: defaultValue, example, examples, values: values$1 } = _a, props = __rest(_a, ["min", "max", "default", "example", "examples", "values"]);
18
+ const { default: defaultValue, example, examples, max, min, values: values$1, ...props } = useProps() || {};
20
19
  const normMin = dateFormat(min);
21
20
  const normMax = dateFormat(max);
22
21
  const normDefault = dateFormat(defaultValue);
@@ -25,9 +24,14 @@ const date = () => {
25
24
  // @ts-expect-error: FIXME
26
25
  const stringValues = normValues === null || normValues === void 0 ? void 0 : normValues.map(value => value.toISOString());
27
26
  const normExamples = examples === null || examples === void 0 ? void 0 : examples.map(dateFormat);
28
- const schema = useSchemaType('string', Object.assign(Object.assign({}, props), { values: stringValues, example: normExample === null || normExample === void 0 ? void 0 : normExample.toISOString(),
27
+ const schema = useSchemaType('string', {
28
+ ...props,
29
+ default: defaultValue === 'now' ? undefined : normDefault === null || normDefault === void 0 ? void 0 : normDefault.toISOString(),
30
+ example: normExample === null || normExample === void 0 ? void 0 : normExample.toISOString(),
29
31
  // @ts-expect-error: FIXME
30
- examples: normExamples === null || normExamples === void 0 ? void 0 : normExamples.map(example => example.toISOString()), default: defaultValue === 'now' ? undefined : normDefault === null || normDefault === void 0 ? void 0 : normDefault.toISOString() }));
32
+ examples: normExamples === null || normExamples === void 0 ? void 0 : normExamples.map(example => example.toISOString()),
33
+ values: stringValues,
34
+ });
31
35
  const rules = [];
32
36
  if (defaultValue !== undefined) {
33
37
  rules.push(defaultTo(defaultValue === 'now' ? () => new Date(Date.now()) : normDefault));
@@ -2,7 +2,6 @@
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
  require('../../../hooks/useParentRule/index.js');
@@ -20,7 +19,7 @@ var useRule = require('../../../hooks/useRule/useRule.js');
20
19
  var pipe = require('../../../utils/rules/pipe/pipe.js');
21
20
 
22
21
  const date = () => {
23
- const _a = jsx.useProps() || {}, { min, max, default: defaultValue, example, examples, values: values$1 } = _a, props = tslib.__rest(_a, ["min", "max", "default", "example", "examples", "values"]);
22
+ const { default: defaultValue, example, examples, max, min, values: values$1, ...props } = jsx.useProps() || {};
24
23
  const normMin = dateFormat.dateFormat(min);
25
24
  const normMax = dateFormat.dateFormat(max);
26
25
  const normDefault = dateFormat.dateFormat(defaultValue);
@@ -29,9 +28,14 @@ const date = () => {
29
28
  // @ts-expect-error: FIXME
30
29
  const stringValues = normValues === null || normValues === void 0 ? void 0 : normValues.map(value => value.toISOString());
31
30
  const normExamples = examples === null || examples === void 0 ? void 0 : examples.map(dateFormat.dateFormat);
32
- const schema = useSchemaType.useSchemaType('string', Object.assign(Object.assign({}, props), { values: stringValues, example: normExample === null || normExample === void 0 ? void 0 : normExample.toISOString(),
31
+ const schema = useSchemaType.useSchemaType('string', {
32
+ ...props,
33
+ default: defaultValue === 'now' ? undefined : normDefault === null || normDefault === void 0 ? void 0 : normDefault.toISOString(),
34
+ example: normExample === null || normExample === void 0 ? void 0 : normExample.toISOString(),
33
35
  // @ts-expect-error: FIXME
34
- examples: normExamples === null || normExamples === void 0 ? void 0 : normExamples.map(example => example.toISOString()), default: defaultValue === 'now' ? undefined : normDefault === null || normDefault === void 0 ? void 0 : normDefault.toISOString() }));
36
+ examples: normExamples === null || normExamples === void 0 ? void 0 : normExamples.map(example => example.toISOString()),
37
+ values: stringValues,
38
+ });
35
39
  const rules = [];
36
40
  if (defaultValue !== undefined) {
37
41
  rules.push(defaultTo.defaultTo(defaultValue === 'now' ? () => new Date(Date.now()) : normDefault));
@@ -1,6 +1,12 @@
1
1
  import { type HandlerPlugin } from 'innet';
2
2
  export interface FieldProps {
3
+ children?: any;
4
+ deprecated?: boolean;
5
+ description?: string;
3
6
  key: string;
4
7
  optional?: boolean;
8
+ readOnly?: boolean;
9
+ title?: string;
10
+ writeOnly?: boolean;
5
11
  }
6
12
  export declare const field: HandlerPlugin;
@@ -1,20 +1,18 @@
1
- import innet, { useNewHandler } from 'innet';
2
- import { useProps, useChildren } from '@innet/jsx';
1
+ import { useNewHandler, innet } from 'innet';
2
+ import { useProps } from '@innet/jsx';
3
3
  import '../../../hooks/index.es6.js';
4
4
  import '../../../utils/index.es6.js';
5
- import { useSchemaContext, schemaContext } from '../../../hooks/useSchemaContext/useSchemaContext.es6.js';
5
+ import { getSafeSchema } from '../../../utils/getSafeSchema/getSafeSchema.es6.js';
6
+ import { useObjectSchemaContext } from '../../../hooks/useObjectSchemaContext/useObjectSchemaContext.es6.js';
7
+ import { schemaContext } from '../../../hooks/useSchemaContext/useSchemaContext.es6.js';
6
8
  import { useObjectRule, objectRuleContext } from '../../../hooks/useObjectRule/useObjectRule.es6.js';
7
9
  import { ruleContext } from '../../../hooks/useRule/useRule.es6.js';
8
10
  import { required } from '../../../utils/rules/required/required.es6.js';
9
11
 
10
12
  const field = () => {
11
13
  const handler = useNewHandler();
12
- const { key, optional } = useProps();
13
- const schema = useSchemaContext();
14
- const children = useChildren();
15
- if (Array.isArray(schema) || (schema === null || schema === void 0 ? void 0 : schema.type) !== 'object') {
16
- throw Error('Use <field> inside <object>');
17
- }
14
+ const { children, deprecated, description, key, optional, readOnly, title, writeOnly, } = useProps();
15
+ const schema = getSafeSchema(useObjectSchemaContext());
18
16
  if (!schema.properties) {
19
17
  schema.properties = {};
20
18
  }
@@ -23,6 +21,21 @@ const field = () => {
23
21
  }
24
22
  const fieldSchema = {};
25
23
  schemaContext.set(handler, fieldSchema);
24
+ if (deprecated) {
25
+ fieldSchema.deprecated = true;
26
+ }
27
+ if (title) {
28
+ fieldSchema.title = title;
29
+ }
30
+ if (description) {
31
+ fieldSchema.description = description;
32
+ }
33
+ if (readOnly) {
34
+ fieldSchema.readOnly = true;
35
+ }
36
+ if (writeOnly) {
37
+ fieldSchema.writeOnly = true;
38
+ }
26
39
  schema.properties[key] = fieldSchema;
27
40
  if (!optional) {
28
41
  if (!schema.required) {
@@ -6,23 +6,17 @@ var innet = require('innet');
6
6
  var jsx = require('@innet/jsx');
7
7
  require('../../../hooks/index.js');
8
8
  require('../../../utils/index.js');
9
+ var getSafeSchema = require('../../../utils/getSafeSchema/getSafeSchema.js');
10
+ var useObjectSchemaContext = require('../../../hooks/useObjectSchemaContext/useObjectSchemaContext.js');
9
11
  var useSchemaContext = require('../../../hooks/useSchemaContext/useSchemaContext.js');
10
12
  var useObjectRule = require('../../../hooks/useObjectRule/useObjectRule.js');
11
13
  var useRule = require('../../../hooks/useRule/useRule.js');
12
14
  var required = require('../../../utils/rules/required/required.js');
13
15
 
14
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
-
16
- var innet__default = /*#__PURE__*/_interopDefaultLegacy(innet);
17
-
18
16
  const field = () => {
19
17
  const handler = innet.useNewHandler();
20
- const { key, optional } = jsx.useProps();
21
- const schema = useSchemaContext.useSchemaContext();
22
- const children = jsx.useChildren();
23
- if (Array.isArray(schema) || (schema === null || schema === void 0 ? void 0 : schema.type) !== 'object') {
24
- throw Error('Use <field> inside <object>');
25
- }
18
+ const { children, deprecated, description, key, optional, readOnly, title, writeOnly, } = jsx.useProps();
19
+ const schema = getSafeSchema.getSafeSchema(useObjectSchemaContext.useObjectSchemaContext());
26
20
  if (!schema.properties) {
27
21
  schema.properties = {};
28
22
  }
@@ -31,6 +25,21 @@ const field = () => {
31
25
  }
32
26
  const fieldSchema = {};
33
27
  useSchemaContext.schemaContext.set(handler, fieldSchema);
28
+ if (deprecated) {
29
+ fieldSchema.deprecated = true;
30
+ }
31
+ if (title) {
32
+ fieldSchema.title = title;
33
+ }
34
+ if (description) {
35
+ fieldSchema.description = description;
36
+ }
37
+ if (readOnly) {
38
+ fieldSchema.readOnly = true;
39
+ }
40
+ if (writeOnly) {
41
+ fieldSchema.writeOnly = true;
42
+ }
34
43
  schema.properties[key] = fieldSchema;
35
44
  if (!optional) {
36
45
  if (!schema.required) {
@@ -48,7 +57,7 @@ const field = () => {
48
57
  }
49
58
  });
50
59
  useObjectRule.objectRuleContext.set(handler, null);
51
- innet__default["default"](children, handler);
60
+ innet.innet(children, handler);
52
61
  };
53
62
 
54
63
  exports.field = field;
@@ -1,12 +1,13 @@
1
- export * from './object';
2
- export * from './field';
3
- export * from './number';
4
- export * from './integer';
5
- export * from './string';
1
+ export * from './any';
6
2
  export * from './array';
3
+ export * from './binary';
7
4
  export * from './boolean';
8
- export * from './null';
9
5
  export * from './date';
6
+ export * from './field';
7
+ export * from './integer';
8
+ export * from './null';
9
+ export * from './number';
10
+ export * from './object';
11
+ export * from './string';
10
12
  export * from './tuple';
11
13
  export * from './uuid';
12
- export * from './binary';
@@ -1,12 +1,13 @@
1
- import './object/index.es6.js';
2
- import './field/index.es6.js';
3
- import './number/index.es6.js';
4
- import './integer/index.es6.js';
5
- import './string/index.es6.js';
1
+ import './any/index.es6.js';
6
2
  import './array/index.es6.js';
3
+ import './binary/index.es6.js';
7
4
  import './boolean/index.es6.js';
8
- import './null/index.es6.js';
9
5
  import './date/index.es6.js';
6
+ import './field/index.es6.js';
7
+ import './integer/index.es6.js';
8
+ import './null/index.es6.js';
9
+ import './number/index.es6.js';
10
+ import './object/index.es6.js';
11
+ import './string/index.es6.js';
10
12
  import './tuple/index.es6.js';
11
13
  import './uuid/index.es6.js';
12
- import './binary/index.es6.js';
@@ -1,15 +1,16 @@
1
1
  'use strict';
2
2
 
3
- require('./object/index.js');
4
- require('./field/index.js');
5
- require('./number/index.js');
6
- require('./integer/index.js');
7
- require('./string/index.js');
3
+ require('./any/index.js');
8
4
  require('./array/index.js');
5
+ require('./binary/index.js');
9
6
  require('./boolean/index.js');
10
- require('./null/index.js');
11
7
  require('./date/index.js');
8
+ require('./field/index.js');
9
+ require('./integer/index.js');
10
+ require('./null/index.js');
11
+ require('./number/index.js');
12
+ require('./object/index.js');
13
+ require('./string/index.js');
12
14
  require('./tuple/index.js');
13
15
  require('./uuid/index.js');
14
- require('./binary/index.js');
15
16