sonamu 0.5.6 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (365) hide show
  1. package/dist/api/base-frame.js +12 -2
  2. package/dist/api/caster.js +66 -2
  3. package/dist/api/code-converters.js +489 -2
  4. package/dist/api/config.d.ts +76 -0
  5. package/dist/api/config.d.ts.map +1 -0
  6. package/dist/api/config.js +32 -0
  7. package/dist/api/context.d.ts +1 -0
  8. package/dist/api/context.d.ts.map +1 -1
  9. package/dist/api/context.js +3 -2
  10. package/dist/api/decorators.d.ts +1 -0
  11. package/dist/api/decorators.d.ts.map +1 -1
  12. package/dist/api/decorators.js +142 -2
  13. package/dist/api/index.js +9 -2
  14. package/dist/api/sonamu.d.ts +8 -22
  15. package/dist/api/sonamu.d.ts.map +1 -1
  16. package/dist/api/sonamu.js +482 -2
  17. package/dist/bin/build-config.d.ts +2 -1
  18. package/dist/bin/build-config.d.ts.map +1 -1
  19. package/dist/bin/build-config.js +12 -2
  20. package/dist/bin/cli-wrapper.js +71 -2
  21. package/dist/bin/cli.js +418 -2
  22. package/dist/bin/hot-hook-register.d.ts +11 -0
  23. package/dist/bin/hot-hook-register.d.ts.map +1 -0
  24. package/dist/bin/hot-hook-register.js +21 -0
  25. package/dist/database/_batch_update.js +78 -2
  26. package/dist/database/base-model.js +247 -2
  27. package/dist/database/code-generator.js +53 -2
  28. package/dist/database/db.d.ts +5 -16
  29. package/dist/database/db.d.ts.map +1 -1
  30. package/dist/database/db.js +132 -2
  31. package/dist/database/knex-plugins/knex-on-duplicate-update.js +39 -2
  32. package/dist/database/puri-wrapper.d.ts +22 -10
  33. package/dist/database/puri-wrapper.d.ts.map +1 -1
  34. package/dist/database/puri-wrapper.js +109 -2
  35. package/dist/database/puri.d.ts +105 -73
  36. package/dist/database/puri.d.ts.map +1 -1
  37. package/dist/database/puri.js +539 -2
  38. package/dist/database/puri.types.d.ts +33 -42
  39. package/dist/database/puri.types.d.ts.map +1 -1
  40. package/dist/database/puri.types.js +3 -2
  41. package/dist/database/transaction-context.d.ts +3 -3
  42. package/dist/database/transaction-context.d.ts.map +1 -1
  43. package/dist/database/transaction-context.js +14 -2
  44. package/dist/database/upsert-builder.js +215 -2
  45. package/dist/entity/entity-manager.d.ts +3 -1
  46. package/dist/entity/entity-manager.d.ts.map +1 -1
  47. package/dist/entity/entity-manager.js +114 -2
  48. package/dist/entity/entity-utils.js +210 -2
  49. package/dist/entity/entity.d.ts.map +1 -1
  50. package/dist/entity/entity.js +651 -2
  51. package/dist/exceptions/error-handler.js +29 -2
  52. package/dist/exceptions/so-exceptions.js +85 -2
  53. package/dist/file-storage/driver.js +79 -2
  54. package/dist/file-storage/file-storage.js +75 -2
  55. package/dist/index.d.ts +2 -0
  56. package/dist/index.d.ts.map +1 -1
  57. package/dist/index.js +28 -2
  58. package/dist/migration/code-generation.js +558 -2
  59. package/dist/migration/migration-set.js +364 -2
  60. package/dist/migration/migrator.d.ts +0 -9
  61. package/dist/migration/migrator.d.ts.map +1 -1
  62. package/dist/migration/migrator.js +510 -2
  63. package/dist/migration/types.js +3 -2
  64. package/dist/naite/naite.d.ts +12 -0
  65. package/dist/naite/naite.d.ts.map +1 -0
  66. package/dist/naite/naite.js +72 -0
  67. package/dist/stream/index.js +3 -2
  68. package/dist/stream/sse.js +38 -2
  69. package/dist/syncer/api-parser.d.ts +20 -0
  70. package/dist/syncer/api-parser.d.ts.map +1 -0
  71. package/dist/syncer/api-parser.js +229 -0
  72. package/dist/syncer/checksum.d.ts +21 -0
  73. package/dist/syncer/checksum.d.ts.map +1 -0
  74. package/dist/syncer/checksum.js +98 -0
  75. package/dist/syncer/code-generator.d.ts +20 -0
  76. package/dist/syncer/code-generator.d.ts.map +1 -0
  77. package/dist/syncer/code-generator.js +141 -0
  78. package/dist/syncer/entity-operations.d.ts +17 -0
  79. package/dist/syncer/entity-operations.d.ts.map +1 -0
  80. package/dist/syncer/entity-operations.js +58 -0
  81. package/dist/syncer/file-patterns.d.ts +29 -0
  82. package/dist/syncer/file-patterns.d.ts.map +1 -0
  83. package/dist/syncer/file-patterns.js +38 -0
  84. package/dist/syncer/index.d.ts +6 -0
  85. package/dist/syncer/index.d.ts.map +1 -1
  86. package/dist/syncer/index.js +9 -2
  87. package/dist/syncer/module-loader.d.ts +35 -0
  88. package/dist/syncer/module-loader.d.ts.map +1 -0
  89. package/dist/syncer/module-loader.js +82 -0
  90. package/dist/syncer/syncer.d.ts +93 -108
  91. package/dist/syncer/syncer.d.ts.map +1 -1
  92. package/dist/syncer/syncer.js +375 -2
  93. package/dist/template/entity-converter.d.ts +14 -0
  94. package/dist/template/entity-converter.d.ts.map +1 -0
  95. package/dist/template/entity-converter.js +101 -0
  96. package/dist/template/helpers.d.ts +23 -0
  97. package/dist/template/helpers.d.ts.map +1 -0
  98. package/dist/template/helpers.js +64 -0
  99. package/dist/{templates → template/implementations}/entity.template.d.ts +3 -3
  100. package/dist/template/implementations/entity.template.d.ts.map +1 -0
  101. package/dist/template/implementations/entity.template.js +87 -0
  102. package/dist/{templates → template/implementations}/generated.template.d.ts +3 -3
  103. package/dist/template/implementations/generated.template.d.ts.map +1 -0
  104. package/dist/template/implementations/generated.template.js +232 -0
  105. package/dist/{templates → template/implementations}/generated_http.template.d.ts +3 -3
  106. package/dist/template/implementations/generated_http.template.d.ts.map +1 -0
  107. package/dist/template/implementations/generated_http.template.js +131 -0
  108. package/dist/{templates → template/implementations}/generated_sso.template.d.ts +3 -3
  109. package/dist/template/implementations/generated_sso.template.d.ts.map +1 -0
  110. package/dist/template/implementations/generated_sso.template.js +105 -0
  111. package/dist/{templates → template/implementations}/init_types.template.d.ts +3 -3
  112. package/dist/template/implementations/init_types.template.d.ts.map +1 -0
  113. package/dist/template/implementations/init_types.template.js +38 -0
  114. package/dist/template/implementations/model.template.d.ts +17 -0
  115. package/dist/template/implementations/model.template.d.ts.map +1 -0
  116. package/dist/template/implementations/model.template.js +171 -0
  117. package/dist/{templates → template/implementations}/model_test.template.d.ts +3 -3
  118. package/dist/template/implementations/model_test.template.d.ts.map +1 -0
  119. package/dist/template/implementations/model_test.template.js +35 -0
  120. package/dist/{templates → template/implementations}/service.template.d.ts +6 -6
  121. package/dist/template/implementations/service.template.d.ts.map +1 -0
  122. package/dist/template/implementations/service.template.js +193 -0
  123. package/dist/{templates → template/implementations}/view_enums_buttonset.template.d.ts +3 -3
  124. package/dist/template/implementations/view_enums_buttonset.template.d.ts.map +1 -0
  125. package/dist/template/implementations/view_enums_buttonset.template.js +31 -0
  126. package/dist/{templates → template/implementations}/view_enums_dropdown.template.d.ts +3 -4
  127. package/dist/template/implementations/view_enums_dropdown.template.d.ts.map +1 -0
  128. package/dist/template/implementations/view_enums_dropdown.template.js +50 -0
  129. package/dist/{templates → template/implementations}/view_enums_select.template.d.ts +3 -3
  130. package/dist/template/implementations/view_enums_select.template.d.ts.map +1 -0
  131. package/dist/template/implementations/view_enums_select.template.js +55 -0
  132. package/dist/{templates → template/implementations}/view_form.template.d.ts +5 -5
  133. package/dist/template/implementations/view_form.template.d.ts.map +1 -0
  134. package/dist/template/implementations/view_form.template.js +337 -0
  135. package/dist/{templates → template/implementations}/view_id_all_select.template.d.ts +3 -3
  136. package/dist/template/implementations/view_id_all_select.template.d.ts.map +1 -0
  137. package/dist/template/implementations/view_id_all_select.template.js +31 -0
  138. package/dist/{templates → template/implementations}/view_id_async_select.template.d.ts +3 -3
  139. package/dist/template/implementations/view_id_async_select.template.d.ts.map +1 -0
  140. package/dist/template/implementations/view_id_async_select.template.js +105 -0
  141. package/dist/{templates → template/implementations}/view_list.template.d.ts +5 -13
  142. package/dist/template/implementations/view_list.template.d.ts.map +1 -0
  143. package/dist/template/implementations/view_list.template.js +465 -0
  144. package/dist/{templates → template/implementations}/view_list_columns.template.d.ts +3 -3
  145. package/dist/template/implementations/view_list_columns.template.d.ts.map +1 -0
  146. package/dist/template/implementations/view_list_columns.template.js +49 -0
  147. package/dist/{templates → template/implementations}/view_search_input.template.d.ts +3 -3
  148. package/dist/template/implementations/view_search_input.template.d.ts.map +1 -0
  149. package/dist/template/implementations/view_search_input.template.js +64 -0
  150. package/dist/template/index.d.ts +5 -0
  151. package/dist/template/index.d.ts.map +1 -0
  152. package/dist/template/index.js +6 -0
  153. package/dist/template/template.d.ts +39 -0
  154. package/dist/template/template.d.ts.map +1 -0
  155. package/dist/template/template.js +47 -0
  156. package/dist/template/zod-converter.d.ts +18 -0
  157. package/dist/template/zod-converter.d.ts.map +1 -0
  158. package/dist/template/zod-converter.js +166 -0
  159. package/dist/testing/_relation-graph.js +80 -2
  160. package/dist/testing/fixture-manager.d.ts.map +1 -1
  161. package/dist/testing/fixture-manager.js +521 -2
  162. package/dist/types/types.d.ts +39 -40
  163. package/dist/types/types.d.ts.map +1 -1
  164. package/dist/types/types.js +289 -2
  165. package/dist/typings/knex.d.js +3 -2
  166. package/dist/utils/async-utils.d.ts +7 -0
  167. package/dist/utils/async-utils.d.ts.map +1 -1
  168. package/dist/utils/async-utils.js +57 -2
  169. package/dist/utils/console-util.d.ts +2 -0
  170. package/dist/utils/console-util.d.ts.map +1 -0
  171. package/dist/utils/console-util.js +6 -0
  172. package/dist/utils/controller.js +26 -2
  173. package/dist/utils/esm-utils.d.ts +45 -0
  174. package/dist/utils/esm-utils.d.ts.map +1 -0
  175. package/dist/utils/esm-utils.js +56 -0
  176. package/dist/utils/fs-utils.js +17 -2
  177. package/dist/utils/lodash-able.js +6 -2
  178. package/dist/utils/model.js +22 -2
  179. package/dist/utils/path-utils.d.ts +89 -0
  180. package/dist/utils/path-utils.d.ts.map +1 -0
  181. package/dist/utils/path-utils.js +60 -0
  182. package/dist/utils/process-utils.d.ts +13 -0
  183. package/dist/utils/process-utils.d.ts.map +1 -0
  184. package/dist/utils/process-utils.js +36 -0
  185. package/dist/utils/sql-parser.js +35 -2
  186. package/dist/utils/utils.d.ts +4 -7
  187. package/dist/utils/utils.d.ts.map +1 -1
  188. package/dist/utils/utils.js +33 -2
  189. package/dist/utils/zod-error.d.ts.map +1 -1
  190. package/dist/utils/zod-error.js +19 -2
  191. package/package.json +21 -9
  192. package/src/api/code-converters.ts +2 -2
  193. package/src/api/config.ts +142 -0
  194. package/src/api/context.ts +1 -0
  195. package/src/api/decorators.ts +15 -5
  196. package/src/api/sonamu.ts +102 -87
  197. package/src/bin/build-config.ts +2 -1
  198. package/src/bin/cli-wrapper.ts +10 -3
  199. package/src/bin/cli.ts +108 -56
  200. package/src/bin/hot-hook-register.ts +22 -0
  201. package/src/database/base-model.ts +1 -1
  202. package/src/database/code-generator.ts +1 -1
  203. package/src/database/db.ts +53 -60
  204. package/src/database/puri-wrapper.ts +104 -26
  205. package/src/database/puri.ts +477 -580
  206. package/src/database/puri.types.ts +111 -201
  207. package/src/database/transaction-context.ts +4 -4
  208. package/src/database/upsert-builder.ts +1 -1
  209. package/src/entity/entity-manager.ts +19 -15
  210. package/src/entity/entity.ts +4 -3
  211. package/src/index.ts +2 -0
  212. package/src/migration/code-generation.ts +1 -1
  213. package/src/migration/migration-set.ts +1 -1
  214. package/src/migration/migrator.ts +23 -152
  215. package/src/naite/naite.ts +70 -0
  216. package/src/syncer/api-parser.ts +299 -0
  217. package/src/syncer/checksum.ts +152 -0
  218. package/src/syncer/code-generator.ts +202 -0
  219. package/src/syncer/entity-operations.ts +68 -0
  220. package/src/syncer/file-patterns.ts +56 -0
  221. package/src/syncer/index.ts +6 -0
  222. package/src/syncer/module-loader.ts +125 -0
  223. package/src/syncer/syncer.ts +363 -1420
  224. package/src/template/entity-converter.ts +123 -0
  225. package/src/template/helpers.ts +84 -0
  226. package/src/{templates → template/implementations}/entity.template.ts +4 -4
  227. package/src/{templates → template/implementations}/generated.template.ts +9 -9
  228. package/src/{templates → template/implementations}/generated_http.template.ts +9 -6
  229. package/src/{templates → template/implementations}/generated_sso.template.ts +7 -7
  230. package/src/{templates → template/implementations}/init_types.template.ts +4 -4
  231. package/src/{templates → template/implementations}/model.template.ts +9 -9
  232. package/src/{templates → template/implementations}/model_test.template.ts +5 -5
  233. package/src/{templates → template/implementations}/service.template.ts +29 -12
  234. package/src/{templates → template/implementations}/view_enums_buttonset.template.ts +3 -3
  235. package/src/{templates → template/implementations}/view_enums_dropdown.template.ts +5 -21
  236. package/src/{templates → template/implementations}/view_enums_select.template.ts +4 -4
  237. package/src/{templates → template/implementations}/view_form.template.ts +11 -13
  238. package/src/{templates → template/implementations}/view_id_all_select.template.ts +3 -3
  239. package/src/{templates → template/implementations}/view_id_async_select.template.ts +3 -3
  240. package/src/{templates → template/implementations}/view_list.template.ts +13 -64
  241. package/src/{templates → template/implementations}/view_list_columns.template.ts +3 -3
  242. package/src/{templates → template/implementations}/view_search_input.template.ts +3 -3
  243. package/src/template/index.ts +4 -0
  244. package/src/template/template.ts +86 -0
  245. package/src/template/zod-converter.ts +219 -0
  246. package/src/testing/fixture-manager.ts +8 -1
  247. package/src/types/types.ts +39 -62
  248. package/src/utils/async-utils.ts +17 -0
  249. package/src/utils/console-util.ts +4 -0
  250. package/src/utils/esm-utils.ts +69 -0
  251. package/src/utils/path-utils.ts +102 -0
  252. package/src/utils/process-utils.ts +46 -0
  253. package/src/utils/sql-parser.ts +1 -1
  254. package/src/utils/utils.ts +14 -40
  255. package/src/utils/zod-error.ts +0 -1
  256. package/dist/api/base-frame.js.map +0 -1
  257. package/dist/api/caster.js.map +0 -1
  258. package/dist/api/code-converters.js.map +0 -1
  259. package/dist/api/context.js.map +0 -1
  260. package/dist/api/decorators.js.map +0 -1
  261. package/dist/api/index.js.map +0 -1
  262. package/dist/api/sonamu.js.map +0 -1
  263. package/dist/bin/build-config.js.map +0 -1
  264. package/dist/bin/cli-wrapper.js.map +0 -1
  265. package/dist/bin/cli.js.map +0 -1
  266. package/dist/database/_batch_update.js.map +0 -1
  267. package/dist/database/base-model.js.map +0 -1
  268. package/dist/database/code-generator.js.map +0 -1
  269. package/dist/database/db.js.map +0 -1
  270. package/dist/database/knex-plugins/knex-on-duplicate-update.js.map +0 -1
  271. package/dist/database/puri-wrapper.js.map +0 -1
  272. package/dist/database/puri.js.map +0 -1
  273. package/dist/database/puri.types.js.map +0 -1
  274. package/dist/database/transaction-context.js.map +0 -1
  275. package/dist/database/upsert-builder.js.map +0 -1
  276. package/dist/entity/entity-manager.js.map +0 -1
  277. package/dist/entity/entity-utils.js.map +0 -1
  278. package/dist/entity/entity.js.map +0 -1
  279. package/dist/exceptions/error-handler.js.map +0 -1
  280. package/dist/exceptions/so-exceptions.js.map +0 -1
  281. package/dist/file-storage/driver.js.map +0 -1
  282. package/dist/file-storage/file-storage.js.map +0 -1
  283. package/dist/index.js.map +0 -1
  284. package/dist/migration/code-generation.js.map +0 -1
  285. package/dist/migration/migration-set.js.map +0 -1
  286. package/dist/migration/migrator.js.map +0 -1
  287. package/dist/migration/types.js.map +0 -1
  288. package/dist/stream/index.js.map +0 -1
  289. package/dist/stream/sse.js.map +0 -1
  290. package/dist/syncer/index.js.map +0 -1
  291. package/dist/syncer/syncer.js.map +0 -1
  292. package/dist/templates/base-template.d.ts +0 -13
  293. package/dist/templates/base-template.d.ts.map +0 -1
  294. package/dist/templates/base-template.js +0 -2
  295. package/dist/templates/base-template.js.map +0 -1
  296. package/dist/templates/entity.template.d.ts.map +0 -1
  297. package/dist/templates/entity.template.js +0 -2
  298. package/dist/templates/entity.template.js.map +0 -1
  299. package/dist/templates/generated.template.d.ts.map +0 -1
  300. package/dist/templates/generated.template.js +0 -2
  301. package/dist/templates/generated.template.js.map +0 -1
  302. package/dist/templates/generated_http.template.d.ts.map +0 -1
  303. package/dist/templates/generated_http.template.js +0 -2
  304. package/dist/templates/generated_http.template.js.map +0 -1
  305. package/dist/templates/generated_sso.template.d.ts.map +0 -1
  306. package/dist/templates/generated_sso.template.js +0 -2
  307. package/dist/templates/generated_sso.template.js.map +0 -1
  308. package/dist/templates/index.d.ts +0 -2
  309. package/dist/templates/index.d.ts.map +0 -1
  310. package/dist/templates/index.js +0 -2
  311. package/dist/templates/index.js.map +0 -1
  312. package/dist/templates/init_types.template.d.ts.map +0 -1
  313. package/dist/templates/init_types.template.js +0 -2
  314. package/dist/templates/init_types.template.js.map +0 -1
  315. package/dist/templates/model.template.d.ts +0 -17
  316. package/dist/templates/model.template.d.ts.map +0 -1
  317. package/dist/templates/model.template.js +0 -2
  318. package/dist/templates/model.template.js.map +0 -1
  319. package/dist/templates/model_test.template.d.ts.map +0 -1
  320. package/dist/templates/model_test.template.js +0 -2
  321. package/dist/templates/model_test.template.js.map +0 -1
  322. package/dist/templates/service.template.d.ts.map +0 -1
  323. package/dist/templates/service.template.js +0 -2
  324. package/dist/templates/service.template.js.map +0 -1
  325. package/dist/templates/view_enums_buttonset.template.d.ts.map +0 -1
  326. package/dist/templates/view_enums_buttonset.template.js +0 -2
  327. package/dist/templates/view_enums_buttonset.template.js.map +0 -1
  328. package/dist/templates/view_enums_dropdown.template.d.ts.map +0 -1
  329. package/dist/templates/view_enums_dropdown.template.js +0 -2
  330. package/dist/templates/view_enums_dropdown.template.js.map +0 -1
  331. package/dist/templates/view_enums_select.template.d.ts.map +0 -1
  332. package/dist/templates/view_enums_select.template.js +0 -2
  333. package/dist/templates/view_enums_select.template.js.map +0 -1
  334. package/dist/templates/view_form.template.d.ts.map +0 -1
  335. package/dist/templates/view_form.template.js +0 -2
  336. package/dist/templates/view_form.template.js.map +0 -1
  337. package/dist/templates/view_id_all_select.template.d.ts.map +0 -1
  338. package/dist/templates/view_id_all_select.template.js +0 -2
  339. package/dist/templates/view_id_all_select.template.js.map +0 -1
  340. package/dist/templates/view_id_async_select.template.d.ts.map +0 -1
  341. package/dist/templates/view_id_async_select.template.js +0 -2
  342. package/dist/templates/view_id_async_select.template.js.map +0 -1
  343. package/dist/templates/view_list.template.d.ts.map +0 -1
  344. package/dist/templates/view_list.template.js +0 -2
  345. package/dist/templates/view_list.template.js.map +0 -1
  346. package/dist/templates/view_list_columns.template.d.ts.map +0 -1
  347. package/dist/templates/view_list_columns.template.js +0 -2
  348. package/dist/templates/view_list_columns.template.js.map +0 -1
  349. package/dist/templates/view_search_input.template.d.ts.map +0 -1
  350. package/dist/templates/view_search_input.template.js +0 -2
  351. package/dist/templates/view_search_input.template.js.map +0 -1
  352. package/dist/testing/_relation-graph.js.map +0 -1
  353. package/dist/testing/fixture-manager.js.map +0 -1
  354. package/dist/types/types.js.map +0 -1
  355. package/dist/typings/knex.d.js.map +0 -1
  356. package/dist/utils/async-utils.js.map +0 -1
  357. package/dist/utils/controller.js.map +0 -1
  358. package/dist/utils/fs-utils.js.map +0 -1
  359. package/dist/utils/lodash-able.js.map +0 -1
  360. package/dist/utils/model.js.map +0 -1
  361. package/dist/utils/sql-parser.js.map +0 -1
  362. package/dist/utils/utils.js.map +0 -1
  363. package/dist/utils/zod-error.js.map +0 -1
  364. package/src/templates/base-template.ts +0 -19
  365. package/src/templates/index.ts +0 -1
@@ -1,16 +1,7 @@
1
1
  import type { GuardKey } from "./../api/decorators";
2
- import type { FastifyCorsOptions } from "@fastify/cors";
3
- import type { FastifyFormbodyOptions } from "@fastify/formbody";
4
- import type { FastifyInstance, FastifyReply, FastifyRequest, FastifyServerOptions } from "fastify";
5
- import type { QsPluginOptions } from "fastify-qs";
2
+ import type { FastifyReply, FastifyRequest } from "fastify";
6
3
  import { z } from "zod";
7
4
  import type { ApiDecoratorOptions, AuthContext, Context } from "../api";
8
- import type { FastifyMultipartOptions } from "@fastify/multipart";
9
- import type { Driver } from "../file-storage/driver";
10
- import type { SsePluginOptions } from "fastify-sse-v2/lib/types";
11
- import type { FastifyStaticOptions } from "@fastify/static";
12
- import { SecureSessionPluginOptions } from "@fastify/secure-session";
13
- import { DeserializeFunction, SerializeFunction } from "@fastify/passport/dist/Authenticator";
14
5
  export type EnumsLabel<T extends string, L extends "ko" | "en"> = {
15
6
  [key in T]: {
16
7
  [lang in L]: string;
@@ -178,6 +169,22 @@ export type SMDInput<T extends string> = {
178
169
  [subset: string]: T[];
179
170
  };
180
171
  };
172
+ /**
173
+ * 엔티티의 필드 구조를 트리 형태로 표현하는 중간 노드입니다.
174
+ *
175
+ * **목적**: Entity의 subset 필드 표현식(예: "id", "user.name", "tags[]")을
176
+ * 재귀적인 트리 구조로 파싱하여 Zod 스키마 생성의 중간 단계로 사용합니다.
177
+ *
178
+ * **변환 흐름**:
179
+ * Entity subset → EntityPropNode (트리 구조) → Zod 스키마 → RenderingNode (UI용)
180
+ *
181
+ * **nodeType**:
182
+ * - "plain": 단일 필드 (예: "id", "name")
183
+ * - "object": 중첩 객체 (예: "user.name" → user 객체)
184
+ * - "array": 배열 (예: "tags[]" → tags 배열)
185
+ *
186
+ * **사용 위치**: entity-converter.ts의 propNodeToZodType()
187
+ */
181
188
  export type EntityPropNode = {
182
189
  nodeType: "plain";
183
190
  prop: EntityProp;
@@ -251,8 +258,8 @@ export type SubsetQuery = {
251
258
  };
252
259
  export declare const SonamuQueryMode: z.ZodEnum<{
253
260
  count: "count";
254
- both: "both";
255
261
  list: "list";
262
+ both: "both";
256
263
  }>;
257
264
  export type SonamuQueryMode = z.infer<typeof SonamuQueryMode>;
258
265
  export type KnexError = {
@@ -394,6 +401,26 @@ export declare namespace ApiParamType {
394
401
  function isTypeParam(v: any): v is ApiParamType.TypeParam;
395
402
  }
396
403
  export type ApiParamType = "string" | "number" | "boolean" | "null" | "undefined" | "void" | "any" | "unknown" | "true" | "false" | ApiParamType.StringLiteral | ApiParamType.NumericLiteral | ApiParamType.Object | ApiParamType.Union | ApiParamType.Intersection | ApiParamType.Array | ApiParamType.Ref | ApiParamType.IndexedAccess | ApiParamType.TypeParam | ApiParamType.TupleType;
404
+ /**
405
+ * UI 컴포넌트 렌더링을 위한 메타데이터 노드입니다.
406
+ *
407
+ * **목적**: Zod 스키마로부터 프론트엔드 UI 컴포넌트를 자동 생성하기 위한
408
+ * 렌더링 정보를 담은 트리 구조입니다. 각 필드가 어떤 UI 컴포넌트로
409
+ * 표현되어야 하는지(텍스트, 이미지, 날짜, Enum 선택 등)를 명시합니다.
410
+ *
411
+ * **변환 흐름**:
412
+ * Entity subset → EntityPropNode → Zod 스키마 → RenderingNode (UI용) → React 컴포넌트 코드 생성
413
+ *
414
+ * **주요 필드**:
415
+ * - `renderType`: UI 컴포넌트 유형 (string-plain, number-fk_id, enums, array 등)
416
+ * - `zodType`: 원본 Zod 스키마 (validation 용)
417
+ * - `children`: 중첩된 객체 필드들 (object일 때)
418
+ * - `element`: 배열 요소 타입 (array일 때)
419
+ *
420
+ * **사용 위치**:
421
+ * - zod-converter.ts의 zodTypeToRenderingNode()에서 생성
422
+ * - view_form.template.ts, view_list.template.ts 등에서 React 컴포넌트 코드 생성에 사용
423
+ */
397
424
  export declare const RenderingNode: z.ZodAny;
398
425
  export type RenderingNode = {
399
426
  name: string;
@@ -564,7 +591,7 @@ export type ManyToManyBaseSchema<FromIdKey extends string, ToIdKey extends strin
564
591
  [K in `${ToIdKey}_id`]: number;
565
592
  };
566
593
  export type SonamuFastifyConfig = {
567
- contextProvider: (defaultContext: Pick<Context, "request" | "reply" | "headers" | "createSSE"> & AuthContext, request: FastifyRequest, reply: FastifyReply) => Context;
594
+ contextProvider: (defaultContext: Pick<Context, "request" | "reply" | "headers" | "createSSE" | "naiteStore"> & AuthContext, request: FastifyRequest, reply: FastifyReply) => Context | Promise<Context>;
568
595
  guardHandler: (guard: GuardKey, request: FastifyRequest, api: {
569
596
  typeParameters: ApiParamType.TypeParam[];
570
597
  parameters: ApiParam[];
@@ -588,33 +615,5 @@ export type SonamuFastifyConfig = {
588
615
  };
589
616
  };
590
617
  };
591
- export type SonamuServerOptions = {
592
- fastify?: FastifyServerOptions;
593
- listen?: {
594
- port: number;
595
- host?: string;
596
- };
597
- plugins?: {
598
- cors?: boolean | FastifyCorsOptions;
599
- formbody?: boolean | FastifyFormbodyOptions;
600
- multipart?: boolean | FastifyMultipartOptions;
601
- qs?: boolean | QsPluginOptions;
602
- sse?: boolean | SsePluginOptions;
603
- static?: boolean | FastifyStaticOptions;
604
- session?: boolean | SecureSessionPluginOptions;
605
- custom?: (server: FastifyInstance) => void;
606
- };
607
- auth?: boolean | {
608
- userSerializer: SerializeFunction<unknown, unknown>;
609
- userDeserializer: DeserializeFunction<unknown, unknown>;
610
- };
611
- apiConfig: SonamuFastifyConfig;
612
- storage?: Driver;
613
- lifecycle?: {
614
- onStart?: (server: FastifyInstance) => Promise<void> | void;
615
- onShutdown?: (server: FastifyInstance) => Promise<void> | void;
616
- onError?: (error: Error, request: FastifyRequest, reply: FastifyReply) => Promise<void> | void;
617
- };
618
- };
619
618
  export {};
620
619
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,cAAc,EACd,oBAAoB,EACrB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACxE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,sCAAsC,CAAC;AAK9C,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,IAAI,GAAG,IAAI,IAAI;KAC/D,GAAG,IAAI,CAAC,GAAG;SAAG,IAAI,IAAI,CAAC,GAAG,MAAM;KAAE;CACpC,CAAC;AACF,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAKjE,eAAO,MAAM,iBAAiB,aAOE,CAAC;AACjC,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAKlE,wBAAgB,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EAC/C,KAAK,EAAE,CAAC,GACP,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAEhC;AACD,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,GAChE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GACV,KAAK,CAAC;AAKV,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AACF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG;IACrC,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IACxC,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,CAAC,EAAE,IAAI,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,CAAC;CAC9C,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG;IACpC,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AACF,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG;IACnC,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG;IACpC,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AACF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG;IACrC,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AACF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG;IACrC,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AACF,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG;IACtC,IAAI,EAAE,UAAU,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AACF,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG;IACvC,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC;AACF,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AACF,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AACF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG;IACrC,IAAI,EAAE,SAAS,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,cAAc,GACd,YAAY,GACZ,UAAU,CAAC;AACf,MAAM,MAAM,UAAU,GAClB,SAAS,GACT,UAAU,GACV,WAAW,GACX,aAAa,GACb,UAAU,CAAC;AACf,KAAK,aAAa,GAAG;IACnB,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG;IACjD,YAAY,EAAE,UAAU,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,CACE;IACE,aAAa,EAAE,IAAI,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB,GACD;IACE,aAAa,EAAE,KAAK,CAAC;CACtB,CACJ,CAAC;AACJ,MAAM,MAAM,wBAAwB,GAAG,aAAa,GAAG;IACrD,YAAY,EAAE,cAAc,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAAG;IAChD,YAAY,EAAE,SAAS,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,sBAAsB,GAAG,aAAa,GAAG;IACnD,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,EAAE,GAAG,MAAM,KAAK,MAAM,EAAE,CAAC;IAClC,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE,UAAU,CAAC;CACtB,CAAC;AACF,MAAM,MAAM,YAAY,GACpB,oBAAoB,GACpB,wBAAwB,GACxB,mBAAmB,GACnB,sBAAsB,CAAC;AAE3B,MAAM,MAAM,UAAU,GAClB,WAAW,GACX,cAAc,GACd,QAAQ,GACR,UAAU,GACV,SAAS,GACT,UAAU,GACV,WAAW,GACX,WAAW,GACX,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,aAAa,GACb,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,YAAY,CAAC;AAEjB,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC;IACtC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;CAC/B,CAAC;AACF,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,EAAE;QACP,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC5B,CAAC;IACF,KAAK,EAAE;QACL,CAAC,MAAM,EAAE,MAAM,GAAG;YAChB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;SACvB,CAAC;KACH,CAAC;CACH,CAAC;AACF,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE;QACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;IACF,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;AAGjE,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,MAAM,IAAI;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE;QACR,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;KACvB,CAAC;CACH,CAAC;AAMF,MAAM,MAAM,cAAc,GACtB;IACE,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC;CAClB,GACD;IACE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC7B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B,CAAC;AAKN,wBAAgB,aAAa,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,WAAW,CAEtD;AACD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,cAAc,CAE5D;AACD,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,QAAQ,CAEhD;AACD,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,UAAU,CAEpD;AACD,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,QAAQ,CAEhD;AACD,wBAAgB,WAAW,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,SAAS,CAElD;AACD,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,UAAU,CAEpD;AACD,wBAAgB,aAAa,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,WAAW,CAEtD;AACD,wBAAgB,aAAa,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,WAAW,CAEtD;AACD,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,QAAQ,CAEhD;AACD,wBAAgB,cAAc,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAExD;AACD,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,QAAQ,CAEhD;AACD,wBAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,aAAa,CAE1D;AACD,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,QAAQ,CAEhD;AACD,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,QAAQ,CAEhD;AACD,wBAAgB,aAAa,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,WAAW,CAEtD;AACD,wBAAgB,cAAc,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAExD;AACD,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,oBAAoB,CAExE;AACD,wBAAgB,0BAA0B,CACxC,CAAC,EAAE,GAAG,GACL,CAAC,IAAI,wBAAwB,CAE/B;AACD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,mBAAmB,CAEtE;AACD,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,sBAAsB,CAE5E;AAED,KAAK,UAAU,GACX;IACE,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ,GACD;IACE,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AACN,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAElE;AAqCD,KAAK,YAAY,GAAG;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE;YACR,KAAK,EAAE,MAAM,CAAC;YACd,OAAO,EAAE,MAAM,CAAC;YAChB,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;KACH,CAAC;IACF,QAAQ,EAAE,CAAC;QACT,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,UAAU,CAAC,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,CAAC;QACN,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,UAAU,CAAC,EAAE,CAAC;IAClB,OAAO,EAAE,YAAY,EAAE,CAAC;CACzB,CAAC;AAGF,eAAO,MAAM,eAAe;;;;EAAoC,CAAC;AACjE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAG9D,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,wBAAgB,WAAW,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,SAAS,CAElD;AAED,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,MAAM,GACN,WAAW,GACX,YAAY,GACZ,UAAU,GACV,SAAS,GACT,YAAY,GACZ,SAAS,GACT,WAAW,GACX,SAAS,GACT,SAAS,GACT,MAAM,GACN,MAAM,GACN,OAAO,GACP,MAAM,GACN,MAAM,GACN,UAAU,CAAC;AACf,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;IACtC,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;CAC/B,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE,UAAU,CAAC;CACtB,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,QAAQ,EAAE,gBAAgB,EAAE,CAAC;CAC9B,CAAC;AACF,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,QAAQ,EAAE,gBAAgB,EAAE,CAAC;CAC9B,CAAC;AACF,MAAM,MAAM,wBAAwB,GAAG,YAAY,GAAG;IACpD,UAAU,EAAE,kBAAkB,EAAE,CAAC;CAClC,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC;AAGF,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AACF,yBAAiB,YAAY,CAAC;IAC5B,KAAY,MAAM,GAAG;QACnB,CAAC,EAAE,QAAQ,CAAC;QACZ,KAAK,EAAE,QAAQ,EAAE,CAAC;KACnB,CAAC;IACF,KAAY,KAAK,GAAG;QAClB,CAAC,EAAE,OAAO,CAAC;QACX,KAAK,EAAE,YAAY,EAAE,CAAC;KACvB,CAAC;IACF,KAAY,YAAY,GAAG;QACzB,CAAC,EAAE,cAAc,CAAC;QAClB,KAAK,EAAE,YAAY,EAAE,CAAC;KACvB,CAAC;IACF,KAAY,aAAa,GAAG;QAC1B,CAAC,EAAE,gBAAgB,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,KAAY,cAAc,GAAG;QAC3B,CAAC,EAAE,iBAAiB,CAAC;QACrB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,KAAY,KAAK,GAAG;QAClB,CAAC,EAAE,OAAO,CAAC;QACX,YAAY,EAAE,YAAY,CAAC;KAC5B,CAAC;IACF,KAAY,GAAG,GAAG;QAChB,CAAC,EAAE,KAAK,CAAC;QACT,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC;KACvB,CAAC;IACF,KAAY,aAAa,GAAG;QAC1B,CAAC,EAAE,gBAAgB,CAAC;QACpB,MAAM,EAAE,YAAY,CAAC;QACrB,KAAK,EAAE,YAAY,CAAC;KACrB,CAAC;IACF,KAAY,SAAS,GAAG;QACtB,CAAC,EAAE,YAAY,CAAC;QAChB,QAAQ,EAAE,YAAY,EAAE,CAAC;KAC1B,CAAC;IACF,KAAY,IAAI,GAAG,GAAG,GAAG;QACvB,CAAC,EAAE,KAAK,CAAC;QACT,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,KAAY,IAAI,GAAG,GAAG,GAAG;QACvB,CAAC,EAAE,KAAK,CAAC;QACT,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,KAAY,OAAO,GAAG,GAAG,GAAG;QAC1B,CAAC,EAAE,KAAK,CAAC;QACT,EAAE,EAAE,SAAS,CAAC;KACf,CAAC;IACF,KAAY,OAAO,GAAG,GAAG,GAAG;QAC1B,CAAC,EAAE,KAAK,CAAC;QACT,EAAE,EAAE,SAAS,CAAC;KACf,CAAC;IACF,KAAY,OAAO,GAAG,GAAG,GAAG;QAC1B,CAAC,EAAE,KAAK,CAAC;QACT,EAAE,EAAE,SAAS,CAAC;KACf,CAAC;IACF,KAAY,SAAS,GAAG;QACtB,CAAC,EAAE,YAAY,CAAC;QAChB,EAAE,EAAE,MAAM,CAAC;QACX,UAAU,CAAC,EAAE,YAAY,CAAC;KAC3B,CAAC;IAEF,SAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,MAAM,CAEzD;IACD,SAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,KAAK,CAEvD;IACD,SAAgB,cAAc,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,YAAY,CAErE;IACD,SAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,aAAa,CAEvE;IACD,SAAgB,gBAAgB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,cAAc,CAEzE;IACD,SAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,KAAK,CAEvD;IACD,SAAgB,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,GAAG,CAEnD;IACD,SAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,aAAa,CAEvE;IACD,SAAgB,WAAW,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,SAAS,CAE/D;IACD,SAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAErD;IACD,SAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAErD;IACD,SAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,OAAO,CAE3D;IACD,SAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,OAAO,CAE3D;IACD,SAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,OAAO,CAE3D;IACD,SAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,GAAG,CAEvD;IACD,SAAgB,WAAW,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,SAAS,CAE/D;CACF;AACD,MAAM,MAAM,YAAY,GACpB,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,MAAM,GACN,WAAW,GACX,MAAM,GACN,KAAK,GACL,SAAS,GACT,MAAM,GACN,OAAO,GACP,YAAY,CAAC,aAAa,GAC1B,YAAY,CAAC,cAAc,GAC3B,YAAY,CAAC,MAAM,GACnB,YAAY,CAAC,KAAK,GAClB,YAAY,CAAC,YAAY,GACzB,YAAY,CAAC,KAAK,GAClB,YAAY,CAAC,GAAG,GAChB,YAAY,CAAC,aAAa,GAC1B,YAAY,CAAC,SAAS,GACtB,YAAY,CAAC,SAAS,CAAC;AAI3B,eAAO,MAAM,aAAa,UAAU,CAAC;AACrC,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EACN,cAAc,GACd,cAAc,GACd,iBAAiB,GACjB,aAAa,GACb,UAAU,GACV,cAAc,GACd,WAAW,GACX,cAAc,GACd,SAAS,GACT,OAAO,GACP,OAAO,GACP,cAAc,GACd,QAAQ,GACR,aAAa,GACb,QAAQ,CAAC;IACb,OAAO,EAAE,CAAC,CAAC,UAAU,CAAC;IACtB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,MAAM,CAAC,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmF1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;EAmBtB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEtD,eAAO,MAAM,eAAe;;iBAE1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,eAAO,MAAM,WAAW;;;iBAGtB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEtD,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE;QACP,CAAC,GAAG,EAAE,MAAM,GAAG;YACb,IAAI,EAAE,UAAU,CAAC;YACjB,KAAK,EAAE,GAAG,CAAC;SACZ,CAAC;KACH,CAAC;IACF,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE;QACJ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,oBAAoB;CAAG;AACxC,MAAM,MAAM,oBAAoB,CAC9B,SAAS,SAAS,MAAM,EACxB,OAAO,SAAS,MAAM,IACpB;IACF,EAAE,EAAE,MAAM,CAAC;CACZ,GAAG;KACD,CAAC,IAAI,GAAG,SAAS,KAAK,GAAG,MAAM;CACjC,GAAG;KACD,CAAC,IAAI,GAAG,OAAO,KAAK,GAAG,MAAM;CAC/B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,eAAe,EAAE,CACf,cAAc,EAAE,IAAI,CAClB,OAAO,EACP,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAC9C,GACC,WAAW,EACb,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,YAAY,KAChB,OAAO,CAAC;IACb,YAAY,EAAE,CACZ,KAAK,EAAE,QAAQ,EACf,OAAO,EAAE,cAAc,EACvB,GAAG,EAAE;QACH,cAAc,EAAE,YAAY,CAAC,SAAS,EAAE,CAAC;QACzC,UAAU,EAAE,QAAQ,EAAE,CAAC;QACvB,UAAU,EAAE,YAAY,CAAC;QACzB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,mBAAmB,CAAC;KAC9B,KACE,IAAI,CAAC;IACV,KAAK,CAAC,EAAE;QACN,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;QAC9C,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAClE,UAAU,EAAE,CACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;YACP,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;SACxB,KAEC;YACE,KAAK,EAAE,KAAK,CAAC;SACd,GACD;YACE,KAAK,EAAE,IAAI,CAAC;YACZ,GAAG,EAAE,MAAM,CAAC;YACZ,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;KACP,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAE/B,MAAM,CAAC,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,OAAO,GAAG,kBAAkB,CAAC;QACpC,QAAQ,CAAC,EAAE,OAAO,GAAG,sBAAsB,CAAC;QAC5C,SAAS,CAAC,EAAE,OAAO,GAAG,uBAAuB,CAAC;QAC9C,EAAE,CAAC,EAAE,OAAO,GAAG,eAAe,CAAC;QAC/B,GAAG,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAC;QACjC,MAAM,CAAC,EAAE,OAAO,GAAG,oBAAoB,CAAC;QACxC,OAAO,CAAC,EAAE,OAAO,GAAG,0BAA0B,CAAC;QAE/C,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;KAC5C,CAAC;IAEF,IAAI,CAAC,EACD,OAAO,GACP;QACE,cAAc,EAAE,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACpD,gBAAgB,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;KACzD,CAAC;IAEN,SAAS,EAAE,mBAAmB,CAAC;IAE/B,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,EAAE;QACV,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC5D,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC/D,OAAO,CAAC,EAAE,CACR,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,YAAY,KAChB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;KAC3B,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types/types.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,289 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get ApiParamType(){return ApiParamType},get GenerateOptions(){return GenerateOptions},get PathAndCode(){return PathAndCode},get RenderingNode(){return RenderingNode},get SQLDateTimeString(){return SQLDateTimeString},get SonamuQueryMode(){return SonamuQueryMode},get TemplateKey(){return TemplateKey},get TemplateOptions(){return TemplateOptions},get isBelongsToOneRelationProp(){return isBelongsToOneRelationProp},get isBigIntegerProp(){return isBigIntegerProp},get isBooleanProp(){return isBooleanProp},get isCustomJoinClause(){return isCustomJoinClause},get isDateProp(){return isDateProp},get isDateTimeProp(){return isDateTimeProp},get isDecimalProp(){return isDecimalProp},get isDoubleProp(){return isDoubleProp},get isEnumProp(){return isEnumProp},get isFloatProp(){return isFloatProp},get isHasManyRelationProp(){return isHasManyRelationProp},get isIntegerProp(){return isIntegerProp},get isJsonProp(){return isJsonProp},get isKnexError(){return isKnexError},get isManyToManyRelationProp(){return isManyToManyRelationProp},get isOneToOneRelationProp(){return isOneToOneRelationProp},get isRelationProp(){return isRelationProp},get isStringProp(){return isStringProp},get isTextProp(){return isTextProp},get isTimeProp(){return isTimeProp},get isTimestampProp(){return isTimestampProp},get isUuidProp(){return isUuidProp},get isVirtualProp(){return isVirtualProp},get zArrayable(){return zArrayable}});var _zod=require("zod");var SQLDateTimeString=_zod.z.string().regex(/([0-9]{4}-[0-9]{2}-[0-9]{2}( [0-9]{2}:[0-9]{2}:[0-9]{2})*)$/,{message:"잘못된 SQLDate 타입"}).min(10).max(19).describe("SQLDateTimeString");function zArrayable(shape){return _zod.z.union([shape,shape.array()])}function isIntegerProp(p){return(p===null||p===void 0?void 0:p.type)==="integer"}function isBigIntegerProp(p){return(p===null||p===void 0?void 0:p.type)==="bigInteger"}function isTextProp(p){return(p===null||p===void 0?void 0:p.type)==="text"}function isStringProp(p){return(p===null||p===void 0?void 0:p.type)==="string"}function isEnumProp(p){return(p===null||p===void 0?void 0:p.type)==="enum"}function isFloatProp(p){return(p===null||p===void 0?void 0:p.type)==="float"}function isDoubleProp(p){return(p===null||p===void 0?void 0:p.type)==="double"}function isDecimalProp(p){return(p===null||p===void 0?void 0:p.type)==="decimal"}function isBooleanProp(p){return(p===null||p===void 0?void 0:p.type)==="boolean"}function isDateProp(p){return(p===null||p===void 0?void 0:p.type)==="date"}function isDateTimeProp(p){return(p===null||p===void 0?void 0:p.type)==="datetime"}function isTimeProp(p){return(p===null||p===void 0?void 0:p.type)==="time"}function isTimestampProp(p){return(p===null||p===void 0?void 0:p.type)==="timestamp"}function isJsonProp(p){return(p===null||p===void 0?void 0:p.type)==="json"}function isUuidProp(p){return(p===null||p===void 0?void 0:p.type)==="uuid"}function isVirtualProp(p){return(p===null||p===void 0?void 0:p.type)==="virtual"}function isRelationProp(p){return(p===null||p===void 0?void 0:p.type)==="relation"}function isOneToOneRelationProp(p){return(p===null||p===void 0?void 0:p.relationType)==="OneToOne"}function isBelongsToOneRelationProp(p){return(p===null||p===void 0?void 0:p.relationType)==="BelongsToOne"}function isHasManyRelationProp(p){return(p===null||p===void 0?void 0:p.relationType)==="HasMany"}function isManyToManyRelationProp(p){return(p===null||p===void 0?void 0:p.relationType)==="ManyToMany"}function isCustomJoinClause(p){return p===null||p===void 0?void 0:p.custom}var SonamuQueryMode=_zod.z.enum(["both","list","count"]);function isKnexError(e){return e.code&&e.sqlMessage&&e.sqlState}(function(ApiParamType){function isObject(v){return(v===null||v===void 0?void 0:v.t)==="object"}ApiParamType.isObject=isObject;function isUnion(v){return(v===null||v===void 0?void 0:v.t)==="union"}ApiParamType.isUnion=isUnion;function isIntersection(v){return(v===null||v===void 0?void 0:v.t)==="intersection"}ApiParamType.isIntersection=isIntersection;function isStringLiteral(v){return(v===null||v===void 0?void 0:v.t)==="string-literal"}ApiParamType.isStringLiteral=isStringLiteral;function isNumericLiteral(v){return(v===null||v===void 0?void 0:v.t)==="numeric-literal"}ApiParamType.isNumericLiteral=isNumericLiteral;function isArray(v){return(v===null||v===void 0?void 0:v.t)==="array"}ApiParamType.isArray=isArray;function isRef(v){return(v===null||v===void 0?void 0:v.t)==="ref"}ApiParamType.isRef=isRef;function isIndexedAccess(v){return(v===null||v===void 0?void 0:v.t)==="indexed-access"}ApiParamType.isIndexedAccess=isIndexedAccess;function isTupleType(v){return(v===null||v===void 0?void 0:v.t)==="tuple-type"}ApiParamType.isTupleType=isTupleType;function isPick(v){return(v===null||v===void 0?void 0:v.t)==="ref"&&v.id==="Pick"}ApiParamType.isPick=isPick;function isOmit(v){return(v===null||v===void 0?void 0:v.t)==="ref"&&v.id==="Omit"}ApiParamType.isOmit=isOmit;function isPartial(v){return(v===null||v===void 0?void 0:v.t)==="ref"&&v.id==="Partial"}ApiParamType.isPartial=isPartial;function isPromise(v){return(v===null||v===void 0?void 0:v.t)==="ref"&&v.id==="Promise"}ApiParamType.isPromise=isPromise;function isContext(v){return(v===null||v===void 0?void 0:v.t)==="ref"&&v.id==="Context"}ApiParamType.isContext=isContext;function isRefKnex(v){return(v===null||v===void 0?void 0:v.t)==="ref"&&v.id==="Knex"}ApiParamType.isRefKnex=isRefKnex;function isTypeParam(v){return(v===null||v===void 0?void 0:v.t)==="type-param"}ApiParamType.isTypeParam=isTypeParam})(ApiParamType||(ApiParamType={}));var RenderingNode=_zod.z.any();var TemplateOptions=_zod.z.object({entity:_zod.z.object({entityId:_zod.z.string(),parentId:_zod.z.string().optional(),title:_zod.z.string(),table:_zod.z.string().optional(),props:_zod.z.array(_zod.z.object({})).optional(),indexes:_zod.z.array(_zod.z.object({})).optional(),subsets:_zod.z.object({}).optional(),enums:_zod.z.object({}).optional()}),init_types:_zod.z.object({entityId:_zod.z.string()}),generated:_zod.z.object({}),generated_sso:_zod.z.object({}),generated_http:_zod.z.object({entityId:_zod.z.string()}),model:_zod.z.object({entityId:_zod.z.string(),defaultSearchField:_zod.z.string(),defaultOrderBy:_zod.z.string()}),model_test:_zod.z.object({entityId:_zod.z.string()}),bridge:_zod.z.object({entityId:_zod.z.string()}),service:_zod.z.object({namesRecord:_zod.z.object({fs:_zod.z.string(),fsPlural:_zod.z.string(),camel:_zod.z.string(),camelPlural:_zod.z.string(),capital:_zod.z.string(),capitalPlural:_zod.z.string(),upper:_zod.z.string(),constant:_zod.z.string()}),modelTsPath:_zod.z.string()}),view_list:_zod.z.object({entityId:_zod.z.string(),extra:_zod.z.unknown()}),view_list_columns:_zod.z.object({entityId:_zod.z.string(),columns:_zod.z.object({name:_zod.z.string(),label:_zod.z.string(),tc:_zod.z.string()}).array(),columnImports:_zod.z.string()}),view_search_input:_zod.z.object({entityId:_zod.z.string()}),view_form:_zod.z.object({entityId:_zod.z.string()}),view_id_all_select:_zod.z.object({entityId:_zod.z.string()}),view_id_async_select:_zod.z.object({entityId:_zod.z.string(),textField:_zod.z.string()}),view_enums_select:_zod.z.object({entityId:_zod.z.string(),enumId:_zod.z.string()}),view_enums_dropdown:_zod.z.object({entityId:_zod.z.string(),enumId:_zod.z.string()}),view_enums_buttonset:_zod.z.object({entityId:_zod.z.string(),enumId:_zod.z.string()})});var TemplateKey=_zod.z.enum(["entity","init_types","generated","generated_sso","generated_http","model","model_test","bridge","service","view_list","view_list_columns","view_search_input","view_form","view_id_all_select","view_id_async_select","view_enums_select","view_enums_dropdown","view_enums_buttonset"]);var GenerateOptions=_zod.z.object({overwrite:_zod.z.boolean().optional()});var PathAndCode=_zod.z.object({path:_zod.z.string(),code:_zod.z.string()});var ApiParamType;
2
- //# sourceMappingURL=types.js.map
1
+ import { z } from "zod";
2
+ /*
3
+ Custom Scalars
4
+ */ export const SQLDateTimeString = z.string().regex(/([0-9]{4}-[0-9]{2}-[0-9]{2}( [0-9]{2}:[0-9]{2}:[0-9]{2})*)$/, {
5
+ message: "잘못된 SQLDate 타입"
6
+ }).min(10).max(19).describe("SQLDateTimeString");
7
+ /*
8
+ Utility Types
9
+ */ export function zArrayable(shape) {
10
+ return z.union([
11
+ shape,
12
+ shape.array()
13
+ ]);
14
+ }
15
+ /*
16
+ Prop Type Guards
17
+ */ export function isIntegerProp(p) {
18
+ return p?.type === "integer";
19
+ }
20
+ export function isBigIntegerProp(p) {
21
+ return p?.type === "bigInteger";
22
+ }
23
+ export function isTextProp(p) {
24
+ return p?.type === "text";
25
+ }
26
+ export function isStringProp(p) {
27
+ return p?.type === "string";
28
+ }
29
+ export function isEnumProp(p) {
30
+ return p?.type === "enum";
31
+ }
32
+ export function isFloatProp(p) {
33
+ return p?.type === "float";
34
+ }
35
+ export function isDoubleProp(p) {
36
+ return p?.type === "double";
37
+ }
38
+ export function isDecimalProp(p) {
39
+ return p?.type === "decimal";
40
+ }
41
+ export function isBooleanProp(p) {
42
+ return p?.type === "boolean";
43
+ }
44
+ export function isDateProp(p) {
45
+ return p?.type === "date";
46
+ }
47
+ export function isDateTimeProp(p) {
48
+ return p?.type === "datetime";
49
+ }
50
+ export function isTimeProp(p) {
51
+ return p?.type === "time";
52
+ }
53
+ export function isTimestampProp(p) {
54
+ return p?.type === "timestamp";
55
+ }
56
+ export function isJsonProp(p) {
57
+ return p?.type === "json";
58
+ }
59
+ export function isUuidProp(p) {
60
+ return p?.type === "uuid";
61
+ }
62
+ export function isVirtualProp(p) {
63
+ return p?.type === "virtual";
64
+ }
65
+ export function isRelationProp(p) {
66
+ return p?.type === "relation";
67
+ }
68
+ export function isOneToOneRelationProp(p) {
69
+ return p?.relationType === "OneToOne";
70
+ }
71
+ export function isBelongsToOneRelationProp(p) {
72
+ return p?.relationType === "BelongsToOne";
73
+ }
74
+ export function isHasManyRelationProp(p) {
75
+ return p?.relationType === "HasMany";
76
+ }
77
+ export function isManyToManyRelationProp(p) {
78
+ return p?.relationType === "ManyToMany";
79
+ }
80
+ export function isCustomJoinClause(p) {
81
+ return p?.custom;
82
+ }
83
+ /* BaseModel */ export const SonamuQueryMode = z.enum([
84
+ "both",
85
+ "list",
86
+ "count"
87
+ ]);
88
+ export function isKnexError(e) {
89
+ return e.code && e.sqlMessage && e.sqlState;
90
+ }
91
+ (function(ApiParamType) {
92
+ function isObject(v) {
93
+ return v?.t === "object";
94
+ }
95
+ ApiParamType.isObject = isObject;
96
+ function isUnion(v) {
97
+ return v?.t === "union";
98
+ }
99
+ ApiParamType.isUnion = isUnion;
100
+ function isIntersection(v) {
101
+ return v?.t === "intersection";
102
+ }
103
+ ApiParamType.isIntersection = isIntersection;
104
+ function isStringLiteral(v) {
105
+ return v?.t === "string-literal";
106
+ }
107
+ ApiParamType.isStringLiteral = isStringLiteral;
108
+ function isNumericLiteral(v) {
109
+ return v?.t === "numeric-literal";
110
+ }
111
+ ApiParamType.isNumericLiteral = isNumericLiteral;
112
+ function isArray(v) {
113
+ return v?.t === "array";
114
+ }
115
+ ApiParamType.isArray = isArray;
116
+ function isRef(v) {
117
+ return v?.t === "ref";
118
+ }
119
+ ApiParamType.isRef = isRef;
120
+ function isIndexedAccess(v) {
121
+ return v?.t === "indexed-access";
122
+ }
123
+ ApiParamType.isIndexedAccess = isIndexedAccess;
124
+ function isTupleType(v) {
125
+ return v?.t === "tuple-type";
126
+ }
127
+ ApiParamType.isTupleType = isTupleType;
128
+ function isPick(v) {
129
+ return v?.t === "ref" && v.id === "Pick";
130
+ }
131
+ ApiParamType.isPick = isPick;
132
+ function isOmit(v) {
133
+ return v?.t === "ref" && v.id === "Omit";
134
+ }
135
+ ApiParamType.isOmit = isOmit;
136
+ function isPartial(v) {
137
+ return v?.t === "ref" && v.id === "Partial";
138
+ }
139
+ ApiParamType.isPartial = isPartial;
140
+ function isPromise(v) {
141
+ return v?.t === "ref" && v.id === "Promise";
142
+ }
143
+ ApiParamType.isPromise = isPromise;
144
+ function isContext(v) {
145
+ return v?.t === "ref" && v.id === "Context";
146
+ }
147
+ ApiParamType.isContext = isContext;
148
+ function isRefKnex(v) {
149
+ return v?.t === "ref" && v.id === "Knex";
150
+ }
151
+ ApiParamType.isRefKnex = isRefKnex;
152
+ function isTypeParam(v) {
153
+ return v?.t === "type-param";
154
+ }
155
+ ApiParamType.isTypeParam = isTypeParam;
156
+ })(ApiParamType || (ApiParamType = {}));
157
+ /* Template */ /**
158
+ * UI 컴포넌트 렌더링을 위한 메타데이터 노드입니다.
159
+ *
160
+ * **목적**: Zod 스키마로부터 프론트엔드 UI 컴포넌트를 자동 생성하기 위한
161
+ * 렌더링 정보를 담은 트리 구조입니다. 각 필드가 어떤 UI 컴포넌트로
162
+ * 표현되어야 하는지(텍스트, 이미지, 날짜, Enum 선택 등)를 명시합니다.
163
+ *
164
+ * **변환 흐름**:
165
+ * Entity subset → EntityPropNode → Zod 스키마 → RenderingNode (UI용) → React 컴포넌트 코드 생성
166
+ *
167
+ * **주요 필드**:
168
+ * - `renderType`: UI 컴포넌트 유형 (string-plain, number-fk_id, enums, array 등)
169
+ * - `zodType`: 원본 Zod 스키마 (validation 용)
170
+ * - `children`: 중첩된 객체 필드들 (object일 때)
171
+ * - `element`: 배열 요소 타입 (array일 때)
172
+ *
173
+ * **사용 위치**:
174
+ * - zod-converter.ts의 zodTypeToRenderingNode()에서 생성
175
+ * - view_form.template.ts, view_list.template.ts 등에서 React 컴포넌트 코드 생성에 사용
176
+ */ // 셀프 참조 타입이므로 Zod 생략하고 직접 정의
177
+ export const RenderingNode = z.any();
178
+ export const TemplateOptions = z.object({
179
+ entity: z.object({
180
+ entityId: z.string(),
181
+ parentId: z.string().optional(),
182
+ title: z.string(),
183
+ table: z.string().optional(),
184
+ props: z.array(z.object({})).optional(),
185
+ indexes: z.array(z.object({})).optional(),
186
+ subsets: z.object({}).optional(),
187
+ enums: z.object({}).optional()
188
+ }),
189
+ init_types: z.object({
190
+ entityId: z.string()
191
+ }),
192
+ generated: z.object({}),
193
+ generated_sso: z.object({}),
194
+ generated_http: z.object({
195
+ entityId: z.string()
196
+ }),
197
+ model: z.object({
198
+ entityId: z.string(),
199
+ defaultSearchField: z.string(),
200
+ defaultOrderBy: z.string()
201
+ }),
202
+ model_test: z.object({
203
+ entityId: z.string()
204
+ }),
205
+ bridge: z.object({
206
+ entityId: z.string()
207
+ }),
208
+ service: z.object({
209
+ namesRecord: z.object({
210
+ fs: z.string(),
211
+ fsPlural: z.string(),
212
+ camel: z.string(),
213
+ camelPlural: z.string(),
214
+ capital: z.string(),
215
+ capitalPlural: z.string(),
216
+ upper: z.string(),
217
+ constant: z.string()
218
+ }),
219
+ modelTsPath: z.string()
220
+ }),
221
+ view_list: z.object({
222
+ entityId: z.string(),
223
+ extra: z.unknown()
224
+ }),
225
+ view_list_columns: z.object({
226
+ entityId: z.string(),
227
+ columns: z.object({
228
+ name: z.string(),
229
+ label: z.string(),
230
+ tc: z.string()
231
+ }).array(),
232
+ columnImports: z.string()
233
+ }),
234
+ view_search_input: z.object({
235
+ entityId: z.string()
236
+ }),
237
+ view_form: z.object({
238
+ entityId: z.string()
239
+ }),
240
+ view_id_all_select: z.object({
241
+ entityId: z.string()
242
+ }),
243
+ view_id_async_select: z.object({
244
+ entityId: z.string(),
245
+ textField: z.string()
246
+ }),
247
+ view_enums_select: z.object({
248
+ entityId: z.string(),
249
+ enumId: z.string()
250
+ }),
251
+ view_enums_dropdown: z.object({
252
+ entityId: z.string(),
253
+ enumId: z.string()
254
+ }),
255
+ view_enums_buttonset: z.object({
256
+ entityId: z.string(),
257
+ enumId: z.string()
258
+ })
259
+ });
260
+ export const TemplateKey = z.enum([
261
+ "entity",
262
+ "init_types",
263
+ "generated",
264
+ "generated_sso",
265
+ "generated_http",
266
+ "model",
267
+ "model_test",
268
+ "bridge",
269
+ "service",
270
+ "view_list",
271
+ "view_list_columns",
272
+ "view_search_input",
273
+ "view_form",
274
+ "view_id_all_select",
275
+ "view_id_async_select",
276
+ "view_enums_select",
277
+ "view_enums_dropdown",
278
+ "view_enums_buttonset"
279
+ ]);
280
+ export const GenerateOptions = z.object({
281
+ overwrite: z.boolean().optional()
282
+ });
283
+ export const PathAndCode = z.object({
284
+ path: z.string(),
285
+ code: z.string()
286
+ });
287
+ export var ApiParamType;
288
+
289
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy90eXBlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEd1YXJkS2V5IH0gZnJvbSBcIi4vLi4vYXBpL2RlY29yYXRvcnNcIjtcbmltcG9ydCB0eXBlIHsgRmFzdGlmeVJlcGx5LCBGYXN0aWZ5UmVxdWVzdCB9IGZyb20gXCJmYXN0aWZ5XCI7XG5pbXBvcnQgeyB6IH0gZnJvbSBcInpvZFwiO1xuaW1wb3J0IHR5cGUgeyBBcGlEZWNvcmF0b3JPcHRpb25zLCBBdXRoQ29udGV4dCwgQ29udGV4dCB9IGZyb20gXCIuLi9hcGlcIjtcblxuLypcbiAgRW51bXNcbiovXG5leHBvcnQgdHlwZSBFbnVtc0xhYmVsPFQgZXh0ZW5kcyBzdHJpbmcsIEwgZXh0ZW5kcyBcImtvXCIgfCBcImVuXCI+ID0ge1xuICBba2V5IGluIFRdOiB7IFtsYW5nIGluIExdOiBzdHJpbmcgfTtcbn07XG5leHBvcnQgdHlwZSBFbnVtc0xhYmVsS288VCBleHRlbmRzIHN0cmluZz4gPSBFbnVtc0xhYmVsPFQsIFwia29cIj47XG5cbi8qXG4gIEN1c3RvbSBTY2FsYXJzXG4qL1xuZXhwb3J0IGNvbnN0IFNRTERhdGVUaW1lU3RyaW5nID0gelxuICAuc3RyaW5nKClcbiAgLnJlZ2V4KC8oWzAtOV17NH0tWzAtOV17Mn0tWzAtOV17Mn0oIFswLTldezJ9OlswLTldezJ9OlswLTldezJ9KSopJC8sIHtcbiAgICBtZXNzYWdlOiBcIuyemOuqu+uQnCBTUUxEYXRlIO2DgOyehVwiLFxuICB9KVxuICAubWluKDEwKVxuICAubWF4KDE5KVxuICAuZGVzY3JpYmUoXCJTUUxEYXRlVGltZVN0cmluZ1wiKTtcbmV4cG9ydCB0eXBlIFNRTERhdGVUaW1lU3RyaW5nID0gei5pbmZlcjx0eXBlb2YgU1FMRGF0ZVRpbWVTdHJpbmc+O1xuXG4vKlxuICBVdGlsaXR5IFR5cGVzXG4qL1xuZXhwb3J0IGZ1bmN0aW9uIHpBcnJheWFibGU8VCBleHRlbmRzIHouWm9kVHlwZUFueT4oXG4gIHNoYXBlOiBUXG4pOiB6LlpvZFVuaW9uPFtULCB6LlpvZEFycmF5PFQ+XT4ge1xuICByZXR1cm4gei51bmlvbihbc2hhcGUsIHNoYXBlLmFycmF5KCldKTtcbn1cbmV4cG9ydCB0eXBlIERpc3RyaWJ1dGl2ZU9taXQ8VCwgSyBleHRlbmRzIGtleW9mIGFueT4gPSBUIGV4dGVuZHMgYW55XG4gID8gT21pdDxULCBLPlxuICA6IG5ldmVyO1xuXG4vKlxuICBNb2RlbC1EZWZpbnRpb25cbiovXG5leHBvcnQgdHlwZSBDb21tb25Qcm9wID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIG51bGxhYmxlPzogYm9vbGVhbjtcbiAgdG9GaWx0ZXI/OiB0cnVlO1xuICBkZXNjPzogc3RyaW5nO1xuICBkYkRlZmF1bHQ/OiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgSW50ZWdlclByb3AgPSBDb21tb25Qcm9wICYge1xuICB0eXBlOiBcImludGVnZXJcIjtcbiAgdW5zaWduZWQ/OiB0cnVlO1xufTtcbmV4cG9ydCB0eXBlIEJpZ0ludGVnZXJQcm9wID0gQ29tbW9uUHJvcCAmIHtcbiAgdHlwZTogXCJiaWdJbnRlZ2VyXCI7XG4gIHVuc2lnbmVkPzogdHJ1ZTtcbn07XG5leHBvcnQgdHlwZSBUZXh0UHJvcCA9IENvbW1vblByb3AgJiB7XG4gIHR5cGU6IFwidGV4dFwiO1xuICB0ZXh0VHlwZTogXCJ0ZXh0XCIgfCBcIm1lZGl1bXRleHRcIiB8IFwibG9uZ3RleHRcIjtcbn07XG5leHBvcnQgdHlwZSBTdHJpbmdQcm9wID0gQ29tbW9uUHJvcCAmIHtcbiAgdHlwZTogXCJzdHJpbmdcIjtcbiAgbGVuZ3RoOiBudW1iZXI7XG59O1xuZXhwb3J0IHR5cGUgRW51bVByb3AgPSBDb21tb25Qcm9wICYge1xuICB0eXBlOiBcImVudW1cIjtcbiAgbGVuZ3RoOiBudW1iZXI7XG4gIGlkOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgRmxvYXRQcm9wID0gQ29tbW9uUHJvcCAmIHtcbiAgdHlwZTogXCJmbG9hdFwiO1xuICB1bnNpZ25lZD86IHRydWU7XG4gIHByZWNpc2lvbjogbnVtYmVyO1xuICBzY2FsZTogbnVtYmVyO1xufTtcbmV4cG9ydCB0eXBlIERvdWJsZVByb3AgPSBDb21tb25Qcm9wICYge1xuICB0eXBlOiBcImRvdWJsZVwiO1xuICB1bnNpZ25lZD86IHRydWU7XG4gIHByZWNpc2lvbjogbnVtYmVyO1xuICBzY2FsZTogbnVtYmVyO1xufTtcbmV4cG9ydCB0eXBlIERlY2ltYWxQcm9wID0gQ29tbW9uUHJvcCAmIHtcbiAgdHlwZTogXCJkZWNpbWFsXCI7XG4gIHVuc2lnbmVkPzogdHJ1ZTtcbiAgcHJlY2lzaW9uOiBudW1iZXI7XG4gIHNjYWxlOiBudW1iZXI7XG59O1xuZXhwb3J0IHR5cGUgQm9vbGVhblByb3AgPSBDb21tb25Qcm9wICYge1xuICB0eXBlOiBcImJvb2xlYW5cIjtcbn07XG5leHBvcnQgdHlwZSBEYXRlUHJvcCA9IENvbW1vblByb3AgJiB7XG4gIHR5cGU6IFwiZGF0ZVwiO1xufTtcbmV4cG9ydCB0eXBlIERhdGVUaW1lUHJvcCA9IENvbW1vblByb3AgJiB7XG4gIHR5cGU6IFwiZGF0ZXRpbWVcIjtcbn07XG5leHBvcnQgdHlwZSBUaW1lUHJvcCA9IENvbW1vblByb3AgJiB7XG4gIHR5cGU6IFwidGltZVwiO1xufTtcbmV4cG9ydCB0eXBlIFRpbWVzdGFtcFByb3AgPSBDb21tb25Qcm9wICYge1xuICB0eXBlOiBcInRpbWVzdGFtcFwiO1xufTtcbmV4cG9ydCB0eXBlIEpzb25Qcm9wID0gQ29tbW9uUHJvcCAmIHtcbiAgdHlwZTogXCJqc29uXCI7XG4gIGlkOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgVXVpZFByb3AgPSBDb21tb25Qcm9wICYge1xuICB0eXBlOiBcInV1aWRcIjtcbn07XG5leHBvcnQgdHlwZSBWaXJ0dWFsUHJvcCA9IENvbW1vblByb3AgJiB7XG4gIHR5cGU6IFwidmlydHVhbFwiO1xuICBpZDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgUmVsYXRpb25UeXBlID1cbiAgfCBcIkhhc01hbnlcIlxuICB8IFwiQmVsb25nc1RvT25lXCJcbiAgfCBcIk1hbnlUb01hbnlcIlxuICB8IFwiT25lVG9PbmVcIjtcbmV4cG9ydCB0eXBlIFJlbGF0aW9uT24gPVxuICB8IFwiQ0FTQ0FERVwiXG4gIHwgXCJTRVQgTlVMTFwiXG4gIHwgXCJOTyBBQ1RJT05cIlxuICB8IFwiU0VUIERFRkFVTFRcIlxuICB8IFwiUkVTVFJJQ1RcIjtcbnR5cGUgX1JlbGF0aW9uUHJvcCA9IHtcbiAgdHlwZTogXCJyZWxhdGlvblwiO1xuICBuYW1lOiBzdHJpbmc7XG4gIHdpdGg6IHN0cmluZztcbiAgbnVsbGFibGU/OiBib29sZWFuOyAvLyBERUZBVUxUOiBmYWxzZVxuICB0b0ZpbHRlcj86IHRydWU7IC8vIERFRkFVTFQ6IGZhbHNlXG4gIGRlc2M/OiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgT25lVG9PbmVSZWxhdGlvblByb3AgPSBfUmVsYXRpb25Qcm9wICYge1xuICByZWxhdGlvblR5cGU6IFwiT25lVG9PbmVcIjtcbiAgY3VzdG9tSm9pbkNsYXVzZT86IHN0cmluZztcbn0gJiAoXG4gICAgfCB7XG4gICAgICAgIGhhc0pvaW5Db2x1bW46IHRydWU7XG4gICAgICAgIHVzZUNvbnN0cmFpbnQ/OiBib29sZWFuOyAvLyBERUZBVUxUOiB0cnVlXG4gICAgICAgIG9uVXBkYXRlPzogUmVsYXRpb25PbjsgLy8gREVGQVVMVDogUkVTVFJJQ1RcbiAgICAgICAgb25EZWxldGU/OiBSZWxhdGlvbk9uOyAvLyBERUZBVUxUOiBSRVNUUklDVFxuICAgICAgfVxuICAgIHwge1xuICAgICAgICBoYXNKb2luQ29sdW1uOiBmYWxzZTtcbiAgICAgIH1cbiAgKTtcbmV4cG9ydCB0eXBlIEJlbG9uZ3NUb09uZVJlbGF0aW9uUHJvcCA9IF9SZWxhdGlvblByb3AgJiB7XG4gIHJlbGF0aW9uVHlwZTogXCJCZWxvbmdzVG9PbmVcIjtcbiAgY3VzdG9tSm9pbkNsYXVzZT86IHN0cmluZztcbiAgdXNlQ29uc3RyYWludD86IGJvb2xlYW47IC8vIERFRkFVTFQ6IHRydWVcbiAgb25VcGRhdGU/OiBSZWxhdGlvbk9uOyAvLyBERUZBVUxUOiBSRVNUUklDVFxuICBvbkRlbGV0ZT86IFJlbGF0aW9uT247IC8vIERFRkFVTFQ6IFJFU1RSSUNUXG59O1xuZXhwb3J0IHR5cGUgSGFzTWFueVJlbGF0aW9uUHJvcCA9IF9SZWxhdGlvblByb3AgJiB7XG4gIHJlbGF0aW9uVHlwZTogXCJIYXNNYW55XCI7XG4gIGpvaW5Db2x1bW46IHN0cmluZztcbiAgZnJvbUNvbHVtbj86IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBNYW55VG9NYW55UmVsYXRpb25Qcm9wID0gX1JlbGF0aW9uUHJvcCAmIHtcbiAgcmVsYXRpb25UeXBlOiBcIk1hbnlUb01hbnlcIjtcbiAgam9pblRhYmxlOiBgJHtzdHJpbmd9X18ke3N0cmluZ31gO1xuICBvblVwZGF0ZTogUmVsYXRpb25PbjtcbiAgb25EZWxldGU6IFJlbGF0aW9uT247XG59O1xuZXhwb3J0IHR5cGUgUmVsYXRpb25Qcm9wID1cbiAgfCBPbmVUb09uZVJlbGF0aW9uUHJvcFxuICB8IEJlbG9uZ3NUb09uZVJlbGF0aW9uUHJvcFxuICB8IEhhc01hbnlSZWxhdGlvblByb3BcbiAgfCBNYW55VG9NYW55UmVsYXRpb25Qcm9wO1xuXG5leHBvcnQgdHlwZSBFbnRpdHlQcm9wID1cbiAgfCBJbnRlZ2VyUHJvcFxuICB8IEJpZ0ludGVnZXJQcm9wXG4gIHwgVGV4dFByb3BcbiAgfCBTdHJpbmdQcm9wXG4gIHwgRmxvYXRQcm9wXG4gIHwgRG91YmxlUHJvcFxuICB8IERlY2ltYWxQcm9wXG4gIHwgQm9vbGVhblByb3BcbiAgfCBEYXRlUHJvcFxuICB8IERhdGVUaW1lUHJvcFxuICB8IFRpbWVQcm9wXG4gIHwgVGltZXN0YW1wUHJvcFxuICB8IEpzb25Qcm9wXG4gIHwgVXVpZFByb3BcbiAgfCBFbnVtUHJvcFxuICB8IFZpcnR1YWxQcm9wXG4gIHwgUmVsYXRpb25Qcm9wO1xuXG5leHBvcnQgdHlwZSBFbnRpdHlJbmRleCA9IHtcbiAgdHlwZTogXCJpbmRleFwiIHwgXCJ1bmlxdWVcIiB8IFwiZnVsbHRleHRcIjtcbiAgY29sdW1uczogc3RyaW5nW107XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHBhcnNlcj86IFwiYnVpbHQtaW5cIiB8IFwibmdyYW1cIjtcbn07XG5leHBvcnQgdHlwZSBFbnRpdHlKc29uID0ge1xuICBpZDogc3RyaW5nO1xuICBwYXJlbnRJZD86IHN0cmluZztcbiAgdGFibGU6IHN0cmluZztcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIHByb3BzOiBFbnRpdHlQcm9wW107XG4gIGluZGV4ZXM6IEVudGl0eUluZGV4W107XG4gIHN1YnNldHM6IHtcbiAgICBbc3Vic2V0OiBzdHJpbmddOiBzdHJpbmdbXTtcbiAgfTtcbiAgZW51bXM6IHtcbiAgICBbZW51bUlkOiBzdHJpbmddOiB7XG4gICAgICBba2V5OiBzdHJpbmddOiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbn07XG5leHBvcnQgdHlwZSBFbnRpdHlTdWJzZXRSb3cgPSB7XG4gIGZpZWxkOiBzdHJpbmc7XG4gIGhhczoge1xuICAgIFtrZXk6IHN0cmluZ106IGJvb2xlYW47XG4gIH07XG4gIGNoaWxkcmVuOiBFbnRpdHlTdWJzZXRSb3dbXTtcbiAgcHJlZml4ZXM6IHN0cmluZ1tdO1xuICByZWxhdGlvbkVudGl0eT86IHN0cmluZztcbiAgaXNPcGVuPzogYm9vbGVhbjtcbn07XG5leHBvcnQgdHlwZSBGbGF0dGVuU3Vic2V0Um93ID0gT21pdDxFbnRpdHlTdWJzZXRSb3csIFwiY2hpbGRyZW5cIj47XG5cbi8vIFNNRCBMZWdhY3lcbmV4cG9ydCB0eXBlIFNNRElucHV0PFQgZXh0ZW5kcyBzdHJpbmc+ID0ge1xuICBpZDogc3RyaW5nO1xuICBwYXJlbnRJZD86IHN0cmluZztcbiAgdGFibGU/OiBzdHJpbmc7XG4gIHRpdGxlPzogc3RyaW5nO1xuICBwcm9wcz86IEVudGl0eVByb3BbXTtcbiAgaW5kZXhlcz86IEVudGl0eUluZGV4W107XG4gIHN1YnNldHM/OiB7XG4gICAgW3N1YnNldDogc3RyaW5nXTogVFtdO1xuICB9O1xufTtcblxuLypcbiAgUHJvcE5vZGVcbiovXG5cbi8qKlxuICog7JeU7Yuw7Yuw7J2YIO2VhOuTnCDqtazsobDrpbwg7Yq466asIO2Yle2DnOuhnCDtkZztmITtlZjripQg7KSR6rCEIOuFuOuTnOyeheuLiOuLpC5cbiAqXG4gKiAqKuuqqeyggSoqOiBFbnRpdHnsnZggc3Vic2V0IO2VhOuTnCDtkZztmITsi50o7JiIOiBcImlkXCIsIFwidXNlci5uYW1lXCIsIFwidGFnc1tdXCIp7J2EXG4gKiDsnqzqt4DsoIHsnbgg7Yq466asIOq1rOyhsOuhnCDtjIzsi7HtlZjsl6wgWm9kIOyKpO2CpOuniCDsg53shLHsnZgg7KSR6rCEIOuLqOqzhOuhnCDsgqzsmqntlanri4jri6QuXG4gKlxuICogKirrs4DtmZgg7Z2Q66aEKio6XG4gKiBFbnRpdHkgc3Vic2V0IOKGkiBFbnRpdHlQcm9wTm9kZSAo7Yq466asIOq1rOyhsCkg4oaSIFpvZCDsiqTtgqTrp4gg4oaSIFJlbmRlcmluZ05vZGUgKFVJ7JqpKVxuICpcbiAqICoqbm9kZVR5cGUqKjpcbiAqIC0gXCJwbGFpblwiOiDri6jsnbwg7ZWE65OcICjsmIg6IFwiaWRcIiwgXCJuYW1lXCIpXG4gKiAtIFwib2JqZWN0XCI6IOykkeyyqSDqsJ3ssrQgKOyYiDogXCJ1c2VyLm5hbWVcIiDihpIgdXNlciDqsJ3ssrQpXG4gKiAtIFwiYXJyYXlcIjog67Cw7Je0ICjsmIg6IFwidGFnc1tdXCIg4oaSIHRhZ3Mg67Cw7Je0KVxuICpcbiAqICoq7IKs7JqpIOychOy5mCoqOiBlbnRpdHktY29udmVydGVyLnRz7J2YIHByb3BOb2RlVG9ab2RUeXBlKClcbiAqL1xuZXhwb3J0IHR5cGUgRW50aXR5UHJvcE5vZGUgPVxuICB8IHtcbiAgICAgIG5vZGVUeXBlOiBcInBsYWluXCI7XG4gICAgICBwcm9wOiBFbnRpdHlQcm9wO1xuICAgIH1cbiAgfCB7XG4gICAgICBub2RlVHlwZTogXCJvYmplY3RcIiB8IFwiYXJyYXlcIjtcbiAgICAgIHByb3A/OiBFbnRpdHlQcm9wO1xuICAgICAgY2hpbGRyZW46IEVudGl0eVByb3BOb2RlW107XG4gICAgfTtcblxuLypcbiAgUHJvcCBUeXBlIEd1YXJkc1xuKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0ludGVnZXJQcm9wKHA6IGFueSk6IHAgaXMgSW50ZWdlclByb3Age1xuICByZXR1cm4gcD8udHlwZSA9PT0gXCJpbnRlZ2VyXCI7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNCaWdJbnRlZ2VyUHJvcChwOiBhbnkpOiBwIGlzIEJpZ0ludGVnZXJQcm9wIHtcbiAgcmV0dXJuIHA/LnR5cGUgPT09IFwiYmlnSW50ZWdlclwiO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzVGV4dFByb3AocDogYW55KTogcCBpcyBUZXh0UHJvcCB7XG4gIHJldHVybiBwPy50eXBlID09PSBcInRleHRcIjtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc1N0cmluZ1Byb3AocDogYW55KTogcCBpcyBTdHJpbmdQcm9wIHtcbiAgcmV0dXJuIHA/LnR5cGUgPT09IFwic3RyaW5nXCI7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNFbnVtUHJvcChwOiBhbnkpOiBwIGlzIEVudW1Qcm9wIHtcbiAgcmV0dXJuIHA/LnR5cGUgPT09IFwiZW51bVwiO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzRmxvYXRQcm9wKHA6IGFueSk6IHAgaXMgRmxvYXRQcm9wIHtcbiAgcmV0dXJuIHA/LnR5cGUgPT09IFwiZmxvYXRcIjtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc0RvdWJsZVByb3AocDogYW55KTogcCBpcyBEb3VibGVQcm9wIHtcbiAgcmV0dXJuIHA/LnR5cGUgPT09IFwiZG91YmxlXCI7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNEZWNpbWFsUHJvcChwOiBhbnkpOiBwIGlzIERlY2ltYWxQcm9wIHtcbiAgcmV0dXJuIHA/LnR5cGUgPT09IFwiZGVjaW1hbFwiO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzQm9vbGVhblByb3AocDogYW55KTogcCBpcyBCb29sZWFuUHJvcCB7XG4gIHJldHVybiBwPy50eXBlID09PSBcImJvb2xlYW5cIjtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc0RhdGVQcm9wKHA6IGFueSk6IHAgaXMgRGF0ZVByb3Age1xuICByZXR1cm4gcD8udHlwZSA9PT0gXCJkYXRlXCI7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNEYXRlVGltZVByb3AocDogYW55KTogcCBpcyBEYXRlVGltZVByb3Age1xuICByZXR1cm4gcD8udHlwZSA9PT0gXCJkYXRldGltZVwiO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzVGltZVByb3AocDogYW55KTogcCBpcyBUaW1lUHJvcCB7XG4gIHJldHVybiBwPy50eXBlID09PSBcInRpbWVcIjtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc1RpbWVzdGFtcFByb3AocDogYW55KTogcCBpcyBUaW1lc3RhbXBQcm9wIHtcbiAgcmV0dXJuIHA/LnR5cGUgPT09IFwidGltZXN0YW1wXCI7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNKc29uUHJvcChwOiBhbnkpOiBwIGlzIEpzb25Qcm9wIHtcbiAgcmV0dXJuIHA/LnR5cGUgPT09IFwianNvblwiO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzVXVpZFByb3AocDogYW55KTogcCBpcyBVdWlkUHJvcCB7XG4gIHJldHVybiBwPy50eXBlID09PSBcInV1aWRcIjtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc1ZpcnR1YWxQcm9wKHA6IGFueSk6IHAgaXMgVmlydHVhbFByb3Age1xuICByZXR1cm4gcD8udHlwZSA9PT0gXCJ2aXJ0dWFsXCI7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNSZWxhdGlvblByb3AocDogYW55KTogcCBpcyBSZWxhdGlvblByb3Age1xuICByZXR1cm4gcD8udHlwZSA9PT0gXCJyZWxhdGlvblwiO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzT25lVG9PbmVSZWxhdGlvblByb3AocDogYW55KTogcCBpcyBPbmVUb09uZVJlbGF0aW9uUHJvcCB7XG4gIHJldHVybiBwPy5yZWxhdGlvblR5cGUgPT09IFwiT25lVG9PbmVcIjtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc0JlbG9uZ3NUb09uZVJlbGF0aW9uUHJvcChcbiAgcDogYW55XG4pOiBwIGlzIEJlbG9uZ3NUb09uZVJlbGF0aW9uUHJvcCB7XG4gIHJldHVybiBwPy5yZWxhdGlvblR5cGUgPT09IFwiQmVsb25nc1RvT25lXCI7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNIYXNNYW55UmVsYXRpb25Qcm9wKHA6IGFueSk6IHAgaXMgSGFzTWFueVJlbGF0aW9uUHJvcCB7XG4gIHJldHVybiBwPy5yZWxhdGlvblR5cGUgPT09IFwiSGFzTWFueVwiO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzTWFueVRvTWFueVJlbGF0aW9uUHJvcChwOiBhbnkpOiBwIGlzIE1hbnlUb01hbnlSZWxhdGlvblByb3Age1xuICByZXR1cm4gcD8ucmVsYXRpb25UeXBlID09PSBcIk1hbnlUb01hbnlcIjtcbn1cblxudHlwZSBKb2luQ2xhdXNlID1cbiAgfCB7XG4gICAgICBmcm9tOiBzdHJpbmc7XG4gICAgICB0bzogc3RyaW5nO1xuICAgIH1cbiAgfCB7XG4gICAgICBjdXN0b206IHN0cmluZztcbiAgICB9O1xuZXhwb3J0IGZ1bmN0aW9uIGlzQ3VzdG9tSm9pbkNsYXVzZShwOiBhbnkpOiBwIGlzIHsgY3VzdG9tOiBzdHJpbmcgfSB7XG4gIHJldHVybiBwPy5jdXN0b207XG59XG5cbi8qIOyEnOu4jOyFiyAqL1xuLy8gdHlwZSBTdWJzZXRMb2FkZXIgPSB7XG4vLyAgIGFzOiBzdHJpbmc7XG4vLyAgIHRhYmxlOiBzdHJpbmc7XG4vLyAgIG1hbnlKb2luOiB7XG4vLyAgICAgZnJvbVRhYmxlOiBzdHJpbmc7XG4vLyAgICAgZnJvbUNvbDogc3RyaW5nO1xuLy8gICAgIGlkRmllbGQ6IHN0cmluZztcbi8vICAgICB0b1RhYmxlOiBzdHJpbmc7XG4vLyAgICAgdG9Db2w6IHN0cmluZztcbi8vICAgICB0aHJvdWdoPzoge1xuLy8gICAgICAgdGFibGU6IHN0cmluZztcbi8vICAgICAgIGZyb21Db2w6IHN0cmluZztcbi8vICAgICAgIHRvQ29sOiBzdHJpbmc7XG4vLyAgICAgfTtcbi8vICAgfTtcbi8vICAgb25lSm9pbnM6ICh7XG4vLyAgICAgYXM6IHN0cmluZztcbi8vICAgICBqb2luOiBcImlubmVyXCIgfCBcIm91dGVyXCI7XG4vLyAgICAgdGFibGU6IHN0cmluZztcbi8vICAgfSAmIEpvaW5DbGF1c2UpW107XG4vLyAgIHNlbGVjdDogKHN0cmluZyB8IEtuZXguUmF3KVtdO1xuLy8gICBsb2FkZXJzPzogU3Vic2V0TG9hZGVyW107XG4vLyB9O1xuLy8gZXhwb3J0IHR5cGUgU3Vic2V0UXVlcnkgPSB7XG4vLyAgIHNlbGVjdDogKHN0cmluZyB8IEtuZXguUmF3KVtdO1xuLy8gICB2aXJ0dWFsOiBzdHJpbmdbXTtcbi8vICAgam9pbnM6ICh7XG4vLyAgICAgYXM6IHN0cmluZztcbi8vICAgICBqb2luOiBcImlubmVyXCIgfCBcIm91dGVyXCI7XG4vLyAgICAgdGFibGU6IHN0cmluZztcbi8vICAgfSAmIEpvaW5DbGF1c2UpW107XG4vLyAgIGxvYWRlcnM6IFN1YnNldExvYWRlcltdO1xuLy8gfTtcblxudHlwZSBTdWJzZXRMb2FkZXIgPSB7XG4gIGFzOiBzdHJpbmc7XG4gIHRhYmxlOiBzdHJpbmc7XG4gIG1hbnlKb2luOiB7XG4gICAgZnJvbVRhYmxlOiBzdHJpbmc7XG4gICAgZnJvbUNvbDogc3RyaW5nO1xuICAgIGlkRmllbGQ6IHN0cmluZztcbiAgICB0b1RhYmxlOiBzdHJpbmc7XG4gICAgdG9Db2w6IHN0cmluZztcbiAgICB0aHJvdWdoPzoge1xuICAgICAgdGFibGU6IHN0cmluZztcbiAgICAgIGZyb21Db2w6IHN0cmluZztcbiAgICAgIHRvQ29sOiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbiAgb25lSm9pbnM6ICh7XG4gICAgYXM6IHN0cmluZztcbiAgICBqb2luOiBcImlubmVyXCIgfCBcIm91dGVyXCI7XG4gICAgdGFibGU6IHN0cmluZztcbiAgfSAmIEpvaW5DbGF1c2UpW107XG4gIHNlbGVjdDogc3RyaW5nW107XG4gIGxvYWRlcnM/OiBTdWJzZXRMb2FkZXJbXTtcbn07XG5cbmV4cG9ydCB0eXBlIFN1YnNldFF1ZXJ5ID0ge1xuICBzZWxlY3Q6IHN0cmluZ1tdO1xuICB2aXJ0dWFsOiBzdHJpbmdbXTtcbiAgam9pbnM6ICh7XG4gICAgYXM6IHN0cmluZztcbiAgICBqb2luOiBcImlubmVyXCIgfCBcIm91dGVyXCI7XG4gICAgdGFibGU6IHN0cmluZztcbiAgfSAmIEpvaW5DbGF1c2UpW107XG4gIGxvYWRlcnM6IFN1YnNldExvYWRlcltdO1xufTtcblxuLyogQmFzZU1vZGVsICovXG5leHBvcnQgY29uc3QgU29uYW11UXVlcnlNb2RlID0gei5lbnVtKFtcImJvdGhcIiwgXCJsaXN0XCIsIFwiY291bnRcIl0pO1xuZXhwb3J0IHR5cGUgU29uYW11UXVlcnlNb2RlID0gei5pbmZlcjx0eXBlb2YgU29uYW11UXVlcnlNb2RlPjtcblxuLyogS25leCBNaWdyYXRpb24gKi9cbmV4cG9ydCB0eXBlIEtuZXhFcnJvciA9IHtcbiAgY29kZTogc3RyaW5nO1xuICBlcnJubzogbnVtYmVyO1xuICBzcWw6IHN0cmluZztcbiAgc3FsTWVzc2FnZTogc3RyaW5nO1xuICBzcWxTdGF0ZTogc3RyaW5nO1xufTtcbmV4cG9ydCBmdW5jdGlvbiBpc0tuZXhFcnJvcihlOiBhbnkpOiBlIGlzIEtuZXhFcnJvciB7XG4gIHJldHVybiBlLmNvZGUgJiYgZS5zcWxNZXNzYWdlICYmIGUuc3FsU3RhdGU7XG59XG5cbmV4cG9ydCB0eXBlIEtuZXhDb2x1bW5UeXBlID1cbiAgfCBcInN0cmluZ1wiXG4gIHwgXCJ0ZXh0XCJcbiAgfCBcInNtYWxsdGV4dFwiXG4gIHwgXCJtZWRpdW10ZXh0XCJcbiAgfCBcImxvbmd0ZXh0XCJcbiAgfCBcImludGVnZXJcIlxuICB8IFwiYmlnSW50ZWdlclwiXG4gIHwgXCJkZWNpbWFsXCJcbiAgfCBcInRpbWVzdGFtcFwiXG4gIHwgXCJib29sZWFuXCJcbiAgfCBcImZvcmVpZ25cIlxuICB8IFwidXVpZFwiXG4gIHwgXCJqc29uXCJcbiAgfCBcImZsb2F0XCJcbiAgfCBcImRhdGVcIlxuICB8IFwidGltZVwiXG4gIHwgXCJkYXRldGltZVwiO1xuZXhwb3J0IHR5cGUgTWlncmF0aW9uQ29sdW1uID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHR5cGU6IEtuZXhDb2x1bW5UeXBlO1xuICBudWxsYWJsZTogYm9vbGVhbjtcbiAgdW5zaWduZWQ/OiBib29sZWFuO1xuICBsZW5ndGg/OiBudW1iZXI7XG4gIGRlZmF1bHRUbz86IHN0cmluZztcbiAgcHJlY2lzaW9uPzogbnVtYmVyO1xuICBzY2FsZT86IG51bWJlcjtcbn07XG5leHBvcnQgdHlwZSBNaWdyYXRpb25JbmRleCA9IHtcbiAgY29sdW1uczogc3RyaW5nW107XG4gIHR5cGU6IFwidW5pcXVlXCIgfCBcImluZGV4XCIgfCBcImZ1bGx0ZXh0XCI7XG4gIHBhcnNlcj86IFwiYnVpbHQtaW5cIiB8IFwibmdyYW1cIjtcbn07XG5leHBvcnQgdHlwZSBNaWdyYXRpb25Gb3JlaWduID0ge1xuICBjb2x1bW5zOiBzdHJpbmdbXTtcbiAgdG86IHN0cmluZztcbiAgb25VcGRhdGU6IFJlbGF0aW9uT247XG4gIG9uRGVsZXRlOiBSZWxhdGlvbk9uO1xufTtcbmV4cG9ydCB0eXBlIE1pZ3JhdGlvbkpvaW5UYWJsZSA9IHtcbiAgdGFibGU6IHN0cmluZztcbiAgaW5kZXhlczogTWlncmF0aW9uSW5kZXhbXTtcbiAgY29sdW1uczogTWlncmF0aW9uQ29sdW1uW107XG4gIGZvcmVpZ25zOiBNaWdyYXRpb25Gb3JlaWduW107XG59O1xuZXhwb3J0IHR5cGUgTWlncmF0aW9uU2V0ID0ge1xuICB0YWJsZTogc3RyaW5nO1xuICBjb2x1bW5zOiBNaWdyYXRpb25Db2x1bW5bXTtcbiAgaW5kZXhlczogTWlncmF0aW9uSW5kZXhbXTtcbiAgZm9yZWlnbnM6IE1pZ3JhdGlvbkZvcmVpZ25bXTtcbn07XG5leHBvcnQgdHlwZSBNaWdyYXRpb25TZXRBbmRKb2luVGFibGUgPSBNaWdyYXRpb25TZXQgJiB7XG4gIGpvaW5UYWJsZXM6IE1pZ3JhdGlvbkpvaW5UYWJsZVtdO1xufTtcbmV4cG9ydCB0eXBlIEdlbk1pZ3JhdGlvbkNvZGUgPSB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHRhYmxlOiBzdHJpbmc7XG4gIHR5cGU6IFwibm9ybWFsXCIgfCBcImZvcmVpZ25cIjtcbiAgZm9ybWF0dGVkOiBzdHJpbmcgfCBudWxsO1xufTtcblxuLyogQXBpICovXG5leHBvcnQgdHlwZSBBcGlQYXJhbSA9IHtcbiAgbmFtZTogc3RyaW5nO1xuICB0eXBlOiBBcGlQYXJhbVR5cGU7XG4gIG9wdGlvbmFsOiBib29sZWFuO1xuICBkZWZhdWx0RGVmPzogc3RyaW5nO1xufTtcbmV4cG9ydCBuYW1lc3BhY2UgQXBpUGFyYW1UeXBlIHtcbiAgZXhwb3J0IHR5cGUgT2JqZWN0ID0ge1xuICAgIHQ6IFwib2JqZWN0XCI7XG4gICAgcHJvcHM6IEFwaVBhcmFtW107XG4gIH07XG4gIGV4cG9ydCB0eXBlIFVuaW9uID0ge1xuICAgIHQ6IFwidW5pb25cIjtcbiAgICB0eXBlczogQXBpUGFyYW1UeXBlW107XG4gIH07XG4gIGV4cG9ydCB0eXBlIEludGVyc2VjdGlvbiA9IHtcbiAgICB0OiBcImludGVyc2VjdGlvblwiO1xuICAgIHR5cGVzOiBBcGlQYXJhbVR5cGVbXTtcbiAgfTtcbiAgZXhwb3J0IHR5cGUgU3RyaW5nTGl0ZXJhbCA9IHtcbiAgICB0OiBcInN0cmluZy1saXRlcmFsXCI7XG4gICAgdmFsdWU6IHN0cmluZztcbiAgfTtcbiAgZXhwb3J0IHR5cGUgTnVtZXJpY0xpdGVyYWwgPSB7XG4gICAgdDogXCJudW1lcmljLWxpdGVyYWxcIjtcbiAgICB2YWx1ZTogbnVtYmVyO1xuICB9O1xuICBleHBvcnQgdHlwZSBBcnJheSA9IHtcbiAgICB0OiBcImFycmF5XCI7XG4gICAgZWxlbWVudHNUeXBlOiBBcGlQYXJhbVR5cGU7XG4gIH07XG4gIGV4cG9ydCB0eXBlIFJlZiA9IHtcbiAgICB0OiBcInJlZlwiO1xuICAgIGlkOiBzdHJpbmc7XG4gICAgYXJncz86IEFwaVBhcmFtVHlwZVtdO1xuICB9O1xuICBleHBvcnQgdHlwZSBJbmRleGVkQWNjZXNzID0ge1xuICAgIHQ6IFwiaW5kZXhlZC1hY2Nlc3NcIjtcbiAgICBvYmplY3Q6IEFwaVBhcmFtVHlwZTtcbiAgICBpbmRleDogQXBpUGFyYW1UeXBlO1xuICB9O1xuICBleHBvcnQgdHlwZSBUdXBsZVR5cGUgPSB7XG4gICAgdDogXCJ0dXBsZS10eXBlXCI7XG4gICAgZWxlbWVudHM6IEFwaVBhcmFtVHlwZVtdO1xuICB9O1xuICBleHBvcnQgdHlwZSBQaWNrID0gUmVmICYge1xuICAgIHQ6IFwicmVmXCI7XG4gICAgaWQ6IFwiUGlja1wiO1xuICB9O1xuICBleHBvcnQgdHlwZSBPbWl0ID0gUmVmICYge1xuICAgIHQ6IFwicmVmXCI7XG4gICAgaWQ6IFwiT21pdFwiO1xuICB9O1xuICBleHBvcnQgdHlwZSBQYXJ0aWFsID0gUmVmICYge1xuICAgIHQ6IFwicmVmXCI7XG4gICAgaWQ6IFwiUGFydGlhbFwiO1xuICB9O1xuICBleHBvcnQgdHlwZSBQcm9taXNlID0gUmVmICYge1xuICAgIHQ6IFwicmVmXCI7XG4gICAgaWQ6IFwiUHJvbWlzZVwiO1xuICB9O1xuICBleHBvcnQgdHlwZSBDb250ZXh0ID0gUmVmICYge1xuICAgIHQ6IFwicmVmXCI7XG4gICAgaWQ6IFwiQ29udGV4dFwiO1xuICB9O1xuICBleHBvcnQgdHlwZSBUeXBlUGFyYW0gPSB7XG4gICAgdDogXCJ0eXBlLXBhcmFtXCI7XG4gICAgaWQ6IHN0cmluZztcbiAgICBjb25zdHJhaW50PzogQXBpUGFyYW1UeXBlO1xuICB9O1xuXG4gIGV4cG9ydCBmdW5jdGlvbiBpc09iamVjdCh2OiBhbnkpOiB2IGlzIEFwaVBhcmFtVHlwZS5PYmplY3Qge1xuICAgIHJldHVybiB2Py50ID09PSBcIm9iamVjdFwiO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiBpc1VuaW9uKHY6IGFueSk6IHYgaXMgQXBpUGFyYW1UeXBlLlVuaW9uIHtcbiAgICByZXR1cm4gdj8udCA9PT0gXCJ1bmlvblwiO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiBpc0ludGVyc2VjdGlvbih2OiBhbnkpOiB2IGlzIEFwaVBhcmFtVHlwZS5JbnRlcnNlY3Rpb24ge1xuICAgIHJldHVybiB2Py50ID09PSBcImludGVyc2VjdGlvblwiO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiBpc1N0cmluZ0xpdGVyYWwodjogYW55KTogdiBpcyBBcGlQYXJhbVR5cGUuU3RyaW5nTGl0ZXJhbCB7XG4gICAgcmV0dXJuIHY/LnQgPT09IFwic3RyaW5nLWxpdGVyYWxcIjtcbiAgfVxuICBleHBvcnQgZnVuY3Rpb24gaXNOdW1lcmljTGl0ZXJhbCh2OiBhbnkpOiB2IGlzIEFwaVBhcmFtVHlwZS5OdW1lcmljTGl0ZXJhbCB7XG4gICAgcmV0dXJuIHY/LnQgPT09IFwibnVtZXJpYy1saXRlcmFsXCI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIGlzQXJyYXkodjogYW55KTogdiBpcyBBcGlQYXJhbVR5cGUuQXJyYXkge1xuICAgIHJldHVybiB2Py50ID09PSBcImFycmF5XCI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIGlzUmVmKHY6IGFueSk6IHYgaXMgQXBpUGFyYW1UeXBlLlJlZiB7XG4gICAgcmV0dXJuIHY/LnQgPT09IFwicmVmXCI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIGlzSW5kZXhlZEFjY2Vzcyh2OiBhbnkpOiB2IGlzIEFwaVBhcmFtVHlwZS5JbmRleGVkQWNjZXNzIHtcbiAgICByZXR1cm4gdj8udCA9PT0gXCJpbmRleGVkLWFjY2Vzc1wiO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiBpc1R1cGxlVHlwZSh2OiBhbnkpOiB2IGlzIEFwaVBhcmFtVHlwZS5UdXBsZVR5cGUge1xuICAgIHJldHVybiB2Py50ID09PSBcInR1cGxlLXR5cGVcIjtcbiAgfVxuICBleHBvcnQgZnVuY3Rpb24gaXNQaWNrKHY6IGFueSk6IHYgaXMgQXBpUGFyYW1UeXBlLlBpY2sge1xuICAgIHJldHVybiB2Py50ID09PSBcInJlZlwiICYmIHYuaWQgPT09IFwiUGlja1wiO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiBpc09taXQodjogYW55KTogdiBpcyBBcGlQYXJhbVR5cGUuT21pdCB7XG4gICAgcmV0dXJuIHY/LnQgPT09IFwicmVmXCIgJiYgdi5pZCA9PT0gXCJPbWl0XCI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIGlzUGFydGlhbCh2OiBhbnkpOiB2IGlzIEFwaVBhcmFtVHlwZS5QYXJ0aWFsIHtcbiAgICByZXR1cm4gdj8udCA9PT0gXCJyZWZcIiAmJiB2LmlkID09PSBcIlBhcnRpYWxcIjtcbiAgfVxuICBleHBvcnQgZnVuY3Rpb24gaXNQcm9taXNlKHY6IGFueSk6IHYgaXMgQXBpUGFyYW1UeXBlLlByb21pc2Uge1xuICAgIHJldHVybiB2Py50ID09PSBcInJlZlwiICYmIHYuaWQgPT09IFwiUHJvbWlzZVwiO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiBpc0NvbnRleHQodjogYW55KTogdiBpcyBBcGlQYXJhbVR5cGUuQ29udGV4dCB7XG4gICAgcmV0dXJuIHY/LnQgPT09IFwicmVmXCIgJiYgdi5pZCA9PT0gXCJDb250ZXh0XCI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIGlzUmVmS25leCh2OiBhbnkpOiB2IGlzIEFwaVBhcmFtVHlwZS5SZWYge1xuICAgIHJldHVybiB2Py50ID09PSBcInJlZlwiICYmIHYuaWQgPT09IFwiS25leFwiO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiBpc1R5cGVQYXJhbSh2OiBhbnkpOiB2IGlzIEFwaVBhcmFtVHlwZS5UeXBlUGFyYW0ge1xuICAgIHJldHVybiB2Py50ID09PSBcInR5cGUtcGFyYW1cIjtcbiAgfVxufVxuZXhwb3J0IHR5cGUgQXBpUGFyYW1UeXBlID1cbiAgfCBcInN0cmluZ1wiXG4gIHwgXCJudW1iZXJcIlxuICB8IFwiYm9vbGVhblwiXG4gIHwgXCJudWxsXCJcbiAgfCBcInVuZGVmaW5lZFwiXG4gIHwgXCJ2b2lkXCJcbiAgfCBcImFueVwiXG4gIHwgXCJ1bmtub3duXCJcbiAgfCBcInRydWVcIlxuICB8IFwiZmFsc2VcIlxuICB8IEFwaVBhcmFtVHlwZS5TdHJpbmdMaXRlcmFsXG4gIHwgQXBpUGFyYW1UeXBlLk51bWVyaWNMaXRlcmFsXG4gIHwgQXBpUGFyYW1UeXBlLk9iamVjdFxuICB8IEFwaVBhcmFtVHlwZS5VbmlvblxuICB8IEFwaVBhcmFtVHlwZS5JbnRlcnNlY3Rpb25cbiAgfCBBcGlQYXJhbVR5cGUuQXJyYXlcbiAgfCBBcGlQYXJhbVR5cGUuUmVmXG4gIHwgQXBpUGFyYW1UeXBlLkluZGV4ZWRBY2Nlc3NcbiAgfCBBcGlQYXJhbVR5cGUuVHlwZVBhcmFtXG4gIHwgQXBpUGFyYW1UeXBlLlR1cGxlVHlwZTtcblxuLyogVGVtcGxhdGUgKi9cbi8qKlxuICogVUkg7Lu07Y+s64SM7Yq4IOugjOuNlOungeydhCDsnITtlZwg66mU7YOA642w7J207YSwIOuFuOuTnOyeheuLiOuLpC5cbiAqXG4gKiAqKuuqqeyggSoqOiBab2Qg7Iqk7YKk66eI66Gc67aA7YSwIO2UhOuhoO2KuOyXlOuTnCBVSSDsu7Ttj6zrhIztirjrpbwg7J6Q64+ZIOyDneyEse2VmOq4sCDsnITtlZxcbiAqIOugjOuNlOungSDsoJXrs7Trpbwg64u07J2AIO2KuOumrCDqtazsobDsnoXri4jri6QuIOqwgSDtlYTrk5zqsIAg7Ja065akIFVJIOy7tO2PrOuEjO2KuOuhnFxuICog7ZGc7ZiE65CY7Ja07JW8IO2VmOuKlOyngCjthY3siqTtirgsIOydtOuvuOyngCwg64Kg7KecLCBFbnVtIOyEoO2DnSDrk7Ep66W8IOuqheyLnO2VqeuLiOuLpC5cbiAqXG4gKiAqKuuzgO2ZmCDtnZDrpoQqKjpcbiAqIEVudGl0eSBzdWJzZXQg4oaSIEVudGl0eVByb3BOb2RlIOKGkiBab2Qg7Iqk7YKk66eIIOKGkiBSZW5kZXJpbmdOb2RlIChVSeyaqSkg4oaSIFJlYWN0IOy7tO2PrOuEjO2KuCDsvZTrk5wg7IOd7ISxXG4gKlxuICogKirso7zsmpQg7ZWE65OcKio6XG4gKiAtIGByZW5kZXJUeXBlYDogVUkg7Lu07Y+s64SM7Yq4IOycoO2YlSAoc3RyaW5nLXBsYWluLCBudW1iZXItZmtfaWQsIGVudW1zLCBhcnJheSDrk7EpXG4gKiAtIGB6b2RUeXBlYDog7JuQ67O4IFpvZCDsiqTtgqTrp4ggKHZhbGlkYXRpb24g7JqpKVxuICogLSBgY2hpbGRyZW5gOiDspJHssqnrkJwg6rCd7LK0IO2VhOuTnOuTpCAob2JqZWN07J28IOuVjClcbiAqIC0gYGVsZW1lbnRgOiDrsLDsl7Qg7JqU7IaMIO2DgOyehSAoYXJyYXnsnbwg65WMKVxuICpcbiAqICoq7IKs7JqpIOychOy5mCoqOlxuICogLSB6b2QtY29udmVydGVyLnRz7J2YIHpvZFR5cGVUb1JlbmRlcmluZ05vZGUoKeyXkOyEnCDsg53shLFcbiAqIC0gdmlld19mb3JtLnRlbXBsYXRlLnRzLCB2aWV3X2xpc3QudGVtcGxhdGUudHMg65Ox7JeQ7IScIFJlYWN0IOy7tO2PrOuEjO2KuCDsvZTrk5wg7IOd7ISx7JeQIOyCrOyaqVxuICovXG4vLyDshYDtlIQg7LC47KGwIO2DgOyeheydtOuvgOuhnCBab2Qg7IOd65617ZWY6rOgIOyngeygkSDsoJXsnZhcbmV4cG9ydCBjb25zdCBSZW5kZXJpbmdOb2RlID0gei5hbnkoKTtcbmV4cG9ydCB0eXBlIFJlbmRlcmluZ05vZGUgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZztcbiAgcmVuZGVyVHlwZTpcbiAgICB8IFwic3RyaW5nLXBsYWluXCJcbiAgICB8IFwic3RyaW5nLWltYWdlXCJcbiAgICB8IFwic3RyaW5nLWRhdGV0aW1lXCJcbiAgICB8IFwic3RyaW5nLWRhdGVcIlxuICAgIHwgXCJkYXRldGltZVwiXG4gICAgfCBcIm51bWJlci1wbGFpblwiXG4gICAgfCBcIm51bWJlci1pZFwiXG4gICAgfCBcIm51bWJlci1ma19pZFwiXG4gICAgfCBcImJvb2xlYW5cIlxuICAgIHwgXCJlbnVtc1wiXG4gICAgfCBcImFycmF5XCJcbiAgICB8IFwiYXJyYXktaW1hZ2VzXCJcbiAgICB8IFwib2JqZWN0XCJcbiAgICB8IFwib2JqZWN0LXBpY2tcIlxuICAgIHwgXCJyZWNvcmRcIjtcbiAgem9kVHlwZTogei5ab2RUeXBlQW55O1xuICBlbGVtZW50PzogUmVuZGVyaW5nTm9kZTtcbiAgY2hpbGRyZW4/OiBSZW5kZXJpbmdOb2RlW107XG4gIGNvbmZpZz86IHtcbiAgICBwaWNrZWQ6IHN0cmluZztcbiAgfTtcbiAgb3B0aW9uYWw/OiBib29sZWFuO1xuICBudWxsYWJsZT86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgY29uc3QgVGVtcGxhdGVPcHRpb25zID0gei5vYmplY3Qoe1xuICBlbnRpdHk6IHoub2JqZWN0KHtcbiAgICBlbnRpdHlJZDogei5zdHJpbmcoKSxcbiAgICBwYXJlbnRJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICAgIHRpdGxlOiB6LnN0cmluZygpLFxuICAgIHRhYmxlOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gICAgcHJvcHM6IHouYXJyYXkoei5vYmplY3Qoe30pKS5vcHRpb25hbCgpLFxuICAgIGluZGV4ZXM6IHouYXJyYXkoei5vYmplY3Qoe30pKS5vcHRpb25hbCgpLFxuICAgIHN1YnNldHM6IHoub2JqZWN0KHt9KS5vcHRpb25hbCgpLFxuICAgIGVudW1zOiB6Lm9iamVjdCh7fSkub3B0aW9uYWwoKSxcbiAgfSksXG4gIGluaXRfdHlwZXM6IHoub2JqZWN0KHtcbiAgICBlbnRpdHlJZDogei5zdHJpbmcoKSxcbiAgfSksXG4gIGdlbmVyYXRlZDogei5vYmplY3Qoe30pLFxuICBnZW5lcmF0ZWRfc3NvOiB6Lm9iamVjdCh7fSksXG4gIGdlbmVyYXRlZF9odHRwOiB6Lm9iamVjdCh7XG4gICAgZW50aXR5SWQ6IHouc3RyaW5nKCksXG4gIH0pLFxuICBtb2RlbDogei5vYmplY3Qoe1xuICAgIGVudGl0eUlkOiB6LnN0cmluZygpLFxuICAgIGRlZmF1bHRTZWFyY2hGaWVsZDogei5zdHJpbmcoKSxcbiAgICBkZWZhdWx0T3JkZXJCeTogei5zdHJpbmcoKSxcbiAgfSksXG4gIG1vZGVsX3Rlc3Q6IHoub2JqZWN0KHtcbiAgICBlbnRpdHlJZDogei5zdHJpbmcoKSxcbiAgfSksXG4gIGJyaWRnZTogei5vYmplY3Qoe1xuICAgIGVudGl0eUlkOiB6LnN0cmluZygpLFxuICB9KSxcbiAgc2VydmljZTogei5vYmplY3Qoe1xuICAgIG5hbWVzUmVjb3JkOiB6Lm9iamVjdCh7XG4gICAgICBmczogei5zdHJpbmcoKSxcbiAgICAgIGZzUGx1cmFsOiB6LnN0cmluZygpLFxuICAgICAgY2FtZWw6IHouc3RyaW5nKCksXG4gICAgICBjYW1lbFBsdXJhbDogei5zdHJpbmcoKSxcbiAgICAgIGNhcGl0YWw6IHouc3RyaW5nKCksXG4gICAgICBjYXBpdGFsUGx1cmFsOiB6LnN0cmluZygpLFxuICAgICAgdXBwZXI6IHouc3RyaW5nKCksXG4gICAgICBjb25zdGFudDogei5zdHJpbmcoKSxcbiAgICB9KSxcbiAgICBtb2RlbFRzUGF0aDogei5zdHJpbmcoKSxcbiAgfSksXG4gIHZpZXdfbGlzdDogei5vYmplY3Qoe1xuICAgIGVudGl0eUlkOiB6LnN0cmluZygpLFxuICAgIGV4dHJhOiB6LnVua25vd24oKSxcbiAgfSksXG4gIHZpZXdfbGlzdF9jb2x1bW5zOiB6Lm9iamVjdCh7XG4gICAgZW50aXR5SWQ6IHouc3RyaW5nKCksXG4gICAgY29sdW1uczogelxuICAgICAgLm9iamVjdCh7XG4gICAgICAgIG5hbWU6IHouc3RyaW5nKCksXG4gICAgICAgIGxhYmVsOiB6LnN0cmluZygpLFxuICAgICAgICB0Yzogei5zdHJpbmcoKSxcbiAgICAgIH0pXG4gICAgICAuYXJyYXkoKSxcbiAgICBjb2x1bW5JbXBvcnRzOiB6LnN0cmluZygpLFxuICB9KSxcbiAgdmlld19zZWFyY2hfaW5wdXQ6IHoub2JqZWN0KHtcbiAgICBlbnRpdHlJZDogei5zdHJpbmcoKSxcbiAgfSksXG4gIHZpZXdfZm9ybTogei5vYmplY3Qoe1xuICAgIGVudGl0eUlkOiB6LnN0cmluZygpLFxuICB9KSxcbiAgdmlld19pZF9hbGxfc2VsZWN0OiB6Lm9iamVjdCh7XG4gICAgZW50aXR5SWQ6IHouc3RyaW5nKCksXG4gIH0pLFxuICB2aWV3X2lkX2FzeW5jX3NlbGVjdDogei5vYmplY3Qoe1xuICAgIGVudGl0eUlkOiB6LnN0cmluZygpLFxuICAgIHRleHRGaWVsZDogei5zdHJpbmcoKSxcbiAgfSksXG4gIHZpZXdfZW51bXNfc2VsZWN0OiB6Lm9iamVjdCh7XG4gICAgZW50aXR5SWQ6IHouc3RyaW5nKCksXG4gICAgZW51bUlkOiB6LnN0cmluZygpLFxuICB9KSxcbiAgdmlld19lbnVtc19kcm9wZG93bjogei5vYmplY3Qoe1xuICAgIGVudGl0eUlkOiB6LnN0cmluZygpLFxuICAgIGVudW1JZDogei5zdHJpbmcoKSxcbiAgfSksXG4gIHZpZXdfZW51bXNfYnV0dG9uc2V0OiB6Lm9iamVjdCh7XG4gICAgZW50aXR5SWQ6IHouc3RyaW5nKCksXG4gICAgZW51bUlkOiB6LnN0cmluZygpLFxuICB9KSxcbn0pO1xuZXhwb3J0IHR5cGUgVGVtcGxhdGVPcHRpb25zID0gei5pbmZlcjx0eXBlb2YgVGVtcGxhdGVPcHRpb25zPjtcblxuZXhwb3J0IGNvbnN0IFRlbXBsYXRlS2V5ID0gei5lbnVtKFtcbiAgXCJlbnRpdHlcIixcbiAgXCJpbml0X3R5cGVzXCIsXG4gIFwiZ2VuZXJhdGVkXCIsXG4gIFwiZ2VuZXJhdGVkX3Nzb1wiLFxuICBcImdlbmVyYXRlZF9odHRwXCIsXG4gIFwibW9kZWxcIixcbiAgXCJtb2RlbF90ZXN0XCIsXG4gIFwiYnJpZGdlXCIsXG4gIFwic2VydmljZVwiLFxuICBcInZpZXdfbGlzdFwiLFxuICBcInZpZXdfbGlzdF9jb2x1bW5zXCIsXG4gIFwidmlld19zZWFyY2hfaW5wdXRcIixcbiAgXCJ2aWV3X2Zvcm1cIixcbiAgXCJ2aWV3X2lkX2FsbF9zZWxlY3RcIixcbiAgXCJ2aWV3X2lkX2FzeW5jX3NlbGVjdFwiLFxuICBcInZpZXdfZW51bXNfc2VsZWN0XCIsXG4gIFwidmlld19lbnVtc19kcm9wZG93blwiLFxuICBcInZpZXdfZW51bXNfYnV0dG9uc2V0XCIsXG5dKTtcbmV4cG9ydCB0eXBlIFRlbXBsYXRlS2V5ID0gei5pbmZlcjx0eXBlb2YgVGVtcGxhdGVLZXk+O1xuXG5leHBvcnQgY29uc3QgR2VuZXJhdGVPcHRpb25zID0gei5vYmplY3Qoe1xuICBvdmVyd3JpdGU6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG59KTtcbmV4cG9ydCB0eXBlIEdlbmVyYXRlT3B0aW9ucyA9IHouaW5mZXI8dHlwZW9mIEdlbmVyYXRlT3B0aW9ucz47XG5cbmV4cG9ydCBjb25zdCBQYXRoQW5kQ29kZSA9IHoub2JqZWN0KHtcbiAgcGF0aDogei5zdHJpbmcoKSxcbiAgY29kZTogei5zdHJpbmcoKSxcbn0pO1xuZXhwb3J0IHR5cGUgUGF0aEFuZENvZGUgPSB6LmluZmVyPHR5cGVvZiBQYXRoQW5kQ29kZT47XG5cbmV4cG9ydCB0eXBlIEZpeHR1cmVTZWFyY2hPcHRpb25zID0ge1xuICBlbnRpdHlJZDogc3RyaW5nO1xuICBmaWVsZDogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xuICBzZWFyY2hUeXBlOiBcImVxdWFsc1wiIHwgXCJsaWtlXCI7XG59O1xuXG5leHBvcnQgdHlwZSBGaXh0dXJlUmVjb3JkID0ge1xuICBmaXh0dXJlSWQ6IHN0cmluZztcbiAgZW50aXR5SWQ6IHN0cmluZztcbiAgaWQ6IG51bWJlcjtcbiAgY29sdW1uczoge1xuICAgIFtrZXk6IHN0cmluZ106IHtcbiAgICAgIHByb3A6IEVudGl0eVByb3A7XG4gICAgICB2YWx1ZTogYW55O1xuICAgIH07XG4gIH07XG4gIGZldGNoZWRSZWNvcmRzOiBzdHJpbmdbXTtcbiAgYmVsb25nc1JlY29yZHM6IHN0cmluZ1tdO1xuICB0YXJnZXQ/OiBGaXh0dXJlUmVjb3JkOyAvLyBJbXBvcnQg64yA7IOBIERCIOugiOy9lOuTnChpZOqwgCDqsJnsnYApXG4gIHVuaXF1ZT86IEZpeHR1cmVSZWNvcmQ7IC8vIEltcG9ydCDrjIDsg4EgREIg66CI7L2U65OcKHVuaXF1ZSBrZXnqsIAg6rCZ7J2AKVxuICBvdmVycmlkZT86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBGaXh0dXJlSW1wb3J0UmVzdWx0ID0ge1xuICBlbnRpdHlJZDogc3RyaW5nO1xuICBkYXRhOiB7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xuICB9O1xufTtcblxuZXhwb3J0IHR5cGUgUmVsYXRpb25Ob2RlID0ge1xuICBmaXh0dXJlSWQ6IHN0cmluZztcbiAgZW50aXR5SWQ6IHN0cmluZztcbiAgcmVsYXRlZDogU2V0PHN0cmluZz47XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFiYXNlU2NoZW1hRXh0ZW5kIHt9XG5leHBvcnQgdHlwZSBNYW55VG9NYW55QmFzZVNjaGVtYTxcbiAgRnJvbUlkS2V5IGV4dGVuZHMgc3RyaW5nLFxuICBUb0lkS2V5IGV4dGVuZHMgc3RyaW5nLFxuPiA9IHtcbiAgaWQ6IG51bWJlcjtcbn0gJiB7XG4gIFtLIGluIGAke0Zyb21JZEtleX1faWRgXTogbnVtYmVyO1xufSAmIHtcbiAgW0sgaW4gYCR7VG9JZEtleX1faWRgXTogbnVtYmVyO1xufTtcblxuZXhwb3J0IHR5cGUgU29uYW11RmFzdGlmeUNvbmZpZyA9IHtcbiAgY29udGV4dFByb3ZpZGVyOiAoXG4gICAgZGVmYXVsdENvbnRleHQ6IFBpY2s8XG4gICAgICBDb250ZXh0LFxuICAgICAgXCJyZXF1ZXN0XCIgfCBcInJlcGx5XCIgfCBcImhlYWRlcnNcIiB8IFwiY3JlYXRlU1NFXCIgfCBcIm5haXRlU3RvcmVcIlxuICAgID4gJlxuICAgICAgQXV0aENvbnRleHQsXG4gICAgcmVxdWVzdDogRmFzdGlmeVJlcXVlc3QsXG4gICAgcmVwbHk6IEZhc3RpZnlSZXBseVxuICApID0+IENvbnRleHQgfCBQcm9taXNlPENvbnRleHQ+O1xuICBndWFyZEhhbmRsZXI6IChcbiAgICBndWFyZDogR3VhcmRLZXksXG4gICAgcmVxdWVzdDogRmFzdGlmeVJlcXVlc3QsXG4gICAgYXBpOiB7XG4gICAgICB0eXBlUGFyYW1ldGVyczogQXBpUGFyYW1UeXBlLlR5cGVQYXJhbVtdO1xuICAgICAgcGFyYW1ldGVyczogQXBpUGFyYW1bXTtcbiAgICAgIHJldHVyblR5cGU6IEFwaVBhcmFtVHlwZTtcbiAgICAgIG1vZGVsTmFtZTogc3RyaW5nO1xuICAgICAgbWV0aG9kTmFtZTogc3RyaW5nO1xuICAgICAgcGF0aDogc3RyaW5nO1xuICAgICAgb3B0aW9uczogQXBpRGVjb3JhdG9yT3B0aW9ucztcbiAgICB9XG4gICkgPT4gdm9pZDtcbiAgY2FjaGU/OiB7XG4gICAgZ2V0OiAoa2V5OiBzdHJpbmcpID0+IFByb21pc2U8dW5rbm93biB8IG51bGw+O1xuICAgIHB1dDogKGtleTogc3RyaW5nLCB2YWx1ZTogdW5rbm93biwgdHRsPzogbnVtYmVyKSA9PiBQcm9taXNlPHZvaWQ+O1xuICAgIHJlc29sdmVLZXk6IChcbiAgICAgIHBhdGg6IHN0cmluZyxcbiAgICAgIHJlcUJvZHk6IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbiAgICAgIH1cbiAgICApID0+XG4gICAgICB8IHtcbiAgICAgICAgICBjYWNoZTogZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIHwge1xuICAgICAgICAgIGNhY2hlOiB0cnVlO1xuICAgICAgICAgIGtleTogc3RyaW5nO1xuICAgICAgICAgIHR0bD86IG51bWJlcjtcbiAgICAgICAgfTtcbiAgfTtcbn07XG4iXSwibmFtZXMiOlsieiIsIlNRTERhdGVUaW1lU3RyaW5nIiwic3RyaW5nIiwicmVnZXgiLCJtZXNzYWdlIiwibWluIiwibWF4IiwiZGVzY3JpYmUiLCJ6QXJyYXlhYmxlIiwic2hhcGUiLCJ1bmlvbiIsImFycmF5IiwiaXNJbnRlZ2VyUHJvcCIsInAiLCJ0eXBlIiwiaXNCaWdJbnRlZ2VyUHJvcCIsImlzVGV4dFByb3AiLCJpc1N0cmluZ1Byb3AiLCJpc0VudW1Qcm9wIiwiaXNGbG9hdFByb3AiLCJpc0RvdWJsZVByb3AiLCJpc0RlY2ltYWxQcm9wIiwiaXNCb29sZWFuUHJvcCIsImlzRGF0ZVByb3AiLCJpc0RhdGVUaW1lUHJvcCIsImlzVGltZVByb3AiLCJpc1RpbWVzdGFtcFByb3AiLCJpc0pzb25Qcm9wIiwiaXNVdWlkUHJvcCIsImlzVmlydHVhbFByb3AiLCJpc1JlbGF0aW9uUHJvcCIsImlzT25lVG9PbmVSZWxhdGlvblByb3AiLCJyZWxhdGlvblR5cGUiLCJpc0JlbG9uZ3NUb09uZVJlbGF0aW9uUHJvcCIsImlzSGFzTWFueVJlbGF0aW9uUHJvcCIsImlzTWFueVRvTWFueVJlbGF0aW9uUHJvcCIsImlzQ3VzdG9tSm9pbkNsYXVzZSIsImN1c3RvbSIsIlNvbmFtdVF1ZXJ5TW9kZSIsImVudW0iLCJpc0tuZXhFcnJvciIsImUiLCJjb2RlIiwic3FsTWVzc2FnZSIsInNxbFN0YXRlIiwiQXBpUGFyYW1UeXBlIiwiaXNPYmplY3QiLCJ2IiwidCIsImlzVW5pb24iLCJpc0ludGVyc2VjdGlvbiIsImlzU3RyaW5nTGl0ZXJhbCIsImlzTnVtZXJpY0xpdGVyYWwiLCJpc0FycmF5IiwiaXNSZWYiLCJpc0luZGV4ZWRBY2Nlc3MiLCJpc1R1cGxlVHlwZSIsImlzUGljayIsImlkIiwiaXNPbWl0IiwiaXNQYXJ0aWFsIiwiaXNQcm9taXNlIiwiaXNDb250ZXh0IiwiaXNSZWZLbmV4IiwiaXNUeXBlUGFyYW0iLCJSZW5kZXJpbmdOb2RlIiwiYW55IiwiVGVtcGxhdGVPcHRpb25zIiwib2JqZWN0IiwiZW50aXR5IiwiZW50aXR5SWQiLCJwYXJlbnRJZCIsIm9wdGlvbmFsIiwidGl0bGUiLCJ0YWJsZSIsInByb3BzIiwiaW5kZXhlcyIsInN1YnNldHMiLCJlbnVtcyIsImluaXRfdHlwZXMiLCJnZW5lcmF0ZWQiLCJnZW5lcmF0ZWRfc3NvIiwiZ2VuZXJhdGVkX2h0dHAiLCJtb2RlbCIsImRlZmF1bHRTZWFyY2hGaWVsZCIsImRlZmF1bHRPcmRlckJ5IiwibW9kZWxfdGVzdCIsImJyaWRnZSIsInNlcnZpY2UiLCJuYW1lc1JlY29yZCIsImZzIiwiZnNQbHVyYWwiLCJjYW1lbCIsImNhbWVsUGx1cmFsIiwiY2FwaXRhbCIsImNhcGl0YWxQbHVyYWwiLCJ1cHBlciIsImNvbnN0YW50IiwibW9kZWxUc1BhdGgiLCJ2aWV3X2xpc3QiLCJleHRyYSIsInVua25vd24iLCJ2aWV3X2xpc3RfY29sdW1ucyIsImNvbHVtbnMiLCJuYW1lIiwibGFiZWwiLCJ0YyIsImNvbHVtbkltcG9ydHMiLCJ2aWV3X3NlYXJjaF9pbnB1dCIsInZpZXdfZm9ybSIsInZpZXdfaWRfYWxsX3NlbGVjdCIsInZpZXdfaWRfYXN5bmNfc2VsZWN0IiwidGV4dEZpZWxkIiwidmlld19lbnVtc19zZWxlY3QiLCJlbnVtSWQiLCJ2aWV3X2VudW1zX2Ryb3Bkb3duIiwidmlld19lbnVtc19idXR0b25zZXQiLCJUZW1wbGF0ZUtleSIsIkdlbmVyYXRlT3B0aW9ucyIsIm92ZXJ3cml0ZSIsImJvb2xlYW4iLCJQYXRoQW5kQ29kZSIsInBhdGgiXSwibWFwcGluZ3MiOiJBQUVBLFNBQVNBLENBQUMsUUFBUSxNQUFNO0FBV3hCOztBQUVBLEdBQ0EsT0FBTyxNQUFNQyxvQkFBb0JELEVBQzlCRSxNQUFNLEdBQ05DLEtBQUssQ0FBQywrREFBK0Q7SUFDcEVDLFNBQVM7QUFDWCxHQUNDQyxHQUFHLENBQUMsSUFDSkMsR0FBRyxDQUFDLElBQ0pDLFFBQVEsQ0FBQyxxQkFBcUI7QUFHakM7O0FBRUEsR0FDQSxPQUFPLFNBQVNDLFdBQ2RDLEtBQVE7SUFFUixPQUFPVCxFQUFFVSxLQUFLLENBQUM7UUFBQ0Q7UUFBT0EsTUFBTUUsS0FBSztLQUFHO0FBQ3ZDO0FBMk9BOztBQUVBLEdBQ0EsT0FBTyxTQUFTQyxjQUFjQyxDQUFNO0lBQ2xDLE9BQU9BLEdBQUdDLFNBQVM7QUFDckI7QUFDQSxPQUFPLFNBQVNDLGlCQUFpQkYsQ0FBTTtJQUNyQyxPQUFPQSxHQUFHQyxT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
@@ -1,2 +1,3 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});
2
- //# sourceMappingURL=knex.d.js.map
1
+ export { };
2
+
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBpbmdzL2tuZXguZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLbmV4IH0gZnJvbSBcImtuZXhcIjtcblxuZGVjbGFyZSBtb2R1bGUgXCJrbmV4XCIge1xuICBuYW1lc3BhY2UgS25leCB7XG4gICAgaW50ZXJmYWNlIFF1ZXJ5QnVpbGRlciB7XG4gICAgICBvbkR1cGxpY2F0ZVVwZGF0ZTxUUmVjb3JkIGV4dGVuZHMge30sIFRSZXN1bHQ+KFxuICAgICAgICAuLi5jb2x1bW5zOiBzdHJpbmdbXVxuICAgICAgKTogS25leC5RdWVyeUJ1aWxkZXI8VFJlY29yZCwgVFJlc3VsdD47XG5cbiAgICAgIGNvbHVtbkluZm88VFJlY29yZD4oXG4gICAgICAgIGNvbHVtbj86IGtleW9mIFRSZWNvcmRcbiAgICAgICk6IFByb21pc2U8S25leC5Db2x1bW5JbmZvIHwgQ29sdW1uSW5mb3NPYmo+O1xuXG4gICAgICB3aGVyZUJldHdlZW48VFJlY29yZCwgVFJlc3VsdD4oXG4gICAgICAgIGNvbHVtbk5hbWU6IHN0cmluZyxcbiAgICAgICAgcmFuZ2U6IHJlYWRvbmx5IFthbnksIGFueV1cbiAgICAgICk6IEtuZXguUXVlcnlCdWlsZGVyO1xuICAgIH1cblxuICAgIHR5cGUgQ29sdW1uSW5mb3NPYmogPSB7XG4gICAgICBbY29sdW1uTmFtZTogc3RyaW5nXTogS25leC5Db2x1bW5JbmZvO1xuICAgIH07XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxXQUE0QiJ9
@@ -22,4 +22,11 @@ export declare function mapAsync<T, U>(arr: T[], mapper: (item: T, index: number
22
22
  * const sum = await reduceAsync([1, 2, 3], async (acc, x) => acc + x, 0);
23
23
  */
24
24
  export declare function reduceAsync<T, U>(arr: T[], reducer: (accumulator: U, currentValue: T, index: number, array: T[]) => Promise<U>, initialValue: U): Promise<U>;
25
+ /**
26
+ * 비동기 glob 함수입니다.
27
+ * AsyncIterableIterator로 날아오는 glob의 반환을 받아 끝까지 돌아서 배열로 반환합니다.
28
+ * @param pathPattern
29
+ * @returns
30
+ */
31
+ export declare function globAsync(pathPattern: string): Promise<string[]>;
25
32
  //# sourceMappingURL=async-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"async-utils.d.ts","sourceRoot":"","sources":["../../src/utils/async-utils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,CAAC,EACjC,GAAG,EAAE,CAAC,EAAE,EACR,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,GAClE,OAAO,CAAC,CAAC,EAAE,CAAC,CAOd;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAChC,GAAG,EAAE,CAAC,EAAE,EACR,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,GAClE,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAAE,CAAC,EACjC,GAAG,EAAE,CAAC,EAAE,EACR,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,GACzD,OAAO,CAAC,CAAC,EAAE,CAAC,CAId;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,CAAC,EAAE,CAAC,EACpC,GAAG,EAAE,CAAC,EAAE,EACR,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,EACnF,YAAY,EAAE,CAAC,GACd,OAAO,CAAC,CAAC,CAAC,CAMZ"}
1
+ {"version":3,"file":"async-utils.d.ts","sourceRoot":"","sources":["../../src/utils/async-utils.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,CAAC,EACjC,GAAG,EAAE,CAAC,EAAE,EACR,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,GAClE,OAAO,CAAC,CAAC,EAAE,CAAC,CAOd;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAChC,GAAG,EAAE,CAAC,EAAE,EACR,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,GAClE,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAAE,CAAC,EACjC,GAAG,EAAE,CAAC,EAAE,EACR,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,GACzD,OAAO,CAAC,CAAC,EAAE,CAAC,CAId;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,CAAC,EAAE,CAAC,EACpC,GAAG,EAAE,CAAC,EAAE,EACR,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,EACnF,YAAY,EAAE,CAAC,GACd,OAAO,CAAC,CAAC,CAAC,CAMZ;AAED;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAMtE"}