@lovrabet/rabetbase-cli 2.3.10-beta.2 → 2.3.11-beta.1

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 (260) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/add.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/remote-directory.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/get.js +1 -1
  53. package/lib/commands/config/index.js +1 -1
  54. package/lib/commands/config/list.js +1 -1
  55. package/lib/commands/config/set.js +1 -1
  56. package/lib/commands/config/shared.js +1 -1
  57. package/lib/commands/data/filter.js +1 -1
  58. package/lib/commands/data/getOne.js +1 -1
  59. package/lib/commands/data/index.js +1 -1
  60. package/lib/commands/data/shared.js +1 -1
  61. package/lib/commands/dataset/business-group-update.js +1 -1
  62. package/lib/commands/dataset/capability.js +1 -1
  63. package/lib/commands/dataset/delete.js +1 -1
  64. package/lib/commands/dataset/detail.js +1 -1
  65. package/lib/commands/dataset/extend-update.js +1 -1
  66. package/lib/commands/dataset/field-update.js +1 -1
  67. package/lib/commands/dataset/generate.js +1 -1
  68. package/lib/commands/dataset/index.js +1 -1
  69. package/lib/commands/dataset/list.js +1 -1
  70. package/lib/commands/dataset/operations.js +1 -1
  71. package/lib/commands/dataset/relation-audit.js +1 -1
  72. package/lib/commands/dataset/relation-create.js +1 -1
  73. package/lib/commands/dataset/relation-delete.js +1 -1
  74. package/lib/commands/dataset/relation-shared.js +1 -1
  75. package/lib/commands/dataset/relation-update.js +1 -1
  76. package/lib/commands/dataset/relations.js +1 -1
  77. package/lib/commands/dataset/rename.js +1 -1
  78. package/lib/commands/dataset/restore.js +1 -1
  79. package/lib/commands/db/analysis-batching.js +1 -1
  80. package/lib/commands/db/analyze-batch-plan.js +1 -1
  81. package/lib/commands/db/analyze-cancel.js +1 -1
  82. package/lib/commands/db/analyze-start.js +1 -1
  83. package/lib/commands/db/analyze-status.js +1 -1
  84. package/lib/commands/db/create.js +1 -1
  85. package/lib/commands/db/delete.js +1 -1
  86. package/lib/commands/db/detail.js +1 -1
  87. package/lib/commands/db/diff.js +1 -1
  88. package/lib/commands/db/index.js +1 -1
  89. package/lib/commands/db/list.js +1 -1
  90. package/lib/commands/db/shared.js +1 -1
  91. package/lib/commands/db/tables.js +1 -1
  92. package/lib/commands/db/test.js +1 -1
  93. package/lib/commands/db/update.js +1 -1
  94. package/lib/commands/doctor.js +1 -1
  95. package/lib/commands/file/index.js +1 -1
  96. package/lib/commands/init/index.js +1 -1
  97. package/lib/commands/issue/index.js +1 -1
  98. package/lib/commands/issue/nudge.js +1 -1
  99. package/lib/commands/issue/report.js +1 -1
  100. package/lib/commands/issue/shared.js +1 -1
  101. package/lib/commands/logs/index.js +1 -1
  102. package/lib/commands/menu/delete.js +1 -1
  103. package/lib/commands/menu/external-link-create.js +1 -1
  104. package/lib/commands/menu/group-create.js +1 -1
  105. package/lib/commands/menu/group-update.js +1 -1
  106. package/lib/commands/menu/index.js +1 -1
  107. package/lib/commands/menu/list.js +1 -1
  108. package/lib/commands/menu/move.js +1 -0
  109. package/lib/commands/menu/regroup-start.js +1 -1
  110. package/lib/commands/menu/shared/compare-table.js +1 -1
  111. package/lib/commands/menu/shared/delete-plan.js +1 -1
  112. package/lib/commands/menu/shared/facts.js +1 -1
  113. package/lib/commands/menu/shared/index.js +1 -1
  114. package/lib/commands/menu/shared/inquirer.js +1 -1
  115. package/lib/commands/menu/shared/local-pages.js +1 -1
  116. package/lib/commands/menu/shared/logic.js +1 -1
  117. package/lib/commands/menu/shared/mutations.js +1 -1
  118. package/lib/commands/menu/shared/service.js +1 -1
  119. package/lib/commands/menu/shared/sync-core.js +1 -1
  120. package/lib/commands/menu/shared/update-core.js +1 -1
  121. package/lib/commands/menu/shared/valid-url.js +1 -1
  122. package/lib/commands/menu/sync.js +1 -1
  123. package/lib/commands/menu/update.js +1 -1
  124. package/lib/commands/notification/config-list.js +1 -1
  125. package/lib/commands/notification/index.js +1 -1
  126. package/lib/commands/page/generate-start.js +1 -1
  127. package/lib/commands/page/generate-status.js +1 -1
  128. package/lib/commands/page/index.js +1 -1
  129. package/lib/commands/page/pull.js +1 -1
  130. package/lib/commands/page/push.js +1 -1
  131. package/lib/commands/page/relation-audit.js +1 -1
  132. package/lib/commands/page/shared.js +1 -1
  133. package/lib/commands/page/standard-page-status.js +1 -1
  134. package/lib/commands/page/sync.js +1 -1
  135. package/lib/commands/permit/index.js +1 -1
  136. package/lib/commands/permit/page-get.js +1 -1
  137. package/lib/commands/permit/page-set.js +1 -1
  138. package/lib/commands/permit/role-apis-set.js +1 -1
  139. package/lib/commands/permit/role-menus-set.js +1 -1
  140. package/lib/commands/permit/role-menus.js +1 -1
  141. package/lib/commands/permit/shared.js +1 -1
  142. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  143. package/lib/commands/project/create/format-elapsed.js +1 -1
  144. package/lib/commands/project/create/main.js +1 -1
  145. package/lib/commands/project/create/non-interactive.js +1 -1
  146. package/lib/commands/project/create/project-template-path.js +1 -1
  147. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  148. package/lib/commands/project/create/use-format-code.js +1 -1
  149. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  150. package/lib/commands/project/index.js +1 -1
  151. package/lib/commands/project/init.js +1 -1
  152. package/lib/commands/project/upgrade.js +1 -1
  153. package/lib/commands/registry.js +1 -1
  154. package/lib/commands/role/create.js +1 -1
  155. package/lib/commands/role/delete.js +1 -1
  156. package/lib/commands/role/detail.js +1 -1
  157. package/lib/commands/role/index.js +1 -1
  158. package/lib/commands/role/list.js +1 -1
  159. package/lib/commands/role/shared.js +1 -1
  160. package/lib/commands/role/update.js +1 -1
  161. package/lib/commands/role/user-add.js +1 -1
  162. package/lib/commands/role/user-remove.js +1 -1
  163. package/lib/commands/role/user-resolve.js +1 -1
  164. package/lib/commands/run/index.js +1 -1
  165. package/lib/commands/schema.js +1 -1
  166. package/lib/commands/sql/create.js +1 -1
  167. package/lib/commands/sql/delete.js +1 -1
  168. package/lib/commands/sql/detail.js +1 -1
  169. package/lib/commands/sql/exec.js +1 -1
  170. package/lib/commands/sql/index.js +1 -1
  171. package/lib/commands/sql/list.js +1 -1
  172. package/lib/commands/sql/pull.js +1 -1
  173. package/lib/commands/sql/push.js +1 -1
  174. package/lib/commands/sql/save.js +1 -1
  175. package/lib/commands/sql/shared.js +1 -1
  176. package/lib/commands/sql/status.js +1 -1
  177. package/lib/commands/sql/validate.js +1 -1
  178. package/lib/commands/task/index.js +1 -1
  179. package/lib/commands/task/status.js +1 -1
  180. package/lib/commands/workspace/add.js +1 -1
  181. package/lib/commands/workspace/index.js +1 -1
  182. package/lib/commands/workspace/remove.js +1 -1
  183. package/lib/config/schema.js +1 -1
  184. package/lib/constant/cdn.js +1 -1
  185. package/lib/constant/cli.js +1 -1
  186. package/lib/constant/defaults.js +1 -1
  187. package/lib/constant/domain.js +1 -1
  188. package/lib/constant/env.js +1 -1
  189. package/lib/constant/output.js +1 -1
  190. package/lib/constant/paths.js +1 -1
  191. package/lib/constant/risk.js +1 -1
  192. package/lib/context/app-resolver.js +1 -1
  193. package/lib/context/auth-resolver.js +1 -1
  194. package/lib/context/config-loader.js +1 -1
  195. package/lib/context.js +1 -1
  196. package/lib/core/alias-resolver.js +1 -1
  197. package/lib/core/api-client.js +1 -1
  198. package/lib/core/bff/config.js +1 -1
  199. package/lib/core/bff/file-system.js +1 -1
  200. package/lib/core/bff/hash.js +1 -1
  201. package/lib/core/bff/lock.js +1 -1
  202. package/lib/core/bff/utils.js +1 -1
  203. package/lib/core/db-resolver.js +1 -1
  204. package/lib/core/page/file-system.js +1 -1
  205. package/lib/core/page/hash.js +1 -1
  206. package/lib/core/page/lock.js +1 -1
  207. package/lib/core/sql-index-auditor.js +1 -1
  208. package/lib/core/sql-sync/config.js +1 -1
  209. package/lib/core/sql-sync/file-system.js +1 -1
  210. package/lib/core/sql-sync/hash.js +1 -1
  211. package/lib/core/sql-sync/lock.js +1 -1
  212. package/lib/core/sql-sync/utils.js +1 -1
  213. package/lib/core/sql-validator.js +1 -1
  214. package/lib/errors.js +1 -1
  215. package/lib/framework/build-all-flags.js +1 -1
  216. package/lib/framework/error-output.js +1 -1
  217. package/lib/framework/explicit-yes.js +1 -1
  218. package/lib/framework/flags.js +1 -1
  219. package/lib/framework/help.js +1 -1
  220. package/lib/framework/index.js +1 -1
  221. package/lib/framework/output.js +1 -1
  222. package/lib/framework/response.js +1 -1
  223. package/lib/framework/runner-alias.js +1 -1
  224. package/lib/framework/runner.js +1 -1
  225. package/lib/framework/schema-export.js +1 -1
  226. package/lib/framework/types.js +1 -1
  227. package/lib/generated/build-info.js +1 -1
  228. package/lib/help.js +1 -1
  229. package/lib/skills/main.js +1 -1
  230. package/lib/skills/npx-skills-add.js +1 -1
  231. package/lib/telemetry/cli-command-trace.js +1 -1
  232. package/lib/telemetry/cli-help-trace.js +1 -1
  233. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  234. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  235. package/lib/telemetry/send-cli-trace-log.js +1 -1
  236. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  237. package/lib/utils/ai_config.js +1 -1
  238. package/lib/utils/apply-jq-filter.js +1 -1
  239. package/lib/utils/cdn-config.js +1 -1
  240. package/lib/utils/check-sdk-version.js +1 -1
  241. package/lib/utils/cli-version-check.js +1 -1
  242. package/lib/utils/cli-version-policy.js +1 -1
  243. package/lib/utils/config.js +1 -1
  244. package/lib/utils/copy-directory.js +1 -1
  245. package/lib/utils/entity-with-id.js +1 -1
  246. package/lib/utils/file-utils.js +1 -1
  247. package/lib/utils/guides-cdn.js +1 -1
  248. package/lib/utils/http-client.js +1 -1
  249. package/lib/utils/is-non-interactive.js +1 -1
  250. package/lib/utils/logger.js +1 -1
  251. package/lib/utils/params.js +1 -1
  252. package/lib/utils/platform.js +1 -1
  253. package/lib/utils/rules-cdn.js +1 -1
  254. package/lib/utils/sleep.js +1 -1
  255. package/lib/utils/template-replacer.js +1 -1
  256. package/lib/utils/update-notice.js +1 -1
  257. package/lib/utils/version.js +1 -1
  258. package/lib/utils/with-active-cookie.js +1 -1
  259. package/lib/utils/write-cli-side-channel.js +1 -1
  260. package/package.json +1 -1
@@ -1 +1 @@
1
- const a136_0x288b1d=a136_0x2967;(function(_0x157631,_0x599b6f){const _0x5df1bb=a136_0x2967,_0x578d6a=_0x157631();while(!![]){try{const _0x23763f=parseInt(_0x5df1bb(0x172))/0x1+-parseInt(_0x5df1bb(0x180))/0x2+-parseInt(_0x5df1bb(0x16a))/0x3*(parseInt(_0x5df1bb(0x17a))/0x4)+parseInt(_0x5df1bb(0x17d))/0x5+-parseInt(_0x5df1bb(0x178))/0x6*(-parseInt(_0x5df1bb(0x184))/0x7)+parseInt(_0x5df1bb(0x17c))/0x8*(-parseInt(_0x5df1bb(0x182))/0x9)+parseInt(_0x5df1bb(0x189))/0xa;if(_0x23763f===_0x599b6f)break;else _0x578d6a['push'](_0x578d6a['shift']());}catch(_0x3dbb6d){_0x578d6a['push'](_0x578d6a['shift']());}}}(a136_0x3ae8,0x72493));import{getPagePermit,savePagePermit}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a136_0x3ae8(){const _0x4655b4=['flag','1165766cJWLFT','page-set','441nrALtD','rolePermit','7UuFWWk','map','high-risk-write','menuId','appCode','6418330lzwExl','Pass\x20at\x20least\x20one\x20role,\x20or\x20omit\x20the\x20flag.\x20Clearing\x20permissions\x20is\x20not\x20supported\x20by\x20this\x20command.','\x22\x20permission\x20slot\x20(','validation','33378IuTjnh','selector','Nothing\x20to\x20set.','length','spec','allowSelf','Pass\x20at\x20least\x20one\x20of:\x20','key','816929sZsUUJ','join','push','Set\x20page\x20permissions\x20for\x20a\x20menu\x20(menu/create/update/delete/detail/export/row\x20roles);\x20requires\x20--yes','This\x20page\x20has\x20no\x20\x22','label','1028064njMRQk','menu-id','144nEulMH','num','135160kBKudv','3246415yLaQjJ','Only\x20slots\x20present\x20in\x20`permit\x20page-get`\x20can\x20be\x20set.'];a136_0x3ae8=function(){return _0x4655b4;};return a136_0x3ae8();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{MENU_ID_FLAG,PAGE_SET_ROLE_FLAGS,PAGE_SLOT_SPECS,projectPageSlot,resolvePermitRoles,splitList}from'../../commands/permit/shared.js';const SAVE_PATH='/smartapi/permit/page/save';function collectRequestedSlots(_0x1c0099){const _0x176c00=a136_0x2967,_0x261f03=[];for(const _0x3b2e5b of PAGE_SLOT_SPECS){const _0x485e12=_0x1c0099[_0x176c00(0x17f)](_0x3b2e5b['flag']);if(_0x485e12===undefined||_0x485e12===null)continue;const _0x71e66=splitList(String(_0x485e12));if(_0x71e66[_0x176c00(0x16d)]===0x0)throw CliErrors[_0x176c00(0x169)]('--'+_0x3b2e5b[_0x176c00(0x17f)]+'\x20cannot\x20be\x20empty.',_0x176c00(0x18a));_0x261f03[_0x176c00(0x174)]({'spec':_0x3b2e5b,'refs':_0x71e66});}return _0x261f03;}function a136_0x2967(_0x5c6a8f,_0x5f2c1e){_0x5c6a8f=_0x5c6a8f-0x169;const _0x3ae8d1=a136_0x3ae8();let _0x296789=_0x3ae8d1[_0x5c6a8f];return _0x296789;}async function buildPlan(_0x55d4eb,_0x3aebdf){const _0x599bb5=a136_0x2967,_0x41e884=_0x55d4eb[_0x599bb5(0x17b)](_0x599bb5(0x179)),_0x1d6d0f=collectRequestedSlots(_0x55d4eb);if(_0x1d6d0f[_0x599bb5(0x16d)]===0x0)throw CliErrors[_0x599bb5(0x169)](_0x599bb5(0x16c),'Pass\x20at\x20least\x20one\x20of:\x20'+PAGE_SLOT_SPECS[_0x599bb5(0x185)](_0x3dcfe3=>'--'+_0x3dcfe3[_0x599bb5(0x17f)])[_0x599bb5(0x173)](',\x20')+'.');const _0x58b4bd=await getPagePermit(_0x41e884),_0x3ae036={},_0x59037={},_0x1061c5=[];for(const {spec:_0x27c7c4,refs:_0x3170d8}of _0x1d6d0f){const _0x145266=_0x58b4bd[_0x27c7c4[_0x599bb5(0x171)]];if(!_0x145266)throw CliErrors['validation'](_0x599bb5(0x176)+_0x27c7c4['label']+_0x599bb5(0x18b)+_0x27c7c4[_0x599bb5(0x171)]+').',_0x599bb5(0x17e));_0x3ae036[_0x27c7c4['key']]=projectPageSlot(_0x145266);const _0x4212f7=await resolvePermitRoles(_0x55d4eb[_0x599bb5(0x188)],_0x3170d8,{'allowSelf':_0x27c7c4[_0x599bb5(0x16f)],'label':_0x27c7c4[_0x599bb5(0x177)]});_0x145266[_0x599bb5(0x183)]=_0x4212f7,_0x59037[_0x27c7c4[_0x599bb5(0x171)]]=projectPageSlot(_0x145266);}const _0x7d8701={'operation':_0x599bb5(0x181),'selector':{'appCode':_0x55d4eb[_0x599bb5(0x188)],'menuId':_0x41e884,'slots':_0x1d6d0f[_0x599bb5(0x185)](_0x2adf4c=>_0x2adf4c[_0x599bb5(0x16e)]['key'])},'before':_0x3ae036,'after':_0x59037,'dryRun':_0x3aebdf,'backend':{'method':'POST','path':SAVE_PATH},'warnings':_0x1061c5};return{'page':_0x58b4bd,'mutation':_0x7d8701};}export const permitPageSet={'service':'permit','command':a136_0x288b1d(0x181),'description':a136_0x288b1d(0x175),'risk':a136_0x288b1d(0x186),'flags':[MENU_ID_FLAG,...PAGE_SET_ROLE_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4d8b2d){const _0x599286=a136_0x288b1d,_0x18db96=collectRequestedSlots(_0x4d8b2d);if(_0x18db96['length']===0x0)throw CliErrors[_0x599286(0x169)](_0x599286(0x16c),_0x599286(0x170)+PAGE_SLOT_SPECS[_0x599286(0x185)](_0x4a836d=>'--'+_0x4a836d[_0x599286(0x17f)])[_0x599286(0x173)](',\x20')+'.');},async 'dryRun'(_0x3cc0da){const {mutation:_0x4c7154}=await buildPlan(_0x3cc0da,!![]);return asDryRunResult(_0x4c7154,{'method':'POST','url':SAVE_PATH});},async 'execute'(_0x3af5ae){const _0x4d3988=a136_0x288b1d,{page:_0x17b33b,mutation:_0x5cc096}=await buildPlan(_0x3af5ae,![]);return await savePagePermit(_0x17b33b),{'ok':!![],'data':_0x5cc096,'message':'Updated\x20page\x20permit\x20for\x20menu\x20'+_0x5cc096[_0x4d3988(0x16b)][_0x4d3988(0x187)]};}};
1
+ const a137_0x42ea2b=a137_0x1f0a;(function(_0x3316b6,_0x4a360b){const _0x149b13=a137_0x1f0a,_0x53557c=_0x3316b6();while(!![]){try{const _0x8c295a=parseInt(_0x149b13(0x177))/0x1+-parseInt(_0x149b13(0x183))/0x2*(parseInt(_0x149b13(0x16a))/0x3)+parseInt(_0x149b13(0x16c))/0x4*(parseInt(_0x149b13(0x165))/0x5)+parseInt(_0x149b13(0x179))/0x6*(-parseInt(_0x149b13(0x178))/0x7)+parseInt(_0x149b13(0x175))/0x8*(parseInt(_0x149b13(0x17e))/0x9)+parseInt(_0x149b13(0x187))/0xa*(-parseInt(_0x149b13(0x173))/0xb)+parseInt(_0x149b13(0x169))/0xc*(parseInt(_0x149b13(0x16e))/0xd);if(_0x8c295a===_0x4a360b)break;else _0x53557c['push'](_0x53557c['shift']());}catch(_0x24ea17){_0x53557c['push'](_0x53557c['shift']());}}}(a137_0x17b9,0x475ea));import{getPagePermit,savePagePermit}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a137_0x17b9(){const _0x25ac9a=['45TlNfpq','appCode','menu-id','selector','1770168kBecSU','326355yWOvRm','label','41056vORKQB','menuId','39kpTKIw','permit','allowSelf','validation','Set\x20page\x20permissions\x20for\x20a\x20menu\x20(menu/create/update/delete/detail/export/row\x20roles);\x20requires\x20--yes','1058574UgEmrW','Pass\x20at\x20least\x20one\x20of:\x20','8mwPAbb','Pass\x20at\x20least\x20one\x20role,\x20or\x20omit\x20the\x20flag.\x20Clearing\x20permissions\x20is\x20not\x20supported\x20by\x20this\x20command.','536490yMGrNe','1043JNzcEE','22350ULkDED','\x20cannot\x20be\x20empty.','Nothing\x20to\x20set.','POST','join','1673865PGsvTF','flag','This\x20page\x20has\x20no\x20\x22','high-risk-write','Only\x20slots\x20present\x20in\x20`permit\x20page-get`\x20can\x20be\x20set.','4XeBmii','push','length','page-set','20DTrKXf','num','\x22\x20permission\x20slot\x20(','key','rolePermit','Updated\x20page\x20permit\x20for\x20menu\x20'];a137_0x17b9=function(){return _0x25ac9a;};return a137_0x17b9();}import{MENU_ID_FLAG,PAGE_SET_ROLE_FLAGS,PAGE_SLOT_SPECS,projectPageSlot,resolvePermitRoles,splitList}from'../../commands/permit/shared.js';const SAVE_PATH='/smartapi/permit/page/save';function collectRequestedSlots(_0x576dc7){const _0x4d6e80=a137_0x1f0a,_0x25e848=[];for(const _0xf3f868 of PAGE_SLOT_SPECS){const _0x326c8b=_0x576dc7[_0x4d6e80(0x17f)](_0xf3f868[_0x4d6e80(0x17f)]);if(_0x326c8b===undefined||_0x326c8b===null)continue;const _0x5eaf41=splitList(String(_0x326c8b));if(_0x5eaf41[_0x4d6e80(0x185)]===0x0)throw CliErrors[_0x4d6e80(0x171)]('--'+_0xf3f868['flag']+_0x4d6e80(0x17a),_0x4d6e80(0x176));_0x25e848[_0x4d6e80(0x184)]({'spec':_0xf3f868,'refs':_0x5eaf41});}return _0x25e848;}function a137_0x1f0a(_0x252b8b,_0x29d24c){_0x252b8b=_0x252b8b-0x165;const _0x17b9a1=a137_0x17b9();let _0x1f0a13=_0x17b9a1[_0x252b8b];return _0x1f0a13;}async function buildPlan(_0x4ebf10,_0x19aece){const _0x445a44=a137_0x1f0a,_0x421026=_0x4ebf10[_0x445a44(0x188)](_0x445a44(0x167)),_0x2381b6=collectRequestedSlots(_0x4ebf10);if(_0x2381b6[_0x445a44(0x185)]===0x0)throw CliErrors[_0x445a44(0x171)]('Nothing\x20to\x20set.',_0x445a44(0x174)+PAGE_SLOT_SPECS['map'](_0x34de41=>'--'+_0x34de41['flag'])['join'](',\x20')+'.');const _0x416c57=await getPagePermit(_0x421026),_0x555a2c={},_0x15d681={},_0x30dc17=[];for(const {spec:_0x19b8d3,refs:_0x44e4e9}of _0x2381b6){const _0x5e6b72=_0x416c57[_0x19b8d3['key']];if(!_0x5e6b72)throw CliErrors[_0x445a44(0x171)](_0x445a44(0x180)+_0x19b8d3[_0x445a44(0x16b)]+_0x445a44(0x189)+_0x19b8d3[_0x445a44(0x18a)]+').',_0x445a44(0x182));_0x555a2c[_0x19b8d3['key']]=projectPageSlot(_0x5e6b72);const _0xe4e28c=await resolvePermitRoles(_0x4ebf10[_0x445a44(0x166)],_0x44e4e9,{'allowSelf':_0x19b8d3[_0x445a44(0x170)],'label':_0x19b8d3['label']});_0x5e6b72[_0x445a44(0x18b)]=_0xe4e28c,_0x15d681[_0x19b8d3[_0x445a44(0x18a)]]=projectPageSlot(_0x5e6b72);}const _0x5dbaa3={'operation':_0x445a44(0x186),'selector':{'appCode':_0x4ebf10[_0x445a44(0x166)],'menuId':_0x421026,'slots':_0x2381b6['map'](_0x2bb088=>_0x2bb088['spec'][_0x445a44(0x18a)])},'before':_0x555a2c,'after':_0x15d681,'dryRun':_0x19aece,'backend':{'method':_0x445a44(0x17c),'path':SAVE_PATH},'warnings':_0x30dc17};return{'page':_0x416c57,'mutation':_0x5dbaa3};}export const permitPageSet={'service':a137_0x42ea2b(0x16f),'command':a137_0x42ea2b(0x186),'description':a137_0x42ea2b(0x172),'risk':a137_0x42ea2b(0x181),'flags':[MENU_ID_FLAG,...PAGE_SET_ROLE_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x47660d){const _0x58dd82=a137_0x42ea2b,_0x4d5cf4=collectRequestedSlots(_0x47660d);if(_0x4d5cf4[_0x58dd82(0x185)]===0x0)throw CliErrors[_0x58dd82(0x171)](_0x58dd82(0x17b),_0x58dd82(0x174)+PAGE_SLOT_SPECS['map'](_0x5d149b=>'--'+_0x5d149b[_0x58dd82(0x17f)])[_0x58dd82(0x17d)](',\x20')+'.');},async 'dryRun'(_0xf5b0bc){const _0x5692e7=a137_0x42ea2b,{mutation:_0x5d5ba9}=await buildPlan(_0xf5b0bc,!![]);return asDryRunResult(_0x5d5ba9,{'method':_0x5692e7(0x17c),'url':SAVE_PATH});},async 'execute'(_0x1cb56c){const _0x1b36ca=a137_0x42ea2b,{page:_0x2df0f2,mutation:_0x18b092}=await buildPlan(_0x1cb56c,![]);return await savePagePermit(_0x2df0f2),{'ok':!![],'data':_0x18b092,'message':_0x1b36ca(0x18c)+_0x18b092[_0x1b36ca(0x168)][_0x1b36ca(0x16d)]};}};
@@ -1 +1 @@
1
- const a137_0x59ddf2=a137_0x3178;function a137_0x3cbc(){const _0x369ca1=['revoke','appCode','814174WkWuOS','permit','selector','2817563FYDjqY','Unknown\x20datasetCode(s)\x20for\x20this\x20role\x27s\x20API\x20resources:\x20','length','datasets','POST','validation','833234quvNlC','1957221dmyYnS','bool','Pass\x20--datasets\x20<datasetCode,...>.','Verify\x20the\x20datasetCode,\x20or\x20check\x20the\x20role\x27s\x20API\x20resource\x20matrix.','push','19971100fUjbJY','\x20dataset(s)\x20on\x20role\x20','/smartapi/permit/role/update','filter','has','1181784zLNKAg','flagMissing','get','api-revoke','8ikgTFV','role-apis-set','str','join','roleName','Missing\x20--revoke.','role-apis-set\x20currently\x20supports\x20revoking\x20dataset\x20API\x20access\x20(use\x20case\x204).','high-risk-write','Revoked\x20API\x20access\x20for\x20','88CQTHMw','5feEXDg','130365JsLlGA'];a137_0x3cbc=function(){return _0x369ca1;};return a137_0x3cbc();}(function(_0x1085c0,_0x478319){const _0x170371=a137_0x3178,_0x96334d=_0x1085c0();while(!![]){try{const _0x475990=parseInt(_0x170371(0x169))/0x1+parseInt(_0x170371(0x160))/0x2+-parseInt(_0x170371(0x15d))/0x3*(-parseInt(_0x170371(0x15b))/0x4)+-parseInt(_0x170371(0x15c))/0x5*(parseInt(_0x170371(0x14e))/0x6)+parseInt(_0x170371(0x163))/0x7+-parseInt(_0x170371(0x152))/0x8*(-parseInt(_0x170371(0x16a))/0x9)+-parseInt(_0x170371(0x16f))/0xa;if(_0x475990===_0x478319)break;else _0x96334d['push'](_0x96334d['shift']());}catch(_0x9c751e){_0x96334d['push'](_0x96334d['shift']());}}}(a137_0x3cbc,0x97e9b));import{getRoleApiResources,updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a137_0x3178(_0x4646c9,_0x12c9a9){_0x4646c9=_0x4646c9-0x14c;const _0x3cbc2a=a137_0x3cbc();let _0x31785b=_0x3cbc2a[_0x4646c9];return _0x31785b;}import{buildPermits,DATASETS_FLAG,flattenApiResources,readRoleRef,REVOKE_FLAG,ROLE_REF_FLAG,splitList}from'../../commands/permit/shared.js';import{assertPermConfigurable,resolveRoleRef}from'../../commands/role/shared.js';const UPDATE_PATH=a137_0x59ddf2(0x171);async function buildPlan(_0x499788,_0x3c331c){const _0x124297=a137_0x59ddf2,_0x4b827e=await resolveRoleRef(_0x499788[_0x124297(0x15f)],readRoleRef(_0x499788));assertPermConfigurable(_0x4b827e);if(!_0x499788[_0x124297(0x16b)](_0x124297(0x15e)))throw CliErrors[_0x124297(0x168)](_0x124297(0x157),_0x124297(0x158));const _0xe89e84=splitList(_0x499788[_0x124297(0x154)](_0x124297(0x166)));if(_0xe89e84[_0x124297(0x165)]===0x0)throw CliErrors[_0x124297(0x14f)](_0x124297(0x166),_0x124297(0x16c));const _0x3b2873=await getRoleApiResources(_0x499788[_0x124297(0x15f)],_0x4b827e['id']),{byCode:_0x7a2bb0,byDataset:_0x319526}=flattenApiResources(_0x3b2873),_0x5637e1=_0xe89e84[_0x124297(0x14c)](_0xf612a6=>!_0x319526[_0x124297(0x14d)](_0xf612a6));if(_0x5637e1['length']>0x0)throw CliErrors['validation'](_0x124297(0x164)+_0x5637e1[_0x124297(0x155)](',\x20')+'.',_0x124297(0x16d));const _0x5d5a5a=new Map(),_0x2b5265=[],_0x178245=[];for(const _0x23739b of _0xe89e84){for(const _0x319d4f of _0x319526[_0x124297(0x150)](_0x23739b)){const _0x3e78fb=_0x7a2bb0[_0x124297(0x150)](_0x319d4f);_0x5d5a5a['set'](_0x319d4f,'0'),_0x2b5265['push']({'resourceCode':_0x319d4f,'datasetCode':_0x23739b,'action':_0x3e78fb['action']}),_0x178245[_0x124297(0x16e)]({'resourceCode':_0x319d4f,'datasetCode':_0x23739b,'action':'0'});}}const _0x495426=buildPermits(_0x7a2bb0,_0x5d5a5a),_0x2491f3={'operation':_0x124297(0x151),'selector':{'appCode':_0x499788[_0x124297(0x15f)],'roleId':_0x4b827e['id'],'roleName':_0x4b827e[_0x124297(0x156)],'datasetCodes':_0xe89e84},'before':_0x2b5265,'after':_0x178245,'dryRun':_0x3c331c,'backend':{'method':_0x124297(0x167),'path':UPDATE_PATH,'roleType':'API'},'warnings':[]};return{'role':_0x4b827e,'permits':_0x495426,'mutation':_0x2491f3};}export const permitRoleApisSet={'service':a137_0x59ddf2(0x161),'command':a137_0x59ddf2(0x153),'description':'Revoke\x20a\x20role\x27s\x20dataset\x20API\x20access\x20by\x20datasetCode\x20(roleType\x20API);\x20requires\x20--yes','risk':a137_0x59ddf2(0x159),'flags':[ROLE_REF_FLAG,REVOKE_FLAG,DATASETS_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x6ea9b6){const _0x55174c=a137_0x59ddf2;if(!_0x6ea9b6[_0x55174c(0x16b)](_0x55174c(0x15e)))throw CliErrors[_0x55174c(0x168)](_0x55174c(0x157),_0x55174c(0x158));if(splitList(_0x6ea9b6[_0x55174c(0x154)](_0x55174c(0x166)))[_0x55174c(0x165)]===0x0)throw CliErrors[_0x55174c(0x14f)](_0x55174c(0x166),'Pass\x20--datasets\x20<datasetCode,...>.');},async 'dryRun'(_0x26bc1a){const {mutation:_0x275947}=await buildPlan(_0x26bc1a,!![]);return asDryRunResult(_0x275947,{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x28d150){const _0x54e487=a137_0x59ddf2,{role:_0x66a413,permits:_0x2be7c3,mutation:_0x2d7baa}=await buildPlan(_0x28d150,![]);return await updateAppRole({'id':_0x66a413['id'],'appCode':_0x28d150[_0x54e487(0x15f)],'roleType':'API','permits':_0x2be7c3}),{'ok':!![],'data':_0x2d7baa,'message':_0x54e487(0x15a)+_0x2d7baa[_0x54e487(0x162)]['datasetCodes']['length']+_0x54e487(0x170)+_0x66a413[_0x54e487(0x156)]};}};
1
+ const a138_0x3a3107=a138_0x51f6;(function(_0x39029e,_0x370f51){const _0x390307=a138_0x51f6,_0x37f199=_0x39029e();while(!![]){try{const _0x7dd3d0=parseInt(_0x390307(0x1fb))/0x1*(parseInt(_0x390307(0x203))/0x2)+-parseInt(_0x390307(0x200))/0x3+-parseInt(_0x390307(0x1fa))/0x4+parseInt(_0x390307(0x20d))/0x5+-parseInt(_0x390307(0x1f7))/0x6+-parseInt(_0x390307(0x20c))/0x7*(parseInt(_0x390307(0x202))/0x8)+parseInt(_0x390307(0x1f1))/0x9;if(_0x7dd3d0===_0x370f51)break;else _0x37f199['push'](_0x37f199['shift']());}catch(_0x2719fe){_0x37f199['push'](_0x37f199['shift']());}}}(a138_0x4a67,0x7c578));import{getRoleApiResources,updateAppRole}from'../../core/api-client.js';function a138_0x4a67(){const _0xcd822b=['validation','api-revoke','datasets','17194806jfmGke','bool','appCode','set','/smartapi/permit/role/update','API','2900484xImsmi','Pass\x20--datasets\x20<datasetCode,...>.','revoke','637660MaiNcD','15404JrCsoa','role-apis-set\x20currently\x20supports\x20revoking\x20dataset\x20API\x20access\x20(use\x20case\x204).','flagMissing','action','has','2569836swuuKp','Missing\x20--revoke.','3859144lpTjfp','64vnALKF','length','Revoked\x20API\x20access\x20for\x20','join','Unknown\x20datasetCode(s)\x20for\x20this\x20role\x27s\x20API\x20resources:\x20','POST','filter','push','get','7KpKAgf','438380IYnbCg','high-risk-write','datasetCodes'];a138_0x4a67=function(){return _0xcd822b;};return a138_0x4a67();}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{buildPermits,DATASETS_FLAG,flattenApiResources,readRoleRef,REVOKE_FLAG,ROLE_REF_FLAG,splitList}from'../../commands/permit/shared.js';function a138_0x51f6(_0x5c3ad6,_0x222820){_0x5c3ad6=_0x5c3ad6-0x1f1;const _0x4a6784=a138_0x4a67();let _0x51f66c=_0x4a6784[_0x5c3ad6];return _0x51f66c;}import{assertPermConfigurable,resolveRoleRef}from'../../commands/role/shared.js';const UPDATE_PATH=a138_0x3a3107(0x1f5);async function buildPlan(_0x33b232,_0x58d7c8){const _0x1321a5=a138_0x3a3107,_0x729deb=await resolveRoleRef(_0x33b232[_0x1321a5(0x1f3)],readRoleRef(_0x33b232));assertPermConfigurable(_0x729deb);if(!_0x33b232[_0x1321a5(0x1f2)](_0x1321a5(0x1f9)))throw CliErrors[_0x1321a5(0x210)](_0x1321a5(0x201),_0x1321a5(0x1fc));const _0x52bb9c=splitList(_0x33b232['str'](_0x1321a5(0x212)));if(_0x52bb9c[_0x1321a5(0x204)]===0x0)throw CliErrors[_0x1321a5(0x1fd)](_0x1321a5(0x212),_0x1321a5(0x1f8));const _0x2f87a4=await getRoleApiResources(_0x33b232['appCode'],_0x729deb['id']),{byCode:_0x281a5c,byDataset:_0x1114c5}=flattenApiResources(_0x2f87a4),_0x55b759=_0x52bb9c[_0x1321a5(0x209)](_0x43db87=>!_0x1114c5[_0x1321a5(0x1ff)](_0x43db87));if(_0x55b759['length']>0x0)throw CliErrors[_0x1321a5(0x210)](_0x1321a5(0x207)+_0x55b759[_0x1321a5(0x206)](',\x20')+'.','Verify\x20the\x20datasetCode,\x20or\x20check\x20the\x20role\x27s\x20API\x20resource\x20matrix.');const _0xa17bc4=new Map(),_0x481ce3=[],_0x4f1915=[];for(const _0x3554f6 of _0x52bb9c){for(const _0x39b967 of _0x1114c5[_0x1321a5(0x20b)](_0x3554f6)){const _0x3c8289=_0x281a5c['get'](_0x39b967);_0xa17bc4[_0x1321a5(0x1f4)](_0x39b967,'0'),_0x481ce3['push']({'resourceCode':_0x39b967,'datasetCode':_0x3554f6,'action':_0x3c8289[_0x1321a5(0x1fe)]}),_0x4f1915[_0x1321a5(0x20a)]({'resourceCode':_0x39b967,'datasetCode':_0x3554f6,'action':'0'});}}const _0x4b5454=buildPermits(_0x281a5c,_0xa17bc4),_0x5ba8f0={'operation':_0x1321a5(0x211),'selector':{'appCode':_0x33b232[_0x1321a5(0x1f3)],'roleId':_0x729deb['id'],'roleName':_0x729deb['roleName'],'datasetCodes':_0x52bb9c},'before':_0x481ce3,'after':_0x4f1915,'dryRun':_0x58d7c8,'backend':{'method':'POST','path':UPDATE_PATH,'roleType':_0x1321a5(0x1f6)},'warnings':[]};return{'role':_0x729deb,'permits':_0x4b5454,'mutation':_0x5ba8f0};}export const permitRoleApisSet={'service':'permit','command':'role-apis-set','description':'Revoke\x20a\x20role\x27s\x20dataset\x20API\x20access\x20by\x20datasetCode\x20(roleType\x20API);\x20requires\x20--yes','risk':a138_0x3a3107(0x20e),'flags':[ROLE_REF_FLAG,REVOKE_FLAG,DATASETS_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5f0014){const _0x53eeb5=a138_0x3a3107;if(!_0x5f0014[_0x53eeb5(0x1f2)](_0x53eeb5(0x1f9)))throw CliErrors[_0x53eeb5(0x210)]('Missing\x20--revoke.','role-apis-set\x20currently\x20supports\x20revoking\x20dataset\x20API\x20access\x20(use\x20case\x204).');if(splitList(_0x5f0014['str'](_0x53eeb5(0x212)))[_0x53eeb5(0x204)]===0x0)throw CliErrors[_0x53eeb5(0x1fd)](_0x53eeb5(0x212),_0x53eeb5(0x1f8));},async 'dryRun'(_0x4ed20d){const _0x614897=a138_0x3a3107,{mutation:_0x3a7c94}=await buildPlan(_0x4ed20d,!![]);return asDryRunResult(_0x3a7c94,{'method':_0x614897(0x208),'url':UPDATE_PATH});},async 'execute'(_0x365a42){const _0x2bd9e1=a138_0x3a3107,{role:_0x325f7b,permits:_0x512b94,mutation:_0x4a99b3}=await buildPlan(_0x365a42,![]);return await updateAppRole({'id':_0x325f7b['id'],'appCode':_0x365a42[_0x2bd9e1(0x1f3)],'roleType':_0x2bd9e1(0x1f6),'permits':_0x512b94}),{'ok':!![],'data':_0x4a99b3,'message':_0x2bd9e1(0x205)+_0x4a99b3['selector'][_0x2bd9e1(0x20f)]['length']+'\x20dataset(s)\x20on\x20role\x20'+_0x325f7b['roleName']};}};
@@ -1 +1 @@
1
- const a138_0x44fc09=a138_0xf3a9;(function(_0x383618,_0x1eb35b){const _0x36a8e5=a138_0xf3a9,_0x52e46e=_0x383618();while(!![]){try{const _0x125be7=parseInt(_0x36a8e5(0xe0))/0x1*(parseInt(_0x36a8e5(0xf3))/0x2)+parseInt(_0x36a8e5(0xed))/0x3+-parseInt(_0x36a8e5(0xdf))/0x4+parseInt(_0x36a8e5(0xf4))/0x5*(parseInt(_0x36a8e5(0xf1))/0x6)+-parseInt(_0x36a8e5(0xf6))/0x7*(-parseInt(_0x36a8e5(0xf2))/0x8)+-parseInt(_0x36a8e5(0xf7))/0x9+parseInt(_0x36a8e5(0xfb))/0xa;if(_0x125be7===_0x1eb35b)break;else _0x52e46e['push'](_0x52e46e['shift']());}catch(_0x40cd8c){_0x52e46e['push'](_0x52e46e['shift']());}}}(a138_0x18a0,0x41e6e));import{getRoleMenuResources,updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a138_0xf3a9(_0x1743b3,_0x34b698){_0x1743b3=_0x1743b3-0xdf;const _0x18a093=a138_0x18a0();let _0xf3a92a=_0x18a093[_0x1743b3];return _0xf3a92a;}import{buildPermits,flattenMenuResources,GRANT_FLAG,MENUS_FLAG,readGrantRevoke,readRoleRef,REVOKE_FLAG,ROLE_REF_FLAG,splitList}from'../../commands/permit/shared.js';import{assertPermConfigurable,resolveRoleRef}from'../../commands/role/shared.js';function a138_0x18a0(){const _0xbaef5c=['validation','14604ECkASX','2585720TFnetu','58COnllo','40GapPeE','length','7inDKMZ','4051989mmXmKR','str','menu-grant','POST','2142060PUhdki','1631648YaEbYG','4003bjKEKq','flagMissing','Updated\x20','roleName','Pass\x20--menus\x20<resourceCode,...>.','join','menus','permit','push','menu-revoke','appCode','PAGE','filter','1365261bPqGeF','/smartapi/permit/role/update','Unknown\x20menu\x20resourceCode(s):\x20'];a138_0x18a0=function(){return _0xbaef5c;};return a138_0x18a0();}const UPDATE_PATH=a138_0x44fc09(0xee);async function buildPlan(_0x298139,_0x593741){const _0x1c22dc=a138_0x44fc09,_0x490d66=await resolveRoleRef(_0x298139['appCode'],readRoleRef(_0x298139));assertPermConfigurable(_0x490d66);const _0x4643a6=readGrantRevoke(_0x298139),_0x56891f=splitList(_0x298139[_0x1c22dc(0xf8)](_0x1c22dc(0xe6)));if(_0x56891f[_0x1c22dc(0xf5)]===0x0)throw CliErrors[_0x1c22dc(0xe1)](_0x1c22dc(0xe6),_0x1c22dc(0xe4));const _0x39e52c=await getRoleMenuResources(_0x298139[_0x1c22dc(0xea)],_0x490d66['id']),_0x44ac7c=flattenMenuResources(_0x39e52c),_0x360f4f=_0x56891f[_0x1c22dc(0xec)](_0x4ba004=>!_0x44ac7c['has'](_0x4ba004));if(_0x360f4f['length']>0x0)throw CliErrors[_0x1c22dc(0xf0)](_0x1c22dc(0xef)+_0x360f4f[_0x1c22dc(0xe5)](',\x20')+'.','Run\x20`permit\x20role-menus\x20--role\x20<id>`\x20to\x20see\x20valid\x20resourceCodes.');const _0x4b5bab=new Map(),_0x3eb1a5=[],_0x54787d=[];for(const _0x2ce3ac of _0x56891f){const _0x2c1059=_0x44ac7c['get'](_0x2ce3ac);_0x4b5bab['set'](_0x2ce3ac,_0x4643a6),_0x3eb1a5[_0x1c22dc(0xe8)]({'resourceCode':_0x2ce3ac,'action':_0x2c1059['action']}),_0x54787d[_0x1c22dc(0xe8)]({'resourceCode':_0x2ce3ac,'action':_0x4643a6});}const _0xa5ae8b=buildPermits(_0x44ac7c,_0x4b5bab),_0x4f7af0={'operation':_0x4643a6==='access'?_0x1c22dc(0xf9):_0x1c22dc(0xe9),'selector':{'appCode':_0x298139[_0x1c22dc(0xea)],'roleId':_0x490d66['id'],'roleName':_0x490d66[_0x1c22dc(0xe3)],'resourceCodes':_0x56891f},'before':_0x3eb1a5,'after':_0x54787d,'dryRun':_0x593741,'backend':{'method':_0x1c22dc(0xfa),'path':UPDATE_PATH,'roleType':_0x1c22dc(0xeb)},'warnings':[]};return{'role':_0x490d66,'permits':_0xa5ae8b,'mutation':_0x4f7af0};}export const permitRoleMenusSet={'service':a138_0x44fc09(0xe7),'command':'role-menus-set','description':'Grant\x20or\x20revoke\x20a\x20role\x27s\x20menu\x20access\x20by\x20resourceCode\x20(roleType\x20PAGE);\x20requires\x20--yes','risk':'high-risk-write','flags':[ROLE_REF_FLAG,GRANT_FLAG,REVOKE_FLAG,MENUS_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3e957c){const _0x404468=a138_0x44fc09;readGrantRevoke(_0x3e957c);if(splitList(_0x3e957c[_0x404468(0xf8)](_0x404468(0xe6)))[_0x404468(0xf5)]===0x0)throw CliErrors['flagMissing'](_0x404468(0xe6),_0x404468(0xe4));},async 'dryRun'(_0x225553){const {mutation:_0x4cd626}=await buildPlan(_0x225553,!![]);return asDryRunResult(_0x4cd626,{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x5a51ef){const _0x259e7c=a138_0x44fc09,{role:_0x32030e,permits:_0x3fd172,mutation:_0x214e87}=await buildPlan(_0x5a51ef,![]);return await updateAppRole({'id':_0x32030e['id'],'appCode':_0x5a51ef[_0x259e7c(0xea)],'roleType':'PAGE','permits':_0x3fd172}),{'ok':!![],'data':_0x214e87,'message':_0x259e7c(0xe2)+_0x214e87['selector']['resourceCodes'][_0x259e7c(0xf5)]+'\x20menu\x20permit(s)\x20for\x20role\x20'+_0x32030e[_0x259e7c(0xe3)]};}};
1
+ const a139_0x36fe16=a139_0x42af;(function(_0x7c37b5,_0x1e3ca2){const _0xdc0925=a139_0x42af,_0x5e2fbb=_0x7c37b5();while(!![]){try{const _0x70a7e3=parseInt(_0xdc0925(0x10c))/0x1*(parseInt(_0xdc0925(0x128))/0x2)+-parseInt(_0xdc0925(0x105))/0x3+parseInt(_0xdc0925(0x10e))/0x4*(parseInt(_0xdc0925(0x12b))/0x5)+parseInt(_0xdc0925(0x127))/0x6+parseInt(_0xdc0925(0x125))/0x7*(-parseInt(_0xdc0925(0x121))/0x8)+parseInt(_0xdc0925(0x11e))/0x9+-parseInt(_0xdc0925(0x106))/0xa*(-parseInt(_0xdc0925(0x11b))/0xb);if(_0x70a7e3===_0x1e3ca2)break;else _0x5e2fbb['push'](_0x5e2fbb['shift']());}catch(_0xee02df){_0x5e2fbb['push'](_0x5e2fbb['shift']());}}}(a139_0x2faf,0x5d8b4));import{getRoleMenuResources,updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a139_0x42af(_0x5aa18e,_0x24289f){_0x5aa18e=_0x5aa18e-0x105;const _0x2faff9=a139_0x2faf();let _0x42afef=_0x2faff9[_0x5aa18e];return _0x42afef;}import{asDryRunResult}from'../../commands/common/dry-run.js';function a139_0x2faf(){const _0x94e077=['2247168Ioxrdu','1180OSzYJh','role-menus-set','menus','resourceCodes','appCode','validation','587TpawSq','push','284syoZep','permit','Pass\x20--menus\x20<resourceCode,...>.','selector','PAGE','flagMissing','length','action','high-risk-write','set','str','access','/smartapi/permit/role/update','12463OhjIMn','\x20menu\x20permit(s)\x20for\x20role\x20','menu-grant','934299sbVtcJ','roleName','Grant\x20or\x20revoke\x20a\x20role\x27s\x20menu\x20access\x20by\x20resourceCode\x20(roleType\x20PAGE);\x20requires\x20--yes','12664oiaVYB','POST','Run\x20`permit\x20role-menus\x20--role\x20<id>`\x20to\x20see\x20valid\x20resourceCodes.','menu-revoke','679CcfKwa','join','2417556RQMskT','390UAAQkI','Unknown\x20menu\x20resourceCode(s):\x20','get','37385TBOAwv','Updated\x20'];a139_0x2faf=function(){return _0x94e077;};return a139_0x2faf();}import{buildPermits,flattenMenuResources,GRANT_FLAG,MENUS_FLAG,readGrantRevoke,readRoleRef,REVOKE_FLAG,ROLE_REF_FLAG,splitList}from'../../commands/permit/shared.js';import{assertPermConfigurable,resolveRoleRef}from'../../commands/role/shared.js';const UPDATE_PATH=a139_0x36fe16(0x11a);async function buildPlan(_0xa65e1b,_0x3c462b){const _0x42453f=a139_0x36fe16,_0x2e0705=await resolveRoleRef(_0xa65e1b[_0x42453f(0x10a)],readRoleRef(_0xa65e1b));assertPermConfigurable(_0x2e0705);const _0x2d52eb=readGrantRevoke(_0xa65e1b),_0x4e8fc=splitList(_0xa65e1b[_0x42453f(0x118)](_0x42453f(0x108)));if(_0x4e8fc[_0x42453f(0x114)]===0x0)throw CliErrors[_0x42453f(0x113)]('menus','Pass\x20--menus\x20<resourceCode,...>.');const _0x403549=await getRoleMenuResources(_0xa65e1b[_0x42453f(0x10a)],_0x2e0705['id']),_0x166d24=flattenMenuResources(_0x403549),_0x136f6a=_0x4e8fc['filter'](_0x48c05b=>!_0x166d24['has'](_0x48c05b));if(_0x136f6a[_0x42453f(0x114)]>0x0)throw CliErrors[_0x42453f(0x10b)](_0x42453f(0x129)+_0x136f6a[_0x42453f(0x126)](',\x20')+'.',_0x42453f(0x123));const _0x4199cf=new Map(),_0x4861ab=[],_0x14a184=[];for(const _0x13b936 of _0x4e8fc){const _0x213f80=_0x166d24[_0x42453f(0x12a)](_0x13b936);_0x4199cf[_0x42453f(0x117)](_0x13b936,_0x2d52eb),_0x4861ab[_0x42453f(0x10d)]({'resourceCode':_0x13b936,'action':_0x213f80[_0x42453f(0x115)]}),_0x14a184[_0x42453f(0x10d)]({'resourceCode':_0x13b936,'action':_0x2d52eb});}const _0x598f42=buildPermits(_0x166d24,_0x4199cf),_0x2b427b={'operation':_0x2d52eb===_0x42453f(0x119)?_0x42453f(0x11d):_0x42453f(0x124),'selector':{'appCode':_0xa65e1b[_0x42453f(0x10a)],'roleId':_0x2e0705['id'],'roleName':_0x2e0705[_0x42453f(0x11f)],'resourceCodes':_0x4e8fc},'before':_0x4861ab,'after':_0x14a184,'dryRun':_0x3c462b,'backend':{'method':_0x42453f(0x122),'path':UPDATE_PATH,'roleType':_0x42453f(0x112)},'warnings':[]};return{'role':_0x2e0705,'permits':_0x598f42,'mutation':_0x2b427b};}export const permitRoleMenusSet={'service':a139_0x36fe16(0x10f),'command':a139_0x36fe16(0x107),'description':a139_0x36fe16(0x120),'risk':a139_0x36fe16(0x116),'flags':[ROLE_REF_FLAG,GRANT_FLAG,REVOKE_FLAG,MENUS_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x14cf82){const _0x2457fc=a139_0x36fe16;readGrantRevoke(_0x14cf82);if(splitList(_0x14cf82[_0x2457fc(0x118)](_0x2457fc(0x108)))[_0x2457fc(0x114)]===0x0)throw CliErrors[_0x2457fc(0x113)](_0x2457fc(0x108),_0x2457fc(0x110));},async 'dryRun'(_0x39b570){const _0x50405b=a139_0x36fe16,{mutation:_0x52b4ac}=await buildPlan(_0x39b570,!![]);return asDryRunResult(_0x52b4ac,{'method':_0x50405b(0x122),'url':UPDATE_PATH});},async 'execute'(_0x358cb4){const _0xec18d7=a139_0x36fe16,{role:_0x479f14,permits:_0x257252,mutation:_0x12fb2e}=await buildPlan(_0x358cb4,![]);return await updateAppRole({'id':_0x479f14['id'],'appCode':_0x358cb4['appCode'],'roleType':_0xec18d7(0x112),'permits':_0x257252}),{'ok':!![],'data':_0x12fb2e,'message':_0xec18d7(0x12c)+_0x12fb2e[_0xec18d7(0x111)][_0xec18d7(0x109)]['length']+_0xec18d7(0x11c)+_0x479f14[_0xec18d7(0x11f)]};}};
@@ -1 +1 @@
1
- const a139_0x1e59b9=a139_0x3684;(function(_0x119628,_0x4d4240){const _0x1d620f=a139_0x3684,_0x524449=_0x119628();while(!![]){try{const _0x15c270=-parseInt(_0x1d620f(0x168))/0x1*(-parseInt(_0x1d620f(0x174))/0x2)+parseInt(_0x1d620f(0x16e))/0x3+-parseInt(_0x1d620f(0x162))/0x4+parseInt(_0x1d620f(0x173))/0x5+-parseInt(_0x1d620f(0x176))/0x6*(-parseInt(_0x1d620f(0x171))/0x7)+parseInt(_0x1d620f(0x16f))/0x8*(parseInt(_0x1d620f(0x166))/0x9)+parseInt(_0x1d620f(0x16c))/0xa*(-parseInt(_0x1d620f(0x16d))/0xb);if(_0x15c270===_0x4d4240)break;else _0x524449['push'](_0x524449['shift']());}catch(_0x3dfb69){_0x524449['push'](_0x524449['shift']());}}}(a139_0x6293,0x2bbef));import{getRoleMenuResources}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{flattenMenuResources,readRoleRef,ROLE_REF_FLAG}from'../../commands/permit/shared.js';function a139_0x6293(){const _0x9f633=['1334808QOrGON','read','7OwOOYJ','access','1180880xiVCEm','2fojTRt','action','1381746BbydgW','allowed','resourceName','values','map','permit','appCode','572188HaeIWC','filter','length','role-menus','18eKPPbe','\x20has\x20','307841NKFFxW','Show\x20a\x20role\x27s\x20current\x20menu\x20permission\x20matrix','roleName','Role\x20','80UxeUxC','1213663UQdFQw','290652OcjVIZ'];a139_0x6293=function(){return _0x9f633;};return a139_0x6293();}function a139_0x3684(_0x4718aa,_0x56f658){_0x4718aa=_0x4718aa-0x162;const _0x629318=a139_0x6293();let _0x368479=_0x629318[_0x4718aa];return _0x368479;}import{resolveRoleRef}from'../../commands/role/shared.js';export const permitRoleMenus={'service':a139_0x1e59b9(0x17b),'command':a139_0x1e59b9(0x165),'description':a139_0x1e59b9(0x169),'risk':a139_0x1e59b9(0x170),'flags':[ROLE_REF_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x243450){const _0x137520=a139_0x1e59b9,_0x54c857=await resolveRoleRef(_0x243450[_0x137520(0x17c)],readRoleRef(_0x243450)),_0xb79c2e=await getRoleMenuResources(_0x243450[_0x137520(0x17c)],_0x54c857['id']),_0x25731c=flattenMenuResources(_0xb79c2e),_0x3ed4ce=Array['from'](_0x25731c[_0x137520(0x179)]())[_0x137520(0x17a)](_0x296207=>({'resourceCode':_0x296207['resourceCode'],'resourceName':_0x296207[_0x137520(0x178)],'allowed':_0x296207[_0x137520(0x175)]===_0x137520(0x172),'action':_0x296207[_0x137520(0x175)]}));return{'ok':!![],'data':{'selector':{'appCode':_0x243450['appCode'],'roleId':_0x54c857['id'],'roleName':_0x54c857['roleName']},'menus':_0x3ed4ce},'message':_0x137520(0x16b)+_0x54c857[_0x137520(0x16a)]+_0x137520(0x167)+_0x3ed4ce[_0x137520(0x163)](_0x2f91fa=>_0x2f91fa[_0x137520(0x177)])[_0x137520(0x164)]+'/'+_0x3ed4ce[_0x137520(0x164)]+'\x20menu(s)\x20allowed'};}};
1
+ const a140_0x307d99=a140_0x12f8;(function(_0x39ee0f,_0x48b757){const _0x5df738=a140_0x12f8,_0x3b83b1=_0x39ee0f();while(!![]){try{const _0x37aba3=-parseInt(_0x5df738(0xa5))/0x1*(parseInt(_0x5df738(0xbc))/0x2)+parseInt(_0x5df738(0xbd))/0x3*(-parseInt(_0x5df738(0xae))/0x4)+parseInt(_0x5df738(0xba))/0x5*(-parseInt(_0x5df738(0xab))/0x6)+parseInt(_0x5df738(0xaf))/0x7*(parseInt(_0x5df738(0xbb))/0x8)+parseInt(_0x5df738(0xb9))/0x9+parseInt(_0x5df738(0xaa))/0xa*(-parseInt(_0x5df738(0xb3))/0xb)+parseInt(_0x5df738(0xbe))/0xc;if(_0x37aba3===_0x48b757)break;else _0x3b83b1['push'](_0x3b83b1['shift']());}catch(_0xdaebec){_0x3b83b1['push'](_0x3b83b1['shift']());}}}(a140_0x5be9,0xc4257));import{getRoleMenuResources}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{flattenMenuResources,readRoleRef,ROLE_REF_FLAG}from'../../commands/permit/shared.js';import{resolveRoleRef}from'../../commands/role/shared.js';export const permitRoleMenus={'service':a140_0x307d99(0xb0),'command':a140_0x307d99(0xa9),'description':'Show\x20a\x20role\x27s\x20current\x20menu\x20permission\x20matrix','risk':a140_0x307d99(0xad),'flags':[ROLE_REF_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x47b707){const _0x331b19=a140_0x307d99,_0x3c5611=await resolveRoleRef(_0x47b707[_0x331b19(0xb2)],readRoleRef(_0x47b707)),_0x53a7de=await getRoleMenuResources(_0x47b707[_0x331b19(0xb2)],_0x3c5611['id']),_0xd83b51=flattenMenuResources(_0x53a7de),_0x48e31c=Array[_0x331b19(0xa7)](_0xd83b51[_0x331b19(0xb5)]())[_0x331b19(0xb6)](_0x519e44=>({'resourceCode':_0x519e44['resourceCode'],'resourceName':_0x519e44[_0x331b19(0xb4)],'allowed':_0x519e44[_0x331b19(0xb7)]===_0x331b19(0xb8),'action':_0x519e44[_0x331b19(0xb7)]}));return{'ok':!![],'data':{'selector':{'appCode':_0x47b707[_0x331b19(0xb2)],'roleId':_0x3c5611['id'],'roleName':_0x3c5611[_0x331b19(0xa6)]},'menus':_0x48e31c},'message':_0x331b19(0xac)+_0x3c5611['roleName']+'\x20has\x20'+_0x48e31c['filter'](_0x55597d=>_0x55597d[_0x331b19(0xa8)])[_0x331b19(0xb1)]+'/'+_0x48e31c[_0x331b19(0xb1)]+'\x20menu(s)\x20allowed'};}};function a140_0x12f8(_0x45af17,_0x4ac100){_0x45af17=_0x45af17-0xa5;const _0x5be961=a140_0x5be9();let _0x12f88d=_0x5be961[_0x45af17];return _0x12f88d;}function a140_0x5be9(){const _0x3b8db8=['role-menus','1530QUQzNW','338568EUVdqF','Role\x20','read','8cVqrzB','9947UtSIlZ','permit','length','appCode','106469QnZGSf','resourceName','values','map','action','access','2506896oKcxNK','5lhXGHF','4288tRwsBD','2971858pAOcnI','1204914xupvPp','43076820pplQwT','1nadAXz','roleName','from','allowed'];a140_0x5be9=function(){return _0x3b8db8;};return a140_0x5be9();}
@@ -1 +1 @@
1
- const a140_0x44dbb7=a140_0x1b88;function a140_0x2014(){const _0x5449ab=['delete-roles','menu\x20visibility','3465412PfdBvf','Role\x20id\x20or\x20role\x20name','datasets','length','bool','roleType','menu-id','Pass\x20exactly\x20one\x20of\x20--grant\x20/\x20--revoke.','21kumwBD','allowedActions','set','dataUpdate','SELF\x20(row-level)\x20applies\x20only\x20to\x20--row-roles.','Run\x20`role\x20list`,\x20or\x20use\x20SELF/ALL/<id>.',';\x20SELF\x20=\x20only\x20own\x20rows','data\x20create','filter','role','some','action','entries','trim','find','data\x20detail','apiList','rolePermit','5652360zzlQvC','data\x20export','--grant\x20and\x20--revoke\x20are\x20mutually\x20exclusive.','revoke','SELF\x20is\x20not\x20allowed\x20for\x20','data\x20delete','join','create-roles','2969232BzVouZ','ALL','menu-roles','menuPermit','Role\x20id\x20','Special\x20role\x20','118734avYmIA','key','split','map','110osaZWg','test','Missing\x20action.','appCode','datasetCode','str','push','\x22\x20not\x20found.','\x20(comma-separated\x20SELF/ALL/id/name)','dataDetail','flagMissing','resourceName','Comma-separated\x20datasetCodes\x20to\x20revoke\x20API\x20access\x20for','228882iPrDgN','access','SELF','pageNodeList','roleName','resourceCode','number','grant','string','menus','Run\x20`role\x20list`.','\x22\x20is\x20ambiguous\x20(ids:\x20','boolean','allowSelf','Disambiguate\x20with\x20an\x20id.','330190JuRglC','dataCreate','dataDelete','Menu\x20id\x20(from\x20`menu\x20list`)','\x20not\x20found.','validation','detail-roles','export-roles','1326288TtXhzv','get'];a140_0x2014=function(){return _0x5449ab;};return a140_0x2014();}(function(_0x5ad67a,_0x3d251c){const _0x12a49f=a140_0x1b88,_0xc3ec89=_0x5ad67a();while(!![]){try{const _0xd6d572=-parseInt(_0x12a49f(0x198))/0x1+-parseInt(_0x12a49f(0x164))/0x2+-parseInt(_0x12a49f(0x16c))/0x3+-parseInt(_0x12a49f(0x170))/0x4+parseInt(_0x12a49f(0x19c))/0x5*(parseInt(_0x12a49f(0x155))/0x6)+-parseInt(_0x12a49f(0x178))/0x7*(-parseInt(_0x12a49f(0x192))/0x8)+parseInt(_0x12a49f(0x18a))/0x9;if(_0xd6d572===_0x3d251c)break;else _0xc3ec89['push'](_0xc3ec89['shift']());}catch(_0xcd83d7){_0xc3ec89['push'](_0xc3ec89['shift']());}}}(a140_0x2014,0xf152a));import{listPermitRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const MENU_ID_FLAG={'name':a140_0x44dbb7(0x176),'type':a140_0x44dbb7(0x15b),'required':!![],'description':a140_0x44dbb7(0x167)};export const ROLE_REF_FLAG={'name':a140_0x44dbb7(0x181),'type':a140_0x44dbb7(0x15d),'required':!![],'description':a140_0x44dbb7(0x171)};export const GRANT_FLAG={'name':a140_0x44dbb7(0x15c),'type':a140_0x44dbb7(0x161),'required':![],'description':'Grant\x20access\x20to\x20the\x20listed\x20resources'};export const REVOKE_FLAG={'name':'revoke','type':a140_0x44dbb7(0x161),'required':![],'description':'Revoke\x20access\x20to\x20the\x20listed\x20resources'};export const MENUS_FLAG={'name':a140_0x44dbb7(0x15e),'type':'string','required':!![],'description':'Comma-separated\x20menu\x20resourceCodes\x20to\x20grant/revoke'};export const DATASETS_FLAG={'name':a140_0x44dbb7(0x172),'type':a140_0x44dbb7(0x15d),'required':!![],'description':a140_0x44dbb7(0x154)};export const PAGE_SLOT_SPECS=[{'flag':a140_0x44dbb7(0x194),'key':a140_0x44dbb7(0x195),'allowSelf':![],'label':a140_0x44dbb7(0x16f)},{'flag':a140_0x44dbb7(0x191),'key':a140_0x44dbb7(0x165),'allowSelf':![],'label':a140_0x44dbb7(0x17f)},{'flag':'update-roles','key':a140_0x44dbb7(0x17b),'allowSelf':![],'label':'data\x20update'},{'flag':a140_0x44dbb7(0x16e),'key':a140_0x44dbb7(0x166),'allowSelf':![],'label':a140_0x44dbb7(0x18f)},{'flag':a140_0x44dbb7(0x16a),'key':a140_0x44dbb7(0x151),'allowSelf':![],'label':a140_0x44dbb7(0x187)},{'flag':a140_0x44dbb7(0x16b),'key':'dataExport','allowSelf':![],'label':a140_0x44dbb7(0x18b)},{'flag':'row-roles','key':'dataPermit','allowSelf':!![],'label':'row\x20visibility'}];export const PAGE_SET_ROLE_FLAGS=PAGE_SLOT_SPECS[a140_0x44dbb7(0x19b)](_0x33c879=>({'name':_0x33c879['flag'],'type':a140_0x44dbb7(0x15d),'required':![],'description':'Roles\x20for\x20'+_0x33c879['label']+a140_0x44dbb7(0x150)+(_0x33c879[a140_0x44dbb7(0x162)]?a140_0x44dbb7(0x17e):'')}));export function splitList(_0x5b0522){const _0x505c30=a140_0x44dbb7;return _0x5b0522[_0x505c30(0x19a)](',')[_0x505c30(0x19b)](_0x23b847=>_0x23b847[_0x505c30(0x185)]())[_0x505c30(0x180)](Boolean);}export function projectRoleRef(_0x50827a){const _0x3c9234=a140_0x44dbb7;return{'id':_0x50827a['id'],'roleName':_0x50827a[_0x3c9234(0x159)],'roleType':_0x50827a['roleType']};}export async function resolvePermitRoles(_0x3b0061,_0x19e0c6,_0x1b512d){const _0x4329c4=a140_0x44dbb7,_0x28f37f=await listPermitRoles(_0x3b0061,{'needSelf':!![],'needPublic':!![]}),_0x45138f=[];for(const _0x5caa7a of _0x19e0c6){const _0x4a6a58=resolveOnePermitRole(_0x28f37f,_0x5caa7a);if(!_0x1b512d[_0x4329c4(0x162)]&&_0x4a6a58[_0x4329c4(0x175)]===_0x4329c4(0x157))throw CliErrors['validation'](_0x4329c4(0x18e)+_0x1b512d['label']+'.',_0x4329c4(0x17c));if(!_0x45138f[_0x4329c4(0x182)](_0x2d1e81=>_0x2d1e81['id']===_0x4a6a58['id']))_0x45138f[_0x4329c4(0x14e)](_0x4a6a58);}return _0x45138f;}function resolveOnePermitRole(_0x24701e,_0x111009){const _0x55972b=a140_0x44dbb7,_0x21199c=_0x111009[_0x55972b(0x185)](),_0x1a0203=_0x21199c['toUpperCase']();if(_0x1a0203===_0x55972b(0x157)||_0x1a0203===_0x55972b(0x193)){const _0x2c42c3=_0x24701e['find'](_0x203015=>_0x203015[_0x55972b(0x175)]===_0x1a0203);if(!_0x2c42c3)throw CliErrors[_0x55972b(0x169)](_0x55972b(0x197)+_0x1a0203+'\x20is\x20not\x20available\x20for\x20this\x20app.');return _0x2c42c3;}if(/^-?\d+$/[_0x55972b(0x19d)](_0x21199c)){const _0x4cab19=Number(_0x21199c),_0x41ad1c=_0x24701e[_0x55972b(0x186)](_0x581008=>_0x581008['id']===_0x4cab19);if(!_0x41ad1c)throw CliErrors[_0x55972b(0x169)](_0x55972b(0x196)+_0x4cab19+_0x55972b(0x168),_0x55972b(0x15f));return _0x41ad1c;}const _0x23cd5d=_0x24701e[_0x55972b(0x180)](_0x3c6bc8=>_0x3c6bc8[_0x55972b(0x159)]===_0x21199c);if(_0x23cd5d[_0x55972b(0x173)]===0x0)throw CliErrors[_0x55972b(0x169)]('Role\x20\x22'+_0x21199c+_0x55972b(0x14f),_0x55972b(0x17d));if(_0x23cd5d['length']>0x1)throw CliErrors[_0x55972b(0x169)]('Role\x20\x22'+_0x21199c+_0x55972b(0x160)+_0x23cd5d[_0x55972b(0x19b)](_0x2abd09=>_0x2abd09['id'])[_0x55972b(0x190)](',\x20')+').',_0x55972b(0x163));return _0x23cd5d[0x0];}export function projectPageSlot(_0x47676f){const _0x585d54=a140_0x44dbb7;if(!_0x47676f)return null;return{'resourceCode':_0x47676f[_0x585d54(0x15a)],'roles':(_0x47676f[_0x585d54(0x189)]??[])[_0x585d54(0x19b)](projectRoleRef)};}export function projectPagePermit(_0x519664){const _0x53de6c=a140_0x44dbb7,_0x5818fe={'menuId':_0x519664['menuId'],'appCode':_0x519664[_0x53de6c(0x14b)],'menuPermit':projectPageSlot(_0x519664[_0x53de6c(0x195)])};for(const _0x1e7f9c of PAGE_SLOT_SPECS){if(_0x1e7f9c['key']===_0x53de6c(0x195))continue;_0x5818fe[_0x1e7f9c[_0x53de6c(0x199)]]=projectPageSlot(_0x519664[_0x1e7f9c[_0x53de6c(0x199)]]);}return _0x5818fe;}export function flattenMenuResources(_0x2896d0){const _0x51e0dc=new Map(),_0x4ed3ce=_0xabb6c4=>{const _0x5a490b=a140_0x1b88;for(const _0x8be821 of _0xabb6c4??[]){_0x51e0dc[_0x5a490b(0x17a)](_0x8be821['resourceCode'],{'resourceCode':_0x8be821[_0x5a490b(0x15a)],'resourceName':_0x8be821[_0x5a490b(0x153)],'action':_0x8be821[_0x5a490b(0x179)]?.[0x0]??'0'});if(_0x8be821[_0x5a490b(0x158)])_0x4ed3ce(_0x8be821[_0x5a490b(0x158)]);}};return _0x4ed3ce(_0x2896d0),_0x51e0dc;}function a140_0x1b88(_0x203097,_0x4158e1){_0x203097=_0x203097-0x14b;const _0x201419=a140_0x2014();let _0x1b88e1=_0x201419[_0x203097];return _0x1b88e1;}export function flattenApiResources(_0x163d68){const _0x2e708d=a140_0x44dbb7,_0xf04e01=new Map(),_0x3c9e9f=new Map();for(const _0x5ed704 of _0x163d68){const _0x2f8142=_0x5ed704[_0x2e708d(0x188)]??{};for(const [_0x1fddc9,_0x3d7410]of Object[_0x2e708d(0x184)](_0x2f8142)){_0xf04e01[_0x2e708d(0x17a)](_0x1fddc9,{'resourceCode':_0x1fddc9,'resourceName':_0x5ed704[_0x2e708d(0x153)],'datasetCode':_0x5ed704[_0x2e708d(0x14c)],'action':_0x3d7410?.[0x0]??'0'});const _0x3927a5=_0x3c9e9f[_0x2e708d(0x16d)](_0x5ed704[_0x2e708d(0x14c)])??[];_0x3927a5[_0x2e708d(0x14e)](_0x1fddc9),_0x3c9e9f[_0x2e708d(0x17a)](_0x5ed704['datasetCode'],_0x3927a5);}}return{'byCode':_0xf04e01,'byDataset':_0x3c9e9f};}export function buildPermits(_0x4a349c,_0x3cd3f7){const _0x48f07d=a140_0x44dbb7,_0x3e10a4={};for(const [_0x4b1a58,_0x2b8d80]of _0x4a349c){const _0x3b468a=_0x3cd3f7[_0x48f07d(0x16d)](_0x4b1a58)??_0x2b8d80[_0x48f07d(0x183)];_0x3e10a4[_0x4b1a58]=[_0x3b468a];}return _0x3e10a4;}export function readRoleRef(_0x5a4e19){const _0x42b9b6=a140_0x44dbb7,_0xaf472b=_0x5a4e19[_0x42b9b6(0x14d)](_0x42b9b6(0x181))[_0x42b9b6(0x185)]();if(!_0xaf472b)throw CliErrors[_0x42b9b6(0x152)](_0x42b9b6(0x181),'Pass\x20--role\x20<id|name>.');return _0xaf472b;}export function readGrantRevoke(_0x1f2b8a){const _0x3a1928=a140_0x44dbb7,_0x2a099f=_0x1f2b8a[_0x3a1928(0x174)](_0x3a1928(0x15c)),_0x4d184e=_0x1f2b8a[_0x3a1928(0x174)](_0x3a1928(0x18d));if(_0x2a099f&&_0x4d184e)throw CliErrors[_0x3a1928(0x169)](_0x3a1928(0x18c));if(!_0x2a099f&&!_0x4d184e)throw CliErrors['validation'](_0x3a1928(0x19e),_0x3a1928(0x177));return _0x2a099f?_0x3a1928(0x156):'0';}
1
+ const a141_0x10eef8=a141_0x3512;(function(_0x6ac9be,_0x2c7547){const _0x354682=a141_0x3512,_0x558456=_0x6ac9be();while(!![]){try{const _0x2a531c=parseInt(_0x354682(0x140))/0x1*(-parseInt(_0x354682(0x101))/0x2)+-parseInt(_0x354682(0x135))/0x3+-parseInt(_0x354682(0x12e))/0x4+parseInt(_0x354682(0x13e))/0x5+-parseInt(_0x354682(0x124))/0x6+parseInt(_0x354682(0x12b))/0x7*(-parseInt(_0x354682(0x13c))/0x8)+-parseInt(_0x354682(0xff))/0x9*(-parseInt(_0x354682(0x102))/0xa);if(_0x2a531c===_0x2c7547)break;else _0x558456['push'](_0x558456['shift']());}catch(_0x41fec0){_0x558456['push'](_0x558456['shift']());}}}(a141_0xb81f,0xf2cbb));import{listPermitRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const MENU_ID_FLAG={'name':a141_0x10eef8(0x11d),'type':a141_0x10eef8(0x14a),'required':!![],'description':a141_0x10eef8(0xf7)};export const ROLE_REF_FLAG={'name':a141_0x10eef8(0x106),'type':a141_0x10eef8(0x109),'required':!![],'description':a141_0x10eef8(0x107)};export const GRANT_FLAG={'name':a141_0x10eef8(0x121),'type':a141_0x10eef8(0x116),'required':![],'description':a141_0x10eef8(0x13d)};export const REVOKE_FLAG={'name':a141_0x10eef8(0x117),'type':a141_0x10eef8(0x116),'required':![],'description':'Revoke\x20access\x20to\x20the\x20listed\x20resources'};export const MENUS_FLAG={'name':'menus','type':a141_0x10eef8(0x109),'required':!![],'description':a141_0x10eef8(0x126)};export const DATASETS_FLAG={'name':a141_0x10eef8(0x10a),'type':a141_0x10eef8(0x109),'required':!![],'description':a141_0x10eef8(0x11f)};export const PAGE_SLOT_SPECS=[{'flag':a141_0x10eef8(0x108),'key':a141_0x10eef8(0x142),'allowSelf':![],'label':'menu\x20visibility'},{'flag':a141_0x10eef8(0xf6),'key':'dataCreate','allowSelf':![],'label':a141_0x10eef8(0x10f)},{'flag':a141_0x10eef8(0x134),'key':'dataUpdate','allowSelf':![],'label':a141_0x10eef8(0x110)},{'flag':a141_0x10eef8(0xf8),'key':a141_0x10eef8(0x139),'allowSelf':![],'label':'data\x20delete'},{'flag':a141_0x10eef8(0x138),'key':'dataDetail','allowSelf':![],'label':'data\x20detail'},{'flag':a141_0x10eef8(0xf9),'key':a141_0x10eef8(0x13a),'allowSelf':![],'label':a141_0x10eef8(0xfe)},{'flag':a141_0x10eef8(0x148),'key':a141_0x10eef8(0x10e),'allowSelf':!![],'label':a141_0x10eef8(0x123)}];function a141_0x3512(_0x54401f,_0x291d40){_0x54401f=_0x54401f-0xf5;const _0xb81f51=a141_0xb81f();let _0x351224=_0xb81f51[_0x54401f];return _0x351224;}export const PAGE_SET_ROLE_FLAGS=PAGE_SLOT_SPECS[a141_0x10eef8(0x136)](_0x2b5b99=>({'name':_0x2b5b99[a141_0x10eef8(0x141)],'type':a141_0x10eef8(0x109),'required':![],'description':a141_0x10eef8(0x120)+_0x2b5b99['label']+a141_0x10eef8(0xfc)+(_0x2b5b99[a141_0x10eef8(0xf5)]?a141_0x10eef8(0x11e):'')}));export function splitList(_0xe61d58){const _0xa1d432=a141_0x10eef8;return _0xe61d58['split'](',')[_0xa1d432(0x136)](_0xa734b7=>_0xa734b7['trim']())[_0xa1d432(0x12c)](Boolean);}function a141_0xb81f(){const _0x494490=['datasetCode','menu-id',';\x20SELF\x20=\x20only\x20own\x20rows','Comma-separated\x20datasetCodes\x20to\x20revoke\x20API\x20access\x20for','Roles\x20for\x20','grant','roleType','row\x20visibility','283650NglcWB','Disambiguate\x20with\x20an\x20id.','Comma-separated\x20menu\x20resourceCodes\x20to\x20grant/revoke','pageNodeList','validation','SELF','toUpperCase','44163Ythgho','filter','set','5283504iyqcxU','Role\x20\x22','trim','test','key','appCode','update-roles','4791684wgARrx','map','rolePermit','detail-roles','dataDelete','dataExport','allowedActions','728NUinZQ','Grant\x20access\x20to\x20the\x20listed\x20resources','5654080jJcgoN','SELF\x20(row-level)\x20applies\x20only\x20to\x20--row-roles.','845140dwcikK','flag','menuPermit','roleName','join','Role\x20id\x20','Run\x20`role\x20list`.','Pass\x20exactly\x20one\x20of\x20--grant\x20/\x20--revoke.','row-roles','find','number','allowSelf','create-roles','Menu\x20id\x20(from\x20`menu\x20list`)','delete-roles','export-roles','length','\x22\x20not\x20found.','\x20(comma-separated\x20SELF/ALL/id/name)','some','data\x20export','228951neUPTl','push','2KTOPvX','1670UwqhBc','\x22\x20is\x20ambiguous\x20(ids:\x20','flagMissing','resourceCode','role','Role\x20id\x20or\x20role\x20name','menu-roles','string','datasets','Special\x20role\x20','label','bool','dataPermit','data\x20create','data\x20update','resourceName','str','SELF\x20is\x20not\x20allowed\x20for\x20','get','access','boolean','revoke','--grant\x20and\x20--revoke\x20are\x20mutually\x20exclusive.','Run\x20`role\x20list`,\x20or\x20use\x20SELF/ALL/<id>.','apiList','\x20is\x20not\x20available\x20for\x20this\x20app.'];a141_0xb81f=function(){return _0x494490;};return a141_0xb81f();}export function projectRoleRef(_0x23b2a4){const _0x514758=a141_0x10eef8;return{'id':_0x23b2a4['id'],'roleName':_0x23b2a4[_0x514758(0x143)],'roleType':_0x23b2a4[_0x514758(0x122)]};}export async function resolvePermitRoles(_0x17018c,_0x3ccfe0,_0x4cb51c){const _0x52cf96=a141_0x10eef8,_0x2a51bc=await listPermitRoles(_0x17018c,{'needSelf':!![],'needPublic':!![]}),_0x2da0b3=[];for(const _0x11e75d of _0x3ccfe0){const _0x4ef5c5=resolveOnePermitRole(_0x2a51bc,_0x11e75d);if(!_0x4cb51c['allowSelf']&&_0x4ef5c5[_0x52cf96(0x122)]===_0x52cf96(0x129))throw CliErrors[_0x52cf96(0x128)](_0x52cf96(0x113)+_0x4cb51c[_0x52cf96(0x10c)]+'.',_0x52cf96(0x13f));if(!_0x2da0b3[_0x52cf96(0xfd)](_0x199a8f=>_0x199a8f['id']===_0x4ef5c5['id']))_0x2da0b3[_0x52cf96(0x100)](_0x4ef5c5);}return _0x2da0b3;}function resolveOnePermitRole(_0x223380,_0x87df1d){const _0x69301f=a141_0x10eef8,_0x3d09ed=_0x87df1d[_0x69301f(0x130)](),_0x3e71eb=_0x3d09ed[_0x69301f(0x12a)]();if(_0x3e71eb===_0x69301f(0x129)||_0x3e71eb==='ALL'){const _0x351946=_0x223380['find'](_0x48f537=>_0x48f537[_0x69301f(0x122)]===_0x3e71eb);if(!_0x351946)throw CliErrors[_0x69301f(0x128)](_0x69301f(0x10b)+_0x3e71eb+_0x69301f(0x11b));return _0x351946;}if(/^-?\d+$/[_0x69301f(0x131)](_0x3d09ed)){const _0x4957b9=Number(_0x3d09ed),_0x75df74=_0x223380[_0x69301f(0x149)](_0x58b18a=>_0x58b18a['id']===_0x4957b9);if(!_0x75df74)throw CliErrors[_0x69301f(0x128)](_0x69301f(0x145)+_0x4957b9+'\x20not\x20found.',_0x69301f(0x146));return _0x75df74;}const _0x13ed72=_0x223380[_0x69301f(0x12c)](_0x11d6c0=>_0x11d6c0[_0x69301f(0x143)]===_0x3d09ed);if(_0x13ed72['length']===0x0)throw CliErrors['validation'](_0x69301f(0x12f)+_0x3d09ed+_0x69301f(0xfb),_0x69301f(0x119));if(_0x13ed72[_0x69301f(0xfa)]>0x1)throw CliErrors[_0x69301f(0x128)](_0x69301f(0x12f)+_0x3d09ed+_0x69301f(0x103)+_0x13ed72['map'](_0x29f33e=>_0x29f33e['id'])[_0x69301f(0x144)](',\x20')+').',_0x69301f(0x125));return _0x13ed72[0x0];}export function projectPageSlot(_0x31aff5){const _0x47d624=a141_0x10eef8;if(!_0x31aff5)return null;return{'resourceCode':_0x31aff5['resourceCode'],'roles':(_0x31aff5[_0x47d624(0x137)]??[])[_0x47d624(0x136)](projectRoleRef)};}export function projectPagePermit(_0x43bd72){const _0xe87797=a141_0x10eef8,_0x2778b3={'menuId':_0x43bd72['menuId'],'appCode':_0x43bd72[_0xe87797(0x133)],'menuPermit':projectPageSlot(_0x43bd72['menuPermit'])};for(const _0x13e0da of PAGE_SLOT_SPECS){if(_0x13e0da[_0xe87797(0x132)]===_0xe87797(0x142))continue;_0x2778b3[_0x13e0da[_0xe87797(0x132)]]=projectPageSlot(_0x43bd72[_0x13e0da[_0xe87797(0x132)]]);}return _0x2778b3;}export function flattenMenuResources(_0x3966d1){const _0x12f75b=new Map(),_0x412297=_0x295c54=>{const _0x2e211d=a141_0x3512;for(const _0x36cee6 of _0x295c54??[]){_0x12f75b[_0x2e211d(0x12d)](_0x36cee6[_0x2e211d(0x105)],{'resourceCode':_0x36cee6[_0x2e211d(0x105)],'resourceName':_0x36cee6[_0x2e211d(0x111)],'action':_0x36cee6[_0x2e211d(0x13b)]?.[0x0]??'0'});if(_0x36cee6[_0x2e211d(0x127)])_0x412297(_0x36cee6['pageNodeList']);}};return _0x412297(_0x3966d1),_0x12f75b;}export function flattenApiResources(_0x1126dd){const _0x4d6c90=a141_0x10eef8,_0x414c77=new Map(),_0x4bc2ab=new Map();for(const _0x5460a5 of _0x1126dd){const _0x48e02e=_0x5460a5[_0x4d6c90(0x11a)]??{};for(const [_0xb9d880,_0x3ef9f9]of Object['entries'](_0x48e02e)){_0x414c77[_0x4d6c90(0x12d)](_0xb9d880,{'resourceCode':_0xb9d880,'resourceName':_0x5460a5['resourceName'],'datasetCode':_0x5460a5[_0x4d6c90(0x11c)],'action':_0x3ef9f9?.[0x0]??'0'});const _0x47fca2=_0x4bc2ab[_0x4d6c90(0x114)](_0x5460a5[_0x4d6c90(0x11c)])??[];_0x47fca2[_0x4d6c90(0x100)](_0xb9d880),_0x4bc2ab[_0x4d6c90(0x12d)](_0x5460a5[_0x4d6c90(0x11c)],_0x47fca2);}}return{'byCode':_0x414c77,'byDataset':_0x4bc2ab};}export function buildPermits(_0x47c3ff,_0x23afed){const _0x1397f4={};for(const [_0x58d116,_0x271318]of _0x47c3ff){const _0x4edf5a=_0x23afed['get'](_0x58d116)??_0x271318['action'];_0x1397f4[_0x58d116]=[_0x4edf5a];}return _0x1397f4;}export function readRoleRef(_0x2730e7){const _0xd62c81=a141_0x10eef8,_0x5ceca3=_0x2730e7[_0xd62c81(0x112)](_0xd62c81(0x106))[_0xd62c81(0x130)]();if(!_0x5ceca3)throw CliErrors[_0xd62c81(0x104)]('role','Pass\x20--role\x20<id|name>.');return _0x5ceca3;}export function readGrantRevoke(_0x32bbf1){const _0x34a9eb=a141_0x10eef8,_0x1ad797=_0x32bbf1[_0x34a9eb(0x10d)]('grant'),_0x518c90=_0x32bbf1[_0x34a9eb(0x10d)](_0x34a9eb(0x117));if(_0x1ad797&&_0x518c90)throw CliErrors[_0x34a9eb(0x128)](_0x34a9eb(0x118));if(!_0x1ad797&&!_0x518c90)throw CliErrors[_0x34a9eb(0x128)]('Missing\x20action.',_0x34a9eb(0x147));return _0x1ad797?_0x34a9eb(0x115):'0';}
@@ -1 +1 @@
1
- (function(_0x4b8c35,_0x37502b){const _0x1ec591=a141_0x2278,_0x399ee2=_0x4b8c35();while(!![]){try{const _0x5b983a=-parseInt(_0x1ec591(0x7b))/0x1*(-parseInt(_0x1ec591(0x70))/0x2)+parseInt(_0x1ec591(0x72))/0x3+parseInt(_0x1ec591(0x77))/0x4+-parseInt(_0x1ec591(0x8c))/0x5+-parseInt(_0x1ec591(0x75))/0x6*(parseInt(_0x1ec591(0x71))/0x7)+-parseInt(_0x1ec591(0x8a))/0x8+parseInt(_0x1ec591(0x86))/0x9;if(_0x5b983a===_0x37502b)break;else _0x399ee2['push'](_0x399ee2['shift']());}catch(_0x2058c4){_0x399ee2['push'](_0x399ee2['shift']());}}}(a141_0x3295,0x98475));import{existsSync}from'node:fs';function a141_0x3295(){const _0x58e91d=['1041488PohDXp','497teJoZI','174777msjyLB','trim','env','138Civkkd','length','356504ihEopr','string','cyan','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','1HPcFVN','√\x20Login\x20status:\x20','Login\x20failed','production','\x22\x20already\x20exists','Project\x20name\x20cannot\x20exceed\x2050\x20characters','cwd','√\x20Project\x20Name:\x20','Skipped','resolve','green','7566318AOYAJy','my-app','Project\x20name:','Directory\x20\x22','1362464GQvjNy','log','3565785MTHjzE','Not\x20set','test'];a141_0x3295=function(){return _0x58e91d;};return a141_0x3295();}import a141_0x3ca5d7 from'node:path';import a141_0x31919a from'chalk';import{input,confirm}from'@inquirer/prompts';import{getIsSessionValid}from'../../../auth/is-session-valid.js';function a141_0x2278(_0x18d6b3,_0x45e996){_0x18d6b3=_0x18d6b3-0x6f;const _0x329571=a141_0x3295();let _0x22780b=_0x329571[_0x18d6b3];return _0x22780b;}import{authServer}from'../../../auth/auth-server.js';import{readConfig}from'../../../utils/config.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';export async function guidedCreateProject(_0x531fc3,_0x3360aa,_0x261801){const _0x38830d=a141_0x2278,_0x2ce3f2=_0x38830d(0x87),_0x5895fa=readConfig(),_0x12aee8=typeof _0x5895fa[_0x38830d(0x74)]===_0x38830d(0x78)?_0x5895fa[_0x38830d(0x74)]:undefined,_0x341cbc=await input({'message':_0x38830d(0x88),'default':_0x2ce3f2,'validate':_0xc4bcdb=>{const _0x154296=_0x38830d,_0x75eb36=_0xc4bcdb[_0x154296(0x73)]()||_0x2ce3f2;if(_0x75eb36[_0x154296(0x76)]>0x32)return _0x154296(0x80);const _0x10224e=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(_0x75eb36&&!_0x10224e[_0x154296(0x6f)](_0x75eb36))return'Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_';const _0x429428=a141_0x3ca5d7[_0x154296(0x84)](process[_0x154296(0x81)](),_0x75eb36);if(existsSync(_0x429428))return _0x154296(0x89)+_0x75eb36+_0x154296(0x7f);return!![];}});console[_0x38830d(0x8b)](a141_0x31919a['green'](_0x38830d(0x82)+a141_0x31919a[_0x38830d(0x79)](_0x341cbc)));const _0x63ff8b=await selectSingleAppcode(_0x261801);console['log'](a141_0x31919a[_0x38830d(0x85)]('√\x20App\x20Code:\x20'+a141_0x31919a[_0x38830d(0x79)](_0x63ff8b||_0x38830d(0x8d))));if(_0x63ff8b){const _0x2e2a3a=await getIsSessionValid();if(!_0x2e2a3a){const _0x2bc2e3=await confirm({'message':_0x38830d(0x7a),'default':!![]});if(_0x2bc2e3){const _0x223029=await authServer({'silent':!![]});console[_0x38830d(0x8b)](a141_0x31919a[_0x38830d(0x85)](_0x38830d(0x7c)+a141_0x31919a[_0x38830d(0x79)](_0x223029?'Logged\x20in':_0x38830d(0x7d))));}else console[_0x38830d(0x8b)](a141_0x31919a[_0x38830d(0x85)](_0x38830d(0x7c)+a141_0x31919a[_0x38830d(0x79)](_0x38830d(0x83))));}await _0x531fc3({'projectName':_0x341cbc,'appCode':_0x63ff8b,'env':_0x3360aa||_0x12aee8||_0x38830d(0x7e)});}else await _0x531fc3({'projectName':_0x341cbc,'env':_0x3360aa||_0x12aee8||_0x38830d(0x7e)});}
1
+ (function(_0x2bf154,_0xf36968){const _0x47f5c9=a142_0x3d8d,_0x36f24f=_0x2bf154();while(!![]){try{const _0x1d501d=parseInt(_0x47f5c9(0x1cf))/0x1+parseInt(_0x47f5c9(0x1cd))/0x2+-parseInt(_0x47f5c9(0x1db))/0x3+-parseInt(_0x47f5c9(0x1c7))/0x4+-parseInt(_0x47f5c9(0x1c6))/0x5+parseInt(_0x47f5c9(0x1d6))/0x6*(parseInt(_0x47f5c9(0x1c1))/0x7)+parseInt(_0x47f5c9(0x1d0))/0x8;if(_0x1d501d===_0xf36968)break;else _0x36f24f['push'](_0x36f24f['shift']());}catch(_0x3adefc){_0x36f24f['push'](_0x36f24f['shift']());}}}(a142_0x2686,0xdfb5c));import{existsSync}from'node:fs';import a142_0x8f4841 from'node:path';import a142_0x187cfb from'chalk';function a142_0x2686(){const _0x5c4fef=['1819074kdXAtv','Project\x20name:','resolve','7zLBdbH','test','env','√\x20App\x20Code:\x20','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','8131880IopNqV','6493304rYaRgo','Not\x20set','log','Login\x20failed','green','production','837040rMoPPD','string','112483uiklev','21956104LMuVdN','cyan','√\x20Project\x20Name:\x20','cwd','my-app','Logged\x20in','8981160GBDuUt','Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','length','Project\x20name\x20cannot\x20exceed\x2050\x20characters','\x22\x20already\x20exists'];a142_0x2686=function(){return _0x5c4fef;};return a142_0x2686();}function a142_0x3d8d(_0x561889,_0x737bb4){_0x561889=_0x561889-0x1c1;const _0x268644=a142_0x2686();let _0x3d8d82=_0x268644[_0x561889];return _0x3d8d82;}import{input,confirm}from'@inquirer/prompts';import{getIsSessionValid}from'../../../auth/is-session-valid.js';import{authServer}from'../../../auth/auth-server.js';import{readConfig}from'../../../utils/config.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';export async function guidedCreateProject(_0x31e86e,_0x4671ee,_0x19dced){const _0x24c795=a142_0x3d8d,_0xd3f98e=_0x24c795(0x1d4),_0x448664=readConfig(),_0x52b775=typeof _0x448664['env']===_0x24c795(0x1ce)?_0x448664[_0x24c795(0x1c3)]:undefined,_0x130fb2=await input({'message':_0x24c795(0x1dc),'default':_0xd3f98e,'validate':_0x3ac88a=>{const _0x45a916=_0x24c795,_0x418407=_0x3ac88a['trim']()||_0xd3f98e;if(_0x418407[_0x45a916(0x1d8)]>0x32)return _0x45a916(0x1d9);const _0x533d45=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(_0x418407&&!_0x533d45[_0x45a916(0x1c2)](_0x418407))return _0x45a916(0x1d7);const _0x507569=a142_0x8f4841[_0x45a916(0x1dd)](process[_0x45a916(0x1d3)](),_0x418407);if(existsSync(_0x507569))return'Directory\x20\x22'+_0x418407+_0x45a916(0x1da);return!![];}});console[_0x24c795(0x1c9)](a142_0x187cfb[_0x24c795(0x1cb)](_0x24c795(0x1d2)+a142_0x187cfb['cyan'](_0x130fb2)));const _0x35e6ce=await selectSingleAppcode(_0x19dced);console[_0x24c795(0x1c9)](a142_0x187cfb[_0x24c795(0x1cb)](_0x24c795(0x1c4)+a142_0x187cfb[_0x24c795(0x1d1)](_0x35e6ce||_0x24c795(0x1c8))));if(_0x35e6ce){const _0x2b3f1a=await getIsSessionValid();if(!_0x2b3f1a){const _0x491224=await confirm({'message':_0x24c795(0x1c5),'default':!![]});if(_0x491224){const _0x52f4a5=await authServer({'silent':!![]});console['log'](a142_0x187cfb[_0x24c795(0x1cb)]('√\x20Login\x20status:\x20'+a142_0x187cfb[_0x24c795(0x1d1)](_0x52f4a5?_0x24c795(0x1d5):_0x24c795(0x1ca))));}else console['log'](a142_0x187cfb[_0x24c795(0x1cb)]('√\x20Login\x20status:\x20'+a142_0x187cfb[_0x24c795(0x1d1)]('Skipped')));}await _0x31e86e({'projectName':_0x130fb2,'appCode':_0x35e6ce,'env':_0x4671ee||_0x52b775||_0x24c795(0x1cc)});}else await _0x31e86e({'projectName':_0x130fb2,'env':_0x4671ee||_0x52b775||_0x24c795(0x1cc)});}
@@ -1 +1 @@
1
- function a142_0x2e86(_0x421647,_0x4f5c33){_0x421647=_0x421647-0x175;const _0x567b97=a142_0x567b();let _0x2e86e5=_0x567b97[_0x421647];return _0x2e86e5;}(function(_0x2b36d0,_0x2e0ac3){const _0x17af80=a142_0x2e86,_0x2a1e8c=_0x2b36d0();while(!![]){try{const _0x178d73=parseInt(_0x17af80(0x175))/0x1+parseInt(_0x17af80(0x17f))/0x2*(parseInt(_0x17af80(0x17d))/0x3)+parseInt(_0x17af80(0x17c))/0x4+parseInt(_0x17af80(0x17b))/0x5+parseInt(_0x17af80(0x179))/0x6*(parseInt(_0x17af80(0x176))/0x7)+parseInt(_0x17af80(0x181))/0x8*(-parseInt(_0x17af80(0x178))/0x9)+parseInt(_0x17af80(0x177))/0xa*(-parseInt(_0x17af80(0x17a))/0xb);if(_0x178d73===_0x2e0ac3)break;else _0x2a1e8c['push'](_0x2a1e8c['shift']());}catch(_0x2675bd){_0x2a1e8c['push'](_0x2a1e8c['shift']());}}}(a142_0x567b,0xc491c));export function formatElapsed(_0x2e385c){const _0x1e8665=a142_0x2e86,_0x596d08=Date[_0x1e8665(0x180)]()-_0x2e385c;if(_0x596d08<0x3e8)return _0x596d08+'ms';const _0x4e9522=(_0x596d08/0x3e8)['toFixed'](0x2),_0x56f2c5=_0x4e9522[_0x1e8665(0x17e)](/\.?0+$/u,'');return _0x56f2c5+'s';}function a142_0x567b(){const _0x4d8639=['replace','757994bIDFJb','now','2488oFFKej','1316747VJmBTr','7DQveLB','94570fehlaN','19593mRjTsI','2517306fekSZt','3014hnvKxU','2312240BGwAnN','4466692WryhWj','6jGSoAQ'];a142_0x567b=function(){return _0x4d8639;};return a142_0x567b();}
1
+ function a143_0xbcbf(_0x5da6f2,_0x5327b4){_0x5da6f2=_0x5da6f2-0x1b2;const _0xc3b58a=a143_0xc3b5();let _0xbcbf3c=_0xc3b58a[_0x5da6f2];return _0xbcbf3c;}(function(_0x35dd6f,_0x213883){const _0x450203=a143_0xbcbf,_0x322fe5=_0x35dd6f();while(!![]){try{const _0x2d7af6=parseInt(_0x450203(0x1b4))/0x1+-parseInt(_0x450203(0x1b6))/0x2+parseInt(_0x450203(0x1b9))/0x3*(-parseInt(_0x450203(0x1b2))/0x4)+parseInt(_0x450203(0x1be))/0x5*(-parseInt(_0x450203(0x1bd))/0x6)+-parseInt(_0x450203(0x1b5))/0x7*(parseInt(_0x450203(0x1bc))/0x8)+-parseInt(_0x450203(0x1ba))/0x9*(parseInt(_0x450203(0x1bb))/0xa)+parseInt(_0x450203(0x1b7))/0xb;if(_0x2d7af6===_0x213883)break;else _0x322fe5['push'](_0x322fe5['shift']());}catch(_0x11ac56){_0x322fe5['push'](_0x322fe5['shift']());}}}(a143_0xc3b5,0x85431));export function formatElapsed(_0x36d5e7){const _0x569fe1=a143_0xbcbf,_0x52bf07=Date[_0x569fe1(0x1b8)]()-_0x36d5e7;if(_0x52bf07<0x3e8)return _0x52bf07+'ms';const _0x45bc17=(_0x52bf07/0x3e8)['toFixed'](0x2),_0x53ff32=_0x45bc17[_0x569fe1(0x1b3)](/\.?0+$/u,'');return _0x53ff32+'s';}function a143_0xc3b5(){const _0x9a008d=['6261006QhznXP','5fuiTyP','124doseuW','replace','294765nlXyFb','357VMIBlk','204612NhxGUG','34660395uIvjRZ','now','94293bheNTv','2660652IoXGRp','20jiqzTK','29560YXKDWE'];a143_0xc3b5=function(){return _0x9a008d;};return a143_0xc3b5();}
@@ -1 +1 @@
1
- (function(_0x3413bd,_0x117d28){const _0x1f6d30=a143_0x57ff,_0x4f08f7=_0x3413bd();while(!![]){try{const _0x5cafc3=parseInt(_0x1f6d30(0x21a))/0x1*(-parseInt(_0x1f6d30(0x217))/0x2)+-parseInt(_0x1f6d30(0x223))/0x3*(parseInt(_0x1f6d30(0x24c))/0x4)+parseInt(_0x1f6d30(0x1f2))/0x5*(-parseInt(_0x1f6d30(0x231))/0x6)+-parseInt(_0x1f6d30(0x243))/0x7*(parseInt(_0x1f6d30(0x20c))/0x8)+-parseInt(_0x1f6d30(0x1f1))/0x9*(parseInt(_0x1f6d30(0x229))/0xa)+-parseInt(_0x1f6d30(0x23c))/0xb*(-parseInt(_0x1f6d30(0x20a))/0xc)+parseInt(_0x1f6d30(0x212))/0xd*(parseInt(_0x1f6d30(0x1fa))/0xe);if(_0x5cafc3===_0x117d28)break;else _0x4f08f7['push'](_0x4f08f7['shift']());}catch(_0x1c74f3){_0x4f08f7['push'](_0x4f08f7['shift']());}}}(a143_0x49d1,0x8c3d4));import a143_0x544674 from'path';import a143_0x2b8d26 from'fs';import a143_0x520a72 from'chalk';import a143_0x15c5a9 from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../core/api-client.js';function a143_0x49d1(){const _0x1f18d9=['1.0.0','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','projectCode','245102oWeabZ','writeFileSync','create','3AWKqkA','gray','W_OK','cd\x20','modelCount','log','name','Project\x20directory\x20','setLogPath','147954BGfJVT','join','√\x20package.json\x20updated:\x20name=','readFileSync','warn','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','11051470KhjRYJ','...','\x20Generated\x20by\x20rabetbase\x20cli\x20','CLI\x20版本检查','\x20√\x20','start','resolve','bold','12GXElXb','apps','\x20api\x20pull','cyan','green','*\x20Configuring\x20AppCode\x20for\x20project\x20','constants','\x20\x202.\x20Pull\x20API\x20configuration:\x20','项目创建完成:\x20','rmSync','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','11pUodpr','清理项目目录失败:\x20','description','\x20|\x20Default:\x20','配置应用AppCode失败','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','\x20config\x20set\x20appcode\x20<app-code>\x27','2544983MKIUQb','info','🚀\x20Next\x20Steps:','version','\x20\x201.\x20Start\x20project:\x20','√\x20Pulled\x20','defaultApp','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','package.json','68VqaBbN','projectName','stringify','*\x20Pulling\x20API\x20configuration...','项目创建失败:\x20','配置应用AppCode:\x20','length','9oCGkxi','1111960MqAatd','开始创建项目:\x20','API\x20配置拉取异常','production','\x20&&\x20','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','repeat','fail','896WzViKC','cookie','cwd','\x20|\x20AppCode:\x20','appCode','success','env','needsUpgrade','更新\x20package.json\x20name','existsSync','Format\x20code','currentVersion','minimumVersion','stop','parse','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','330972tUyArx','message','24PUSDqm','accessSync','chdir','Project\x20name:\x20','keys','Project\x20name\x20cannot\x20be\x20empty','892437pbuPor','utf8'];a143_0x49d1=function(){return _0x1f18d9;};return a143_0x49d1();}import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{readConfig}from'../../../utils/config.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';function a143_0x57ff(_0x2698ec,_0x95c510){_0x2698ec=_0x2698ec-0x1ee;const _0x49d1ab=a143_0x49d1();let _0x57ff2f=_0x49d1ab[_0x2698ec];return _0x57ff2f;}import{logger}from'../../../utils/logger.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getRabetbaseCliPackageRoot}from'../../../commands/project/create/project-template-path.js';export async function createApp(_0x252313){const _0x570754=a143_0x57ff,_0x1c2e21=await checkCliVersion();(_0x1c2e21[_0x570754(0x201)]||_0x1c2e21['belowMinimum'])&&(printCliUpgradeWarning(_0x1c2e21),assertCliVersionSupported(_0x1c2e21),logger[_0x570754(0x244)](_0x570754(0x219),_0x570754(0x22c),{'currentVersion':_0x1c2e21[_0x570754(0x205)],'stableVersion':_0x1c2e21['stableVersion'],'minimumVersion':_0x1c2e21[_0x570754(0x206)],'needsUpgrade':_0x1c2e21['needsUpgrade'],'belowMinimum':_0x1c2e21['belowMinimum']}));if(_0x252313[_0x570754(0x216)]&&_0x252313[_0x570754(0x1fe)])await runCreate({'projectName':_0x252313['projectCode'],'appCode':_0x252313[_0x570754(0x1fe)],'env':_0x252313[_0x570754(0x200)]},_0x252313);else{if(_0x252313[_0x570754(0x216)]){const _0x2017a7=await selectSingleAppcode(_0x252313[_0x570754(0x1fb)]);await runCreate({'projectName':_0x252313[_0x570754(0x216)],'appCode':_0x2017a7||undefined,'env':_0x252313['env']},_0x252313);}else await guidedCreateProject(_0x291b56=>runCreate(_0x291b56,_0x252313),_0x252313[_0x570754(0x200)],_0x252313[_0x570754(0x1fb)]);}}async function runCreate(_0x11283a,_0x3e8425){const _0x213e78=a143_0x57ff;if(!_0x11283a[_0x213e78(0x24d)]||_0x11283a[_0x213e78(0x24d)]['trim']()==='')throw new Error(_0x213e78(0x211));const _0x555065=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x555065['test'](_0x11283a['projectName']))throw new Error(_0x213e78(0x1f7));if(_0x11283a['projectName'][_0x213e78(0x1f0)]>0x64)throw new Error(_0x213e78(0x24a));const _0x200cd3=a143_0x544674[_0x213e78(0x22f)](process[_0x213e78(0x1fc)](),_0x11283a[_0x213e78(0x24d)]);if(a143_0x2b8d26[_0x213e78(0x203)](_0x200cd3))throw new Error(_0x213e78(0x221)+_0x11283a['projectName']+'\x20already\x20exists');try{a143_0x2b8d26[_0x213e78(0x20d)](a143_0x544674['dirname'](_0x200cd3),a143_0x2b8d26[_0x213e78(0x237)][_0x213e78(0x21c)]);}catch{throw new Error(_0x213e78(0x209));}logger[_0x213e78(0x222)](_0x200cd3),logger['info'](_0x213e78(0x219),_0x213e78(0x1f3)+_0x11283a['projectName'],{'projectDir':_0x200cd3,'appCode':_0x11283a[_0x213e78(0x1fe)]}),console[_0x213e78(0x21f)](),console['log'](a143_0x520a72[_0x213e78(0x235)](_0x213e78(0x22d))+_0x213e78(0x20f)+a143_0x520a72['green'](_0x11283a[_0x213e78(0x24d)])+(_0x11283a[_0x213e78(0x1fe)]?_0x213e78(0x1fd)+a143_0x520a72[_0x213e78(0x234)](_0x11283a[_0x213e78(0x1fe)]):''));try{await runTask('Copy\x20project\x20files',()=>copyProjectTemplate(_0x11283a[_0x213e78(0x24d)])),await updatePackageJsonName(_0x11283a[_0x213e78(0x24d)]),await runTask('Install\x20dependencies',()=>installDependencies(_0x11283a[_0x213e78(0x24d)])),await runTask(_0x213e78(0x204),()=>formatProjectCode(_0x11283a[_0x213e78(0x24d)])),await configureAppCode(_0x11283a[_0x213e78(0x24d)],_0x11283a['appCode']||'',_0x11283a[_0x213e78(0x200)]);let _0x4866be=![];if(_0x11283a['appCode']){console[_0x213e78(0x21f)](_0x213e78(0x24f));const _0xb9a489=process['cwd']();try{process[_0x213e78(0x20e)](_0x200cd3);const _0x16b917=_0x11283a[_0x213e78(0x200)]||_0x213e78(0x1f5);initEnv(_0x16b917);const {configArray:_0x3db896}=await fetchModelList(_0x11283a[_0x213e78(0x1fe)],_0x3e8425[_0x213e78(0x1fb)]||''),_0x30c5df=DEFAULT_API_DIR,_0x1df86a=await generateApiFile(_0x3db896,'',_0x11283a[_0x213e78(0x1fe)],!![],_0x16b917,_0x30c5df);console['log'](_0x213e78(0x248)+_0x3db896[_0x213e78(0x1f0)]+'\x20dataset(s),\x20generated\x20'+_0x1df86a[_0x213e78(0x21e)]+'\x20model(s)'),logger[_0x213e78(0x244)](_0x213e78(0x219),'API\x20configuration\x20pulled:\x20'+_0x11283a['appCode']);}catch(_0x6a34c3){_0x4866be=!![],console[_0x213e78(0x21f)](_0x213e78(0x23b)),logger[_0x213e78(0x227)](_0x213e78(0x219),_0x213e78(0x1f4),{'error':_0x6a34c3 instanceof Error?_0x6a34c3[_0x213e78(0x20b)]:String(_0x6a34c3)});}finally{process[_0x213e78(0x20e)](_0xb9a489);}}logger[_0x213e78(0x1ff)](_0x213e78(0x219),_0x213e78(0x239)+_0x11283a[_0x213e78(0x24d)]),console[_0x213e78(0x21f)](),console[_0x213e78(0x21f)](a143_0x520a72[_0x213e78(0x235)]('─'['repeat'](0x3c))),console[_0x213e78(0x21f)](a143_0x520a72[_0x213e78(0x234)]['bold'](_0x213e78(0x245))),console[_0x213e78(0x21f)](),console[_0x213e78(0x21f)](_0x213e78(0x247)+a143_0x520a72[_0x213e78(0x234)][_0x213e78(0x230)](_0x213e78(0x21d)+_0x11283a[_0x213e78(0x24d)]+_0x213e78(0x1f6)+CLI_BIN_NAME+'\x20run\x20start')),_0x4866be&&console[_0x213e78(0x21f)](_0x213e78(0x238)+a143_0x520a72[_0x213e78(0x234)][_0x213e78(0x230)](CLI_BIN_NAME+_0x213e78(0x233))),console[_0x213e78(0x21f)](a143_0x520a72[_0x213e78(0x235)]('─'[_0x213e78(0x1f8)](0x3c)));}catch(_0xd9362e){logger['error'](_0x213e78(0x219),_0x213e78(0x1ee)+_0x11283a[_0x213e78(0x24d)],{'error':_0xd9362e instanceof Error?_0xd9362e[_0x213e78(0x20b)]:String(_0xd9362e)});try{a143_0x2b8d26[_0x213e78(0x203)](_0x200cd3)&&(console[_0x213e78(0x21f)]('*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20'+_0x200cd3),a143_0x2b8d26[_0x213e78(0x23a)](_0x200cd3,{'recursive':!![],'force':!![]}));}catch{logger[_0x213e78(0x227)]('create',_0x213e78(0x23d)+_0x200cd3);}throw _0xd9362e;}}async function runTask(_0x556e67,_0x552eff){const _0x39a1f5=a143_0x57ff,_0x21d6f0=a143_0x15c5a9(_0x556e67+_0x39a1f5(0x22a))[_0x39a1f5(0x22e)]();try{const _0x5ac5ab=await _0x552eff();_0x21d6f0[_0x39a1f5(0x207)](),console[_0x39a1f5(0x21f)](''+a143_0x520a72[_0x39a1f5(0x235)](_0x39a1f5(0x22d))+_0x556e67+'\x20'+a143_0x520a72[_0x39a1f5(0x21b)]('['+_0x5ac5ab+']'));}catch(_0x489ef9){_0x21d6f0[_0x39a1f5(0x1f9)](_0x556e67);throw _0x489ef9;}}async function updatePackageJsonName(_0x163c61){const _0x19bc72=a143_0x57ff,_0x2dad67=a143_0x544674[_0x19bc72(0x22f)](process['cwd'](),_0x163c61),_0x1c92de=a143_0x544674[_0x19bc72(0x224)](_0x2dad67,_0x19bc72(0x24b));try{console[_0x19bc72(0x21f)](_0x19bc72(0x241));const _0x3c91d9=getRabetbaseCliPackageRoot(),_0x57f80c=a143_0x544674['join'](_0x3c91d9,'package.json');let _0x3966af=_0x19bc72(0x214);try{const _0x4444f9=JSON['parse'](a143_0x2b8d26[_0x19bc72(0x226)](_0x57f80c,_0x19bc72(0x213)));_0x3966af=_0x4444f9[_0x19bc72(0x246)]||_0x19bc72(0x214);}catch{}const _0x5e514c=a143_0x2b8d26[_0x19bc72(0x226)](_0x1c92de,_0x19bc72(0x213)),_0x1cc08a=JSON[_0x19bc72(0x208)](_0x5e514c);_0x1cc08a[_0x19bc72(0x220)]=_0x163c61,_0x1cc08a[_0x19bc72(0x23e)]=_0x163c61+_0x19bc72(0x22b)+_0x3966af,a143_0x2b8d26[_0x19bc72(0x218)](_0x1c92de,JSON[_0x19bc72(0x24e)](_0x1cc08a,null,0x2)+'\x0a','utf8'),console[_0x19bc72(0x21f)](_0x19bc72(0x225)+_0x163c61),logger['info'](_0x19bc72(0x219),_0x19bc72(0x202));}catch(_0x209131){logger['error'](_0x19bc72(0x219),'更新\x20package.json\x20失败');throw _0x209131;}}async function configureAppCode(_0x3a4bb7,_0x2b8427,_0x1512eb){const _0x423395=a143_0x57ff,_0x2aee15=a143_0x544674[_0x423395(0x22f)](process[_0x423395(0x1fc)](),_0x3a4bb7),_0x2dcc23=a143_0x544674[_0x423395(0x224)](_0x2aee15,NEW_CONFIG_NAME);try{_0x2b8427?console['log'](_0x423395(0x236)+_0x3a4bb7+':\x20'+_0x2b8427):console[_0x423395(0x21f)](_0x423395(0x215)+_0x3a4bb7);const _0x3027d3=getRabetbaseCliPackageRoot(),_0x460975=a143_0x544674[_0x423395(0x224)](_0x3027d3,_0x423395(0x24b));let _0x5dd327=_0x423395(0x214);try{const _0x1d9419=JSON[_0x423395(0x208)](a143_0x2b8d26['readFileSync'](_0x460975,'utf8'));_0x5dd327=_0x1d9419[_0x423395(0x246)]||_0x423395(0x214);}catch{}const _0x471e18=readConfig(),_0x205184=typeof _0x471e18[_0x423395(0x200)]==='string'?_0x471e18[_0x423395(0x200)]:undefined,_0x4b18a8={};for(const _0x31dca6 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x471e18[_0x31dca6]!=null)_0x4b18a8[_0x31dca6]=_0x471e18[_0x31dca6];}const _0x127db8=buildCanonicalProjectConfig(_0x4b18a8,{'appCodes':_0x2b8427?[_0x2b8427]:[],'env':_0x1512eb||_0x205184||'production','metadata':{'createdAt':new Date()['toLocaleString'](),'version':_0x5dd327}});writeConfigFile(_0x2dcc23,_0x127db8),_0x2b8427?console[_0x423395(0x21f)]('√\x20Configuration\x20file\x20created,\x20Apps:\x20'+Object[_0x423395(0x210)](_0x127db8[_0x423395(0x232)]||{})[_0x423395(0x224)](',\x20')+_0x423395(0x23f)+_0x127db8[_0x423395(0x249)]):console[_0x423395(0x21f)](_0x423395(0x228)+CLI_BIN_NAME+_0x423395(0x242)),logger['info'](_0x423395(0x219),_0x423395(0x1ef)+_0x2b8427);}catch(_0x5455d7){logger['error'](_0x423395(0x219),_0x423395(0x240));}}
1
+ (function(_0x293d2d,_0x13a56d){const _0x57c380=a144_0x3cd1,_0x5602f4=_0x293d2d();while(!![]){try{const _0x44db98=-parseInt(_0x57c380(0xf6))/0x1+-parseInt(_0x57c380(0xf8))/0x2*(parseInt(_0x57c380(0x112))/0x3)+-parseInt(_0x57c380(0x114))/0x4+-parseInt(_0x57c380(0xfa))/0x5*(-parseInt(_0x57c380(0x12c))/0x6)+-parseInt(_0x57c380(0x118))/0x7*(parseInt(_0x57c380(0x126))/0x8)+parseInt(_0x57c380(0x107))/0x9*(-parseInt(_0x57c380(0xde))/0xa)+parseInt(_0x57c380(0x106))/0xb;if(_0x44db98===_0x13a56d)break;else _0x5602f4['push'](_0x5602f4['shift']());}catch(_0x13f33e){_0x5602f4['push'](_0x5602f4['shift']());}}}(a144_0x4a0d,0x4b81c));function a144_0x4a0d(){const _0x2aa772=['package.json','Project\x20directory\x20','🚀\x20Next\x20Steps:','Project\x20name\x20cannot\x20be\x20empty','1930QesKoV','description','*\x20Configuring\x20AppCode\x20for\x20project\x20','开始创建项目:\x20','info','readFileSync','rmSync','dirname','API\x20configuration\x20pulled:\x20','fail','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','green','currentVersion','cwd','\x20run\x20start','create','projectCode','bold','\x20|\x20Default:\x20','\x20already\x20exists','defaultApp','CLI\x20版本检查','log','463437naFjXw','更新\x20package.json\x20失败','42726XmdwoE','version','5Nrvpuc','gray','modelCount','cookie','Project\x20name:\x20','\x20config\x20set\x20appcode\x20<app-code>\x27','\x20\x202.\x20Pull\x20API\x20configuration:\x20','更新\x20package.json\x20name','utf8','accessSync','项目创建失败:\x20','API\x20配置拉取异常','18648036WuhXUm','4887fphNKU','belowMinimum','√\x20Pulled\x20','\x20&&\x20','stringify','minimumVersion','length','toLocaleString','Install\x20dependencies','join','repeat','75VWttfg','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','1200724FGefUQ','Format\x20code','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','appCode','21gSBvFM','chdir','projectName','constants','\x20dataset(s),\x20generated\x20','string','resolve','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','\x20\x201.\x20Start\x20project:\x20','\x20model(s)','warn','cyan','\x20√\x20','message','373992zDUtwb','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','production','1.0.0','\x20api\x20pull','success','940434ewTPoF','test','existsSync','*\x20Pulling\x20API\x20configuration...','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','cd\x20','start','needsUpgrade','√\x20Configuration\x20file\x20created,\x20Apps:\x20','error','env','parse','stop','\x20|\x20AppCode:\x20'];a144_0x4a0d=function(){return _0x2aa772;};return a144_0x4a0d();}import a144_0x3c4032 from'path';import a144_0x46a771 from'fs';import a144_0x359e50 from'chalk';function a144_0x3cd1(_0x365bb8,_0x23776b){_0x365bb8=_0x365bb8-0xce;const _0x4a0d7b=a144_0x4a0d();let _0x3cd18c=_0x4a0d7b[_0x365bb8];return _0x3cd18c;}import a144_0xbd034 from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../core/api-client.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{readConfig}from'../../../utils/config.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';import{logger}from'../../../utils/logger.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getRabetbaseCliPackageRoot}from'../../../commands/project/create/project-template-path.js';export async function createApp(_0x636bd5){const _0x431417=a144_0x3cd1,_0x4dca94=await checkCliVersion();(_0x4dca94[_0x431417(0xd3)]||_0x4dca94[_0x431417(0x108)])&&(printCliUpgradeWarning(_0x4dca94),assertCliVersionSupported(_0x4dca94),logger[_0x431417(0xe2)](_0x431417(0xee),_0x431417(0xf4),{'currentVersion':_0x4dca94[_0x431417(0xeb)],'stableVersion':_0x4dca94['stableVersion'],'minimumVersion':_0x4dca94[_0x431417(0x10c)],'needsUpgrade':_0x4dca94['needsUpgrade'],'belowMinimum':_0x4dca94[_0x431417(0x108)]}));if(_0x636bd5['projectCode']&&_0x636bd5[_0x431417(0x117)])await runCreate({'projectName':_0x636bd5[_0x431417(0xef)],'appCode':_0x636bd5['appCode'],'env':_0x636bd5['env']},_0x636bd5);else{if(_0x636bd5['projectCode']){const _0x38dca5=await selectSingleAppcode(_0x636bd5['cookie']);await runCreate({'projectName':_0x636bd5['projectCode'],'appCode':_0x38dca5||undefined,'env':_0x636bd5['env']},_0x636bd5);}else await guidedCreateProject(_0x1023d2=>runCreate(_0x1023d2,_0x636bd5),_0x636bd5['env'],_0x636bd5['cookie']);}}async function runCreate(_0x567d88,_0x212c1e){const _0x28f3b7=a144_0x3cd1;if(!_0x567d88[_0x28f3b7(0x11a)]||_0x567d88['projectName']['trim']()==='')throw new Error(_0x28f3b7(0xdd));const _0x34efdf=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x34efdf[_0x28f3b7(0x12d)](_0x567d88[_0x28f3b7(0x11a)]))throw new Error(_0x28f3b7(0x127));if(_0x567d88['projectName'][_0x28f3b7(0x10d)]>0x64)throw new Error(_0x28f3b7(0x113));const _0x7823ef=a144_0x3c4032[_0x28f3b7(0x11e)](process[_0x28f3b7(0xec)](),_0x567d88[_0x28f3b7(0x11a)]);if(a144_0x46a771[_0x28f3b7(0xce)](_0x7823ef))throw new Error(_0x28f3b7(0xdb)+_0x567d88[_0x28f3b7(0x11a)]+_0x28f3b7(0xf2));try{a144_0x46a771[_0x28f3b7(0x103)](a144_0x3c4032[_0x28f3b7(0xe5)](_0x7823ef),a144_0x46a771[_0x28f3b7(0x11b)]['W_OK']);}catch{throw new Error(_0x28f3b7(0xe9));}logger['setLogPath'](_0x7823ef),logger['info'](_0x28f3b7(0xee),_0x28f3b7(0xe1)+_0x567d88[_0x28f3b7(0x11a)],{'projectDir':_0x7823ef,'appCode':_0x567d88['appCode']}),console[_0x28f3b7(0xf5)](),console[_0x28f3b7(0xf5)](a144_0x359e50['green'](_0x28f3b7(0x124))+_0x28f3b7(0xfe)+a144_0x359e50['green'](_0x567d88[_0x28f3b7(0x11a)])+(_0x567d88[_0x28f3b7(0x117)]?_0x28f3b7(0xd9)+a144_0x359e50[_0x28f3b7(0x123)](_0x567d88[_0x28f3b7(0x117)]):''));try{await runTask('Copy\x20project\x20files',()=>copyProjectTemplate(_0x567d88['projectName'])),await updatePackageJsonName(_0x567d88['projectName']),await runTask(_0x28f3b7(0x10f),()=>installDependencies(_0x567d88['projectName'])),await runTask(_0x28f3b7(0x115),()=>formatProjectCode(_0x567d88['projectName'])),await configureAppCode(_0x567d88[_0x28f3b7(0x11a)],_0x567d88[_0x28f3b7(0x117)]||'',_0x567d88['env']);let _0x49583b=![];if(_0x567d88[_0x28f3b7(0x117)]){console['log'](_0x28f3b7(0xcf));const _0x9a5942=process['cwd']();try{process[_0x28f3b7(0x119)](_0x7823ef);const _0x431920=_0x567d88['env']||'production';initEnv(_0x431920);const {configArray:_0x50fa21}=await fetchModelList(_0x567d88[_0x28f3b7(0x117)],_0x212c1e[_0x28f3b7(0xfd)]||''),_0x3e06f4=DEFAULT_API_DIR,_0x394717=await generateApiFile(_0x50fa21,'',_0x567d88[_0x28f3b7(0x117)],!![],_0x431920,_0x3e06f4);console['log'](_0x28f3b7(0x109)+_0x50fa21[_0x28f3b7(0x10d)]+_0x28f3b7(0x11c)+_0x394717[_0x28f3b7(0xfc)]+_0x28f3b7(0x121)),logger[_0x28f3b7(0xe2)](_0x28f3b7(0xee),_0x28f3b7(0xe6)+_0x567d88[_0x28f3b7(0x117)]);}catch(_0x10018a){_0x49583b=!![],console['log'](_0x28f3b7(0xe8)),logger[_0x28f3b7(0x122)]('create',_0x28f3b7(0x105),{'error':_0x10018a instanceof Error?_0x10018a[_0x28f3b7(0x125)]:String(_0x10018a)});}finally{process['chdir'](_0x9a5942);}}logger[_0x28f3b7(0x12b)](_0x28f3b7(0xee),'项目创建完成:\x20'+_0x567d88[_0x28f3b7(0x11a)]),console[_0x28f3b7(0xf5)](),console['log'](a144_0x359e50['green']('─'[_0x28f3b7(0x111)](0x3c))),console[_0x28f3b7(0xf5)](a144_0x359e50['cyan']['bold'](_0x28f3b7(0xdc))),console['log'](),console[_0x28f3b7(0xf5)](_0x28f3b7(0x120)+a144_0x359e50[_0x28f3b7(0x123)][_0x28f3b7(0xf0)](_0x28f3b7(0xd1)+_0x567d88[_0x28f3b7(0x11a)]+_0x28f3b7(0x10a)+CLI_BIN_NAME+_0x28f3b7(0xed))),_0x49583b&&console[_0x28f3b7(0xf5)](_0x28f3b7(0x100)+a144_0x359e50[_0x28f3b7(0x123)][_0x28f3b7(0xf0)](CLI_BIN_NAME+_0x28f3b7(0x12a))),console[_0x28f3b7(0xf5)](a144_0x359e50[_0x28f3b7(0xea)]('─'[_0x28f3b7(0x111)](0x3c)));}catch(_0x273ea4){logger['error'](_0x28f3b7(0xee),_0x28f3b7(0x104)+_0x567d88['projectName'],{'error':_0x273ea4 instanceof Error?_0x273ea4[_0x28f3b7(0x125)]:String(_0x273ea4)});try{a144_0x46a771[_0x28f3b7(0xce)](_0x7823ef)&&(console[_0x28f3b7(0xf5)](_0x28f3b7(0x116)+_0x7823ef),a144_0x46a771[_0x28f3b7(0xe4)](_0x7823ef,{'recursive':!![],'force':!![]}));}catch{logger['warn'](_0x28f3b7(0xee),'清理项目目录失败:\x20'+_0x7823ef);}throw _0x273ea4;}}async function runTask(_0x3983bb,_0x3499b5){const _0x2fad7b=a144_0x3cd1,_0x280440=a144_0xbd034(_0x3983bb+'...')[_0x2fad7b(0xd2)]();try{const _0x5e973c=await _0x3499b5();_0x280440[_0x2fad7b(0xd8)](),console[_0x2fad7b(0xf5)](''+a144_0x359e50[_0x2fad7b(0xea)](_0x2fad7b(0x124))+_0x3983bb+'\x20'+a144_0x359e50[_0x2fad7b(0xfb)]('['+_0x5e973c+']'));}catch(_0x38b146){_0x280440[_0x2fad7b(0xe7)](_0x3983bb);throw _0x38b146;}}async function updatePackageJsonName(_0xa5685f){const _0x35a34a=a144_0x3cd1,_0x209627=a144_0x3c4032[_0x35a34a(0x11e)](process[_0x35a34a(0xec)](),_0xa5685f),_0x253536=a144_0x3c4032[_0x35a34a(0x110)](_0x209627,'package.json');try{console['log'](_0x35a34a(0x11f));const _0x3e0bf8=getRabetbaseCliPackageRoot(),_0x4a9cbb=a144_0x3c4032[_0x35a34a(0x110)](_0x3e0bf8,_0x35a34a(0xda));let _0x3a6330='1.0.0';try{const _0x1fe266=JSON['parse'](a144_0x46a771[_0x35a34a(0xe3)](_0x4a9cbb,_0x35a34a(0x102)));_0x3a6330=_0x1fe266[_0x35a34a(0xf9)]||'1.0.0';}catch{}const _0x207371=a144_0x46a771[_0x35a34a(0xe3)](_0x253536,'utf8'),_0x2334fe=JSON[_0x35a34a(0xd7)](_0x207371);_0x2334fe['name']=_0xa5685f,_0x2334fe[_0x35a34a(0xdf)]=_0xa5685f+'\x20Generated\x20by\x20rabetbase\x20cli\x20'+_0x3a6330,a144_0x46a771['writeFileSync'](_0x253536,JSON[_0x35a34a(0x10b)](_0x2334fe,null,0x2)+'\x0a',_0x35a34a(0x102)),console['log']('√\x20package.json\x20updated:\x20name='+_0xa5685f),logger[_0x35a34a(0xe2)]('create',_0x35a34a(0x101));}catch(_0x524d83){logger[_0x35a34a(0xd5)](_0x35a34a(0xee),_0x35a34a(0xf7));throw _0x524d83;}}async function configureAppCode(_0x14a32d,_0x22d8d2,_0xe10fa0){const _0xc165fa=a144_0x3cd1,_0x247fad=a144_0x3c4032[_0xc165fa(0x11e)](process[_0xc165fa(0xec)](),_0x14a32d),_0x3894e8=a144_0x3c4032[_0xc165fa(0x110)](_0x247fad,NEW_CONFIG_NAME);try{_0x22d8d2?console[_0xc165fa(0xf5)](_0xc165fa(0xe0)+_0x14a32d+':\x20'+_0x22d8d2):console[_0xc165fa(0xf5)]('*\x20Creating\x20configuration\x20file\x20for\x20project\x20'+_0x14a32d);const _0x239ac0=getRabetbaseCliPackageRoot(),_0x55527f=a144_0x3c4032[_0xc165fa(0x110)](_0x239ac0,'package.json');let _0x1e5a34=_0xc165fa(0x129);try{const _0x45aa07=JSON[_0xc165fa(0xd7)](a144_0x46a771[_0xc165fa(0xe3)](_0x55527f,'utf8'));_0x1e5a34=_0x45aa07[_0xc165fa(0xf9)]||_0xc165fa(0x129);}catch{}const _0x4713a3=readConfig(),_0x3cedf8=typeof _0x4713a3[_0xc165fa(0xd6)]===_0xc165fa(0x11d)?_0x4713a3[_0xc165fa(0xd6)]:undefined,_0x59dcb5={};for(const _0x171615 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x4713a3[_0x171615]!=null)_0x59dcb5[_0x171615]=_0x4713a3[_0x171615];}const _0x4d97a8=buildCanonicalProjectConfig(_0x59dcb5,{'appCodes':_0x22d8d2?[_0x22d8d2]:[],'env':_0xe10fa0||_0x3cedf8||_0xc165fa(0x128),'metadata':{'createdAt':new Date()[_0xc165fa(0x10e)](),'version':_0x1e5a34}});writeConfigFile(_0x3894e8,_0x4d97a8),_0x22d8d2?console[_0xc165fa(0xf5)](_0xc165fa(0xd4)+Object['keys'](_0x4d97a8['apps']||{})[_0xc165fa(0x110)](',\x20')+_0xc165fa(0xf1)+_0x4d97a8[_0xc165fa(0xf3)]):console[_0xc165fa(0xf5)](_0xc165fa(0xd0)+CLI_BIN_NAME+_0xc165fa(0xff)),logger[_0xc165fa(0xe2)](_0xc165fa(0xee),'配置应用AppCode:\x20'+_0x22d8d2);}catch(_0x289aed){logger[_0xc165fa(0xd5)]('create','配置应用AppCode失败');}}
@@ -1 +1 @@
1
- (function(_0x47dc19,_0x3b22d5){const _0x516866=a144_0x4c79,_0x21c8f5=_0x47dc19();while(!![]){try{const _0x255889=-parseInt(_0x516866(0xae))/0x1*(parseInt(_0x516866(0xb7))/0x2)+-parseInt(_0x516866(0x96))/0x3*(-parseInt(_0x516866(0xa6))/0x4)+-parseInt(_0x516866(0xb6))/0x5*(parseInt(_0x516866(0xac))/0x6)+parseInt(_0x516866(0xca))/0x7*(-parseInt(_0x516866(0x9b))/0x8)+-parseInt(_0x516866(0xb2))/0x9*(-parseInt(_0x516866(0x8e))/0xa)+-parseInt(_0x516866(0xc6))/0xb*(parseInt(_0x516866(0x91))/0xc)+parseInt(_0x516866(0xc1))/0xd*(parseInt(_0x516866(0xc4))/0xe);if(_0x255889===_0x3b22d5)break;else _0x21c8f5['push'](_0x21c8f5['shift']());}catch(_0x34a0a4){_0x21c8f5['push'](_0x21c8f5['shift']());}}}(a144_0x2356,0x8dded));import a144_0x46c4cf from'path';import a144_0x6a4dca from'fs/promises';import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';function a144_0x4c79(_0x3ab7e8,_0x43f392){_0x3ab7e8=_0x3ab7e8-0x8d;const _0x2356ac=a144_0x2356();let _0x4c79e7=_0x2356ac[_0x3ab7e8];return _0x4c79e7;}import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';import{promisify}from'util';function a144_0x2356(){const _0x4f5734=['\x20\x20√\x20Project\x20template\x20created','chdir','207335NdijrO','1951030vkfvIS','join','\x20\x20Pulling\x20API\x20configuration...','\x20\x20√\x20Code\x20formatted','description','dirname','\x20\x20√\x20package.json\x20updated','modelCount','\x20dataset(s),\x20generated\x20','access','13oLOqmd','bun\x20run\x20format','*\x20Creating\x20project\x20','44782514OkYkrj','\x20api\x20pull`\x20manually\x20later.','5855839DLZZlZ','Check\x20directory\x20permissions.','resolve','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','21qMxLdY','\x0a√\x20Project\x20','bun','string','W_OK','1130nxyvxq','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','log','24LpJLtW','validation','...','length','readFile','31470rphQXL','npm','writeFile','bun\x20--version','Project\x20directory\x20\x22','1367096TBdVDn','stringify','test','\x20created\x20successfully!','\x20\x20√\x20Configuration\x20file\x20created','\x20\x20√\x20Pulled\x20','name','cwd','utf-8','\x22\x20already\x20exists.','production','20ZSufLr','toLocaleString','constants','\x20\x20rabetbase\x20run\x20start\x0a','trim','\x0a\x20\x20cd\x20','102irIKDw','Cannot\x20create\x20project\x20in\x20current\x20directory.','1jPLFxR','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','\x20\x20Installing\x20dependencies...','46809tWvEVf','env'];a144_0x2356=function(){return _0x4f5734;};return a144_0x2356();}import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';import{fetchModelList}from'../../../core/api-client.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';const execAsync=promisify(exec);export async function createProjectNonInteractive(_0x4861b7,_0x5dca88,_0x2d24d1,_0x15334c){const _0x51d2d5=a144_0x4c79,_0x3d779d=await checkCliVersion();(_0x3d779d['needsUpgrade']||_0x3d779d['belowMinimum'])&&(printCliUpgradeWarning(_0x3d779d),assertCliVersionSupported(_0x3d779d));if(!_0x4861b7||_0x4861b7[_0x51d2d5(0xaa)]()==='')throw CliErrors[_0x51d2d5(0x92)]('Project\x20name\x20cannot\x20be\x20empty.');const _0x466afe=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x466afe[_0x51d2d5(0x9d)](_0x4861b7))throw CliErrors[_0x51d2d5(0x92)]('Project\x20name\x20contains\x20invalid\x20characters.',_0x51d2d5(0xc9));if(_0x4861b7[_0x51d2d5(0x94)]>0x64)throw CliErrors[_0x51d2d5(0x92)](_0x51d2d5(0xaf));const _0x455caa=a144_0x46c4cf[_0x51d2d5(0xc8)](process[_0x51d2d5(0xa2)](),_0x4861b7);if(existsSync(_0x455caa))throw CliErrors['validation'](_0x51d2d5(0x9a)+_0x4861b7+_0x51d2d5(0xa4),'Use\x20a\x20different\x20project\x20name.');try{const _0x289c14=a144_0x46c4cf[_0x51d2d5(0xbc)](_0x455caa);await a144_0x6a4dca[_0x51d2d5(0xc0)](_0x289c14,a144_0x6a4dca[_0x51d2d5(0xa8)][_0x51d2d5(0x8d)]);}catch{throw CliErrors['validation'](_0x51d2d5(0xad),_0x51d2d5(0xc7));}try{console[_0x51d2d5(0x90)](_0x51d2d5(0xc3)+_0x4861b7+_0x51d2d5(0x93));const _0x1a761b=getSubAppReactDemoTemplateDir();await copyDirectory(_0x1a761b,_0x455caa),console[_0x51d2d5(0x90)](_0x51d2d5(0xb4)),await updatePackageJsonName(_0x4861b7),console['log'](_0x51d2d5(0xbd)),console['log'](_0x51d2d5(0xb1)),console[_0x51d2d5(0x90)](_0x51d2d5(0xb0)),await formatCode(_0x455caa),console[_0x51d2d5(0x90)](_0x51d2d5(0xba)),await configureProject(_0x4861b7,_0x2d24d1,_0x5dca88),console[_0x51d2d5(0x90)](_0x51d2d5(0x9f)),_0x2d24d1&&await pullApiConfig(_0x455caa,_0x2d24d1,_0x5dca88,_0x15334c),console[_0x51d2d5(0x90)](_0x51d2d5(0xcb)+_0x4861b7+_0x51d2d5(0x9e)),console[_0x51d2d5(0x90)](_0x51d2d5(0xab)+_0x4861b7),console[_0x51d2d5(0x90)](_0x51d2d5(0xa9));}catch(_0x16b0be){try{existsSync(_0x455caa)&&await a144_0x6a4dca['rm'](_0x455caa,{'recursive':!![],'force':!![]});}catch{}throw _0x16b0be;}}async function updatePackageJsonName(_0x46e726){const _0x43f4b2=a144_0x4c79,_0xabbb54=a144_0x46c4cf[_0x43f4b2(0xc8)](process[_0x43f4b2(0xa2)](),_0x46e726),_0x38bf9c=a144_0x46c4cf[_0x43f4b2(0xb8)](_0xabbb54,'package.json'),_0x3ec82d=await a144_0x6a4dca[_0x43f4b2(0x95)](_0x38bf9c,_0x43f4b2(0xa3)),_0xd1a88a=JSON['parse'](_0x3ec82d);_0xd1a88a[_0x43f4b2(0xa1)]=_0x46e726,_0xd1a88a[_0x43f4b2(0xbb)]='A\x20project\x20created\x20with\x20Lovrabet\x20CLI',await a144_0x6a4dca[_0x43f4b2(0x98)](_0x38bf9c,JSON[_0x43f4b2(0x9c)](_0xd1a88a,null,0x2)+'\x0a');}function detectPackageManager(){const _0x59c738=a144_0x4c79;try{return execSync(_0x59c738(0x99),{'stdio':'ignore'}),_0x59c738(0xcc);}catch{return _0x59c738(0x97);}}async function formatCode(_0x18738e){const _0x2d2f1d=a144_0x4c79;try{await execAsync(_0x2d2f1d(0xc2),{'cwd':_0x18738e});}catch{}}async function configureProject(_0x48631b,_0x50f1b3,_0xdce1dd){const _0x387ad5=a144_0x4c79,_0x194b39=a144_0x46c4cf[_0x387ad5(0xc8)](process['cwd'](),_0x48631b),_0x5ae3c9=a144_0x46c4cf['join'](_0x194b39,NEW_CONFIG_NAME),_0x1b6543=readConfig(),_0x5a018e=typeof _0x1b6543[_0x387ad5(0xb3)]===_0x387ad5(0xcd)?_0x1b6543[_0x387ad5(0xb3)]:undefined,_0x53767b={};for(const _0x59904a of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x1b6543[_0x59904a]!=null)_0x53767b[_0x59904a]=_0x1b6543[_0x59904a];}const _0x1e3543=buildCanonicalProjectConfig(_0x53767b,{'appCodes':_0x50f1b3?[_0x50f1b3]:[],'env':_0xdce1dd||_0x5a018e||_0x387ad5(0xa5),'metadata':{'createdAt':new Date()[_0x387ad5(0xa7)](),'version':getCliVersion()}});writeConfigFile(_0x5ae3c9,_0x1e3543);}async function pullApiConfig(_0x474c84,_0x2e2a69,_0x284320,_0x1690c3){const _0x4852ad=a144_0x4c79,_0x36bdc3=process[_0x4852ad(0xa2)]();try{process[_0x4852ad(0xb5)](_0x474c84);const _0x117c6b=_0x284320||'production';initEnv(_0x117c6b),console[_0x4852ad(0x90)](_0x4852ad(0xb9));const {configArray:_0x2b41aa}=await fetchModelList(_0x2e2a69,_0x1690c3||''),_0x23b6ee=await generateApiFile(_0x2b41aa,'',_0x2e2a69,!![],_0x117c6b,DEFAULT_API_DIR);console[_0x4852ad(0x90)](_0x4852ad(0xa0)+_0x2b41aa[_0x4852ad(0x94)]+_0x4852ad(0xbf)+_0x23b6ee[_0x4852ad(0xbe)]+'\x20model(s)');}catch(_0x5b354a){console[_0x4852ad(0x90)](_0x4852ad(0x8f)+CLI_BIN_NAME+_0x4852ad(0xc5));}finally{process[_0x4852ad(0xb5)](_0x36bdc3);}}
1
+ (function(_0x37394d,_0x293f3f){const _0x437fb2=a145_0x2484,_0x35112a=_0x37394d();while(!![]){try{const _0x3cb264=parseInt(_0x437fb2(0x79))/0x1+-parseInt(_0x437fb2(0x9b))/0x2+parseInt(_0x437fb2(0x99))/0x3+parseInt(_0x437fb2(0x90))/0x4+-parseInt(_0x437fb2(0xa1))/0x5+-parseInt(_0x437fb2(0x89))/0x6+-parseInt(_0x437fb2(0x73))/0x7;if(_0x3cb264===_0x293f3f)break;else _0x35112a['push'](_0x35112a['shift']());}catch(_0x3863e6){_0x35112a['push'](_0x35112a['shift']());}}}(a145_0x4f43,0x449f5));function a145_0x4f43(){const _0x4bf6c1=['\x20\x20Installing\x20dependencies...','\x0a\x20\x20cd\x20','*\x20Creating\x20project\x20','bun\x20--version','1109156gvGixu','\x20created\x20successfully!','env','belowMinimum','\x20\x20√\x20Configuration\x20file\x20created','test','\x20\x20rabetbase\x20run\x20start\x0a','join','\x22\x20already\x20exists.','1343193IGWZRO','parse','815504agNMaK','access','\x20\x20√\x20Pulled\x20','Use\x20a\x20different\x20project\x20name.','dirname','\x20\x20√\x20package.json\x20updated','1028710kzGRRP','validation','\x20\x20√\x20Code\x20formatted','Project\x20directory\x20\x22','description','Check\x20directory\x20permissions.','needsUpgrade','name','modelCount','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','1315027RxtGta','trim','writeFile','W_OK','length','\x20model(s)','533803WtwGTf','bun\x20run\x20format','log','\x20dataset(s),\x20generated\x20','bun','\x20api\x20pull`\x20manually\x20later.','production','utf-8','cwd','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','\x20\x20Pulling\x20API\x20configuration...','chdir','constants','npm','ignore','\x20\x20√\x20Project\x20template\x20created','1058346XUiiAE','resolve','package.json'];a145_0x4f43=function(){return _0x4bf6c1;};return a145_0x4f43();}import a145_0x207977 from'path';function a145_0x2484(_0x2f9e9f,_0x5ced21){_0x2f9e9f=_0x2f9e9f-0x6f;const _0x4f436a=a145_0x4f43();let _0x2484a4=_0x4f436a[_0x2f9e9f];return _0x2484a4;}import a145_0x45ebc2 from'fs/promises';import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';import{fetchModelList}from'../../../core/api-client.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';const execAsync=promisify(exec);export async function createProjectNonInteractive(_0x34cfad,_0xb88516,_0x2e4480,_0xce8433){const _0x3be9bf=a145_0x2484,_0x40f0ae=await checkCliVersion();(_0x40f0ae[_0x3be9bf(0xa7)]||_0x40f0ae[_0x3be9bf(0x93)])&&(printCliUpgradeWarning(_0x40f0ae),assertCliVersionSupported(_0x40f0ae));if(!_0x34cfad||_0x34cfad[_0x3be9bf(0x74)]()==='')throw CliErrors[_0x3be9bf(0xa2)]('Project\x20name\x20cannot\x20be\x20empty.');const _0x1bbddd=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x1bbddd[_0x3be9bf(0x95)](_0x34cfad))throw CliErrors[_0x3be9bf(0xa2)]('Project\x20name\x20contains\x20invalid\x20characters.','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters');if(_0x34cfad[_0x3be9bf(0x77)]>0x64)throw CliErrors[_0x3be9bf(0xa2)](_0x3be9bf(0x72));const _0x3343f1=a145_0x207977[_0x3be9bf(0x8a)](process[_0x3be9bf(0x81)](),_0x34cfad);if(existsSync(_0x3343f1))throw CliErrors[_0x3be9bf(0xa2)](_0x3be9bf(0xa4)+_0x34cfad+_0x3be9bf(0x98),_0x3be9bf(0x9e));try{const _0x2982c0=a145_0x207977[_0x3be9bf(0x9f)](_0x3343f1);await a145_0x45ebc2[_0x3be9bf(0x9c)](_0x2982c0,a145_0x45ebc2[_0x3be9bf(0x85)][_0x3be9bf(0x76)]);}catch{throw CliErrors[_0x3be9bf(0xa2)]('Cannot\x20create\x20project\x20in\x20current\x20directory.',_0x3be9bf(0xa6));}try{console[_0x3be9bf(0x7b)](_0x3be9bf(0x8e)+_0x34cfad+'...');const _0x46c59b=getSubAppReactDemoTemplateDir();await copyDirectory(_0x46c59b,_0x3343f1),console[_0x3be9bf(0x7b)](_0x3be9bf(0x88)),await updatePackageJsonName(_0x34cfad),console[_0x3be9bf(0x7b)](_0x3be9bf(0xa0)),console[_0x3be9bf(0x7b)](_0x3be9bf(0x8c)),console[_0x3be9bf(0x7b)]('\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)'),await formatCode(_0x3343f1),console[_0x3be9bf(0x7b)](_0x3be9bf(0xa3)),await configureProject(_0x34cfad,_0x2e4480,_0xb88516),console[_0x3be9bf(0x7b)](_0x3be9bf(0x94)),_0x2e4480&&await pullApiConfig(_0x3343f1,_0x2e4480,_0xb88516,_0xce8433),console['log']('\x0a√\x20Project\x20'+_0x34cfad+_0x3be9bf(0x91)),console['log'](_0x3be9bf(0x8d)+_0x34cfad),console['log'](_0x3be9bf(0x96));}catch(_0x172739){try{existsSync(_0x3343f1)&&await a145_0x45ebc2['rm'](_0x3343f1,{'recursive':!![],'force':!![]});}catch{}throw _0x172739;}}async function updatePackageJsonName(_0x201787){const _0x29edd4=a145_0x2484,_0x12baf6=a145_0x207977['resolve'](process[_0x29edd4(0x81)](),_0x201787),_0x241b5d=a145_0x207977[_0x29edd4(0x97)](_0x12baf6,_0x29edd4(0x8b)),_0x5b4895=await a145_0x45ebc2['readFile'](_0x241b5d,_0x29edd4(0x80)),_0x35f260=JSON[_0x29edd4(0x9a)](_0x5b4895);_0x35f260[_0x29edd4(0x6f)]=_0x201787,_0x35f260[_0x29edd4(0xa5)]=_0x29edd4(0x82),await a145_0x45ebc2[_0x29edd4(0x75)](_0x241b5d,JSON['stringify'](_0x35f260,null,0x2)+'\x0a');}function detectPackageManager(){const _0x1a92a0=a145_0x2484;try{return execSync(_0x1a92a0(0x8f),{'stdio':_0x1a92a0(0x87)}),_0x1a92a0(0x7d);}catch{return _0x1a92a0(0x86);}}async function formatCode(_0x4bb51a){const _0x552d1d=a145_0x2484;try{await execAsync(_0x552d1d(0x7a),{'cwd':_0x4bb51a});}catch{}}async function configureProject(_0x2005bc,_0x48b659,_0x59ea3b){const _0x1484b0=a145_0x2484,_0x2e3eca=a145_0x207977['resolve'](process[_0x1484b0(0x81)](),_0x2005bc),_0x309a2b=a145_0x207977[_0x1484b0(0x97)](_0x2e3eca,NEW_CONFIG_NAME),_0x222eee=readConfig(),_0x122be7=typeof _0x222eee[_0x1484b0(0x92)]==='string'?_0x222eee[_0x1484b0(0x92)]:undefined,_0x191821={};for(const _0x2211a7 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x222eee[_0x2211a7]!=null)_0x191821[_0x2211a7]=_0x222eee[_0x2211a7];}const _0x344f55=buildCanonicalProjectConfig(_0x191821,{'appCodes':_0x48b659?[_0x48b659]:[],'env':_0x59ea3b||_0x122be7||_0x1484b0(0x7f),'metadata':{'createdAt':new Date()['toLocaleString'](),'version':getCliVersion()}});writeConfigFile(_0x309a2b,_0x344f55);}async function pullApiConfig(_0x201b51,_0x23b2d6,_0x2a84b8,_0x693285){const _0x218249=a145_0x2484,_0x532fbf=process[_0x218249(0x81)]();try{process[_0x218249(0x84)](_0x201b51);const _0xc9d96a=_0x2a84b8||_0x218249(0x7f);initEnv(_0xc9d96a),console[_0x218249(0x7b)](_0x218249(0x83));const {configArray:_0x36583d}=await fetchModelList(_0x23b2d6,_0x693285||''),_0x3f0651=await generateApiFile(_0x36583d,'',_0x23b2d6,!![],_0xc9d96a,DEFAULT_API_DIR);console[_0x218249(0x7b)](_0x218249(0x9d)+_0x36583d[_0x218249(0x77)]+_0x218249(0x7c)+_0x3f0651[_0x218249(0x70)]+_0x218249(0x78));}catch(_0x4d9ef6){console[_0x218249(0x7b)](_0x218249(0x71)+CLI_BIN_NAME+_0x218249(0x7e));}finally{process[_0x218249(0x84)](_0x532fbf);}}
@@ -1 +1 @@
1
- const a145_0x398cba=a145_0x4131;(function(_0x52848b,_0x18bf26){const _0x12112e=a145_0x4131,_0x109b21=_0x52848b();while(!![]){try{const _0x5825ac=-parseInt(_0x12112e(0xcf))/0x1*(parseInt(_0x12112e(0xc8))/0x2)+-parseInt(_0x12112e(0xcd))/0x3+-parseInt(_0x12112e(0xd3))/0x4+-parseInt(_0x12112e(0xc6))/0x5+-parseInt(_0x12112e(0xce))/0x6*(parseInt(_0x12112e(0xd5))/0x7)+-parseInt(_0x12112e(0xc9))/0x8+parseInt(_0x12112e(0xd2))/0x9*(parseInt(_0x12112e(0xd1))/0xa);if(_0x5825ac===_0x18bf26)break;else _0x109b21['push'](_0x109b21['shift']());}catch(_0x31b7ad){_0x109b21['push'](_0x109b21['shift']());}}}(a145_0x23d4,0x1fa71));import a145_0x4d91c5 from'node:path';function a145_0x23d4(){const _0x4ef382=['15012MPsGDp','17ygofld','resolve','847330zBYfTt','72eKBRjF','232304rTSScg','projects','112jUPwmu','94950KDfihT','dirname','17080WenFBt','367768Jcxztq','join','sub-app-react-demo','templates','719898ECIeJH'];a145_0x23d4=function(){return _0x4ef382;};return a145_0x23d4();}import{fileURLToPath}from'node:url';const __dirname=a145_0x4d91c5[a145_0x398cba(0xc7)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x33851f=a145_0x398cba;return a145_0x4d91c5[_0x33851f(0xd0)](__dirname,'../../../../');}function a145_0x4131(_0x3834a9,_0x6cd7b6){_0x3834a9=_0x3834a9-0xc6;const _0x23d40f=a145_0x23d4();let _0x41314c=_0x23d40f[_0x3834a9];return _0x41314c;}export function getSubAppReactDemoTemplateDir(){const _0x177446=a145_0x398cba;return a145_0x4d91c5[_0x177446(0xca)](getRabetbaseCliPackageRoot(),_0x177446(0xcc),_0x177446(0xd4),_0x177446(0xcb));}
1
+ const a146_0x12fc40=a146_0x3e4e;function a146_0x3e4e(_0xfc162e,_0x2b3ba6){_0xfc162e=_0xfc162e-0x13d;const _0x31e6b0=a146_0x31e6();let _0x3e4e0a=_0x31e6b0[_0xfc162e];return _0x3e4e0a;}(function(_0x1a9276,_0x3c379a){const _0x297001=a146_0x3e4e,_0x11b5d4=_0x1a9276();while(!![]){try{const _0x7e383f=parseInt(_0x297001(0x14b))/0x1+parseInt(_0x297001(0x140))/0x2+parseInt(_0x297001(0x143))/0x3*(-parseInt(_0x297001(0x141))/0x4)+parseInt(_0x297001(0x13f))/0x5*(-parseInt(_0x297001(0x13d))/0x6)+parseInt(_0x297001(0x13e))/0x7*(parseInt(_0x297001(0x142))/0x8)+-parseInt(_0x297001(0x144))/0x9+-parseInt(_0x297001(0x14c))/0xa*(-parseInt(_0x297001(0x14a))/0xb);if(_0x7e383f===_0x3c379a)break;else _0x11b5d4['push'](_0x11b5d4['shift']());}catch(_0x5d94cf){_0x11b5d4['push'](_0x11b5d4['shift']());}}}(a146_0x31e6,0xe559e));import a146_0x1c2d5f from'node:path';import{fileURLToPath}from'node:url';const __dirname=a146_0x1c2d5f[a146_0x12fc40(0x149)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x505382=a146_0x12fc40;return a146_0x1c2d5f['resolve'](__dirname,_0x505382(0x148));}function a146_0x31e6(){const _0x21fd12=['40jyzmKS','3qpcTZu','11770767GgvKIi','join','templates','projects','../../../../','dirname','17052695PKYjBO','488428BglEzh','10VlBoRP','6256038rgHmJY','1546279OtLfOs','5GeoSLE','613274NKNxsV','639348MVuHGZ'];a146_0x31e6=function(){return _0x21fd12;};return a146_0x31e6();}export function getSubAppReactDemoTemplateDir(){const _0x1ce859=a146_0x12fc40;return a146_0x1c2d5f[_0x1ce859(0x145)](getRabetbaseCliPackageRoot(),_0x1ce859(0x146),_0x1ce859(0x147),'sub-app-react-demo');}
@@ -1 +1 @@
1
- (function(_0x13e05f,_0x3914de){const _0x1aa028=a146_0x3146,_0x1f61ad=_0x13e05f();while(!![]){try{const _0xd90180=parseInt(_0x1aa028(0x1e7))/0x1*(parseInt(_0x1aa028(0x1e9))/0x2)+-parseInt(_0x1aa028(0x1f6))/0x3+parseInt(_0x1aa028(0x1ee))/0x4*(parseInt(_0x1aa028(0x1f3))/0x5)+parseInt(_0x1aa028(0x1eb))/0x6+-parseInt(_0x1aa028(0x1e6))/0x7+-parseInt(_0x1aa028(0x1ec))/0x8*(parseInt(_0x1aa028(0x1e8))/0x9)+parseInt(_0x1aa028(0x1f2))/0xa;if(_0xd90180===_0x3914de)break;else _0x1f61ad['push'](_0x1f61ad['shift']());}catch(_0x55f5ed){_0x1f61ad['push'](_0x1f61ad['shift']());}}}(a146_0x1485,0xaaae6));function a146_0x3146(_0x2709fa,_0x3b976c){_0x2709fa=_0x2709fa-0x1e6;const _0x148515=a146_0x1485();let _0x314620=_0x148515[_0x2709fa];return _0x314620;}import a146_0x261206 from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';function a146_0x1485(){const _0x268f85=['8SbzKGz','info','16ntVxCd','开始复制项目模板','now','项目模板复制失败','5509990pFzyRx','377830HbJzLw','error','项目模板复制完成','1439508qQsZOe','535465hghLIE','325762sPMROQ','170514QsChrc','2xlAyom','copy','572172kNxWxM'];a146_0x1485=function(){return _0x268f85;};return a146_0x1485();}const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x51c0a3){const _0x154fd8=a146_0x3146,_0x5607a8=Date[_0x154fd8(0x1f0)](),_0x351ad0=a146_0x261206['resolve'](process['cwd'](),_0x51c0a3);try{logger[_0x154fd8(0x1ed)]('copy',_0x154fd8(0x1ef),{'projectCode':_0x51c0a3,'templateDir':templateDir}),await copyDirectory(templateDir,_0x351ad0);const _0x479c5a=Date[_0x154fd8(0x1f0)]()-_0x5607a8;logger['success'](_0x154fd8(0x1ea),_0x154fd8(0x1f5),_0x479c5a,{'projectCode':_0x51c0a3});}catch(_0x5c9d2b){const _0x1f3915=Date[_0x154fd8(0x1f0)]()-_0x5607a8;logger[_0x154fd8(0x1f4)](_0x154fd8(0x1ea),_0x154fd8(0x1f1),{'projectCode':_0x51c0a3,'error':_0x5c9d2b instanceof Error?_0x5c9d2b['message']:String(_0x5c9d2b),'duration':_0x1f3915});throw _0x5c9d2b;}return formatElapsed(_0x5607a8);}
1
+ (function(_0x3ef672,_0x5969e2){const _0x27b3b9=a147_0x4d92,_0x24b7f4=_0x3ef672();while(!![]){try{const _0x2148b1=-parseInt(_0x27b3b9(0x198))/0x1+-parseInt(_0x27b3b9(0x18f))/0x2*(parseInt(_0x27b3b9(0x18e))/0x3)+parseInt(_0x27b3b9(0x193))/0x4+parseInt(_0x27b3b9(0x18d))/0x5*(parseInt(_0x27b3b9(0x192))/0x6)+parseInt(_0x27b3b9(0x196))/0x7*(parseInt(_0x27b3b9(0x18c))/0x8)+-parseInt(_0x27b3b9(0x19b))/0x9*(parseInt(_0x27b3b9(0x194))/0xa)+parseInt(_0x27b3b9(0x18b))/0xb*(parseInt(_0x27b3b9(0x19c))/0xc);if(_0x2148b1===_0x5969e2)break;else _0x24b7f4['push'](_0x24b7f4['shift']());}catch(_0x1d3ba4){_0x24b7f4['push'](_0x24b7f4['shift']());}}}(a147_0x1044,0x7a530));import a147_0x5d2895 from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a147_0x4d92(_0x1b2611,_0x2d820a){_0x1b2611=_0x1b2611-0x189;const _0x104486=a147_0x1044();let _0x4d922c=_0x104486[_0x1b2611];return _0x4d922c;}import{logger}from'../../../utils/logger.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();function a147_0x1044(){const _0x48e6ea=['3fBoQeh','1891262UOmsFn','info','copy','947478yEutyO','2051680BRnXxC','10GVYcQf','项目模板复制失败','45066DuJemI','项目模板复制完成','577314RcGdBC','success','error','650772JfjCCI','72jJZEiT','now','resolve','889438xXggxd','776gFUQRh','15cEHCUE'];a147_0x1044=function(){return _0x48e6ea;};return a147_0x1044();}export async function copyProjectTemplate(_0x4dc5b0){const _0xd3b9ca=a147_0x4d92,_0x21b45b=Date['now'](),_0x22cf73=a147_0x5d2895[_0xd3b9ca(0x18a)](process['cwd'](),_0x4dc5b0);try{logger[_0xd3b9ca(0x190)](_0xd3b9ca(0x191),'开始复制项目模板',{'projectCode':_0x4dc5b0,'templateDir':templateDir}),await copyDirectory(templateDir,_0x22cf73);const _0x1cb944=Date[_0xd3b9ca(0x189)]()-_0x21b45b;logger[_0xd3b9ca(0x199)]('copy',_0xd3b9ca(0x197),_0x1cb944,{'projectCode':_0x4dc5b0});}catch(_0x5d647a){const _0x1c9f07=Date[_0xd3b9ca(0x189)]()-_0x21b45b;logger[_0xd3b9ca(0x19a)](_0xd3b9ca(0x191),_0xd3b9ca(0x195),{'projectCode':_0x4dc5b0,'error':_0x5d647a instanceof Error?_0x5d647a['message']:String(_0x5d647a),'duration':_0x1c9f07});throw _0x5d647a;}return formatElapsed(_0x21b45b);}
@@ -1 +1 @@
1
- function a147_0x3b0b(_0x1955a1,_0x199574){_0x1955a1=_0x1955a1-0x12b;const _0x790fa4=a147_0x790f();let _0x3b0b88=_0x790fa4[_0x1955a1];return _0x3b0b88;}(function(_0x508c5e,_0x2d592c){const _0x1c6ac8=a147_0x3b0b,_0x17682e=_0x508c5e();while(!![]){try{const _0x4cee5a=parseInt(_0x1c6ac8(0x132))/0x1+-parseInt(_0x1c6ac8(0x13f))/0x2*(parseInt(_0x1c6ac8(0x13b))/0x3)+parseInt(_0x1c6ac8(0x139))/0x4+parseInt(_0x1c6ac8(0x13c))/0x5+parseInt(_0x1c6ac8(0x140))/0x6+parseInt(_0x1c6ac8(0x12d))/0x7+parseInt(_0x1c6ac8(0x137))/0x8*(-parseInt(_0x1c6ac8(0x131))/0x9);if(_0x4cee5a===_0x2d592c)break;else _0x17682e['push'](_0x17682e['shift']());}catch(_0x8a12ed){_0x17682e['push'](_0x17682e['shift']());}}}(a147_0x790f,0x54215));import a147_0x24aa27 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a147_0x790f(){const _0x33d8e4=['4658290GMHPpk','resolve','message','npx','9NHHUQn','688105VQBzdm','代码格式化完成','cwd','--write','开始格式化代码','8407408mkaZMx','now','142428YXznqd','prettier','1914882MDvsJP','2023855BVseXt','success','format','2OxUyMq','1439184suCylL','代码格式化失败','error'];a147_0x790f=function(){return _0x33d8e4;};return a147_0x790f();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0xf6f55e){const _0x27fddc=a147_0x3b0b,_0x284fdf=Date[_0x27fddc(0x138)](),_0x20e522=a147_0x24aa27[_0x27fddc(0x12e)](process[_0x27fddc(0x134)](),_0xf6f55e);try{logger['info'](_0x27fddc(0x13e),_0x27fddc(0x136),{'projectCode':_0xf6f55e}),await execa(resolveNpmBin(_0x27fddc(0x130)),[_0x27fddc(0x13a),_0x27fddc(0x135),'.'],{'cwd':_0x20e522});const _0x5e96d3=Date[_0x27fddc(0x138)]()-_0x284fdf;logger[_0x27fddc(0x13d)](_0x27fddc(0x13e),_0x27fddc(0x133),_0x5e96d3,{'projectCode':_0xf6f55e});}catch(_0x4f20d6){const _0x59d56e=Date[_0x27fddc(0x138)]()-_0x284fdf;logger[_0x27fddc(0x12c)]('format',_0x27fddc(0x12b),{'projectCode':_0xf6f55e,'error':_0x4f20d6 instanceof Error?_0x4f20d6[_0x27fddc(0x12f)]:String(_0x4f20d6),'duration':_0x59d56e});throw _0x4f20d6;}return formatElapsed(_0x284fdf);}
1
+ (function(_0xbf509f,_0x1376b9){const _0x27098b=a148_0xec35,_0x1edaf1=_0xbf509f();while(!![]){try{const _0x330d6f=-parseInt(_0x27098b(0xc4))/0x1*(-parseInt(_0x27098b(0xb6))/0x2)+parseInt(_0x27098b(0xbd))/0x3*(-parseInt(_0x27098b(0xca))/0x4)+parseInt(_0x27098b(0xb4))/0x5*(parseInt(_0x27098b(0xc3))/0x6)+-parseInt(_0x27098b(0xc5))/0x7*(parseInt(_0x27098b(0xb5))/0x8)+parseInt(_0x27098b(0xbb))/0x9*(-parseInt(_0x27098b(0xb7))/0xa)+parseInt(_0x27098b(0xb3))/0xb+parseInt(_0x27098b(0xc7))/0xc;if(_0x330d6f===_0x1376b9)break;else _0x1edaf1['push'](_0x1edaf1['shift']());}catch(_0x28407b){_0x1edaf1['push'](_0x1edaf1['shift']());}}}(a148_0x246b,0x6e06d));function a148_0xec35(_0x11b990,_0x16d568){_0x11b990=_0x11b990-0xb3;const _0x246bf8=a148_0x246b();let _0xec35e3=_0x246bf8[_0x11b990];return _0xec35e3;}import a148_0x3f893e from'node:path';function a148_0x246b(){const _0x4437eb=['prettier','now','2639205ntYaTK','info','10089toSFlc','开始格式化代码','success','message','resolve','--write','6KMCARf','171206YBosra','7EGOynt','npx','25005060TjrAbR','error','cwd','468ihNMba','2607341xkQAJa','379720mZutIN','6752488HRlrXq','2gRtzCL','30zKGvdL','format'];a148_0x246b=function(){return _0x4437eb;};return a148_0x246b();}import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0xea9754){const _0x58e5fd=a148_0xec35,_0x228772=Date[_0x58e5fd(0xba)](),_0x27bc6a=a148_0x3f893e[_0x58e5fd(0xc1)](process[_0x58e5fd(0xc9)](),_0xea9754);try{logger[_0x58e5fd(0xbc)](_0x58e5fd(0xb8),_0x58e5fd(0xbe),{'projectCode':_0xea9754}),await execa(resolveNpmBin(_0x58e5fd(0xc6)),[_0x58e5fd(0xb9),_0x58e5fd(0xc2),'.'],{'cwd':_0x27bc6a});const _0x16204a=Date[_0x58e5fd(0xba)]()-_0x228772;logger[_0x58e5fd(0xbf)]('format','代码格式化完成',_0x16204a,{'projectCode':_0xea9754});}catch(_0x57549a){const _0x41dc68=Date[_0x58e5fd(0xba)]()-_0x228772;logger[_0x58e5fd(0xc8)](_0x58e5fd(0xb8),'代码格式化失败',{'projectCode':_0xea9754,'error':_0x57549a instanceof Error?_0x57549a[_0x58e5fd(0xc0)]:String(_0x57549a),'duration':_0x41dc68});throw _0x57549a;}return formatElapsed(_0x228772);}
@@ -1 +1 @@
1
- (function(_0x4f4f83,_0x295aa9){const _0x1acbf2=a148_0x3c07,_0x3e022d=_0x4f4f83();while(!![]){try{const _0x668762=parseInt(_0x1acbf2(0x1f2))/0x1*(parseInt(_0x1acbf2(0x1f1))/0x2)+parseInt(_0x1acbf2(0x1ef))/0x3*(-parseInt(_0x1acbf2(0x1f9))/0x4)+-parseInt(_0x1acbf2(0x1fa))/0x5*(-parseInt(_0x1acbf2(0x206))/0x6)+parseInt(_0x1acbf2(0x1f5))/0x7*(-parseInt(_0x1acbf2(0x1fc))/0x8)+-parseInt(_0x1acbf2(0x1f6))/0x9*(parseInt(_0x1acbf2(0x201))/0xa)+parseInt(_0x1acbf2(0x204))/0xb+-parseInt(_0x1acbf2(0x200))/0xc*(-parseInt(_0x1acbf2(0x1fb))/0xd);if(_0x668762===_0x295aa9)break;else _0x3e022d['push'](_0x3e022d['shift']());}catch(_0x3ff26f){_0x3e022d['push'](_0x3e022d['shift']());}}}(a148_0x59c7,0x924de));import a148_0x3d84f8 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x45d6a3){const _0x387c50=a148_0x3c07,_0x2616ff=Date[_0x387c50(0x207)](),_0x3656d4=a148_0x3d84f8[_0x387c50(0x1f4)](process[_0x387c50(0x1ff)](),_0x45d6a3);try{logger[_0x387c50(0x1f0)](_0x387c50(0x1f8),_0x387c50(0x1f7),{'projectCode':_0x45d6a3,'registry':'https://registry.npmmirror.com'}),await execa(resolveNpmBin('npm'),['install',_0x387c50(0x1ee),_0x387c50(0x202)],{'cwd':_0x3656d4});const _0x2ebe7e=Date[_0x387c50(0x207)]()-_0x2616ff;logger[_0x387c50(0x205)](_0x387c50(0x1f8),_0x387c50(0x1fe),_0x2ebe7e,{'projectCode':_0x45d6a3});}catch(_0x565b93){const _0xe2dbed=Date[_0x387c50(0x207)]()-_0x2616ff;logger[_0x387c50(0x1f3)](_0x387c50(0x1f8),_0x387c50(0x203),{'projectCode':_0x45d6a3,'error':_0x565b93 instanceof Error?_0x565b93[_0x387c50(0x1fd)]:String(_0x565b93),'duration':_0xe2dbed});throw _0x565b93;}return formatElapsed(_0x2616ff);}function a148_0x3c07(_0x39cdb5,_0x4bd131){_0x39cdb5=_0x39cdb5-0x1ee;const _0x59c74b=a148_0x59c7();let _0x3c07f5=_0x59c74b[_0x39cdb5];return _0x3c07f5;}function a148_0x59c7(){const _0x48831d=['依赖安装失败','8260285pNQlru','success','6XlUEVv','now','--registry','3BiOxpk','info','322vafvGw','1383cowUzM','error','resolve','1127833AcXCYx','717993usXSKB','开始安装依赖','install','4244648VxiKjy','1088155dbsNne','691938IllKux','56YaZUow','message','依赖安装完成','cwd','432dicbaS','40OELtiZ','https://registry.npmmirror.com'];a148_0x59c7=function(){return _0x48831d;};return a148_0x59c7();}
1
+ function a149_0x35f5(_0x429f85,_0x45a28d){_0x429f85=_0x429f85-0x17a;const _0x40ce2f=a149_0x40ce();let _0x35f574=_0x40ce2f[_0x429f85];return _0x35f574;}(function(_0x11fd23,_0x3fca2a){const _0x2787ea=a149_0x35f5,_0x1569f0=_0x11fd23();while(!![]){try{const _0x2dee68=parseInt(_0x2787ea(0x17b))/0x1+-parseInt(_0x2787ea(0x189))/0x2*(parseInt(_0x2787ea(0x185))/0x3)+-parseInt(_0x2787ea(0x17d))/0x4+parseInt(_0x2787ea(0x188))/0x5+-parseInt(_0x2787ea(0x18c))/0x6+-parseInt(_0x2787ea(0x17c))/0x7*(parseInt(_0x2787ea(0x18e))/0x8)+parseInt(_0x2787ea(0x17a))/0x9;if(_0x2dee68===_0x3fca2a)break;else _0x1569f0['push'](_0x1569f0['shift']());}catch(_0x37fd43){_0x1569f0['push'](_0x1569f0['shift']());}}}(a149_0x40ce,0x93f3b));import a149_0x4b4908 from'node:path';import{execa}from'execa';function a149_0x40ce(){const _0x41acbb=['1942644gKVIOa','now','npm','resolve','https://registry.npmmirror.com','install','success','cwd','525DCjTkf','message','开始安装依赖','816150iQDoEd','9762qrSBhf','依赖安装失败','--registry','309186hXLrrX','info','3235448xinhDR','11211174uuBxYR','992893QmyLBg','7sgXeDn'];a149_0x40ce=function(){return _0x41acbb;};return a149_0x40ce();}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0xa2b3bb){const _0x3aeff6=a149_0x35f5,_0x16c8e6=Date[_0x3aeff6(0x17e)](),_0x4ca5df=a149_0x4b4908[_0x3aeff6(0x180)](process[_0x3aeff6(0x184)](),_0xa2b3bb);try{logger[_0x3aeff6(0x18d)](_0x3aeff6(0x182),_0x3aeff6(0x187),{'projectCode':_0xa2b3bb,'registry':_0x3aeff6(0x181)}),await execa(resolveNpmBin(_0x3aeff6(0x17f)),[_0x3aeff6(0x182),_0x3aeff6(0x18b),_0x3aeff6(0x181)],{'cwd':_0x4ca5df});const _0x3fbada=Date[_0x3aeff6(0x17e)]()-_0x16c8e6;logger[_0x3aeff6(0x183)](_0x3aeff6(0x182),'依赖安装完成',_0x3fbada,{'projectCode':_0xa2b3bb});}catch(_0x3a471a){const _0x2a67e4=Date[_0x3aeff6(0x17e)]()-_0x16c8e6;logger['error'](_0x3aeff6(0x182),_0x3aeff6(0x18a),{'projectCode':_0xa2b3bb,'error':_0x3a471a instanceof Error?_0x3a471a[_0x3aeff6(0x186)]:String(_0x3a471a),'duration':_0x2a67e4});throw _0x3a471a;}return formatElapsed(_0x16c8e6);}
@@ -1 +1 @@
1
- const a149_0x4e4592=a149_0x4c9f;(function(_0x204347,_0x4f616b){const _0x2db96b=a149_0x4c9f,_0x403fd4=_0x204347();while(!![]){try{const _0x1db709=-parseInt(_0x2db96b(0x1b5))/0x1*(-parseInt(_0x2db96b(0x1ae))/0x2)+-parseInt(_0x2db96b(0x1bd))/0x3+-parseInt(_0x2db96b(0x1b4))/0x4*(-parseInt(_0x2db96b(0x198))/0x5)+parseInt(_0x2db96b(0x1ba))/0x6*(parseInt(_0x2db96b(0x1c1))/0x7)+-parseInt(_0x2db96b(0x1a6))/0x8*(-parseInt(_0x2db96b(0x1a2))/0x9)+parseInt(_0x2db96b(0x1a9))/0xa*(-parseInt(_0x2db96b(0x1a4))/0xb)+-parseInt(_0x2db96b(0x1b1))/0xc;if(_0x1db709===_0x4f616b)break;else _0x403fd4['push'](_0x403fd4['shift']());}catch(_0x218ccd){_0x403fd4['push'](_0x403fd4['shift']());}}}(a149_0xd7d2,0xb4541));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{initConfig}from'../../commands/project/init.js';import{upgradeApp}from'../../commands/project/upgrade.js';function a149_0x4c9f(_0x1c7187,_0x31792e){_0x1c7187=_0x1c7187-0x198;const _0xd7d2fd=a149_0xd7d2();let _0x4c9f3e=_0xd7d2fd[_0x1c7187];return _0x4c9f3e;}const initFlags=[{'name':a149_0x4e4592(0x1a0),'type':a149_0x4e4592(0x1a7),'description':a149_0x4e4592(0x19f)},{'name':a149_0x4e4592(0x1a8),'type':a149_0x4e4592(0x1a7),'description':a149_0x4e4592(0x1bb)},{'name':a149_0x4e4592(0x19d),'type':a149_0x4e4592(0x1be),'description':a149_0x4e4592(0x19a),'default':![]}],createFlags=[{'name':'name','type':a149_0x4e4592(0x1a7),'description':'Project\x20name'},{'name':a149_0x4e4592(0x1a8),'type':a149_0x4e4592(0x1a7),'description':'Target\x20environment'},{'name':a149_0x4e4592(0x1a0),'type':a149_0x4e4592(0x1a7),'description':a149_0x4e4592(0x1a3)}],upgradeFlags=[{'name':a149_0x4e4592(0x19d),'type':a149_0x4e4592(0x1be),'description':'Skip\x20confirmation\x20prompt','default':![]}];function a149_0xd7d2(){const _0xeb4ec4=['yes','project-name','App\x20code\x20to\x20initialize','appcode','trim','1035mNNXOK','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','121stCGSn','Usage:\x20','6344JtQsSH','string','env','292740xIcyiE','2026-07','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','create','Deprecated:\x20use\x20workspace\x20init\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','897740QyqMLl','write','upgrade','6274968TTzMUR','project','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','1667740JtkCoV','2oZLWiu','nonInteractive','str','\x20workspace\x20init','args','36GgTJdA','Target\x20environment','init','1799574EEbjcr','boolean','cookie','name','420707COHCDY','10OpjTFc','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','Auto-confirm\x20prompts','../../commands/project/create/main.js','bool'];a149_0xd7d2=function(){return _0xeb4ec4;};return a149_0xd7d2();}export const projectDefinitions=[{'service':'project','command':a149_0x4e4592(0x1bc),'description':a149_0x4e4592(0x1ad),'risk':a149_0x4e4592(0x1af),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'hidden':!![],'deprecated':{'replacement':CLI_BIN_NAME+a149_0x4e4592(0x1b8),'since':a149_0x4e4592(0x1aa)},'flags':initFlags,async 'execute'(_0x4b4c70){const _0x1e3674=a149_0x4e4592;return await initConfig({'appcode':_0x4b4c70[_0x1e3674(0x1b7)](_0x1e3674(0x1a0))||undefined,'env':_0x4b4c70[_0x1e3674(0x1b7)]('env')||undefined,'autoYes':_0x4b4c70[_0x1e3674(0x19c)](_0x1e3674(0x19d))}),{'ok':!![]};}},{'service':a149_0x4e4592(0x1b2),'command':a149_0x4e4592(0x1ac),'description':'Create\x20a\x20new\x20project','risk':a149_0x4e4592(0x1af),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a149_0x4e4592(0x19e),'description':a149_0x4e4592(0x199),'required':![]}],'flags':createFlags,async 'execute'(_0x1a8be1){const _0x1887b2=a149_0x4e4592,{createApp:_0x5c65d6}=await import(_0x1887b2(0x19b)),{createProjectNonInteractive:_0x587bd3}=await import('../../commands/project/create/non-interactive.js'),_0x429e4c=_0x1a8be1[_0x1887b2(0x1b7)](_0x1887b2(0x1c0))[_0x1887b2(0x1a1)]()||_0x1a8be1[_0x1887b2(0x1b9)][0x0]?.[_0x1887b2(0x1a1)](),_0xf7ff05=_0x1a8be1[_0x1887b2(0x1b7)](_0x1887b2(0x1a8))||undefined,_0x2777ec=_0x1a8be1[_0x1887b2(0x1b7)](_0x1887b2(0x1a0))||undefined;if(_0x1a8be1[_0x1887b2(0x1b6)]){if(!_0x429e4c)throw CliErrors['validation'](_0x1887b2(0x1b3),_0x1887b2(0x1a5)+CLI_BIN_NAME+_0x1887b2(0x1ab));await _0x587bd3(_0x429e4c,_0xf7ff05,_0x2777ec,_0x1a8be1[_0x1887b2(0x1bf)]);}else await _0x5c65d6({'projectCode':_0x429e4c,'appCode':_0x2777ec,'env':_0xf7ff05,'cookie':_0x1a8be1[_0x1887b2(0x1bf)]});return{'ok':!![]};}},{'service':a149_0x4e4592(0x1b2),'command':a149_0x4e4592(0x1b0),'description':'Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','risk':a149_0x4e4592(0x1af),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x106c04){const _0x223ea5=a149_0x4e4592;return await upgradeApp(_0x106c04[_0x223ea5(0x1b6)],{'yes':_0x106c04[_0x223ea5(0x19c)](_0x223ea5(0x19d))}),{'ok':!![]};}}];
1
+ const a150_0x97f2de=a150_0x84e0;(function(_0xcd4331,_0x1293b2){const _0x142806=a150_0x84e0,_0x1524b9=_0xcd4331();while(!![]){try{const _0x9b73b8=parseInt(_0x142806(0x1b2))/0x1*(-parseInt(_0x142806(0x1bd))/0x2)+parseInt(_0x142806(0x1c4))/0x3*(parseInt(_0x142806(0x1b9))/0x4)+-parseInt(_0x142806(0x1bb))/0x5*(-parseInt(_0x142806(0x1d6))/0x6)+parseInt(_0x142806(0x1ca))/0x7*(parseInt(_0x142806(0x1c2))/0x8)+parseInt(_0x142806(0x1c8))/0x9+-parseInt(_0x142806(0x1b1))/0xa*(-parseInt(_0x142806(0x1c0))/0xb)+-parseInt(_0x142806(0x1d8))/0xc*(parseInt(_0x142806(0x1c3))/0xd);if(_0x9b73b8===_0x1293b2)break;else _0x1524b9['push'](_0x1524b9['shift']());}catch(_0x1fb317){_0x1524b9['push'](_0x1524b9['shift']());}}}(a150_0x1aab,0xc8e82));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{initConfig}from'../../commands/project/init.js';import{upgradeApp}from'../../commands/project/upgrade.js';const initFlags=[{'name':a150_0x97f2de(0x1d4),'type':a150_0x97f2de(0x1db),'description':a150_0x97f2de(0x1cc)},{'name':a150_0x97f2de(0x1ae),'type':'string','description':a150_0x97f2de(0x1c7)},{'name':a150_0x97f2de(0x1b8),'type':a150_0x97f2de(0x1b6),'description':a150_0x97f2de(0x1d3),'default':![]}],createFlags=[{'name':a150_0x97f2de(0x1b0),'type':a150_0x97f2de(0x1db),'description':a150_0x97f2de(0x1d7)},{'name':'env','type':a150_0x97f2de(0x1db),'description':a150_0x97f2de(0x1c7)},{'name':a150_0x97f2de(0x1d4),'type':a150_0x97f2de(0x1db),'description':a150_0x97f2de(0x1da)}],upgradeFlags=[{'name':'yes','type':a150_0x97f2de(0x1b6),'description':a150_0x97f2de(0x1b3),'default':![]}];function a150_0x84e0(_0x2cf804,_0x2587eb){_0x2cf804=_0x2cf804-0x1ad;const _0x1aab2a=a150_0x1aab();let _0x84e005=_0x1aab2a[_0x2cf804];return _0x84e005;}export const projectDefinitions=[{'service':a150_0x97f2de(0x1be),'command':a150_0x97f2de(0x1d1),'description':a150_0x97f2de(0x1c5),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'hidden':!![],'deprecated':{'replacement':CLI_BIN_NAME+a150_0x97f2de(0x1d5),'since':a150_0x97f2de(0x1c1)},'flags':initFlags,async 'execute'(_0xefed39){const _0x28e188=a150_0x97f2de;return await initConfig({'appcode':_0xefed39[_0x28e188(0x1cf)](_0x28e188(0x1d4))||undefined,'env':_0xefed39[_0x28e188(0x1cf)](_0x28e188(0x1ae))||undefined,'autoYes':_0xefed39[_0x28e188(0x1ad)](_0x28e188(0x1b8))}),{'ok':!![]};}},{'service':a150_0x97f2de(0x1be),'command':a150_0x97f2de(0x1c6),'description':a150_0x97f2de(0x1d0),'risk':a150_0x97f2de(0x1cb),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'project-name','description':a150_0x97f2de(0x1b7),'required':![]}],'flags':createFlags,async 'execute'(_0x2ebbf8){const _0x35df79=a150_0x97f2de,{createApp:_0x493a6c}=await import(_0x35df79(0x1c9)),{createProjectNonInteractive:_0x1e23dd}=await import('../../commands/project/create/non-interactive.js'),_0x12b014=_0x2ebbf8[_0x35df79(0x1cf)](_0x35df79(0x1b0))[_0x35df79(0x1d2)]()||_0x2ebbf8[_0x35df79(0x1ce)][0x0]?.[_0x35df79(0x1d2)](),_0x4e652f=_0x2ebbf8[_0x35df79(0x1cf)](_0x35df79(0x1ae))||undefined,_0x2891dc=_0x2ebbf8[_0x35df79(0x1cf)](_0x35df79(0x1d4))||undefined;if(_0x2ebbf8[_0x35df79(0x1bf)]){if(!_0x12b014)throw CliErrors[_0x35df79(0x1bc)](_0x35df79(0x1b5),_0x35df79(0x1ba)+CLI_BIN_NAME+_0x35df79(0x1cd));await _0x1e23dd(_0x12b014,_0x4e652f,_0x2891dc,_0x2ebbf8[_0x35df79(0x1af)]);}else await _0x493a6c({'projectCode':_0x12b014,'appCode':_0x2891dc,'env':_0x4e652f,'cookie':_0x2ebbf8[_0x35df79(0x1af)]});return{'ok':!![]};}},{'service':a150_0x97f2de(0x1be),'command':a150_0x97f2de(0x1b4),'description':a150_0x97f2de(0x1d9),'risk':a150_0x97f2de(0x1cb),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0xd49635){const _0x13b9bd=a150_0x97f2de;return await upgradeApp(_0xd49635[_0x13b9bd(0x1bf)],{'yes':_0xd49635[_0x13b9bd(0x1ad)](_0x13b9bd(0x1b8))}),{'ok':!![]};}}];function a150_0x1aab(){const _0x1d14a5=['21MgZJiy','write','App\x20code\x20to\x20initialize','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','args','str','Create\x20a\x20new\x20project','init','trim','Auto-confirm\x20prompts','appcode','\x20workspace\x20init','4043400UFBgRO','Project\x20name','2917272NIsmeI','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','string','bool','env','cookie','name','24660RGfcDh','3361VnYUUq','Skip\x20confirmation\x20prompt','upgrade','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','boolean','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','yes','442996wVRZCE','Usage:\x20','10wbMXek','validation','636FFYoea','project','nonInteractive','6963xdAqvp','2026-07','3931864TOaPiK','169GLjGQC','6zCdNvC','Deprecated:\x20use\x20workspace\x20init\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','create','Target\x20environment','4026285VASWHY','../../commands/project/create/main.js'];a150_0x1aab=function(){return _0x1d14a5;};return a150_0x1aab();}