@lovrabet/rabetbase-cli 2.2.1-beta.1 → 2.2.1-beta.2

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 (204) 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/discover.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.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/use.js +1 -1
  26. package/lib/commands/auth/index.js +1 -1
  27. package/lib/commands/bff/create.js +1 -1
  28. package/lib/commands/bff/delete.js +1 -1
  29. package/lib/commands/bff/detail.js +1 -1
  30. package/lib/commands/bff/index.js +1 -1
  31. package/lib/commands/bff/list.js +1 -1
  32. package/lib/commands/bff/pull.js +1 -1
  33. package/lib/commands/bff/push.js +1 -1
  34. package/lib/commands/bff/status.js +1 -1
  35. package/lib/commands/cli-update.js +1 -1
  36. package/lib/commands/codegen/index.js +1 -1
  37. package/lib/commands/codegen/sdk.js +1 -1
  38. package/lib/commands/codegen/sql.js +1 -1
  39. package/lib/commands/common/app-selector.js +1 -1
  40. package/lib/commands/common/flags.js +1 -1
  41. package/lib/commands/common/validate.js +1 -1
  42. package/lib/commands/config/get.js +1 -1
  43. package/lib/commands/config/index.js +1 -1
  44. package/lib/commands/config/list.js +1 -1
  45. package/lib/commands/config/set.js +1 -1
  46. package/lib/commands/config/shared.js +1 -1
  47. package/lib/commands/data/filter.js +1 -1
  48. package/lib/commands/data/getOne.js +1 -1
  49. package/lib/commands/data/index.js +1 -1
  50. package/lib/commands/data/shared.js +1 -1
  51. package/lib/commands/dataset/capability.js +1 -1
  52. package/lib/commands/dataset/delete.js +1 -1
  53. package/lib/commands/dataset/detail.js +1 -1
  54. package/lib/commands/dataset/extend-update.js +1 -1
  55. package/lib/commands/dataset/field-update.js +1 -1
  56. package/lib/commands/dataset/index.js +1 -1
  57. package/lib/commands/dataset/list.js +1 -1
  58. package/lib/commands/dataset/operations.js +1 -1
  59. package/lib/commands/dataset/relation-create.js +1 -1
  60. package/lib/commands/dataset/relation-delete.js +1 -1
  61. package/lib/commands/dataset/relation-shared.js +1 -1
  62. package/lib/commands/dataset/relation-update.js +1 -1
  63. package/lib/commands/dataset/relations.js +1 -1
  64. package/lib/commands/dataset/rename.js +1 -1
  65. package/lib/commands/db/analyze-cancel.js +1 -1
  66. package/lib/commands/db/analyze-start.js +1 -1
  67. package/lib/commands/db/analyze-status.js +1 -1
  68. package/lib/commands/db/create.js +1 -1
  69. package/lib/commands/db/delete.js +1 -1
  70. package/lib/commands/db/detail.js +1 -1
  71. package/lib/commands/db/diff.js +1 -1
  72. package/lib/commands/db/index.js +1 -1
  73. package/lib/commands/db/list.js +1 -1
  74. package/lib/commands/db/shared.js +1 -1
  75. package/lib/commands/db/tables.js +1 -1
  76. package/lib/commands/db/test.js +1 -1
  77. package/lib/commands/db/update.js +1 -1
  78. package/lib/commands/doctor.js +1 -1
  79. package/lib/commands/init/index.js +1 -1
  80. package/lib/commands/issue/index.js +1 -1
  81. package/lib/commands/issue/nudge.js +1 -1
  82. package/lib/commands/issue/report.js +1 -1
  83. package/lib/commands/issue/shared.js +1 -1
  84. package/lib/commands/logs/index.js +1 -1
  85. package/lib/commands/menu/index.js +1 -1
  86. package/lib/commands/menu/shared/compare-table.js +1 -1
  87. package/lib/commands/menu/shared/index.js +1 -1
  88. package/lib/commands/menu/shared/inquirer.js +1 -1
  89. package/lib/commands/menu/shared/local-pages.js +1 -1
  90. package/lib/commands/menu/shared/logic.js +1 -1
  91. package/lib/commands/menu/shared/service.js +1 -1
  92. package/lib/commands/menu/shared/sync-core.js +1 -1
  93. package/lib/commands/menu/shared/update-core.js +1 -1
  94. package/lib/commands/menu/shared/valid-url.js +1 -1
  95. package/lib/commands/menu/sync.js +1 -1
  96. package/lib/commands/menu/update.js +1 -1
  97. package/lib/commands/page/generate-start.js +1 -1
  98. package/lib/commands/page/generate-status.js +1 -1
  99. package/lib/commands/page/index.js +1 -1
  100. package/lib/commands/page/pull.js +1 -1
  101. package/lib/commands/page/push.js +1 -1
  102. package/lib/commands/page/relation-audit.js +1 -1
  103. package/lib/commands/page/shared.js +1 -1
  104. package/lib/commands/page/standard-page-status.js +1 -1
  105. package/lib/commands/page/sync.js +1 -1
  106. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  107. package/lib/commands/project/create/format-elapsed.js +1 -1
  108. package/lib/commands/project/create/main.js +1 -1
  109. package/lib/commands/project/create/non-interactive.js +1 -1
  110. package/lib/commands/project/create/project-template-path.js +1 -1
  111. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  112. package/lib/commands/project/create/use-format-code.js +1 -1
  113. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  114. package/lib/commands/project/index.js +1 -1
  115. package/lib/commands/project/init.js +1 -1
  116. package/lib/commands/project/upgrade.js +1 -1
  117. package/lib/commands/registry.js +1 -1
  118. package/lib/commands/run/index.js +1 -1
  119. package/lib/commands/schema.js +1 -1
  120. package/lib/commands/skill/index.js +1 -1
  121. package/lib/commands/sql/create.js +1 -1
  122. package/lib/commands/sql/delete.js +1 -1
  123. package/lib/commands/sql/detail.js +1 -1
  124. package/lib/commands/sql/exec.js +1 -1
  125. package/lib/commands/sql/index.js +1 -1
  126. package/lib/commands/sql/list.js +1 -1
  127. package/lib/commands/sql/pull.js +1 -1
  128. package/lib/commands/sql/push.js +1 -1
  129. package/lib/commands/sql/save.js +1 -1
  130. package/lib/commands/sql/shared.js +1 -1
  131. package/lib/commands/sql/status.js +1 -1
  132. package/lib/commands/sql/validate.js +1 -1
  133. package/lib/config/schema.js +1 -1
  134. package/lib/constant/cdn.js +1 -1
  135. package/lib/constant/cli.js +1 -1
  136. package/lib/constant/defaults.js +1 -1
  137. package/lib/constant/domain.js +1 -1
  138. package/lib/constant/env.js +1 -1
  139. package/lib/constant/output.js +1 -1
  140. package/lib/constant/paths.js +1 -1
  141. package/lib/constant/risk.js +1 -1
  142. package/lib/context.js +1 -1
  143. package/lib/core/alias-resolver.js +1 -1
  144. package/lib/core/api-client.js +1 -1
  145. package/lib/core/bff/config.js +1 -1
  146. package/lib/core/bff/file-system.js +1 -1
  147. package/lib/core/bff/hash.js +1 -1
  148. package/lib/core/bff/lock.js +1 -1
  149. package/lib/core/bff/utils.js +1 -1
  150. package/lib/core/db-resolver.js +1 -1
  151. package/lib/core/page/file-system.js +1 -1
  152. package/lib/core/page/hash.js +1 -1
  153. package/lib/core/page/lock.js +1 -1
  154. package/lib/core/sql-sync/config.js +1 -1
  155. package/lib/core/sql-sync/file-system.js +1 -1
  156. package/lib/core/sql-sync/hash.js +1 -1
  157. package/lib/core/sql-sync/lock.js +1 -1
  158. package/lib/core/sql-sync/utils.js +1 -1
  159. package/lib/core/sql-validator.js +1 -1
  160. package/lib/errors.js +1 -1
  161. package/lib/framework/build-all-flags.js +1 -1
  162. package/lib/framework/flags.js +1 -1
  163. package/lib/framework/help.js +1 -1
  164. package/lib/framework/index.js +1 -1
  165. package/lib/framework/output.js +1 -1
  166. package/lib/framework/response.js +1 -1
  167. package/lib/framework/runner-alias.js +1 -1
  168. package/lib/framework/runner.js +1 -1
  169. package/lib/framework/schema-export.js +1 -1
  170. package/lib/framework/types.js +1 -1
  171. package/lib/generated/build-info.js +1 -1
  172. package/lib/help.js +1 -1
  173. package/lib/skills/main.js +1 -1
  174. package/lib/skills/npx-skills-add.js +1 -1
  175. package/lib/telemetry/cli-command-trace.js +1 -1
  176. package/lib/telemetry/cli-help-trace.js +1 -1
  177. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  178. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  179. package/lib/telemetry/send-cli-trace-log.js +1 -1
  180. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  181. package/lib/utils/ai_config.js +1 -1
  182. package/lib/utils/apply-jq-filter.js +1 -1
  183. package/lib/utils/cdn-config.js +1 -1
  184. package/lib/utils/check-sdk-version.js +1 -1
  185. package/lib/utils/cli-version-check.js +1 -1
  186. package/lib/utils/cli-version-policy.js +1 -1
  187. package/lib/utils/config.js +1 -1
  188. package/lib/utils/copy-directory.js +1 -1
  189. package/lib/utils/entity-with-id.js +1 -1
  190. package/lib/utils/file-utils.js +1 -1
  191. package/lib/utils/guides-cdn.js +1 -1
  192. package/lib/utils/http-client.js +1 -1
  193. package/lib/utils/is-non-interactive.js +1 -1
  194. package/lib/utils/logger.js +1 -1
  195. package/lib/utils/params.js +1 -1
  196. package/lib/utils/platform.js +1 -1
  197. package/lib/utils/rules-cdn.js +1 -1
  198. package/lib/utils/sleep.js +1 -1
  199. package/lib/utils/template-replacer.js +1 -1
  200. package/lib/utils/update-notice.js +1 -1
  201. package/lib/utils/version.js +1 -1
  202. package/lib/utils/with-active-cookie.js +1 -1
  203. package/lib/utils/write-cli-side-channel.js +1 -1
  204. package/package.json +1 -1
@@ -1 +1 @@
1
- const a19_0x3a811f=a19_0x48be;(function(_0x442c1e,_0x1dd571){const _0x231e80=a19_0x48be,_0x52f67a=_0x442c1e();while(!![]){try{const _0x4fea74=parseInt(_0x231e80(0x129))/0x1+parseInt(_0x231e80(0x12f))/0x2+parseInt(_0x231e80(0x138))/0x3+parseInt(_0x231e80(0x137))/0x4*(-parseInt(_0x231e80(0x12c))/0x5)+-parseInt(_0x231e80(0x12a))/0x6*(-parseInt(_0x231e80(0x13a))/0x7)+-parseInt(_0x231e80(0x134))/0x8*(-parseInt(_0x231e80(0x12b))/0x9)+parseInt(_0x231e80(0x13b))/0xa*(-parseInt(_0x231e80(0x136))/0xb);if(_0x4fea74===_0x1dd571)break;else _0x52f67a['push'](_0x52f67a['shift']());}catch(_0x1b9aff){_0x52f67a['push'](_0x52f67a['shift']());}}}(a19_0x220e,0x2c157));function a19_0x48be(_0x2fa89a,_0x53f110){_0x2fa89a=_0x2fa89a-0x127;const _0x220e84=a19_0x220e();let _0x48be40=_0x220e84[_0x2fa89a];return _0x48be40;}import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x59cb87){const _0x2d04c3=a19_0x48be,{setActiveCookie:_0x521179}=await import(_0x2d04c3(0x128));_0x521179(_0x59cb87[_0x2d04c3(0x131)]);const _0xddbdaf=await listRemoteApps();return{'ok':!![],'data':{'items':_0xddbdaf[_0x2d04c3(0x12d)](_0x24dd11=>({..._0x24dd11['id']!=null?{'id':_0x24dd11['id']}:{},'appCode':_0x24dd11[_0x2d04c3(0x135)],'appName':_0x24dd11[_0x2d04c3(0x127)],..._0x24dd11[_0x2d04c3(0x13c)]!=null?{'appDesc':_0x24dd11[_0x2d04c3(0x13c)]}:{}})),'meta':{'source':_0x2d04c3(0x139)}}};}function a19_0x220e(){const _0x126917=['3051747mofveW','830GtzLgT','map','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','251830YZEuRj','read','cookie','remote','app','8XmQMhD','appCode','55pcuUpV','4744yiNGkj','880839JCzQwC','platform','28shNYYE','1823620ggTdCc','appDesc','appName','../../core/api-client.js','358942yyARdM','257550UPWpRQ'];a19_0x220e=function(){return _0x126917;};return a19_0x220e();}export const appRemoteDefinition={'service':a19_0x3a811f(0x133),'command':a19_0x3a811f(0x132),'description':a19_0x3a811f(0x12e),'risk':a19_0x3a811f(0x130),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ function a19_0x392a(_0x2aef7c,_0x22efde){_0x2aef7c=_0x2aef7c-0xfd;const _0x308d74=a19_0x308d();let _0x392a94=_0x308d74[_0x2aef7c];return _0x392a94;}const a19_0x25489e=a19_0x392a;function a19_0x308d(){const _0x18ee9f=['18TNjjoK','4556725aTVikp','1143888mIVees','22998uKzoTE','1469140tAZang','../../core/api-client.js','cookie','2372232mFKloz','platform','appCode','map','708804UkJqDT','20wmuzOa','appName','app','7UsqVSc','4731208FNtzGR','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login'];a19_0x308d=function(){return _0x18ee9f;};return a19_0x308d();}(function(_0x26e44a,_0x522809){const _0x156fa3=a19_0x392a,_0x471a5e=_0x26e44a();while(!![]){try{const _0x42a02c=-parseInt(_0x156fa3(0x107))/0x1+-parseInt(_0x156fa3(0x108))/0x2*(-parseInt(_0x156fa3(0xff))/0x3)+-parseInt(_0x156fa3(0xfe))/0x4+parseInt(_0x156fa3(0xfd))/0x5+parseInt(_0x156fa3(0x103))/0x6*(-parseInt(_0x156fa3(0x10b))/0x7)+parseInt(_0x156fa3(0x10c))/0x8+parseInt(_0x156fa3(0x10e))/0x9*(parseInt(_0x156fa3(0x100))/0xa);if(_0x42a02c===_0x522809)break;else _0x471a5e['push'](_0x471a5e['shift']());}catch(_0x36eab8){_0x471a5e['push'](_0x471a5e['shift']());}}}(a19_0x308d,0x75f0e));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x41db4b){const _0x311665=a19_0x392a,{setActiveCookie:_0x4464cf}=await import(_0x311665(0x101));_0x4464cf(_0x41db4b[_0x311665(0x102)]);const _0x3fe6a1=await listRemoteApps();return{'ok':!![],'data':{'items':_0x3fe6a1[_0x311665(0x106)](_0x51a6d7=>({..._0x51a6d7['id']!=null?{'id':_0x51a6d7['id']}:{},'appCode':_0x51a6d7[_0x311665(0x105)],'appName':_0x51a6d7[_0x311665(0x109)],..._0x51a6d7['appDesc']!=null?{'appDesc':_0x51a6d7['appDesc']}:{}})),'meta':{'source':_0x311665(0x104)}}};}export const appRemoteDefinition={'service':a19_0x25489e(0x10a),'command':'remote','description':a19_0x25489e(0x10d),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
@@ -1 +1 @@
1
- (function(_0x28956d,_0x413637){const _0x18809b=a20_0x599c,_0x175a99=_0x28956d();while(!![]){try{const _0x4e45e0=-parseInt(_0x18809b(0x116))/0x1+parseInt(_0x18809b(0x114))/0x2*(-parseInt(_0x18809b(0x112))/0x3)+-parseInt(_0x18809b(0x115))/0x4+-parseInt(_0x18809b(0x118))/0x5+parseInt(_0x18809b(0x119))/0x6*(parseInt(_0x18809b(0x113))/0x7)+parseInt(_0x18809b(0x117))/0x8+parseInt(_0x18809b(0x111))/0x9;if(_0x4e45e0===_0x413637)break;else _0x175a99['push'](_0x175a99['shift']());}catch(_0x420694){_0x175a99['push'](_0x175a99['shift']());}}}(a20_0x1873,0x966d7));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';function a20_0x1873(){const _0x5ea11f=['16861032XGgeQp','6yGDnPB','214025DAAyij','307774ZVAYuO','2991568IOwKDV','844459ZrKOxJ','6850824zozyvI','1526250MjDshw','18uSVNEK'];a20_0x1873=function(){return _0x5ea11f;};return a20_0x1873();}function a20_0x599c(_0xf98022,_0xb566df){_0xf98022=_0xf98022-0x111;const _0x187395=a20_0x1873();let _0x599c1a=_0x187395[_0xf98022];return _0x599c1a;}import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ (function(_0xe4e161,_0x35b772){const _0x4b2a2d=a20_0x3eda,_0x52889=_0xe4e161();while(!![]){try{const _0xf96579=parseInt(_0x4b2a2d(0x81))/0x1*(-parseInt(_0x4b2a2d(0x83))/0x2)+parseInt(_0x4b2a2d(0x8a))/0x3*(-parseInt(_0x4b2a2d(0x80))/0x4)+parseInt(_0x4b2a2d(0x86))/0x5+-parseInt(_0x4b2a2d(0x88))/0x6*(-parseInt(_0x4b2a2d(0x84))/0x7)+-parseInt(_0x4b2a2d(0x8b))/0x8*(-parseInt(_0x4b2a2d(0x85))/0x9)+-parseInt(_0x4b2a2d(0x82))/0xa+parseInt(_0x4b2a2d(0x87))/0xb*(-parseInt(_0x4b2a2d(0x89))/0xc);if(_0xf96579===_0x35b772)break;else _0x52889['push'](_0x52889['shift']());}catch(_0x543477){_0x52889['push'](_0x52889['shift']());}}}(a20_0x424a,0x399a0));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';function a20_0x3eda(_0x3c756e,_0x3519f2){_0x3c756e=_0x3c756e-0x80;const _0x424a92=a20_0x424a();let _0x3edac2=_0x424a92[_0x3c756e];return _0x3edac2;}import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';function a20_0x424a(){const _0x314b9b=['2561042iorOpe','120hesoqL','12AFmTkD','21891ASvrAr','1156336mapsdz','48iETNZh','19OsYWZS','1115340yWCXyq','14276kBmGmm','104398kYYHnP','9ctfBeK','1803280rBePcJ'];a20_0x424a=function(){return _0x314b9b;};return a20_0x424a();}import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- const a21_0xd19e8d=a21_0x4ba4;(function(_0x13f229,_0x44945a){const _0x2d7878=a21_0x4ba4,_0x496e58=_0x13f229();while(!![]){try{const _0x4e5f24=parseInt(_0x2d7878(0xee))/0x1*(-parseInt(_0x2d7878(0xf5))/0x2)+-parseInt(_0x2d7878(0xe7))/0x3*(-parseInt(_0x2d7878(0xd7))/0x4)+parseInt(_0x2d7878(0xf3))/0x5+-parseInt(_0x2d7878(0xe6))/0x6+parseInt(_0x2d7878(0xd6))/0x7*(parseInt(_0x2d7878(0xd9))/0x8)+parseInt(_0x2d7878(0xf0))/0x9+parseInt(_0x2d7878(0xe1))/0xa*(-parseInt(_0x2d7878(0xe8))/0xb);if(_0x4e5f24===_0x44945a)break;else _0x496e58['push'](_0x496e58['shift']());}catch(_0x17ba2c){_0x496e58['push'](_0x496e58['shift']());}}}(a21_0x3ad6,0x33e84));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x2d44d2,_0x1e3087){const _0x32494b=a21_0x4ba4,_0xd74b9=[],_0x4d45ee=_0x2d44d2[_0x32494b(0xde)]&&typeof _0x2d44d2[_0x32494b(0xde)]==='object'?_0x2d44d2['apps']:{},_0x73c035=_0x2d44d2[_0x32494b(0xe4)]||undefined;for(const [_0x36caa0,_0x35b62e]of Object[_0x32494b(0xf1)](_0x4d45ee)){if(!_0x35b62e||typeof _0x35b62e!==_0x32494b(0xef)||!_0x35b62e[_0x32494b(0xf2)])continue;_0xd74b9[_0x32494b(0xf6)]({'name':_0x36caa0,'appcode':_0x35b62e[_0x32494b(0xf2)],'named':!![],'definedIn':_0x1e3087,'isDefault':_0x36caa0===_0x73c035,...buildAppProfileListFields(_0x35b62e)});}return _0xd74b9;}function buildMergedItems(_0x581436,_0x4085c7){const _0x5e6ab7=a21_0x4ba4,{apps:apps={},defaultApp:_0x2eb7b0}=_0x581436,_0x53241a=_0x4085c7[_0x5e6ab7(0xe9)][_0x5e6ab7(0xde)]&&typeof _0x4085c7[_0x5e6ab7(0xe9)][_0x5e6ab7(0xde)]===_0x5e6ab7(0xef)?_0x4085c7[_0x5e6ab7(0xe9)][_0x5e6ab7(0xde)]:{},_0x387965=_0x4085c7['projectConfig']['apps']&&typeof _0x4085c7[_0x5e6ab7(0xf9)][_0x5e6ab7(0xde)]===_0x5e6ab7(0xef)?_0x4085c7[_0x5e6ab7(0xf9)]['apps']:{},_0xb253e9=_0x4085c7[_0x5e6ab7(0xf9)]['inherit']===![],_0x2d02e1=Object[_0x5e6ab7(0xf1)](apps),_0x4b923c=_0x2d02e1[_0x5e6ab7(0xdb)](([_0x4c1068,_0x1e12dc])=>({'name':_0x4c1068,'appcode':_0x1e12dc['appcode'],'named':!![],'definedIn':appDefinedIn(_0x4c1068,_0x53241a,_0x387965,_0xb253e9),'isDefault':_0x4c1068===_0x2eb7b0,...buildAppProfileListFields(_0x1e12dc)}));return _0x4b923c;}async function execute(_0x48bb81){const _0x1ea768=a21_0x4ba4,_0x62001e=_0x48bb81[_0x1ea768(0xdd)](_0x1ea768(0xed)),_0x578979=_0x48bb81[_0x1ea768(0xdd)](_0x1ea768(0xd5)),_0x27a30d=_0x62001e?'global':_0x578979?_0x1ea768(0xd5):_0x1ea768(0xeb),{config:_0x5cee6d,layers:_0x1a2d3d}=readRawConfigWithLayers(),_0x325af6=resolveDefaultAppSource(_0x1a2d3d),{defaultApp:_0x59d483}=_0x5cee6d;let _0x275edc,_0x311e33;switch(_0x27a30d){case _0x1ea768(0xed):_0x275edc=buildItemsFromLayer(_0x1a2d3d[_0x1ea768(0xe9)],_0x1ea768(0xed)),_0x311e33=_0x1a2d3d[_0x1ea768(0xd8)];break;case _0x1ea768(0xd5):_0x275edc=buildItemsFromLayer(_0x1a2d3d[_0x1ea768(0xf9)],_0x1ea768(0xd5)),_0x311e33=_0x1a2d3d['projectPath'];break;default:_0x275edc=buildMergedItems(_0x5cee6d,_0x1a2d3d);break;}enrichAppListItemsWithMergedSelection(_0x275edc,_0x48bb81[_0x1ea768(0xf8)]);if(_0x275edc[_0x1ea768(0xea)]===0x0){const _0x1e1234=_0x27a30d===_0x1ea768(0xeb)?'':_0x1ea768(0xe2)+_0x27a30d+_0x1ea768(0xe3);return{'ok':!![],'data':[],'message':_0x1ea768(0xf4)+_0x1e1234+_0x1ea768(0xd4)+CLI_BIN_NAME+_0x1ea768(0xe5)};}const _0x2779ec=_0x275edc[_0x1ea768(0xda)](_0x96a799=>_0x96a799['isCurrent']===!![]),_0x461c5e=_0x59d483??_0x2779ec?.['appcode']??null,_0x53157a=_0x27a30d==='merged'?{'globalPath':_0x1a2d3d[_0x1ea768(0xd8)]??null,'projectPath':_0x1a2d3d[_0x1ea768(0xe0)]??null,'defaultApp':_0x461c5e,'defaultAppSource':_0x59d483!=null?_0x325af6:null}:{'scope':_0x27a30d,'configPath':_0x311e33??null};return{'ok':!![],'data':{'items':_0x275edc,'meta':_0x53157a}};}function a21_0x4ba4(_0x41ba0e,_0x99b305){_0x41ba0e=_0x41ba0e-0xd3;const _0x3ad6ef=a21_0x3ad6();let _0x4ba487=_0x3ad6ef[_0x41ba0e];return _0x4ba487;}export const appListDefinition={'service':'app','command':a21_0xd19e8d(0xec),'description':a21_0xd19e8d(0xf7),'risk':a21_0xd19e8d(0xdf),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0xd19e8d(0xed),'type':a21_0xd19e8d(0xdc),'description':a21_0xd19e8d(0xd3),'default':![]},{'name':'project','type':a21_0xd19e8d(0xdc),'description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],'execute':execute};function a21_0x3ad6(){const _0x1bae61=['projectPath','4965850QBgtHy','\x20in\x20','\x20config','defaultApp','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','2101914eQrABv','39clpXvt','11Crefbp','globalConfig','length','merged','list','global','17TflrWr','object','3185442PnwwyI','entries','appcode','1454930vqypCa','No\x20apps\x20configured','23880EUwkEt','push','List\x20all\x20configured\x20apps','mergedCli','projectConfig','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','.\x20Use\x20`','project','860027jwEnKO','76612KfJPlV','globalPath','24cSkill','find','map','boolean','bool','apps','read'];a21_0x3ad6=function(){return _0x1bae61;};return a21_0x3ad6();}
1
+ const a21_0x45c462=a21_0xa880;(function(_0x67b105,_0x5a4579){const _0x5ced26=a21_0xa880,_0x163cd5=_0x67b105();while(!![]){try{const _0x372efe=parseInt(_0x5ced26(0xd0))/0x1*(-parseInt(_0x5ced26(0xb1))/0x2)+-parseInt(_0x5ced26(0xc1))/0x3*(parseInt(_0x5ced26(0xb5))/0x4)+-parseInt(_0x5ced26(0xb7))/0x5+-parseInt(_0x5ced26(0xba))/0x6*(parseInt(_0x5ced26(0xae))/0x7)+parseInt(_0x5ced26(0xc3))/0x8*(parseInt(_0x5ced26(0xcb))/0x9)+parseInt(_0x5ced26(0xc6))/0xa+parseInt(_0x5ced26(0xcf))/0xb*(parseInt(_0x5ced26(0xaf))/0xc);if(_0x372efe===_0x5a4579)break;else _0x163cd5['push'](_0x163cd5['shift']());}catch(_0x2133d4){_0x163cd5['push'](_0x163cd5['shift']());}}}(a21_0x3a91,0xdf64a));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a21_0x3a91(){const _0x503609=['apps','project','12568920SULIoN','global','bool','mergedCli','entries','9hsEsbx','\x20config','list','projectPath','4019873cNDWiS','1181744XMHblx','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','appcode','find','4532101SOKPws','60hYfHLi','\x20in\x20','2tsSKEt','push','length','globalConfig','36bMtohJ','.\x20Use\x20`','4711890BPMjFl','object','map','6fSYkRL','globalPath','merged','projectConfig','defaultApp','No\x20apps\x20configured','boolean','218049qQzTBy','inherit','10052984meqvfM'];a21_0x3a91=function(){return _0x503609;};return a21_0x3a91();}import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x17cdeb,_0x5aa2de){const _0x3bf3a6=a21_0xa880,_0x351997=[],_0xcc6008=_0x17cdeb[_0x3bf3a6(0xc4)]&&typeof _0x17cdeb[_0x3bf3a6(0xc4)]===_0x3bf3a6(0xb8)?_0x17cdeb[_0x3bf3a6(0xc4)]:{},_0x55122f=_0x17cdeb[_0x3bf3a6(0xbe)]||undefined;for(const [_0x25213f,_0xd638b7]of Object[_0x3bf3a6(0xca)](_0xcc6008)){if(!_0xd638b7||typeof _0xd638b7!=='object'||!_0xd638b7['appcode'])continue;_0x351997[_0x3bf3a6(0xb2)]({'name':_0x25213f,'appcode':_0xd638b7[_0x3bf3a6(0xac)],'named':!![],'definedIn':_0x5aa2de,'isDefault':_0x25213f===_0x55122f,...buildAppProfileListFields(_0xd638b7)});}return _0x351997;}function buildMergedItems(_0x2df5c3,_0x1f9a5d){const _0x3a6fd1=a21_0xa880,{apps:apps={},defaultApp:_0xca2cb7}=_0x2df5c3,_0x3da558=_0x1f9a5d['globalConfig']['apps']&&typeof _0x1f9a5d['globalConfig'][_0x3a6fd1(0xc4)]===_0x3a6fd1(0xb8)?_0x1f9a5d['globalConfig']['apps']:{},_0x3e337c=_0x1f9a5d[_0x3a6fd1(0xbd)][_0x3a6fd1(0xc4)]&&typeof _0x1f9a5d['projectConfig'][_0x3a6fd1(0xc4)]===_0x3a6fd1(0xb8)?_0x1f9a5d[_0x3a6fd1(0xbd)]['apps']:{},_0x533528=_0x1f9a5d['projectConfig'][_0x3a6fd1(0xc2)]===![],_0x3cbb47=Object[_0x3a6fd1(0xca)](apps),_0x49827a=_0x3cbb47[_0x3a6fd1(0xb9)](([_0x4a4ec1,_0x52d5f6])=>({'name':_0x4a4ec1,'appcode':_0x52d5f6[_0x3a6fd1(0xac)],'named':!![],'definedIn':appDefinedIn(_0x4a4ec1,_0x3da558,_0x3e337c,_0x533528),'isDefault':_0x4a4ec1===_0xca2cb7,...buildAppProfileListFields(_0x52d5f6)}));return _0x49827a;}function a21_0xa880(_0xed0f31,_0xa33fa5){_0xed0f31=_0xed0f31-0xab;const _0x3a91a0=a21_0x3a91();let _0xa8807e=_0x3a91a0[_0xed0f31];return _0xa8807e;}async function execute(_0x5d852b){const _0x2e17f2=a21_0xa880,_0x41cf3a=_0x5d852b[_0x2e17f2(0xc8)](_0x2e17f2(0xc7)),_0x44d5e5=_0x5d852b[_0x2e17f2(0xc8)]('project'),_0x3ddf1b=_0x41cf3a?'global':_0x44d5e5?'project':_0x2e17f2(0xbc),{config:_0x3057d7,layers:_0x4af215}=readRawConfigWithLayers(),_0x5588cf=resolveDefaultAppSource(_0x4af215),{defaultApp:_0x152252}=_0x3057d7;let _0xc984c,_0x536b79;switch(_0x3ddf1b){case'global':_0xc984c=buildItemsFromLayer(_0x4af215[_0x2e17f2(0xb4)],_0x2e17f2(0xc7)),_0x536b79=_0x4af215[_0x2e17f2(0xbb)];break;case'project':_0xc984c=buildItemsFromLayer(_0x4af215[_0x2e17f2(0xbd)],_0x2e17f2(0xc5)),_0x536b79=_0x4af215['projectPath'];break;default:_0xc984c=buildMergedItems(_0x3057d7,_0x4af215);break;}enrichAppListItemsWithMergedSelection(_0xc984c,_0x5d852b[_0x2e17f2(0xc9)]);if(_0xc984c[_0x2e17f2(0xb3)]===0x0){const _0x410a20=_0x3ddf1b===_0x2e17f2(0xbc)?'':_0x2e17f2(0xb0)+_0x3ddf1b+_0x2e17f2(0xcc);return{'ok':!![],'data':[],'message':_0x2e17f2(0xbf)+_0x410a20+_0x2e17f2(0xb6)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x591532=_0xc984c[_0x2e17f2(0xad)](_0x436e7f=>_0x436e7f['isCurrent']===!![]),_0x232428=_0x152252??_0x591532?.['appcode']??null,_0x1efa56=_0x3ddf1b==='merged'?{'globalPath':_0x4af215['globalPath']??null,'projectPath':_0x4af215[_0x2e17f2(0xce)]??null,'defaultApp':_0x232428,'defaultAppSource':_0x152252!=null?_0x5588cf:null}:{'scope':_0x3ddf1b,'configPath':_0x536b79??null};return{'ok':!![],'data':{'items':_0xc984c,'meta':_0x1efa56}};}export const appListDefinition={'service':'app','command':a21_0x45c462(0xcd),'description':'List\x20all\x20configured\x20apps','risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x45c462(0xc7),'type':a21_0x45c462(0xc0),'description':a21_0x45c462(0xab),'default':![]},{'name':a21_0x45c462(0xc5),'type':'boolean','description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a22_0x353dbb=a22_0x2538;(function(_0xde1231,_0x26916c){const _0x56c1d7=a22_0x2538,_0x537bc4=_0xde1231();while(!![]){try{const _0x5eb4da=parseInt(_0x56c1d7(0x1f7))/0x1*(parseInt(_0x56c1d7(0x215))/0x2)+-parseInt(_0x56c1d7(0x20f))/0x3*(parseInt(_0x56c1d7(0x214))/0x4)+parseInt(_0x56c1d7(0x219))/0x5*(parseInt(_0x56c1d7(0x1fd))/0x6)+-parseInt(_0x56c1d7(0x213))/0x7*(-parseInt(_0x56c1d7(0x201))/0x8)+-parseInt(_0x56c1d7(0x200))/0x9+parseInt(_0x56c1d7(0x1f9))/0xa+parseInt(_0x56c1d7(0x216))/0xb;if(_0x5eb4da===_0x26916c)break;else _0x537bc4['push'](_0x537bc4['shift']());}catch(_0x2cb9b4){_0x537bc4['push'](_0x537bc4['shift']());}}}(a22_0x3d54,0x4ac02));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';function a22_0x2538(_0x7548d,_0x701d8d){_0x7548d=_0x7548d-0x1f2;const _0x3d5481=a22_0x3d54();let _0x253814=_0x3d5481[_0x7548d];return _0x253814;}import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x6256de){const _0xb37b5d=a22_0x2538,_0x4e2236=_0x6256de[_0xb37b5d(0x1fb)][0x0]?.[_0xb37b5d(0x20b)]();if(!_0x4e2236)throw CliErrors[_0xb37b5d(0x206)](_0xb37b5d(0x218),_0xb37b5d(0x208)+CLI_BIN_NAME+_0xb37b5d(0x1f6));}async function execute(_0x209740){const _0x5e4b10=a22_0x2538,_0x5e2438=_0x209740[_0x5e4b10(0x1fb)][0x0]?.[_0x5e4b10(0x20b)]();if(!_0x5e2438)throw CliErrors['validation'](_0x5e4b10(0x218),_0x5e4b10(0x208)+CLI_BIN_NAME+_0x5e4b10(0x1f6));const _0x5f1c9b=_0x209740[_0x5e4b10(0x212)]('global'),{config:_0x1cb0b2,layers:_0x2fd914}=readRawConfigWithLayers(),_0x4be019=_0x1cb0b2[_0x5e4b10(0x1f8)]??{};if(!_0x4be019[_0x5e2438])throw CliErrors[_0x5e4b10(0x206)]('App\x20\x22'+_0x5e2438+_0x5e4b10(0x209));const _0xbef64f=_0x2fd914[_0x5e4b10(0x1fc)][_0x5e4b10(0x1f8)]&&typeof _0x2fd914[_0x5e4b10(0x1fc)][_0x5e4b10(0x1f8)]===_0x5e4b10(0x1ff)?_0x2fd914[_0x5e4b10(0x1fc)][_0x5e4b10(0x1f8)]:{},_0x2580cb=_0x2fd914['projectConfig'][_0x5e4b10(0x1f8)]&&typeof _0x2fd914['projectConfig'][_0x5e4b10(0x1f8)]==='object'?_0x2fd914[_0x5e4b10(0x1fe)][_0x5e4b10(0x1f8)]:{},_0x2fce27=appDefinedIn(_0x5e2438,_0xbef64f,_0x2580cb,_0x2fd914[_0x5e4b10(0x1fe)][_0x5e4b10(0x210)]===![]),_0x56485=resolveAppScopeForWrite(_0x5e2438,_0x5f1c9b,_0x2fd914),_0x16f982={'global':_0x56485==='global'},_0x457c8b=readConfig(_0x16f982),_0x4b87a9=_0x457c8b[_0x5e4b10(0x1f8)];if(!_0x4b87a9||!_0x4b87a9[_0x5e2438])throw CliErrors[_0x5e4b10(0x206)](_0x5e4b10(0x217)+_0x5e2438+'\x22\x20not\x20found.');delete _0x4b87a9[_0x5e2438];let _0x3c8fde='';if(_0x457c8b[_0x5e4b10(0x20d)]===_0x5e2438){const _0x54fb3e=Object[_0x5e4b10(0x205)](_0x4b87a9);_0x457c8b['defaultApp']=_0x54fb3e[_0x5e4b10(0x1f2)]>0x0?_0x54fb3e[0x0]:undefined,_0x457c8b[_0x5e4b10(0x20d)]?_0x3c8fde=_0x5e4b10(0x1f4)+_0x457c8b[_0x5e4b10(0x20d)]+'\x22.':delete _0x457c8b[_0x5e4b10(0x20d)];}Object[_0x5e4b10(0x205)](_0x4b87a9)[_0x5e4b10(0x1f2)]===0x0&&(delete _0x457c8b[_0x5e4b10(0x1f8)],delete _0x457c8b[_0x5e4b10(0x20d)]);writeConfig(_0x457c8b,_0x16f982);const _0x4c5126=_0x2fce27===_0x5e4b10(0x204)?_0x5e4b10(0x1f5)+_0x5e2438+_0x5e4b10(0x203)+(_0x56485===_0x5e4b10(0x20c)?_0x5e4b10(0x1fa):'project')+'\x20config.':'';return{'ok':!![],'message':'Removed\x20app\x20\x22'+_0x5e2438+'\x22'+scopeLabel(_0x16f982)+'.'+_0x3c8fde+_0x4c5126};}function a22_0x3d54(){const _0x2a3dca=['Missing\x20app\x20name.','2105bhHudf','length','boolean','\x20Default\x20app\x20changed\x20to\x20\x22','\x20Note:\x20app\x20\x22','\x20app\x20remove\x20<name>\x20[--global]','2863aahJQn','apps','5827700wNDZBT','global','args','globalConfig','1026BuWydn','projectConfig','object','1366893YoqgOm','100560vpeIFd','Use\x20global\x20config\x20scope','\x22\x20still\x20defined\x20in\x20','both','keys','validation','App\x20profile\x20name\x20to\x20remove','Usage:\x20','\x22\x20not\x20found.','high-risk-write','trim','project','defaultApp','name','6lZaElX','inherit','app','bool','7pEUNvt','625164uCtFUy','18NMIOpG','852929uSgTcj','App\x20\x22'];a22_0x3d54=function(){return _0x2a3dca;};return a22_0x3d54();}export const appRemoveDefinition={'service':a22_0x353dbb(0x211),'command':'remove','description':'Remove\x20an\x20app\x20from\x20config','risk':a22_0x353dbb(0x20a),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x353dbb(0x20e),'description':a22_0x353dbb(0x207),'required':!![]}],'flags':[{'name':'global','type':a22_0x353dbb(0x1f3),'description':a22_0x353dbb(0x202),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x5e1d43=a22_0x50c8;(function(_0x2bb9be,_0x3c648e){const _0x2e2304=a22_0x50c8,_0x5a0ea5=_0x2bb9be();while(!![]){try{const _0x16cfc7=parseInt(_0x2e2304(0x11b))/0x1*(-parseInt(_0x2e2304(0x10d))/0x2)+parseInt(_0x2e2304(0x118))/0x3*(-parseInt(_0x2e2304(0x104))/0x4)+-parseInt(_0x2e2304(0x107))/0x5+parseInt(_0x2e2304(0xfd))/0x6+-parseInt(_0x2e2304(0x110))/0x7+parseInt(_0x2e2304(0x117))/0x8*(parseInt(_0x2e2304(0x108))/0x9)+parseInt(_0x2e2304(0x10c))/0xa;if(_0x16cfc7===_0x3c648e)break;else _0x5a0ea5['push'](_0x5a0ea5['shift']());}catch(_0x5de5e9){_0x5a0ea5['push'](_0x5a0ea5['shift']());}}}(a22_0x15fe,0xd9d46));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';function a22_0x50c8(_0x3bb684,_0x170c9e){_0x3bb684=_0x3bb684-0xf8;const _0x15fec0=a22_0x15fe();let _0x50c88d=_0x15fec0[_0x3bb684];return _0x50c88d;}import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x36202c){const _0x548856=a22_0x50c8,_0x2b06d0=_0x36202c[_0x548856(0x10e)][0x0]?.[_0x548856(0x10a)]();if(!_0x2b06d0)throw CliErrors[_0x548856(0x10b)](_0x548856(0x11c),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}function a22_0x15fe(){const _0x330a4e=['both','app','1611368NzraUu','apps','global','7310370eXxven','442917eyCzha','\x20Note:\x20app\x20\x22','trim','validation','38391160HtAdtj','1399914gTWHNZ','args','projectConfig','10217298evfCeD','object','App\x20\x22','remove','Use\x20global\x20config\x20scope','Usage:\x20','globalConfig','232VGEdDy','6aEylPR','defaultApp','inherit','1ZFHstp','Missing\x20app\x20name.','boolean','App\x20profile\x20name\x20to\x20remove','bool','project','\x22\x20not\x20found.','\x22\x20still\x20defined\x20in\x20','Removed\x20app\x20\x22','319596YynFQS','\x20config.','length','\x20app\x20remove\x20<name>\x20[--global]','keys'];a22_0x15fe=function(){return _0x330a4e;};return a22_0x15fe();}async function execute(_0x45fb54){const _0x4caf09=a22_0x50c8,_0x5d5b3d=_0x45fb54[_0x4caf09(0x10e)][0x0]?.[_0x4caf09(0x10a)]();if(!_0x5d5b3d)throw CliErrors[_0x4caf09(0x10b)]('Missing\x20app\x20name.',_0x4caf09(0x115)+CLI_BIN_NAME+_0x4caf09(0x100));const _0x1d4d6=_0x45fb54[_0x4caf09(0xf8)](_0x4caf09(0x106)),{config:_0x53318a,layers:_0x59ae6f}=readRawConfigWithLayers(),_0x25024a=_0x53318a[_0x4caf09(0x105)]??{};if(!_0x25024a[_0x5d5b3d])throw CliErrors[_0x4caf09(0x10b)](_0x4caf09(0x112)+_0x5d5b3d+_0x4caf09(0xfa));const _0x4dd988=_0x59ae6f[_0x4caf09(0x116)][_0x4caf09(0x105)]&&typeof _0x59ae6f[_0x4caf09(0x116)][_0x4caf09(0x105)]===_0x4caf09(0x111)?_0x59ae6f[_0x4caf09(0x116)][_0x4caf09(0x105)]:{},_0x387e59=_0x59ae6f[_0x4caf09(0x10f)][_0x4caf09(0x105)]&&typeof _0x59ae6f[_0x4caf09(0x10f)][_0x4caf09(0x105)]===_0x4caf09(0x111)?_0x59ae6f[_0x4caf09(0x10f)][_0x4caf09(0x105)]:{},_0xe4a30e=appDefinedIn(_0x5d5b3d,_0x4dd988,_0x387e59,_0x59ae6f[_0x4caf09(0x10f)][_0x4caf09(0x11a)]===![]),_0x569124=resolveAppScopeForWrite(_0x5d5b3d,_0x1d4d6,_0x59ae6f),_0x5b26d3={'global':_0x569124===_0x4caf09(0x106)},_0x189f0d=readConfig(_0x5b26d3),_0x42cb91=_0x189f0d['apps'];if(!_0x42cb91||!_0x42cb91[_0x5d5b3d])throw CliErrors[_0x4caf09(0x10b)](_0x4caf09(0x112)+_0x5d5b3d+'\x22\x20not\x20found.');delete _0x42cb91[_0x5d5b3d];let _0x552bad='';if(_0x189f0d[_0x4caf09(0x119)]===_0x5d5b3d){const _0x2e01a8=Object[_0x4caf09(0x101)](_0x42cb91);_0x189f0d[_0x4caf09(0x119)]=_0x2e01a8[_0x4caf09(0xff)]>0x0?_0x2e01a8[0x0]:undefined,_0x189f0d['defaultApp']?_0x552bad='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x189f0d[_0x4caf09(0x119)]+'\x22.':delete _0x189f0d[_0x4caf09(0x119)];}Object[_0x4caf09(0x101)](_0x42cb91)[_0x4caf09(0xff)]===0x0&&(delete _0x189f0d['apps'],delete _0x189f0d['defaultApp']);writeConfig(_0x189f0d,_0x5b26d3);const _0x1805eb=_0xe4a30e===_0x4caf09(0x102)?_0x4caf09(0x109)+_0x5d5b3d+_0x4caf09(0xfb)+(_0x569124==='project'?_0x4caf09(0x106):_0x4caf09(0xf9))+_0x4caf09(0xfe):'';return{'ok':!![],'message':_0x4caf09(0xfc)+_0x5d5b3d+'\x22'+scopeLabel(_0x5b26d3)+'.'+_0x552bad+_0x1805eb};}export const appRemoveDefinition={'service':a22_0x5e1d43(0x103),'command':a22_0x5e1d43(0x113),'description':'Remove\x20an\x20app\x20from\x20config','risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a22_0x5e1d43(0x11e),'required':!![]}],'flags':[{'name':a22_0x5e1d43(0x106),'type':a22_0x5e1d43(0x11d),'description':a22_0x5e1d43(0x114),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x1d2f3d,_0x354051){const _0x3198e8=a23_0x14ae,_0xd172f4=_0x1d2f3d();while(!![]){try{const _0x1b7c0a=parseInt(_0x3198e8(0xd2))/0x1+parseInt(_0x3198e8(0xc9))/0x2*(parseInt(_0x3198e8(0xd9))/0x3)+-parseInt(_0x3198e8(0xd0))/0x4*(parseInt(_0x3198e8(0xc6))/0x5)+-parseInt(_0x3198e8(0xdc))/0x6+parseInt(_0x3198e8(0xbf))/0x7*(-parseInt(_0x3198e8(0xd4))/0x8)+-parseInt(_0x3198e8(0xc2))/0x9*(-parseInt(_0x3198e8(0xcd))/0xa)+parseInt(_0x3198e8(0xdb))/0xb;if(_0x1b7c0a===_0x354051)break;else _0xd172f4['push'](_0xd172f4['shift']());}catch(_0x58f86d){_0xd172f4['push'](_0xd172f4['shift']());}}}(a23_0x3335,0xb6e60));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x5854ef,_0x224a95){const _0x1082a8=a23_0x14ae;if(!_0x224a95)return;const _0x3279d6=_0x224a95['apps']&&typeof _0x224a95[_0x1082a8(0xc3)]===_0x1082a8(0xc7)?_0x224a95['apps']:{},_0x5618c6=Object[_0x1082a8(0xc4)](_0x3279d6)['length']>0x0;for(const _0x498216 of _0x5854ef){_0x498216[_0x1082a8(0xd7)]=![];}const _0x1af7e5=_0x224a95[_0x1082a8(0xd1)]!=null?String(_0x224a95[_0x1082a8(0xd1)])[_0x1082a8(0xda)]():'';if(_0x5618c6){const _0x2686cf=_0x224a95[_0x1082a8(0xd3)]??_0x224a95[_0x1082a8(0xd8)];if(_0x2686cf)for(const _0x3fc0e0 of _0x5854ef){_0x3fc0e0['named']===!![]&&_0x3fc0e0[_0x1082a8(0xd5)]===_0x2686cf&&(_0x3fc0e0[_0x1082a8(0xd7)]=!![]);}for(const _0x2ae55f of _0x5854ef){if(_0x2ae55f[_0x1082a8(0xc0)]!==![])continue;if(_0x224a95[_0x1082a8(0xd8)])continue;_0x1af7e5&&String(_0x2ae55f[_0x1082a8(0xc8)]??'')[_0x1082a8(0xda)]()===_0x1af7e5&&(_0x2ae55f[_0x1082a8(0xd7)]=!![]);}return;}if(!_0x1af7e5)return;for(const _0xb3910c of _0x5854ef){String(_0xb3910c[_0x1082a8(0xc8)]??'')[_0x1082a8(0xda)]()===_0x1af7e5&&(_0xb3910c[_0x1082a8(0xd7)]=!![]);}}export function resolveAppScopeForWrite(_0x315d4f,_0x3982ba,_0x2de1c1){const _0xab8f39=a23_0x14ae;if(_0x3982ba)return _0xab8f39(0xde);const _0x564468=_0x2de1c1[_0xab8f39(0xce)][_0xab8f39(0xc3)]&&typeof _0x2de1c1[_0xab8f39(0xce)][_0xab8f39(0xc3)]===_0xab8f39(0xc7)?_0x2de1c1[_0xab8f39(0xce)][_0xab8f39(0xc3)]:{},_0xc1547a=_0x2de1c1['globalConfig'][_0xab8f39(0xc3)]&&typeof _0x2de1c1['globalConfig'][_0xab8f39(0xc3)]===_0xab8f39(0xc7)?_0x2de1c1[_0xab8f39(0xcb)][_0xab8f39(0xc3)]:{};if(Object[_0xab8f39(0xca)]['hasOwnProperty'][_0xab8f39(0xdd)](_0x564468,_0x315d4f))return _0xab8f39(0xc5);if(Object[_0xab8f39(0xca)][_0xab8f39(0xcf)][_0xab8f39(0xdd)](_0xc1547a,_0x315d4f))return _0xab8f39(0xde);return'project';}export function appDefinedIn(_0x45b4e2,_0x1abf82,_0x12e7d6,_0x196e25){const _0x10b272=a23_0x14ae;if(_0x196e25)return Object[_0x10b272(0xca)][_0x10b272(0xcf)]['call'](_0x12e7d6,_0x45b4e2)?_0x10b272(0xc5):_0x10b272(0xde);const _0x53ae8e=Object[_0x10b272(0xca)][_0x10b272(0xcf)][_0x10b272(0xdd)](_0x1abf82,_0x45b4e2),_0x41603d=Object['prototype'][_0x10b272(0xcf)]['call'](_0x12e7d6,_0x45b4e2);if(_0x53ae8e&&_0x41603d)return _0x10b272(0xd6);if(_0x41603d)return _0x10b272(0xc5);return _0x10b272(0xde);}export function resolveDefaultAppSource(_0x16af60){const _0x25a7ca=a23_0x14ae,_0x55323a=_0x16af60[_0x25a7ca(0xce)][_0x25a7ca(0xc3)]&&typeof _0x16af60['projectConfig'][_0x25a7ca(0xc3)]===_0x25a7ca(0xc7)?_0x16af60[_0x25a7ca(0xce)][_0x25a7ca(0xc3)]:{};if(_0x25a7ca(0xd8)in _0x16af60[_0x25a7ca(0xce)])return'project';if(Object[_0x25a7ca(0xc4)](_0x55323a)[_0x25a7ca(0xc1)]>0x0)return _0x25a7ca(0xc5);if(_0x16af60[_0x25a7ca(0xce)][_0x25a7ca(0xcc)]===![])return null;if(_0x16af60[_0x25a7ca(0xcb)][_0x25a7ca(0xd8)])return'global';return null;}export function getConfigPath(_0x2d67ad={}){const _0x3545d7=a23_0x14ae,_0x20e979=_0x2d67ad[_0x3545d7(0xde)]?'global':_0x3545d7(0xc5);return resolveWriteConfigPath(_0x20e979);}export function readConfig(_0xbc8b43={}){return readConfigFile(getConfigPath(_0xbc8b43));}export function writeConfig(_0x53d31a,_0x1fee3d={}){writeConfigFile(getConfigPath(_0x1fee3d),_0x53d31a);}export function scopeLabel(_0x504b4f){const _0x5c2624=a23_0x14ae;return _0x504b4f[_0x5c2624(0xde)]?'\x20(global)':'';}function a23_0x14ae(_0x3c6581,_0x592d0a){_0x3c6581=_0x3c6581-0xbf;const _0x333570=a23_0x3335();let _0x14aead=_0x333570[_0x3c6581];return _0x14aead;}function a23_0x3335(){const _0x18f1e0=['appcode','6DKtoAm','prototype','globalConfig','inherit','1878970nQPHJp','projectConfig','hasOwnProperty','4gRzGMw','appCode','229744lZFWeu','currentApp','36472lClOow','name','both','isCurrent','defaultApp','1343139HVrIBU','trim','14297217rubxwi','3445242zBwqbj','call','global','2163pyRVrM','named','length','9uPugJm','apps','keys','project','1642185bKqvqO','object'];a23_0x3335=function(){return _0x18f1e0;};return a23_0x3335();}
1
+ (function(_0x47e702,_0x3c45b4){const _0x51bc36=a23_0x3872,_0x3a4800=_0x47e702();while(!![]){try{const _0x538781=-parseInt(_0x51bc36(0x117))/0x1+parseInt(_0x51bc36(0x100))/0x2*(-parseInt(_0x51bc36(0x10a))/0x3)+parseInt(_0x51bc36(0x10e))/0x4*(-parseInt(_0x51bc36(0xfd))/0x5)+parseInt(_0x51bc36(0x106))/0x6+parseInt(_0x51bc36(0x110))/0x7+-parseInt(_0x51bc36(0x10f))/0x8+parseInt(_0x51bc36(0x115))/0x9;if(_0x538781===_0x3c45b4)break;else _0x3a4800['push'](_0x3a4800['shift']());}catch(_0x232841){_0x3a4800['push'](_0x3a4800['shift']());}}}(a23_0x3716,0x1d8eb));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x7d738f,_0x350bf8){const _0x33021c=a23_0x3872;if(!_0x350bf8)return;const _0x1e1d56=_0x350bf8['apps']&&typeof _0x350bf8[_0x33021c(0x103)]==='object'?_0x350bf8[_0x33021c(0x103)]:{},_0x2f777b=Object[_0x33021c(0x113)](_0x1e1d56)[_0x33021c(0xfe)]>0x0;for(const _0x1513f6 of _0x7d738f){_0x1513f6[_0x33021c(0x10c)]=![];}const _0x43da3b=_0x350bf8[_0x33021c(0x105)]!=null?String(_0x350bf8[_0x33021c(0x105)])[_0x33021c(0xff)]():'';if(_0x2f777b){const _0xef11b9=_0x350bf8['currentApp']??_0x350bf8['defaultApp'];if(_0xef11b9)for(const _0x30d55c of _0x7d738f){_0x30d55c[_0x33021c(0xfc)]===!![]&&_0x30d55c[_0x33021c(0x107)]===_0xef11b9&&(_0x30d55c['isCurrent']=!![]);}for(const _0x221175 of _0x7d738f){if(_0x221175[_0x33021c(0xfc)]!==![])continue;if(_0x350bf8['defaultApp'])continue;_0x43da3b&&String(_0x221175['appcode']??'')['trim']()===_0x43da3b&&(_0x221175[_0x33021c(0x10c)]=!![]);}return;}if(!_0x43da3b)return;for(const _0x51b472 of _0x7d738f){String(_0x51b472[_0x33021c(0x112)]??'')[_0x33021c(0xff)]()===_0x43da3b&&(_0x51b472[_0x33021c(0x10c)]=!![]);}}export function resolveAppScopeForWrite(_0x18a614,_0xca7fed,_0x54df34){const _0x106202=a23_0x3872;if(_0xca7fed)return _0x106202(0x104);const _0x149b19=_0x54df34['projectConfig']['apps']&&typeof _0x54df34[_0x106202(0x10b)][_0x106202(0x103)]===_0x106202(0x111)?_0x54df34[_0x106202(0x10b)][_0x106202(0x103)]:{},_0x1f5f36=_0x54df34[_0x106202(0x10d)][_0x106202(0x103)]&&typeof _0x54df34['globalConfig'][_0x106202(0x103)]===_0x106202(0x111)?_0x54df34[_0x106202(0x10d)][_0x106202(0x103)]:{};if(Object['prototype']['hasOwnProperty'][_0x106202(0xfb)](_0x149b19,_0x18a614))return _0x106202(0x108);if(Object['prototype'][_0x106202(0x116)][_0x106202(0xfb)](_0x1f5f36,_0x18a614))return _0x106202(0x104);return _0x106202(0x108);}export function appDefinedIn(_0x1f7c34,_0x4c824b,_0x2a4090,_0x2e7608){const _0x381bfb=a23_0x3872;if(_0x2e7608)return Object[_0x381bfb(0x109)][_0x381bfb(0x116)]['call'](_0x2a4090,_0x1f7c34)?'project':_0x381bfb(0x104);const _0x4fc774=Object[_0x381bfb(0x109)]['hasOwnProperty'][_0x381bfb(0xfb)](_0x4c824b,_0x1f7c34),_0x2b8ee6=Object[_0x381bfb(0x109)][_0x381bfb(0x116)][_0x381bfb(0xfb)](_0x2a4090,_0x1f7c34);if(_0x4fc774&&_0x2b8ee6)return'both';if(_0x2b8ee6)return'project';return _0x381bfb(0x104);}function a23_0x3872(_0xacffe7,_0x484718){_0xacffe7=_0xacffe7-0xfb;const _0x371623=a23_0x3716();let _0x3872aa=_0x371623[_0xacffe7];return _0x3872aa;}export function resolveDefaultAppSource(_0x220998){const _0x10c18c=a23_0x3872,_0x30fc91=_0x220998[_0x10c18c(0x10b)]['apps']&&typeof _0x220998[_0x10c18c(0x10b)]['apps']===_0x10c18c(0x111)?_0x220998['projectConfig']['apps']:{};if(_0x10c18c(0x101)in _0x220998[_0x10c18c(0x10b)])return _0x10c18c(0x108);if(Object['keys'](_0x30fc91)['length']>0x0)return _0x10c18c(0x108);if(_0x220998[_0x10c18c(0x10b)][_0x10c18c(0x102)]===![])return null;if(_0x220998[_0x10c18c(0x10d)][_0x10c18c(0x101)])return'global';return null;}export function getConfigPath(_0x20c6d7={}){const _0x36a325=a23_0x3872,_0x519938=_0x20c6d7[_0x36a325(0x104)]?_0x36a325(0x104):_0x36a325(0x108);return resolveWriteConfigPath(_0x519938);}export function readConfig(_0x5684d0={}){return readConfigFile(getConfigPath(_0x5684d0));}function a23_0x3716(){const _0x232089=['5430rTFunV','length','trim','95714vCmjYG','defaultApp','inherit','apps','global','appCode','636054SWLOEG','name','project','prototype','3bGiIKB','projectConfig','isCurrent','globalConfig','392XPVywY','642728gchKVd','965650yoXHGX','object','appcode','keys','\x20(global)','2167371aIakWl','hasOwnProperty','129085kRjsRy','call','named'];a23_0x3716=function(){return _0x232089;};return a23_0x3716();}export function writeConfig(_0x2bc02,_0x494c1a={}){writeConfigFile(getConfigPath(_0x494c1a),_0x2bc02);}export function scopeLabel(_0x374090){const _0x1b6fe1=a23_0x3872;return _0x374090[_0x1b6fe1(0x104)]?_0x1b6fe1(0x114):'';}
@@ -1 +1 @@
1
- const a24_0x4ec650=a24_0x47df;function a24_0x47df(_0x40066e,_0x5f525e){_0x40066e=_0x40066e-0x199;const _0x3b96b4=a24_0x3b96();let _0x47df22=_0x3b96b4[_0x40066e];return _0x47df22;}(function(_0x25293a,_0x49aac9){const _0x37fa79=a24_0x47df,_0x27b2c3=_0x25293a();while(!![]){try{const _0x262383=parseInt(_0x37fa79(0x1b9))/0x1*(-parseInt(_0x37fa79(0x1a6))/0x2)+parseInt(_0x37fa79(0x1bb))/0x3*(-parseInt(_0x37fa79(0x1ab))/0x4)+-parseInt(_0x37fa79(0x1a3))/0x5+parseInt(_0x37fa79(0x1bc))/0x6*(parseInt(_0x37fa79(0x19c))/0x7)+parseInt(_0x37fa79(0x1aa))/0x8+parseInt(_0x37fa79(0x1a7))/0x9+parseInt(_0x37fa79(0x1a0))/0xa;if(_0x262383===_0x49aac9)break;else _0x27b2c3['push'](_0x27b2c3['shift']());}catch(_0x31d862){_0x27b2c3['push'](_0x27b2c3['shift']());}}}(a24_0x3b96,0x7f71c));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';function a24_0x3b96(){const _0xff0ca1=['1826841GcnFQg','6lnlACN','Missing\x20app\x20name.','use','App\x20\x22','prototype','validation','projectPath','3134306LwWYAC','keys','\x22\x20not\x20found.','args','4838750FrIEes','global','bool','2661100jDhWWZ','defaultApp','write','771862nzmFfz','5114790pFhNPx','\x0aNote:\x20\x22','trim','4393336iJDFwK','4oLCRqe','apps','globalConfig','call','\x20app\x20use\x20<name>\x20[--global]','Usage:\x20','Switch\x20the\x20default\x20app','object','Available:\x20','app','length','join','Default\x20app\x20set\x20to\x20\x22','App\x20profile\x20name\x20to\x20activate','1BZaaMZ','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.'];a24_0x3b96=function(){return _0xff0ca1;};return a24_0x3b96();}import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x301542){const _0x50feb7=a24_0x47df,_0x3d211c=_0x301542['args'][0x0]?.['trim']();if(!_0x3d211c)throw CliErrors[_0x50feb7(0x19a)](_0x50feb7(0x1bd),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');}async function execute(_0x97eb1e){const _0x1fd740=a24_0x47df,_0x47ce90=_0x97eb1e[_0x1fd740(0x19f)][0x0]?.[_0x1fd740(0x1a9)]();if(!_0x47ce90)throw CliErrors[_0x1fd740(0x19a)](_0x1fd740(0x1bd),_0x1fd740(0x1b0)+CLI_BIN_NAME+_0x1fd740(0x1af));const _0x5c0da1=_0x97eb1e[_0x1fd740(0x1a2)](_0x1fd740(0x1a1)),{config:_0x53ab6a,layers:_0x50b098}=readRawConfigWithLayers(),_0x1550cd=_0x53ab6a[_0x1fd740(0x1ac)]??{},_0xf07193=_0x50b098[_0x1fd740(0x1ad)]['apps']&&typeof _0x50b098[_0x1fd740(0x1ad)]['apps']===_0x1fd740(0x1b2)?_0x50b098[_0x1fd740(0x1ad)][_0x1fd740(0x1ac)]:{},_0x40e242={..._0xf07193,..._0x1550cd};if(!_0x40e242[_0x47ce90]){const _0x25aed9=Object[_0x1fd740(0x19d)](_0x40e242),_0x39ec7d=_0x25aed9[_0x1fd740(0x1b5)]===0x0?'Use\x20`'+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x47ce90+'\x20--appcode\x20<code>`\x20first.':_0x1fd740(0x1b3)+_0x25aed9[_0x1fd740(0x1b6)](',\x20');throw CliErrors[_0x1fd740(0x19a)](_0x1fd740(0x1bf)+_0x47ce90+_0x1fd740(0x19e),_0x39ec7d);}let _0x1d541e,_0x27d1dc='';if(_0x5c0da1)_0x1d541e={'global':!![]};else{const _0x5811b8=isInProject()&&!!_0x50b098[_0x1fd740(0x19b)];_0x1d541e={'global':!_0x5811b8};}const _0x1efd85=readConfig(_0x1d541e);_0x1efd85[_0x1fd740(0x1a4)]=_0x47ce90;if(!_0x1d541e[_0x1fd740(0x1a1)]){const _0x2cc7d9=_0x1efd85['apps']&&typeof _0x1efd85['apps']===_0x1fd740(0x1b2)?_0x1efd85[_0x1fd740(0x1ac)]:{};!Object[_0x1fd740(0x199)]['hasOwnProperty'][_0x1fd740(0x1ae)](_0x2cc7d9,_0x47ce90)&&(_0x1efd85[_0x1fd740(0x1ac)]={..._0x2cc7d9,[_0x47ce90]:_0x40e242[_0x47ce90]},_0x27d1dc=_0x1fd740(0x1a8)+_0x47ce90+_0x1fd740(0x1ba));}return writeConfig(_0x1efd85,_0x1d541e),{'ok':!![],'message':_0x1fd740(0x1b7)+_0x47ce90+'\x22\x20(appcode:\x20'+_0x40e242[_0x47ce90]['appcode']+')'+scopeLabel(_0x1d541e)+_0x27d1dc};}export const appUseDefinition={'service':a24_0x4ec650(0x1b4),'command':a24_0x4ec650(0x1be),'description':a24_0x4ec650(0x1b1),'risk':a24_0x4ec650(0x1a5),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a24_0x4ec650(0x1b8),'required':!![]}],'flags':[{'name':'global','type':'boolean','description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x391fc1=a24_0x239b;(function(_0x59adc5,_0x40c260){const _0x2a32aa=a24_0x239b,_0x235833=_0x59adc5();while(!![]){try{const _0x5a9a4f=parseInt(_0x2a32aa(0x1f5))/0x1*(-parseInt(_0x2a32aa(0x1fb))/0x2)+-parseInt(_0x2a32aa(0x205))/0x3*(parseInt(_0x2a32aa(0x1fa))/0x4)+-parseInt(_0x2a32aa(0x212))/0x5*(parseInt(_0x2a32aa(0x217))/0x6)+-parseInt(_0x2a32aa(0x1f9))/0x7*(parseInt(_0x2a32aa(0x200))/0x8)+parseInt(_0x2a32aa(0x213))/0x9*(parseInt(_0x2a32aa(0x214))/0xa)+parseInt(_0x2a32aa(0x20b))/0xb*(parseInt(_0x2a32aa(0x1f4))/0xc)+parseInt(_0x2a32aa(0x20a))/0xd;if(_0x5a9a4f===_0x40c260)break;else _0x235833['push'](_0x235833['shift']());}catch(_0x402486){_0x235833['push'](_0x235833['shift']());}}}(a24_0x4215,0xe12d3));function a24_0x239b(_0x56ef01,_0x4e472f){_0x56ef01=_0x56ef01-0x1ee;const _0x4215ab=a24_0x4215();let _0x239b76=_0x4215ab[_0x56ef01];return _0x239b76;}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';function a24_0x4215(){const _0x499ec0=['Use\x20`','7641865sKqIea','801WPFmFT','155200nsgkbY','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','Usage:\x20','6ZYiaCs','boolean','prototype','object','globalConfig','\x22\x20(appcode:\x20','\x20--appcode\x20<code>`\x20first.','keys','Switch\x20the\x20default\x20app','app','length','13140504rAKvhv','628195prcvGe','appcode','trim','App\x20profile\x20name\x20to\x20activate','636146YyoPxX','844VQTnup','4XBrxcK','Available:\x20','write','projectPath','global','88KvSfag','name','validation','Missing\x20app\x20name.','args','14619SQONVT','hasOwnProperty','call','apps','\x22\x20not\x20found.','42362125yBOeQG','11oVMEua','bool','\x0aNote:\x20\x22','\x20app\x20use\x20<name>\x20[--global]','defaultApp','App\x20\x22'];a24_0x4215=function(){return _0x499ec0;};return a24_0x4215();}async function validateArgs(_0x3fb209){const _0x2cbddf=a24_0x239b,_0x828448=_0x3fb209['args'][0x0]?.['trim']();if(!_0x828448)throw CliErrors[_0x2cbddf(0x202)](_0x2cbddf(0x203),_0x2cbddf(0x216)+CLI_BIN_NAME+_0x2cbddf(0x20e));}async function execute(_0x3ffbf1){const _0x4eec32=a24_0x239b,_0x425552=_0x3ffbf1[_0x4eec32(0x204)][0x0]?.[_0x4eec32(0x1f7)]();if(!_0x425552)throw CliErrors['validation']('Missing\x20app\x20name.',_0x4eec32(0x216)+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');const _0x504c62=_0x3ffbf1[_0x4eec32(0x20c)]('global'),{config:_0x4d948f,layers:_0x384573}=readRawConfigWithLayers(),_0x2fde85=_0x4d948f[_0x4eec32(0x208)]??{},_0x4234a8=_0x384573[_0x4eec32(0x21b)][_0x4eec32(0x208)]&&typeof _0x384573['globalConfig']['apps']===_0x4eec32(0x21a)?_0x384573['globalConfig']['apps']:{},_0x445c84={..._0x4234a8,..._0x2fde85};if(!_0x445c84[_0x425552]){const _0x4edfc2=Object[_0x4eec32(0x1f0)](_0x445c84),_0x48fde4=_0x4edfc2[_0x4eec32(0x1f3)]===0x0?_0x4eec32(0x211)+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x425552+_0x4eec32(0x1ef):_0x4eec32(0x1fc)+_0x4edfc2['join'](',\x20');throw CliErrors[_0x4eec32(0x202)](_0x4eec32(0x210)+_0x425552+_0x4eec32(0x209),_0x48fde4);}let _0x3fc413,_0x57a22d='';if(_0x504c62)_0x3fc413={'global':!![]};else{const _0x5dd9b=isInProject()&&!!_0x384573[_0x4eec32(0x1fe)];_0x3fc413={'global':!_0x5dd9b};}const _0x641046=readConfig(_0x3fc413);_0x641046[_0x4eec32(0x20f)]=_0x425552;if(!_0x3fc413[_0x4eec32(0x1ff)]){const _0x98a3b5=_0x641046['apps']&&typeof _0x641046[_0x4eec32(0x208)]==='object'?_0x641046[_0x4eec32(0x208)]:{};!Object[_0x4eec32(0x219)][_0x4eec32(0x206)][_0x4eec32(0x207)](_0x98a3b5,_0x425552)&&(_0x641046[_0x4eec32(0x208)]={..._0x98a3b5,[_0x425552]:_0x445c84[_0x425552]},_0x57a22d=_0x4eec32(0x20d)+_0x425552+_0x4eec32(0x215));}return writeConfig(_0x641046,_0x3fc413),{'ok':!![],'message':'Default\x20app\x20set\x20to\x20\x22'+_0x425552+_0x4eec32(0x1ee)+_0x445c84[_0x425552][_0x4eec32(0x1f6)]+')'+scopeLabel(_0x3fc413)+_0x57a22d};}export const appUseDefinition={'service':a24_0x391fc1(0x1f2),'command':'use','description':a24_0x391fc1(0x1f1),'risk':a24_0x391fc1(0x1fd),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x391fc1(0x201),'description':a24_0x391fc1(0x1f8),'required':!![]}],'flags':[{'name':a24_0x391fc1(0x1ff),'type':a24_0x391fc1(0x218),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- function a25_0x59d3(){const _0x2a8357=['871230NrOLAt','nonInteractive','✓\x20Logged\x20out','153539WjzZWn','458462eDNyTf','yes','logout','1285872MfsfxD','!\x20Not\x20logged\x20in','1807988dxaRwn','boolean','bool','auth','write','Login\x20via\x20browser','188496NeFUJb','log','login','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','1840215IPZDjZ','read','6aRGvNS'];a25_0x59d3=function(){return _0x2a8357;};return a25_0x59d3();}const a25_0x5a22d5=a25_0x403d;function a25_0x403d(_0x1059ce,_0x372959){_0x1059ce=_0x1059ce-0xd9;const _0x59d310=a25_0x59d3();let _0x403d2f=_0x59d310[_0x1059ce];return _0x403d2f;}(function(_0x8366b4,_0xcfffb0){const _0x43ef1d=a25_0x403d,_0x5f48d7=_0x8366b4();while(!![]){try{const _0x1c76e2=parseInt(_0x43ef1d(0xec))/0x1+parseInt(_0x43ef1d(0xed))/0x2*(-parseInt(_0x43ef1d(0xe8))/0x3)+parseInt(_0x43ef1d(0xdc))/0x4+parseInt(_0x43ef1d(0xe6))/0x5+-parseInt(_0x43ef1d(0xe9))/0x6+parseInt(_0x43ef1d(0xe2))/0x7+-parseInt(_0x43ef1d(0xda))/0x8;if(_0x1c76e2===_0xcfffb0)break;else _0x5f48d7['push'](_0x5f48d7['shift']());}catch(_0xfabe61){_0x5f48d7['push'](_0x5f48d7['shift']());}}}(a25_0x59d3,0x39a4a));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x5a22d5(0xdf),'command':a25_0x5a22d5(0xe4),'description':a25_0x5a22d5(0xe1),'risk':a25_0x5a22d5(0xe7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x5a22d5(0xee),'type':a25_0x5a22d5(0xdd),'description':a25_0x5a22d5(0xe5),'default':![]}],async 'execute'(_0x1521b3){const _0x4bc369=a25_0x5a22d5,{runAuthServer:_0x377b12}=await import('../../auth/auth-server-ui.js');return await _0x377b12({'autoYes':_0x1521b3[_0x4bc369(0xde)](_0x4bc369(0xee)),'nonInteractive':_0x1521b3[_0x4bc369(0xea)]}),{'ok':!![]};}},{'service':a25_0x5a22d5(0xdf),'command':a25_0x5a22d5(0xd9),'description':'Clear\x20login\x20session','risk':a25_0x5a22d5(0xe0),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x147673){const _0x397988=a25_0x5a22d5;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x397988(0xe3)](_0x397988(0xeb))):console[_0x397988(0xe3)](_0x397988(0xdb)),{'ok':!![]};}}];
1
+ const a25_0x1ff7fe=a25_0x21f7;function a25_0x21f7(_0xd213ef,_0x4a1f87){_0xd213ef=_0xd213ef-0x1bd;const _0x2638af=a25_0x2638();let _0x21f761=_0x2638af[_0xd213ef];return _0x21f761;}(function(_0x2124f5,_0x188726){const _0x3b1c6b=a25_0x21f7,_0x2089a6=_0x2124f5();while(!![]){try{const _0x26dbc0=-parseInt(_0x3b1c6b(0x1cf))/0x1*(parseInt(_0x3b1c6b(0x1bd))/0x2)+-parseInt(_0x3b1c6b(0x1c5))/0x3*(parseInt(_0x3b1c6b(0x1c2))/0x4)+-parseInt(_0x3b1c6b(0x1d1))/0x5+-parseInt(_0x3b1c6b(0x1c3))/0x6*(-parseInt(_0x3b1c6b(0x1bf))/0x7)+-parseInt(_0x3b1c6b(0x1ce))/0x8+-parseInt(_0x3b1c6b(0x1c4))/0x9*(-parseInt(_0x3b1c6b(0x1c6))/0xa)+parseInt(_0x3b1c6b(0x1d3))/0xb;if(_0x26dbc0===_0x188726)break;else _0x2089a6['push'](_0x2089a6['shift']());}catch(_0x3f6447){_0x2089a6['push'](_0x2089a6['shift']());}}}(a25_0x2638,0xdd63d));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';function a25_0x2638(){const _0x5ed540=['!\x20Not\x20logged\x20in','login','6634476VIXtVo','78mAlzhm','4670388pPSGPE','3CLJFAa','20IzYPcy','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','Login\x20via\x20browser','boolean','log','Clear\x20login\x20session','../../auth/auth-server-ui.js','bool','5313192ALEcvY','1uObvxs','auth','6439555VhyarF','✓\x20Logged\x20out','39902170dAAAHS','3222842CGqcTL','yes','788081knRLLd'];a25_0x2638=function(){return _0x5ed540;};return a25_0x2638();}export const authDefinitions=[{'service':a25_0x1ff7fe(0x1d0),'command':a25_0x1ff7fe(0x1c1),'description':a25_0x1ff7fe(0x1c8),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x1ff7fe(0x1be),'type':a25_0x1ff7fe(0x1c9),'description':a25_0x1ff7fe(0x1c7),'default':![]}],async 'execute'(_0x306aef){const _0x4fc9dd=a25_0x1ff7fe,{runAuthServer:_0x5288e3}=await import(_0x4fc9dd(0x1cc));return await _0x5288e3({'autoYes':_0x306aef[_0x4fc9dd(0x1cd)]('yes'),'nonInteractive':_0x306aef['nonInteractive']}),{'ok':!![]};}},{'service':a25_0x1ff7fe(0x1d0),'command':'logout','description':a25_0x1ff7fe(0x1cb),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x5cdb8b){const _0x94d625=a25_0x1ff7fe;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x94d625(0x1ca)](_0x94d625(0x1d2))):console[_0x94d625(0x1ca)](_0x94d625(0x1c0)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a26_0x31bf4c=a26_0x1b6c;function a26_0x1b6c(_0x566739,_0x3ec6f5){_0x566739=_0x566739-0x175;const _0x27c0af=a26_0x27c0();let _0x1b6cb1=_0x27c0af[_0x566739];return _0x1b6cb1;}(function(_0x234b6d,_0x4eaa85){const _0x2102f8=a26_0x1b6c,_0x5407ff=_0x234b6d();while(!![]){try{const _0x47207a=-parseInt(_0x2102f8(0x19c))/0x1*(parseInt(_0x2102f8(0x1b7))/0x2)+parseInt(_0x2102f8(0x19b))/0x3*(parseInt(_0x2102f8(0x18b))/0x4)+-parseInt(_0x2102f8(0x18c))/0x5*(parseInt(_0x2102f8(0x1c4))/0x6)+parseInt(_0x2102f8(0x1c1))/0x7*(-parseInt(_0x2102f8(0x175))/0x8)+-parseInt(_0x2102f8(0x19a))/0x9+parseInt(_0x2102f8(0x17a))/0xa+-parseInt(_0x2102f8(0x1d1))/0xb*(-parseInt(_0x2102f8(0x18f))/0xc);if(_0x47207a===_0x4eaa85)break;else _0x5407ff['push'](_0x5407ff['shift']());}catch(_0x241d92){_0x5407ff['push'](_0x5407ff['shift']());}}}(a26_0x27c0,0x6741c));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0x31bf4c(0x198),'command':a26_0x31bf4c(0x1b4),'description':a26_0x31bf4c(0x1a5),'risk':'write','flags':[{'name':a26_0x31bf4c(0x190),'type':'string','required':!![],'enum':['COMMON','ENDPOINT',a26_0x31bf4c(0x17d)],'description':a26_0x31bf4c(0x1ab)},{'name':a26_0x31bf4c(0x1ca),'type':a26_0x31bf4c(0x1c9),'required':!![],'description':a26_0x31bf4c(0x1cb)},{'name':a26_0x31bf4c(0x18e),'type':a26_0x31bf4c(0x1c9),'description':a26_0x31bf4c(0x1bb)},{'name':'alias','type':'string','description':'Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)'},{'name':a26_0x31bf4c(0x1aa),'type':'string','description':a26_0x31bf4c(0x17f)},{'name':a26_0x31bf4c(0x1b2),'type':a26_0x31bf4c(0x1c9),'description':a26_0x31bf4c(0x1cd)},{'name':a26_0x31bf4c(0x1a6),'type':a26_0x31bf4c(0x1c9),'description':'Trigger\x20node\x20(HOOK\x20only)','enum':[a26_0x31bf4c(0x1be),a26_0x31bf4c(0x1ad)]}],async 'validate'(_0x13520b){const _0x3e5c4d=a26_0x31bf4c,_0x2460d9=_0x13520b['str']('name');if(!isValidBffFunctionName(_0x2460d9))throw CliErrors[_0x3e5c4d(0x180)](_0x3e5c4d(0x1ce)+_0x2460d9+_0x3e5c4d(0x1d2));},async 'execute'(_0x42fd6c){const _0x159a38=a26_0x31bf4c,_0x3259ea=loadBffProjectConfig(_0x42fd6c['appCode']),_0x50dea2=_0x42fd6c[_0x159a38(0x1a9)](_0x159a38(0x190)),_0x455fe5=_0x42fd6c[_0x159a38(0x1a9)](_0x159a38(0x1ca)),_0x538747=_0x42fd6c['str'](_0x159a38(0x18e))||undefined,_0x36b5b8=_0x50dea2===_0x159a38(0x17d)?await resolveHookOptions(_0x3259ea,_0x42fd6c):undefined,_0x2eaaf5=buildFilePath(_0x3259ea,_0x50dea2,_0x455fe5,_0x36b5b8);if(await fileExists(_0x2eaaf5))throw CliErrors['validation'](_0x159a38(0x1ae)+_0x2eaaf5);await mkdir(dirname(_0x2eaaf5),{'recursive':!![]});const _0x5dde0f=generateTemplate(_0x50dea2,_0x455fe5,_0x42fd6c['appCode'],_0x538747,_0x36b5b8);await writeFile(_0x2eaaf5,_0x5dde0f,_0x159a38(0x1d4));const _0x407287={'type':_0x50dea2,'name':_0x455fe5,'path':_0x2eaaf5};if(_0x538747)_0x407287[_0x159a38(0x18e)]=_0x538747;if(_0x36b5b8){if(_0x36b5b8[_0x159a38(0x18a)])_0x407287[_0x159a38(0x18a)]=_0x36b5b8['alias'];_0x407287[_0x159a38(0x177)]=_0x36b5b8[_0x159a38(0x177)],_0x407287[_0x159a38(0x1c7)]=_0x36b5b8[_0x159a38(0x1c7)],_0x407287['functionNode']=_0x36b5b8[_0x159a38(0x197)];}return{'ok':!![],'data':_0x407287,'message':'Created\x20'+_0x50dea2+'\x20function:\x20'+_0x455fe5};}};async function resolveHookOptions(_0x4509fa,_0x6610c0){const _0xbd1d0e=a26_0x31bf4c,_0x49806a=loadAliasMap(_0x6610c0['apiDir'],undefined,resolveApiFilePath(_0x6610c0[_0xbd1d0e(0x188)],_0x6610c0[_0xbd1d0e(0x1b3)])),_0x3c8ccc=_0x49806a['length']>0x0;let _0x659915,_0x1d9806,_0x1248c3;const _0x50e7e3=_0x6610c0['str'](_0xbd1d0e(0x18a)),_0x47968e=_0x6610c0['str'](_0xbd1d0e(0x1aa));if(_0x50e7e3){const _0x5aea84=resolveAlias(_0x6610c0[_0xbd1d0e(0x188)],_0x50e7e3,undefined,resolveApiFilePath(_0x6610c0['apiDir'],_0x6610c0['appCode']));if(!_0x5aea84){const _0x52cfa3=_0x3c8ccc?_0xbd1d0e(0x195)+_0x49806a[_0xbd1d0e(0x1bd)](_0x2eb1b3=>_0x2eb1b3[_0xbd1d0e(0x18a)])['join'](',\x20'):_0xbd1d0e(0x1d0)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0xbd1d0e(0x180)](_0xbd1d0e(0x1cc)+_0x50e7e3+_0xbd1d0e(0x1cf)+_0x52cfa3);}_0x659915=_0x50e7e3,_0x1d9806=_0x5aea84;}else{if(_0x47968e){_0x1d9806=_0x47968e;const _0x3e9e4c=_0x49806a['find'](_0x5b1cc6=>_0x5b1cc6[_0xbd1d0e(0x177)]===_0x47968e);_0x659915=_0x3e9e4c?.[_0xbd1d0e(0x18a)];}else{if(_0x6610c0[_0xbd1d0e(0x199)])throw CliErrors[_0xbd1d0e(0x180)](_0xbd1d0e(0x1b0));else{if(_0x3c8ccc){const _0xb33bea=_0x49806a[_0xbd1d0e(0x1bd)](_0x9188b4=>_0x9188b4[_0xbd1d0e(0x18a)]+'\x20('+_0x9188b4[_0xbd1d0e(0x1bc)]+')'),_0x173f3b=await promptSelect(_0xbd1d0e(0x17c),_0xb33bea),_0x3c3634=_0x49806a[_0x173f3b];if(!_0x3c3634)throw CliErrors[_0xbd1d0e(0x180)](_0xbd1d0e(0x1b8));_0x659915=_0x3c3634[_0xbd1d0e(0x18a)],_0x1d9806=_0x3c3634[_0xbd1d0e(0x177)];}else{const _0x34c43=await listDatasets(_0x6610c0[_0xbd1d0e(0x1b3)]);if(_0x34c43[_0xbd1d0e(0x1c5)]===0x0)throw CliErrors[_0xbd1d0e(0x180)](_0xbd1d0e(0x192));const _0x5f18b5=_0x34c43[_0xbd1d0e(0x1bd)](_0x18caa6=>_0x18caa6[_0xbd1d0e(0x1ca)]+'\x20['+(_0x18caa6[_0xbd1d0e(0x17e)]??_0xbd1d0e(0x189))+_0xbd1d0e(0x19f)+_0x18caa6[_0xbd1d0e(0x182)]+')'),_0x2ead70=await promptSelect(_0xbd1d0e(0x17c),_0x5f18b5),_0x3875d3=_0x34c43[_0x2ead70];if(!_0x3875d3)throw CliErrors[_0xbd1d0e(0x180)](_0xbd1d0e(0x1b8));_0x1d9806=_0x3875d3['code'],_0x659915=undefined;}}}}const _0x549f41=await listDatasets(_0x6610c0['appCode']),_0x4a0812=_0x549f41[_0xbd1d0e(0x18d)](_0x4b7944=>_0x4b7944[_0xbd1d0e(0x182)]===_0x1d9806);if(!_0x4a0812)throw CliErrors[_0xbd1d0e(0x180)](_0xbd1d0e(0x1ac)+_0x1d9806+_0xbd1d0e(0x196)+(_0x659915?_0xbd1d0e(0x1ba)+CLI_BIN_NAME+_0xbd1d0e(0x179):''));_0x1248c3=_0x4a0812['id'];const _0xcbae1e=_0x659915??_0x1d9806,_0x181bc7=await listBffDatasetOperations(_0x6610c0[_0xbd1d0e(0x1b3)],_0x1248c3),_0x209016=_0x181bc7?Object['keys'](_0x181bc7):[];if(_0x209016[_0xbd1d0e(0x1c5)]===0x0)throw CliErrors[_0xbd1d0e(0x180)]('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0xcbae1e+'.');let _0x32a3bf;const _0x51b7d2=_0x6610c0[_0xbd1d0e(0x1a9)]('operation-type');if(_0x51b7d2){if(!_0x209016[_0xbd1d0e(0x1c6)](_0x51b7d2))throw CliErrors['validation'](_0xbd1d0e(0x191)+_0x51b7d2+_0xbd1d0e(0x1a8)+_0xcbae1e+'.\x20'+(_0xbd1d0e(0x187)+_0x209016[_0xbd1d0e(0x1c0)](',\x20')));_0x32a3bf=_0x51b7d2;}else{if(_0x6610c0['nonInteractive'])throw CliErrors[_0xbd1d0e(0x180)](_0xbd1d0e(0x194));const _0x724d7a=await promptSelect(_0xbd1d0e(0x1a7),_0x209016);_0x32a3bf=_0x209016[_0x724d7a]??_0x209016[0x0];}let _0x18e0fc=normalizeHookFunctionNode(_0x6610c0['str'](_0xbd1d0e(0x1a6)));if(!_0x18e0fc){if(_0x6610c0[_0xbd1d0e(0x1a9)]('function-node'))throw CliErrors[_0xbd1d0e(0x180)](_0xbd1d0e(0x185));if(_0x6610c0[_0xbd1d0e(0x199)])throw CliErrors[_0xbd1d0e(0x180)](_0xbd1d0e(0x1b5));const _0x490759=await promptSelect(_0xbd1d0e(0x19e),[_0xbd1d0e(0x1be),_0xbd1d0e(0x1ad)]);_0x18e0fc=[_0xbd1d0e(0x1be),_0xbd1d0e(0x1ad)][_0x490759]??_0xbd1d0e(0x1be);}return{'alias':_0x659915,'datasetCode':_0x1d9806,'datasetId':_0x1248c3,'operationType':_0x32a3bf,'functionNode':_0x18e0fc};}async function promptSelect(_0x1dd59d,_0x1c7ec8){const _0x4eef0d=a26_0x31bf4c;if(_0x1c7ec8[_0x4eef0d(0x1c5)]===0x1)return 0x0;for(const [_0xa3cc53,_0x59c441]of _0x1c7ec8[_0x4eef0d(0x1b9)]()){process['stderr'][_0x4eef0d(0x1a2)]('\x20\x20'+(_0xa3cc53+0x1)+'.\x20'+_0x59c441+'\x0a');}const _0xb864c3=createInterface({'input':process[_0x4eef0d(0x1a1)],'output':process[_0x4eef0d(0x17b)]});while(!![]){const _0x3cc560=await new Promise(_0x2f2f76=>{const _0x39bf1d=_0x4eef0d;_0xb864c3[_0x39bf1d(0x1a3)](_0x1dd59d+'\x20',_0x2f2f76);}),_0x27de48=Number[_0x4eef0d(0x1b6)](_0x3cc560[_0x4eef0d(0x1a0)](),0xa);if(Number[_0x4eef0d(0x184)](_0x27de48)&&_0x27de48>=0x1&&_0x27de48<=_0x1c7ec8['length'])return _0xb864c3[_0x4eef0d(0x1d5)](),_0x27de48-0x1;process[_0x4eef0d(0x17b)][_0x4eef0d(0x1a2)](_0x4eef0d(0x176)+_0x1c7ec8[_0x4eef0d(0x1c5)]+'.\x0a');}}function buildFilePath(_0x4264f1,_0x5da87b,_0x923759,_0x1fc50c){const _0x53bf05=a26_0x31bf4c;if(_0x5da87b===_0x53bf05(0x17d)){if(!_0x1fc50c)throw CliErrors[_0x53bf05(0x180)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0xee88f2=_0x1fc50c[_0x53bf05(0x18a)]??_0x1fc50c[_0x53bf05(0x177)];return join(_0x4264f1[_0x53bf05(0x181)],_0x53bf05(0x17d),_0xee88f2,_0x1fc50c[_0x53bf05(0x1c7)],_0x1fc50c[_0x53bf05(0x197)],_0x923759+'.js');}return join(_0x4264f1[_0x53bf05(0x181)],_0x5da87b,_0x923759+_0x53bf05(0x19d));}function a26_0x27c0(){const _0x5df02a=['utf8','close','1816bNdeUk','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','datasetCode','\x0a\x20*\x20[脚本名称]\x20','\x20api\x20pull`\x20to\x20refresh.','5619270VUtqDR','stderr','Select\x20dataset:','HOOK','source','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','validation','scriptsRootDir','code','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','isInteger','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','COMMON','Available:\x20','apiDir','UNKNOWN','alias','545732YlvttH','15YQJbmX','find','description','132uFKXTe','type','Operation\x20type\x20\x22','No\x20datasets\x20found\x20for\x20this\x20app.','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Available\x20aliases:\x20','\x22.\x20','functionNode','bff','nonInteractive','7148259Mfvnbn','12piNbOb','1RzncxK','.js','Select\x20trigger\x20node:',']\x20(','trim','stdin','write','question','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','function-node','Select\x20operation\x20type:','\x22\x20not\x20found\x20for\x20dataset\x20','str','datasetcode','Script\x20type','Dataset\x20not\x20found\x20for\x20code\x20\x22','after','File\x20already\x20exists:\x20','.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','ENDPOINT','operation-type','appCode','create','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','parseInt','1044958BBFKyK','Invalid\x20dataset\x20selection.','entries','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','Script\x20description','tableName','map','before','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','join','2534lcZOgT','TODO:\x20add\x20script\x20description','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','1053912RKmFwu','length','includes','operationType','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','string','name','Function\x20name\x20(valid\x20JS\x20identifier)','Alias\x20\x22','Operation\x20type\x20(HOOK\x20only)','Invalid\x20function\x20name\x20\x22','\x22\x20not\x20found.\x20','No\x20api.ts\x20found.\x20Run\x20`','1241141TpLVJh','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.'];a26_0x27c0=function(){return _0x5df02a;};return a26_0x27c0();}export function generateTemplate(_0x1e3dba,_0x58ef2c,_0x3574df,_0x35f4ec,_0x56f2c5){const _0x22b7d1=a26_0x31bf4c,_0x1206b5=_0x35f4ec?.['trim']()||_0x22b7d1(0x1c2);if(_0x1e3dba===_0x22b7d1(0x186))return _0x22b7d1(0x1a4)+_0x1206b5+_0x22b7d1(0x178)+_0x58ef2c+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x58ef2c+_0x22b7d1(0x1af)+_0x58ef2c+_0x22b7d1(0x1c8);if(_0x1e3dba===_0x22b7d1(0x1b1))return _0x22b7d1(0x1bf)+_0x1206b5+_0x22b7d1(0x193)+_0x3574df+'/'+_0x58ef2c+_0x22b7d1(0x1c3)+_0x58ef2c+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(!_0x56f2c5)throw CliErrors[_0x22b7d1(0x180)](_0x22b7d1(0x1d3));return'/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x1206b5+_0x22b7d1(0x183)+_0x3574df+'/'+_0x56f2c5[_0x22b7d1(0x177)]+'/'+_0x56f2c5[_0x22b7d1(0x1c7)]+'\x0a\x20*\x20[触发节点]\x20'+_0x56f2c5[_0x22b7d1(0x197)]+'\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x58ef2c+_0x22b7d1(0x1c8);}
1
+ const a26_0x4e2a16=a26_0x209f;(function(_0x107f4e,_0x84fd24){const _0x3e5d29=a26_0x209f,_0x2f91d7=_0x107f4e();while(!![]){try{const _0xaf1cce=parseInt(_0x3e5d29(0x89))/0x1+parseInt(_0x3e5d29(0x7e))/0x2+-parseInt(_0x3e5d29(0x9c))/0x3+parseInt(_0x3e5d29(0x8d))/0x4+parseInt(_0x3e5d29(0xbe))/0x5*(-parseInt(_0x3e5d29(0xb2))/0x6)+-parseInt(_0x3e5d29(0x98))/0x7*(-parseInt(_0x3e5d29(0xa0))/0x8)+-parseInt(_0x3e5d29(0x97))/0x9;if(_0xaf1cce===_0x84fd24)break;else _0x2f91d7['push'](_0x2f91d7['shift']());}catch(_0x21337f){_0x2f91d7['push'](_0x2f91d7['shift']());}}}(a26_0x50cc,0x1b850));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';function a26_0x50cc(){const _0x456010=['\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','datasetCode','\x22\x20not\x20found\x20for\x20dataset\x20','write','No\x20datasets\x20found\x20for\x20this\x20app.','HOOK','18buqKeb','length','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','map','\x22.\x20','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','trim','tableName','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','string','\x22\x20not\x20found.\x20','ENDPOINT','111590BqvuXh','Select\x20trigger\x20node:','.js','scriptsRootDir','stdin','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Operation\x20type\x20\x22','nonInteractive','Script\x20type','\x0a\x20*\x20[触发节点]\x20','Available:\x20','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','includes','File\x20already\x20exists:\x20','COMMON','entries','isInteger','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.',']\x20(','name','Available\x20aliases:\x20','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','308344uChFJB','Select\x20operation\x20type:','find','Trigger\x20node\x20(HOOK\x20only)','functionNode','Alias\x20\x22','description','Script\x20description','code','No\x20api.ts\x20found.\x20Run\x20`','keys','164976FUWiXJ','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','apiDir','234844UobpBe','utf8','stderr','close','operationType','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','question','bff','after','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','1659429RLvcKE','560546iuZepr','function-node','type','validation','521880EWWnde','Function\x20name\x20(valid\x20JS\x20identifier)','Invalid\x20function\x20name\x20\x22','Created\x20','16TcOwGv','create','str','Invalid\x20dataset\x20selection.','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','datasetcode','alias','appCode','before','Dataset\x20not\x20found\x20for\x20code\x20\x22','Select\x20dataset:','Operation\x20type\x20(HOOK\x20only)'];a26_0x50cc=function(){return _0x456010;};return a26_0x50cc();}import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0x4e2a16(0x94),'command':a26_0x4e2a16(0xa1),'description':a26_0x4e2a16(0x8a),'risk':a26_0x4e2a16(0xaf),'flags':[{'name':a26_0x4e2a16(0x9a),'type':a26_0x4e2a16(0xbb),'required':!![],'enum':['COMMON',a26_0x4e2a16(0xbd),a26_0x4e2a16(0xb1)],'description':a26_0x4e2a16(0xc6)},{'name':a26_0x4e2a16(0x7b),'type':a26_0x4e2a16(0xbb),'required':!![],'description':a26_0x4e2a16(0x9d)},{'name':a26_0x4e2a16(0x84),'type':a26_0x4e2a16(0xbb),'description':a26_0x4e2a16(0x85)},{'name':a26_0x4e2a16(0xa6),'type':a26_0x4e2a16(0xbb),'description':a26_0x4e2a16(0xb7)},{'name':a26_0x4e2a16(0xa5),'type':a26_0x4e2a16(0xbb),'description':a26_0x4e2a16(0x78)},{'name':'operation-type','type':a26_0x4e2a16(0xbb),'description':a26_0x4e2a16(0xab)},{'name':a26_0x4e2a16(0x99),'type':a26_0x4e2a16(0xbb),'description':a26_0x4e2a16(0x81),'enum':[a26_0x4e2a16(0xa8),a26_0x4e2a16(0x95)]}],async 'validate'(_0x2fc52c){const _0x2c24b8=a26_0x4e2a16,_0xad8674=_0x2fc52c['str'](_0x2c24b8(0x7b));if(!isValidBffFunctionName(_0xad8674))throw CliErrors['validation'](_0x2c24b8(0x9e)+_0xad8674+_0x2c24b8(0x8b));},async 'execute'(_0x10cb7e){const _0x8ccc5b=a26_0x4e2a16,_0x11e519=loadBffProjectConfig(_0x10cb7e[_0x8ccc5b(0xa7)]),_0x2b045b=_0x10cb7e['str'](_0x8ccc5b(0x9a)),_0x9fcef7=_0x10cb7e[_0x8ccc5b(0xa2)](_0x8ccc5b(0x7b)),_0x34243e=_0x10cb7e[_0x8ccc5b(0xa2)](_0x8ccc5b(0x84))||undefined,_0x30c615=_0x2b045b===_0x8ccc5b(0xb1)?await resolveHookOptions(_0x11e519,_0x10cb7e):undefined,_0xd20fe0=buildFilePath(_0x11e519,_0x2b045b,_0x9fcef7,_0x30c615);if(await fileExists(_0xd20fe0))throw CliErrors[_0x8ccc5b(0x9b)](_0x8ccc5b(0xcb)+_0xd20fe0);await mkdir(dirname(_0xd20fe0),{'recursive':!![]});const _0x46350e=generateTemplate(_0x2b045b,_0x9fcef7,_0x10cb7e[_0x8ccc5b(0xa7)],_0x34243e,_0x30c615);await writeFile(_0xd20fe0,_0x46350e,_0x8ccc5b(0x8e));const _0x888e1d={'type':_0x2b045b,'name':_0x9fcef7,'path':_0xd20fe0};if(_0x34243e)_0x888e1d['description']=_0x34243e;if(_0x30c615){if(_0x30c615[_0x8ccc5b(0xa6)])_0x888e1d['alias']=_0x30c615['alias'];_0x888e1d[_0x8ccc5b(0xad)]=_0x30c615[_0x8ccc5b(0xad)],_0x888e1d[_0x8ccc5b(0x91)]=_0x30c615[_0x8ccc5b(0x91)],_0x888e1d['functionNode']=_0x30c615['functionNode'];}return{'ok':!![],'data':_0x888e1d,'message':_0x8ccc5b(0x9f)+_0x2b045b+'\x20function:\x20'+_0x9fcef7};}};async function resolveHookOptions(_0x5f27c9,_0x4cb7e9){const _0x42b450=a26_0x4e2a16,_0x149d82=loadAliasMap(_0x4cb7e9[_0x42b450(0x8c)],undefined,resolveApiFilePath(_0x4cb7e9[_0x42b450(0x8c)],_0x4cb7e9[_0x42b450(0xa7)])),_0x176d77=_0x149d82['length']>0x0;let _0x2a43e9,_0x46b2d8,_0x46eb80;const _0x19a7e5=_0x4cb7e9[_0x42b450(0xa2)]('alias'),_0x26fae0=_0x4cb7e9[_0x42b450(0xa2)]('datasetcode');if(_0x19a7e5){const _0x3b8ec4=resolveAlias(_0x4cb7e9[_0x42b450(0x8c)],_0x19a7e5,undefined,resolveApiFilePath(_0x4cb7e9[_0x42b450(0x8c)],_0x4cb7e9[_0x42b450(0xa7)]));if(!_0x3b8ec4){const _0x366b0d=_0x176d77?_0x42b450(0x7c)+_0x149d82['map'](_0x2136ba=>_0x2136ba[_0x42b450(0xa6)])['join'](',\x20'):_0x42b450(0x87)+CLI_BIN_NAME+_0x42b450(0xc9);throw CliErrors[_0x42b450(0x9b)](_0x42b450(0x83)+_0x19a7e5+_0x42b450(0xbc)+_0x366b0d);}_0x2a43e9=_0x19a7e5,_0x46b2d8=_0x3b8ec4;}else{if(_0x26fae0){_0x46b2d8=_0x26fae0;const _0x1e08b9=_0x149d82[_0x42b450(0x80)](_0x33ae4e=>_0x33ae4e[_0x42b450(0xad)]===_0x26fae0);_0x2a43e9=_0x1e08b9?.[_0x42b450(0xa6)];}else{if(_0x4cb7e9['nonInteractive'])throw CliErrors[_0x42b450(0x9b)]('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x176d77){const _0x1f9f72=_0x149d82[_0x42b450(0xb5)](_0x60a0ad=>_0x60a0ad[_0x42b450(0xa6)]+'\x20('+_0x60a0ad[_0x42b450(0xb9)]+')'),_0x1a3513=await promptSelect(_0x42b450(0xaa),_0x1f9f72),_0x59de1d=_0x149d82[_0x1a3513];if(!_0x59de1d)throw CliErrors[_0x42b450(0x9b)]('Invalid\x20dataset\x20selection.');_0x2a43e9=_0x59de1d[_0x42b450(0xa6)],_0x46b2d8=_0x59de1d[_0x42b450(0xad)];}else{const _0x19e094=await listDatasets(_0x4cb7e9['appCode']);if(_0x19e094[_0x42b450(0xb3)]===0x0)throw CliErrors[_0x42b450(0x9b)](_0x42b450(0xb0));const _0x5f53fe=_0x19e094[_0x42b450(0xb5)](_0x425615=>_0x425615[_0x42b450(0x7b)]+'\x20['+(_0x425615['source']??'UNKNOWN')+_0x42b450(0x7a)+_0x425615[_0x42b450(0x86)]+')'),_0x40452c=await promptSelect(_0x42b450(0xaa),_0x5f53fe),_0x4ed4db=_0x19e094[_0x40452c];if(!_0x4ed4db)throw CliErrors[_0x42b450(0x9b)](_0x42b450(0xa3));_0x46b2d8=_0x4ed4db[_0x42b450(0x86)],_0x2a43e9=undefined;}}}}const _0x1e95d7=await listDatasets(_0x4cb7e9[_0x42b450(0xa7)]),_0x391771=_0x1e95d7[_0x42b450(0x80)](_0x5f4ebb=>_0x5f4ebb[_0x42b450(0x86)]===_0x46b2d8);if(!_0x391771)throw CliErrors[_0x42b450(0x9b)](_0x42b450(0xa9)+_0x46b2d8+_0x42b450(0xb6)+(_0x2a43e9?_0x42b450(0x7d)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x46eb80=_0x391771['id'];const _0xf3c5fb=_0x2a43e9??_0x46b2d8,_0x553a6b=await listBffDatasetOperations(_0x4cb7e9[_0x42b450(0xa7)],_0x46eb80),_0x573f13=_0x553a6b?Object[_0x42b450(0x88)](_0x553a6b):[];if(_0x573f13[_0x42b450(0xb3)]===0x0)throw CliErrors['validation']('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0xf3c5fb+'.');let _0x30ac32;const _0x58c0dd=_0x4cb7e9[_0x42b450(0xa2)]('operation-type');if(_0x58c0dd){if(!_0x573f13[_0x42b450(0xca)](_0x58c0dd))throw CliErrors['validation'](_0x42b450(0xc4)+_0x58c0dd+_0x42b450(0xae)+_0xf3c5fb+'.\x20'+(_0x42b450(0xc8)+_0x573f13['join'](',\x20')));_0x30ac32=_0x58c0dd;}else{if(_0x4cb7e9[_0x42b450(0xc5)])throw CliErrors['validation']('--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x1468ef=await promptSelect(_0x42b450(0x7f),_0x573f13);_0x30ac32=_0x573f13[_0x1468ef]??_0x573f13[0x0];}let _0x11cbae=normalizeHookFunctionNode(_0x4cb7e9[_0x42b450(0xa2)](_0x42b450(0x99)));if(!_0x11cbae){if(_0x4cb7e9[_0x42b450(0xa2)](_0x42b450(0x99)))throw CliErrors[_0x42b450(0x9b)](_0x42b450(0x79));if(_0x4cb7e9[_0x42b450(0xc5)])throw CliErrors['validation'](_0x42b450(0xc3));const _0x519d0a=await promptSelect(_0x42b450(0xbf),[_0x42b450(0xa8),_0x42b450(0x95)]);_0x11cbae=[_0x42b450(0xa8),'after'][_0x519d0a]??_0x42b450(0xa8);}return{'alias':_0x2a43e9,'datasetCode':_0x46b2d8,'datasetId':_0x46eb80,'operationType':_0x30ac32,'functionNode':_0x11cbae};}async function promptSelect(_0x484a0d,_0x3d84c8){const _0x2417ba=a26_0x4e2a16;if(_0x3d84c8['length']===0x1)return 0x0;for(const [_0x3ba461,_0x9eec80]of _0x3d84c8[_0x2417ba(0xcd)]()){process[_0x2417ba(0x8f)][_0x2417ba(0xaf)]('\x20\x20'+(_0x3ba461+0x1)+'.\x20'+_0x9eec80+'\x0a');}const _0x46c3f6=createInterface({'input':process[_0x2417ba(0xc2)],'output':process[_0x2417ba(0x8f)]});while(!![]){const _0x5b5952=await new Promise(_0x42b5b1=>{const _0x18d5c0=_0x2417ba;_0x46c3f6[_0x18d5c0(0x93)](_0x484a0d+'\x20',_0x42b5b1);}),_0x17a2ee=Number['parseInt'](_0x5b5952['trim'](),0xa);if(Number[_0x2417ba(0xce)](_0x17a2ee)&&_0x17a2ee>=0x1&&_0x17a2ee<=_0x3d84c8['length'])return _0x46c3f6[_0x2417ba(0x90)](),_0x17a2ee-0x1;process[_0x2417ba(0x8f)][_0x2417ba(0xaf)]('\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'+_0x3d84c8['length']+'.\x0a');}}function a26_0x209f(_0x1c2004,_0x478a81){_0x1c2004=_0x1c2004-0x77;const _0x50cc7d=a26_0x50cc();let _0x209f7b=_0x50cc7d[_0x1c2004];return _0x209f7b;}function buildFilePath(_0x3bc7e8,_0x4f779d,_0xed7c78,_0x5c3bc6){const _0x4cd5e2=a26_0x4e2a16;if(_0x4f779d===_0x4cd5e2(0xb1)){if(!_0x5c3bc6)throw CliErrors[_0x4cd5e2(0x9b)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x2e0953=_0x5c3bc6[_0x4cd5e2(0xa6)]??_0x5c3bc6['datasetCode'];return join(_0x3bc7e8[_0x4cd5e2(0xc1)],_0x4cd5e2(0xb1),_0x2e0953,_0x5c3bc6[_0x4cd5e2(0x91)],_0x5c3bc6[_0x4cd5e2(0x82)],_0xed7c78+'.js');}return join(_0x3bc7e8[_0x4cd5e2(0xc1)],_0x4f779d,_0xed7c78+_0x4cd5e2(0xc0));}export function generateTemplate(_0x3acd0b,_0x2b9e85,_0x441a9f,_0x3338a9,_0x3cae28){const _0x4537df=a26_0x4e2a16,_0x251724=_0x3338a9?.[_0x4537df(0xb8)]()||'TODO:\x20add\x20script\x20description';if(_0x3acd0b===_0x4537df(0xcc))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x251724+'\x0a\x20*\x20[脚本名称]\x20'+_0x2b9e85+_0x4537df(0xac)+_0x2b9e85+'.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x2b9e85+_0x4537df(0xa4);if(_0x3acd0b==='ENDPOINT')return _0x4537df(0xba)+_0x251724+_0x4537df(0x92)+_0x441a9f+'/'+_0x2b9e85+'\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x2b9e85+_0x4537df(0xa4);if(!_0x3cae28)throw CliErrors['validation'](_0x4537df(0xb4));return _0x4537df(0x77)+_0x251724+_0x4537df(0x96)+_0x441a9f+'/'+_0x3cae28['datasetCode']+'/'+_0x3cae28[_0x4537df(0x91)]+_0x4537df(0xc7)+_0x3cae28[_0x4537df(0x82)]+'\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x2b9e85+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';}
@@ -1 +1 @@
1
- const a27_0x1ae04d=a27_0x4f67;(function(_0x56b420,_0x29b20f){const _0x59fca2=a27_0x4f67,_0x42de04=_0x56b420();while(!![]){try{const _0x321c10=-parseInt(_0x59fca2(0x10f))/0x1*(-parseInt(_0x59fca2(0x127))/0x2)+parseInt(_0x59fca2(0x10c))/0x3*(parseInt(_0x59fca2(0x130))/0x4)+parseInt(_0x59fca2(0x132))/0x5*(-parseInt(_0x59fca2(0x11d))/0x6)+parseInt(_0x59fca2(0x10a))/0x7+-parseInt(_0x59fca2(0x129))/0x8+-parseInt(_0x59fca2(0x131))/0x9*(-parseInt(_0x59fca2(0x108))/0xa)+parseInt(_0x59fca2(0x105))/0xb*(-parseInt(_0x59fca2(0x117))/0xc);if(_0x321c10===_0x29b20f)break;else _0x42de04['push'](_0x42de04['shift']());}catch(_0x4af51f){_0x42de04['push'](_0x42de04['shift']());}}}(a27_0x28f5,0x61e8d));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';function a27_0x4f67(_0x5a1777,_0x54143d){_0x5a1777=_0x5a1777-0x104;const _0x28f53f=a27_0x28f5();let _0x4f678f=_0x28f53f[_0x5a1777];return _0x4f678f;}import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';function a27_0x28f5(){const _0x53b28d=['3lIyoPs','join','validation','1ecdrZj','trashDir','trashedTo','lastSync','scriptsRoot','parse','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','length','651276qMaKTF','toISOString','includes','string','\x22\x20not\x20found\x20after\x20ensureLockScope.','POST','30oaqWjP','Lock\x20scope\x20for\x20app\x20\x22','filter','apps','No\x20lock\x20entry\x20found\x20for\x20\x22','find','Local\x20delete\x20not\x20settled\x20for\x20','bff','remoteId','str','1325878QYQlco','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','4251976tQzWbn','keys','/api/management/library/scripts/delete','appCode','startsWith','functions','target','1619236VzEtxp','8577QDAOZK','797955EqzYyr','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','<timestamp>','\x20\x20-\x20','Would\x20delete\x20','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','11HhJUig','lockFilePath','BFF\x20lock\x20file\x20not\x20found.','4030yDmNIe','scriptsRootDir','2330685wVuHhl','delete'];a27_0x28f5=function(){return _0x53b28d;};return a27_0x28f5();}import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x1ae04d(0x124),'command':a27_0x1ae04d(0x10b),'description':a27_0x1ae04d(0x104),'risk':'high-risk-write','flags':[{'name':a27_0x1ae04d(0x12f),'type':a27_0x1ae04d(0x11a),'required':!![],'description':'Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name'}],async 'validate'(_0x15d079){const _0x92097d=a27_0x1ae04d,_0x3589aa=loadBffProjectConfig(_0x15d079[_0x92097d(0x12c)]),_0x208ae9=await readBffLockFile(_0x3589aa['lockFilePath']);if(!_0x208ae9)throw CliErrors['validation'](_0x92097d(0x115));},async 'dryRun'(_0x380d35){const _0x28d07d=a27_0x1ae04d,_0x54d2a6=loadBffProjectConfig(_0x380d35[_0x28d07d(0x12c)]),_0x5a05ab=await readBffLockFile(_0x54d2a6[_0x28d07d(0x106)]);if(!_0x5a05ab)throw CliErrors[_0x28d07d(0x10e)](_0x28d07d(0x107));const {appLock:_0x574e64}=ensureLockScope(_0x5a05ab,_0x380d35[_0x28d07d(0x12c)],_0x54d2a6['scriptsRoot'],'delete'),_0x1ae644=_0x380d35['str'](_0x28d07d(0x12f)),_0x341ffd=Object['keys'](_0x574e64[_0x28d07d(0x12e)]),_0x42c898=resolveDeleteTarget(_0x1ae644,_0x341ffd),_0xc4a4d9=_0x574e64[_0x28d07d(0x12e)][_0x42c898];if(!_0xc4a4d9)throw CliErrors[_0x28d07d(0x10e)](_0x28d07d(0x121)+_0x42c898+'\x22.');const _0x2f0428=resolveLocalFilePathFromLockKey(_0x54d2a6,_0x42c898),_0x39a3b0=relative(_0x54d2a6['projectRoot'],_0x2f0428),_0x4256fe=join(_0x54d2a6[_0x28d07d(0x110)],_0x28d07d(0x134),_0x39a3b0);return{'method':_0x28d07d(0x11c),'url':_0x28d07d(0x12b),'body':{'appCode':_0x380d35[_0x28d07d(0x12c)],'target':_0x42c898,'remoteId':_0xc4a4d9['remoteId'],'localFilePath':_0x2f0428,'trashedPath':_0x4256fe},'description':_0x28d07d(0x136)+_0x42c898+_0x28d07d(0x128)};},async 'execute'(_0x2f41f6){const _0x2a7063=a27_0x1ae04d,_0x19e9ab=loadBffProjectConfig(_0x2f41f6[_0x2a7063(0x12c)]),_0x590716=await readBffLockFile(_0x19e9ab[_0x2a7063(0x106)]);if(!_0x590716)throw CliErrors[_0x2a7063(0x10e)](_0x2a7063(0x107));const {lockData:_0x2823d7,appLock:_0x41b93f}=ensureLockScope(_0x590716,_0x2f41f6['appCode'],_0x19e9ab[_0x2a7063(0x113)],_0x2a7063(0x10b)),_0x56682e=JSON[_0x2a7063(0x114)](JSON['stringify'](_0x2823d7)),_0x13c143=_0x56682e[_0x2a7063(0x120)][_0x2f41f6[_0x2a7063(0x12c)]];if(!_0x13c143)throw new Error(_0x2a7063(0x11e)+_0x2f41f6[_0x2a7063(0x12c)]+_0x2a7063(0x11b));const _0x2f18de=_0x2f41f6[_0x2a7063(0x126)](_0x2a7063(0x12f)),_0x296773=Object[_0x2a7063(0x12a)](_0x13c143['functions']),_0x5da676=resolveDeleteTarget(_0x2f18de,_0x296773),_0x24093e=_0x13c143[_0x2a7063(0x12e)][_0x5da676];if(!_0x24093e)throw CliErrors[_0x2a7063(0x10e)](_0x2a7063(0x121)+_0x5da676+'\x22.');await deleteBffScript(_0x24093e[_0x2a7063(0x125)]),delete _0x13c143['functions'][_0x5da676],_0x13c143[_0x2a7063(0x112)]=new Date()[_0x2a7063(0x118)](),await writeBffLockFile(_0x19e9ab[_0x2a7063(0x106)],_0x56682e);const _0x4c3081=resolveLocalFilePathFromLockKey(_0x19e9ab,_0x5da676);let _0x377390;await fileExists(_0x4c3081)&&(_0x377390=await moveToTrash(_0x19e9ab['projectRoot'],_0x19e9ab[_0x2a7063(0x110)],_0x4c3081),await cleanupEmptyDirectories(dirname(_0x4c3081),_0x19e9ab[_0x2a7063(0x109)]));await waitForDeleteSettlement(_0x19e9ab[_0x2a7063(0x106)],_0x2f41f6[_0x2a7063(0x12c)],_0x5da676,_0x4c3081),await sleep(0x96);const _0x5341dd={'deleted':_0x5da676,'remoteId':_0x24093e['remoteId']};if(_0x377390)_0x5341dd[_0x2a7063(0x111)]=_0x377390;return{'ok':!![],'data':_0x5341dd,'message':'Deleted\x20'+_0x5da676+(_0x377390?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};function resolveDeleteTarget(_0x3ca425,_0x2a5b97){const _0x2c05c0=a27_0x1ae04d;if(_0x3ca425[_0x2c05c0(0x119)]('/')){const _0x1457cb=_0x2a5b97[_0x2c05c0(0x122)](_0x248946=>_0x248946===_0x3ca425);if(!_0x1457cb)throw CliErrors[_0x2c05c0(0x10e)]('Function\x20not\x20found:\x20'+_0x3ca425);return _0x1457cb;}const _0x5aeda2=_0x2a5b97[_0x2c05c0(0x11f)](_0x43565a=>_0x43565a['split']('/')['at'](-0x1)===_0x3ca425);if(_0x5aeda2[_0x2c05c0(0x116)]===0x0)throw CliErrors[_0x2c05c0(0x10e)]('Function\x20not\x20found:\x20'+_0x3ca425);if(_0x5aeda2[_0x2c05c0(0x116)]>0x1)throw CliErrors[_0x2c05c0(0x10e)]('Multiple\x20functions\x20match\x20\x22'+_0x3ca425+_0x2c05c0(0x133)+_0x5aeda2['map'](_0x570b9a=>_0x2c05c0(0x135)+_0x570b9a)[_0x2c05c0(0x10d)]('\x0a'));return _0x5aeda2[0x0];}async function moveToTrash(_0x5ee8dc,_0xfe7c07,_0x4fd8f1){const _0x43a441=a27_0x1ae04d,_0x416ea5=new Date()[_0x43a441(0x118)]()['replace'](/[:.]/g,'-'),_0x15e033=relative(_0x5ee8dc,_0x4fd8f1),_0x296b22=join(_0xfe7c07,_0x416ea5,_0x15e033);return await mkdir(dirname(_0x296b22),{'recursive':!![]}),await rename(_0x4fd8f1,_0x296b22),_0x296b22;}async function cleanupEmptyDirectories(_0x17521a,_0x5bf2e9){const _0x46aec9=a27_0x1ae04d;let _0x3421a2=resolve(_0x17521a);const _0x217e38=resolve(_0x5bf2e9);while(_0x3421a2[_0x46aec9(0x12d)](''+_0x217e38+sep)||_0x3421a2===_0x217e38){if(_0x3421a2===_0x217e38)return;try{const _0x42d1f0=await readdir(_0x3421a2);if(_0x42d1f0[_0x46aec9(0x116)]>0x0)return;await rmdir(_0x3421a2);}catch{return;}_0x3421a2=dirname(_0x3421a2);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x56bcfc,_0x3bec6f,_0x379b7a,_0x34f4b9){const _0x513bfb=a27_0x1ae04d;for(let _0x10d81a=0x0;_0x10d81a<DELETE_SETTLE_RETRY_COUNT;_0x10d81a+=0x1){const _0x3cbf9b=await readBffLockFile(_0x56bcfc),_0x14bf13=!!_0x3cbf9b?.[_0x513bfb(0x120)]?.[_0x3bec6f]?.['functions']?.[_0x379b7a],_0x1ce27f=await fileExists(_0x34f4b9);if(!_0x14bf13&&!_0x1ce27f)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x513bfb(0x123)+_0x379b7a+'.');}
1
+ const a27_0x309506=a27_0x3150;(function(_0x1e6d99,_0x529b6c){const _0x28da26=a27_0x3150,_0x706093=_0x1e6d99();while(!![]){try{const _0x1844d5=-parseInt(_0x28da26(0x1ce))/0x1*(-parseInt(_0x28da26(0x1e0))/0x2)+-parseInt(_0x28da26(0x1b8))/0x3+parseInt(_0x28da26(0x1dc))/0x4*(parseInt(_0x28da26(0x1df))/0x5)+parseInt(_0x28da26(0x1cd))/0x6+parseInt(_0x28da26(0x1c5))/0x7+parseInt(_0x28da26(0x1b9))/0x8*(parseInt(_0x28da26(0x1bb))/0x9)+-parseInt(_0x28da26(0x1d8))/0xa*(parseInt(_0x28da26(0x1cb))/0xb);if(_0x1844d5===_0x529b6c)break;else _0x706093['push'](_0x706093['shift']());}catch(_0x36ab47){_0x706093['push'](_0x706093['shift']());}}}(a27_0x543f,0x21577));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';function a27_0x543f(){const _0x2dcb62=['Would\x20delete\x20','POST','lockFilePath','7412HCCHEw','filter','Lock\x20scope\x20for\x20app\x20\x22','15SBXDCz','4FRMBqQ','lastSync','scriptsRootDir','string','keys','appCode','projectRoot','trashDir','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','functions','\x20\x20-\x20','startsWith','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','Deleted\x20','length','Function\x20not\x20found:\x20','467775wHGynS','1341608gPrrCm','stringify','9zshydO','scriptsRoot','\x20(local\x20file\x20moved\x20to\x20trash)','replace','find','BFF\x20lock\x20file\x20not\x20found.','parse','toISOString','split','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','16968qQDnOU','<timestamp>','includes','map','delete','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','22nueeNb','\x22\x20not\x20found\x20after\x20ensureLockScope.','1191456jioDUg','67323BChggp','trashedTo','No\x20lock\x20entry\x20found\x20for\x20\x22','validation','high-risk-write','target','apps','remoteId','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','bff','1082070EXzZnR'];a27_0x543f=function(){return _0x2dcb62;};return a27_0x543f();}import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';function a27_0x3150(_0x5868da,_0x2ba5df){_0x5868da=_0x5868da-0x1ac;const _0x543f96=a27_0x543f();let _0x3150f1=_0x543f96[_0x5868da];return _0x3150f1;}import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x309506(0x1d7),'command':a27_0x309506(0x1c9),'description':a27_0x309506(0x1ca),'risk':a27_0x309506(0x1d2),'flags':[{'name':a27_0x309506(0x1d3),'type':a27_0x309506(0x1e3),'required':!![],'description':a27_0x309506(0x1b0)}],async 'validate'(_0x8b3d14){const _0x240d86=a27_0x309506,_0x209fa5=loadBffProjectConfig(_0x8b3d14[_0x240d86(0x1ad)]),_0xaff34b=await readBffLockFile(_0x209fa5[_0x240d86(0x1db)]);if(!_0xaff34b)throw CliErrors[_0x240d86(0x1d1)](_0x240d86(0x1c4));},async 'dryRun'(_0x5cff82){const _0x210477=a27_0x309506,_0x390851=loadBffProjectConfig(_0x5cff82[_0x210477(0x1ad)]),_0x54fa23=await readBffLockFile(_0x390851['lockFilePath']);if(!_0x54fa23)throw CliErrors[_0x210477(0x1d1)](_0x210477(0x1c0));const {appLock:_0x33ab4f}=ensureLockScope(_0x54fa23,_0x5cff82[_0x210477(0x1ad)],_0x390851[_0x210477(0x1bc)],'delete'),_0x1fda40=_0x5cff82['str'](_0x210477(0x1d3)),_0x27dae4=Object[_0x210477(0x1ac)](_0x33ab4f[_0x210477(0x1b1)]),_0xfdf47c=resolveDeleteTarget(_0x1fda40,_0x27dae4),_0x58b2a6=_0x33ab4f[_0x210477(0x1b1)][_0xfdf47c];if(!_0x58b2a6)throw CliErrors[_0x210477(0x1d1)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0xfdf47c+'\x22.');const _0x374406=resolveLocalFilePathFromLockKey(_0x390851,_0xfdf47c),_0x49863c=relative(_0x390851[_0x210477(0x1ae)],_0x374406),_0x1492ec=join(_0x390851[_0x210477(0x1af)],_0x210477(0x1c6),_0x49863c);return{'method':_0x210477(0x1da),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x5cff82[_0x210477(0x1ad)],'target':_0xfdf47c,'remoteId':_0x58b2a6[_0x210477(0x1d5)],'localFilePath':_0x374406,'trashedPath':_0x1492ec},'description':_0x210477(0x1d9)+_0xfdf47c+_0x210477(0x1d6)};},async 'execute'(_0x383d16){const _0x54801f=a27_0x309506,_0x1cb534=loadBffProjectConfig(_0x383d16[_0x54801f(0x1ad)]),_0x4c92f8=await readBffLockFile(_0x1cb534['lockFilePath']);if(!_0x4c92f8)throw CliErrors['validation'](_0x54801f(0x1c0));const {lockData:_0x5446c1,appLock:_0x2c42c9}=ensureLockScope(_0x4c92f8,_0x383d16[_0x54801f(0x1ad)],_0x1cb534[_0x54801f(0x1bc)],_0x54801f(0x1c9)),_0x20428d=JSON[_0x54801f(0x1c1)](JSON[_0x54801f(0x1ba)](_0x5446c1)),_0x4c0b5c=_0x20428d[_0x54801f(0x1d4)][_0x383d16[_0x54801f(0x1ad)]];if(!_0x4c0b5c)throw new Error(_0x54801f(0x1de)+_0x383d16['appCode']+_0x54801f(0x1cc));const _0x3f893e=_0x383d16['str'](_0x54801f(0x1d3)),_0x2cda9d=Object[_0x54801f(0x1ac)](_0x4c0b5c[_0x54801f(0x1b1)]),_0xb0f17d=resolveDeleteTarget(_0x3f893e,_0x2cda9d),_0x4c1803=_0x4c0b5c[_0x54801f(0x1b1)][_0xb0f17d];if(!_0x4c1803)throw CliErrors[_0x54801f(0x1d1)](_0x54801f(0x1d0)+_0xb0f17d+'\x22.');await deleteBffScript(_0x4c1803['remoteId']),delete _0x4c0b5c['functions'][_0xb0f17d],_0x4c0b5c[_0x54801f(0x1e1)]=new Date()[_0x54801f(0x1c2)](),await writeBffLockFile(_0x1cb534['lockFilePath'],_0x20428d);const _0x24e9bb=resolveLocalFilePathFromLockKey(_0x1cb534,_0xb0f17d);let _0x348e87;await fileExists(_0x24e9bb)&&(_0x348e87=await moveToTrash(_0x1cb534[_0x54801f(0x1ae)],_0x1cb534[_0x54801f(0x1af)],_0x24e9bb),await cleanupEmptyDirectories(dirname(_0x24e9bb),_0x1cb534[_0x54801f(0x1e2)]));await waitForDeleteSettlement(_0x1cb534[_0x54801f(0x1db)],_0x383d16[_0x54801f(0x1ad)],_0xb0f17d,_0x24e9bb),await sleep(0x96);const _0x43bb9b={'deleted':_0xb0f17d,'remoteId':_0x4c1803[_0x54801f(0x1d5)]};if(_0x348e87)_0x43bb9b[_0x54801f(0x1cf)]=_0x348e87;return{'ok':!![],'data':_0x43bb9b,'message':_0x54801f(0x1b5)+_0xb0f17d+(_0x348e87?_0x54801f(0x1bd):'')};}};function resolveDeleteTarget(_0x55ad02,_0x359c27){const _0x1bceb7=a27_0x309506;if(_0x55ad02[_0x1bceb7(0x1c7)]('/')){const _0x4cdffe=_0x359c27[_0x1bceb7(0x1bf)](_0x1ced06=>_0x1ced06===_0x55ad02);if(!_0x4cdffe)throw CliErrors[_0x1bceb7(0x1d1)](_0x1bceb7(0x1b7)+_0x55ad02);return _0x4cdffe;}const _0x1147a0=_0x359c27[_0x1bceb7(0x1dd)](_0xdfea8e=>_0xdfea8e[_0x1bceb7(0x1c3)]('/')['at'](-0x1)===_0x55ad02);if(_0x1147a0[_0x1bceb7(0x1b6)]===0x0)throw CliErrors['validation'](_0x1bceb7(0x1b7)+_0x55ad02);if(_0x1147a0[_0x1bceb7(0x1b6)]>0x1)throw CliErrors[_0x1bceb7(0x1d1)]('Multiple\x20functions\x20match\x20\x22'+_0x55ad02+_0x1bceb7(0x1b4)+_0x1147a0[_0x1bceb7(0x1c8)](_0x4f251d=>_0x1bceb7(0x1b2)+_0x4f251d)['join']('\x0a'));return _0x1147a0[0x0];}async function moveToTrash(_0x3a269a,_0x52bb9b,_0x298fe9){const _0x5aa550=a27_0x309506,_0x1d296c=new Date()[_0x5aa550(0x1c2)]()[_0x5aa550(0x1be)](/[:.]/g,'-'),_0x20551e=relative(_0x3a269a,_0x298fe9),_0x483ed8=join(_0x52bb9b,_0x1d296c,_0x20551e);return await mkdir(dirname(_0x483ed8),{'recursive':!![]}),await rename(_0x298fe9,_0x483ed8),_0x483ed8;}async function cleanupEmptyDirectories(_0x254ffb,_0x5c19ef){const _0x586ac0=a27_0x309506;let _0x45c47d=resolve(_0x254ffb);const _0x130f0a=resolve(_0x5c19ef);while(_0x45c47d[_0x586ac0(0x1b3)](''+_0x130f0a+sep)||_0x45c47d===_0x130f0a){if(_0x45c47d===_0x130f0a)return;try{const _0x57200d=await readdir(_0x45c47d);if(_0x57200d[_0x586ac0(0x1b6)]>0x0)return;await rmdir(_0x45c47d);}catch{return;}_0x45c47d=dirname(_0x45c47d);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x191984,_0x50211a,_0xff6983,_0x5f31b4){const _0x548d47=a27_0x309506;for(let _0x3654c8=0x0;_0x3654c8<DELETE_SETTLE_RETRY_COUNT;_0x3654c8+=0x1){const _0x4fc00e=await readBffLockFile(_0x191984),_0x3bdc18=!!_0x4fc00e?.[_0x548d47(0x1d4)]?.[_0x50211a]?.['functions']?.[_0xff6983],_0x21e1ff=await fileExists(_0x5f31b4);if(!_0x3bdc18&&!_0x21e1ff)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error('Local\x20delete\x20not\x20settled\x20for\x20'+_0xff6983+'.');}
@@ -1 +1 @@
1
- function a28_0x50aa(_0x5ec729,_0x2cd5c8){_0x5ec729=_0x5ec729-0x6f;const _0x5eced0=a28_0x5ece();let _0x50aa33=_0x5eced0[_0x5ec729];return _0x50aa33;}const a28_0x4e428a=a28_0x50aa;(function(_0x3f8dd7,_0x26a25e){const _0x453d04=a28_0x50aa,_0x4cf43f=_0x3f8dd7();while(!![]){try{const _0x121c42=parseInt(_0x453d04(0x87))/0x1*(parseInt(_0x453d04(0x75))/0x2)+parseInt(_0x453d04(0x77))/0x3*(-parseInt(_0x453d04(0x82))/0x4)+-parseInt(_0x453d04(0x8a))/0x5*(-parseInt(_0x453d04(0x70))/0x6)+parseInt(_0x453d04(0x88))/0x7+parseInt(_0x453d04(0x7a))/0x8*(-parseInt(_0x453d04(0x72))/0x9)+parseInt(_0x453d04(0x7d))/0xa*(parseInt(_0x453d04(0x73))/0xb)+-parseInt(_0x453d04(0x76))/0xc*(parseInt(_0x453d04(0x6f))/0xd);if(_0x121c42===_0x26a25e)break;else _0x4cf43f['push'](_0x4cf43f['shift']());}catch(_0x53ae7f){_0x4cf43f['push'](_0x4cf43f['shift']());}}}(a28_0x5ece,0x43d05));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x4e428a(0x7b),'command':'detail','description':'Get\x20BFF\x20script\x20details\x20by\x20ID','risk':a28_0x4e428a(0x7f),'flags':[{'name':'id','type':a28_0x4e428a(0x7e),'required':!![],'description':a28_0x4e428a(0x74)},{'name':a28_0x4e428a(0x80),'type':a28_0x4e428a(0x89),'description':a28_0x4e428a(0x78)}],async 'execute'(_0x36e25f){const _0x36d4be=a28_0x4e428a,_0xb5ccc3=await getBffScriptInfo(_0x36e25f[_0x36d4be(0x81)]('id')),_0x6ae99d=_0x36e25f[_0x36d4be(0x71)]('verbose');if(_0x6ae99d)return{'ok':!![],'data':_0xb5ccc3};return{'ok':!![],'data':{'id':_0xb5ccc3['id'],'appCode':_0xb5ccc3[_0x36d4be(0x7c)],'scriptType':_0xb5ccc3[_0x36d4be(0x84)],'description':_0xb5ccc3[_0x36d4be(0x79)]||_0x36d4be(0x85),'createdTime':_0xb5ccc3[_0x36d4be(0x83)]??'','updatedTime':_0xb5ccc3[_0x36d4be(0x86)]??'','scriptContent':_0xb5ccc3[_0x36d4be(0x8b)]??''}};}};function a28_0x5ece(){const _0x85f48f=['8271qMKQHt','11bCoHNZ','Script\x20ID','6616YNaQHJ','1668UGwicG','3rVCPuU','Return\x20full\x20raw\x20script\x20object','description','4744VHcwLz','bff','appCode','5269670iBkzRB','number','read','verbose','num','2003860AXuRUS','createdTime','scriptType','(none)','updatedTime','127AfFkCx','3006997wnmUVQ','boolean','5ZSQtII','scriptContent','40781gqnOQp','2298516ZzfkKU','bool'];a28_0x5ece=function(){return _0x85f48f;};return a28_0x5ece();}
1
+ const a28_0x1b3fa4=a28_0x1eb5;function a28_0x2679(){const _0x1cc260=['createdTime','7762509qsHDEe','updatedTime','bool','6492FeIAil','appCode','scriptContent','bff','1081110KdNRLh','number','num','boolean','Script\x20ID','10iRHLyf','3801133WUNwcl','verbose','75536AuZSDq','Get\x20BFF\x20script\x20details\x20by\x20ID','4939712IQJakQ','detail','740797AdHvhk','read','scriptType','558FplGYt','Return\x20full\x20raw\x20script\x20object'];a28_0x2679=function(){return _0x1cc260;};return a28_0x2679();}(function(_0x4f4012,_0x751a87){const _0x4e32b3=a28_0x1eb5,_0xeec687=_0x4f4012();while(!![]){try{const _0x488153=parseInt(_0x4e32b3(0x1d4))/0x1+-parseInt(_0x4e32b3(0x1be))/0x2*(-parseInt(_0x4e32b3(0x1c4))/0x3)+parseInt(_0x4e32b3(0x1d0))/0x4+-parseInt(_0x4e32b3(0x1cd))/0x5*(parseInt(_0x4e32b3(0x1c8))/0x6)+-parseInt(_0x4e32b3(0x1ce))/0x7+-parseInt(_0x4e32b3(0x1d2))/0x8+parseInt(_0x4e32b3(0x1c1))/0x9;if(_0x488153===_0x751a87)break;else _0xeec687['push'](_0xeec687['shift']());}catch(_0x34c010){_0xeec687['push'](_0xeec687['shift']());}}}(a28_0x2679,0xac23d));function a28_0x1eb5(_0x354534,_0x21cc7c){_0x354534=_0x354534-0x1bc;const _0x2679ff=a28_0x2679();let _0x1eb5a2=_0x2679ff[_0x354534];return _0x1eb5a2;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x1b3fa4(0x1c7),'command':a28_0x1b3fa4(0x1d3),'description':a28_0x1b3fa4(0x1d1),'risk':a28_0x1b3fa4(0x1bc),'flags':[{'name':'id','type':a28_0x1b3fa4(0x1c9),'required':!![],'description':a28_0x1b3fa4(0x1cc)},{'name':'verbose','type':a28_0x1b3fa4(0x1cb),'description':a28_0x1b3fa4(0x1bf)}],async 'execute'(_0x4a3484){const _0x4573ce=a28_0x1b3fa4,_0x4cd1ab=await getBffScriptInfo(_0x4a3484[_0x4573ce(0x1ca)]('id')),_0x3fc3e8=_0x4a3484[_0x4573ce(0x1c3)](_0x4573ce(0x1cf));if(_0x3fc3e8)return{'ok':!![],'data':_0x4cd1ab};return{'ok':!![],'data':{'id':_0x4cd1ab['id'],'appCode':_0x4cd1ab[_0x4573ce(0x1c5)],'scriptType':_0x4cd1ab[_0x4573ce(0x1bd)],'description':_0x4cd1ab['description']||'(none)','createdTime':_0x4cd1ab[_0x4573ce(0x1c0)]??'','updatedTime':_0x4cd1ab[_0x4573ce(0x1c2)]??'','scriptContent':_0x4cd1ab[_0x4573ce(0x1c6)]??''}};}};
@@ -1 +1 @@
1
- function a29_0x308c(_0x2b675f,_0x3c4619){_0x2b675f=_0x2b675f-0xe0;const _0x49fb13=a29_0x49fb();let _0x308c7e=_0x49fb13[_0x2b675f];return _0x308c7e;}(function(_0x52e124,_0x5028ba){const _0x3f4158=a29_0x308c,_0x54c346=_0x52e124();while(!![]){try{const _0x1a6022=-parseInt(_0x3f4158(0xeb))/0x1*(-parseInt(_0x3f4158(0xe5))/0x2)+parseInt(_0x3f4158(0xe7))/0x3*(-parseInt(_0x3f4158(0xe3))/0x4)+parseInt(_0x3f4158(0xe4))/0x5*(-parseInt(_0x3f4158(0xea))/0x6)+parseInt(_0x3f4158(0xe2))/0x7*(-parseInt(_0x3f4158(0xe0))/0x8)+-parseInt(_0x3f4158(0xe6))/0x9*(-parseInt(_0x3f4158(0xec))/0xa)+-parseInt(_0x3f4158(0xe8))/0xb*(-parseInt(_0x3f4158(0xe9))/0xc)+parseInt(_0x3f4158(0xe1))/0xd;if(_0x1a6022===_0x5028ba)break;else _0x54c346['push'](_0x54c346['shift']());}catch(_0xdd82d9){_0x54c346['push'](_0x54c346['shift']());}}}(a29_0x49fb,0x54e5c));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';function a29_0x49fb(){const _0x56ecca=['7UznyXu','388AxMUNR','179295jlbEkF','233406DkrlUV','190611apbGhq','20106dLBvDI','11qJqfzX','4281372dXsPAN','60GJnwGu','3xkLPIt','10ozYneL','780944woKWFK','9437649kmpyCI'];a29_0x49fb=function(){return _0x56ecca;};return a29_0x49fb();}import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ (function(_0x167524,_0x3babdc){const _0x46d1b0=a29_0x172e,_0x322098=_0x167524();while(!![]){try{const _0x46ef5e=parseInt(_0x46d1b0(0xfb))/0x1+-parseInt(_0x46d1b0(0x100))/0x2*(parseInt(_0x46d1b0(0x101))/0x3)+-parseInt(_0x46d1b0(0xff))/0x4+-parseInt(_0x46d1b0(0xfe))/0x5+-parseInt(_0x46d1b0(0x102))/0x6+-parseInt(_0x46d1b0(0xfc))/0x7+-parseInt(_0x46d1b0(0xfd))/0x8*(-parseInt(_0x46d1b0(0x103))/0x9);if(_0x46ef5e===_0x3babdc)break;else _0x322098['push'](_0x322098['shift']());}catch(_0x1b64a1){_0x322098['push'](_0x322098['shift']());}}}(a29_0x338b,0x70c77));import{bffList}from'../../commands/bff/list.js';function a29_0x338b(){const _0x17ae31=['1882080qCjLvF','4LhxOXN','1204236HouODb','825726IzAoqC','7574373moJLGF','358937vZKtwU','2262869keuETr','24IYFeMT','3437765FtdZkr'];a29_0x338b=function(){return _0x17ae31;};return a29_0x338b();}import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';function a29_0x172e(_0x5c6abf,_0x14628b){_0x5c6abf=_0x5c6abf-0xfb;const _0x338ba0=a29_0x338b();let _0x172e85=_0x338ba0[_0x5c6abf];return _0x172e85;}import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
1
- const a30_0x521f85=a30_0x3d41;(function(_0x529d85,_0x1eaf42){const _0x4492e7=a30_0x3d41,_0xa699e2=_0x529d85();while(!![]){try{const _0x49e2a0=parseInt(_0x4492e7(0x184))/0x1+-parseInt(_0x4492e7(0x178))/0x2*(-parseInt(_0x4492e7(0x170))/0x3)+parseInt(_0x4492e7(0x16c))/0x4*(parseInt(_0x4492e7(0x183))/0x5)+-parseInt(_0x4492e7(0x16a))/0x6+-parseInt(_0x4492e7(0x17b))/0x7+-parseInt(_0x4492e7(0x186))/0x8+parseInt(_0x4492e7(0x171))/0x9;if(_0x49e2a0===_0x1eaf42)break;else _0xa699e2['push'](_0xa699e2['shift']());}catch(_0x5bc586){_0xa699e2['push'](_0xa699e2['shift']());}}}(a30_0x4033,0xebb0f));import{listBffScripts}from'../../core/api-client.js';function a30_0x3d41(_0x3c6129,_0x3fa591){_0x3c6129=_0x3c6129-0x16a;const _0x40335f=a30_0x4033();let _0x3d414b=_0x40335f[_0x3c6129];return _0x3d414b;}export const bffList={'service':a30_0x521f85(0x176),'command':a30_0x521f85(0x179),'description':a30_0x521f85(0x17f),'risk':a30_0x521f85(0x17c),'flags':[{'name':a30_0x521f85(0x177),'type':a30_0x521f85(0x16d),'description':a30_0x521f85(0x16b),'default':'ENDPOINT','enum':[a30_0x521f85(0x16f),a30_0x521f85(0x174)]},{'name':'name','type':'string','description':a30_0x521f85(0x175)},{'name':'verbose','type':a30_0x521f85(0x187),'description':a30_0x521f85(0x172)}],async 'execute'(_0x275a0b){const _0x10208f=a30_0x521f85,_0x4d4f1d=await listBffScripts(_0x275a0b[_0x10208f(0x180)],_0x275a0b[_0x10208f(0x17a)](_0x10208f(0x177)),{'scriptName':_0x275a0b[_0x10208f(0x17a)]('name')||undefined}),_0x39ad04=_0x275a0b[_0x10208f(0x173)](_0x10208f(0x182));return{'ok':!![],'data':_0x39ad04?_0x4d4f1d:_0x4d4f1d[_0x10208f(0x181)](_0x51a024=>({'id':_0x51a024['id'],'functionName':_0x51a024['functionName']??'','description':_0x51a024[_0x10208f(0x17d)]||_0x10208f(0x185),'scriptType':_0x51a024['scriptType']})),'message':_0x4d4f1d[_0x10208f(0x17e)]===0x0?_0x10208f(0x16e):undefined};}};function a30_0x4033(){const _0x2fed98=['Filter\x20by\x20script\x20name','bff','type','2UnSbAb','list','str','3060624LULsmH','read','description','length','List\x20BFF\x20scripts','appCode','map','verbose','980gpoPvi','877859tlpTHj','(unnamed)','7919680cvJEfy','boolean','9787968RSXWVl','Script\x20type\x20filter','32204pTDuvl','string','No\x20BFF\x20scripts\x20found.','ENDPOINT','2894487vcpeou','5429043CQvWiU','Return\x20full\x20script\x20objects','bool','COMMON'];a30_0x4033=function(){return _0x2fed98;};return a30_0x4033();}
1
+ const a30_0x58d819=a30_0x2f91;function a30_0x369f(){const _0x2d464d=['(unnamed)','1643916rIhNWu','type','length','Return\x20full\x20script\x20objects','boolean','2BBbHZc','appCode','description','15188634zejANc','24TzuaPz','scriptType','Script\x20type\x20filter','str','verbose','29027aIZNpO','list','No\x20BFF\x20scripts\x20found.','2746520cOHGma','578774ZdkZpH','List\x20BFF\x20scripts','read','string','201330Pumbhm','3217676ZnlViX','functionName','ENDPOINT'];a30_0x369f=function(){return _0x2d464d;};return a30_0x369f();}(function(_0x122719,_0x4f635c){const _0x4615b4=a30_0x2f91,_0x4d7c79=_0x122719();while(!![]){try{const _0x48e988=-parseInt(_0x4615b4(0x137))/0x1*(-parseInt(_0x4615b4(0x12e))/0x2)+parseInt(_0x4615b4(0x13f))/0x3+-parseInt(_0x4615b4(0x140))/0x4+-parseInt(_0x4615b4(0x13a))/0x5+-parseInt(_0x4615b4(0x144))/0x6+-parseInt(_0x4615b4(0x13b))/0x7*(-parseInt(_0x4615b4(0x132))/0x8)+parseInt(_0x4615b4(0x131))/0x9;if(_0x48e988===_0x4f635c)break;else _0x4d7c79['push'](_0x4d7c79['shift']());}catch(_0xf6a27a){_0x4d7c79['push'](_0x4d7c79['shift']());}}}(a30_0x369f,0x62a84));import{listBffScripts}from'../../core/api-client.js';function a30_0x2f91(_0xa544f8,_0x2c47d0){_0xa544f8=_0xa544f8-0x12c;const _0x369f3d=a30_0x369f();let _0x2f9175=_0x369f3d[_0xa544f8];return _0x2f9175;}export const bffList={'service':'bff','command':a30_0x58d819(0x138),'description':a30_0x58d819(0x13c),'risk':a30_0x58d819(0x13d),'flags':[{'name':a30_0x58d819(0x145),'type':a30_0x58d819(0x13e),'description':a30_0x58d819(0x134),'default':'ENDPOINT','enum':[a30_0x58d819(0x142),'COMMON']},{'name':'name','type':a30_0x58d819(0x13e),'description':'Filter\x20by\x20script\x20name'},{'name':a30_0x58d819(0x136),'type':a30_0x58d819(0x12d),'description':a30_0x58d819(0x12c)}],async 'execute'(_0x252201){const _0x50834e=a30_0x58d819,_0x4b074=await listBffScripts(_0x252201[_0x50834e(0x12f)],_0x252201[_0x50834e(0x135)]('type'),{'scriptName':_0x252201[_0x50834e(0x135)]('name')||undefined}),_0x447791=_0x252201['bool']('verbose');return{'ok':!![],'data':_0x447791?_0x4b074:_0x4b074['map'](_0x6e4fd1=>({'id':_0x6e4fd1['id'],'functionName':_0x6e4fd1[_0x50834e(0x141)]??'','description':_0x6e4fd1[_0x50834e(0x130)]||_0x50834e(0x143),'scriptType':_0x6e4fd1[_0x50834e(0x133)]})),'message':_0x4b074[_0x50834e(0x146)]===0x0?_0x50834e(0x139):undefined};}};
@@ -1 +1 @@
1
- const a31_0x2c6972=a31_0x14ce;(function(_0x3b184f,_0xfbeb6){const _0x410666=a31_0x14ce,_0x3b21fe=_0x3b184f();while(!![]){try{const _0x330775=parseInt(_0x410666(0x1b0))/0x1*(-parseInt(_0x410666(0x1b5))/0x2)+-parseInt(_0x410666(0x1ac))/0x3*(-parseInt(_0x410666(0x1e6))/0x4)+parseInt(_0x410666(0x1c5))/0x5*(-parseInt(_0x410666(0x1ea))/0x6)+-parseInt(_0x410666(0x1da))/0x7*(-parseInt(_0x410666(0x1e7))/0x8)+-parseInt(_0x410666(0x1dc))/0x9*(parseInt(_0x410666(0x1b6))/0xa)+-parseInt(_0x410666(0x1ce))/0xb+parseInt(_0x410666(0x1bd))/0xc;if(_0x330775===_0xfbeb6)break;else _0x3b21fe['push'](_0x3b21fe['shift']());}catch(_0x22563c){_0x3b21fe['push'](_0x3b21fe['shift']());}}}(a31_0xeb00,0xbba33));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';function a31_0xeb00(){const _0x550b81=['unresolvable\x20target\x20path','length','3028sSWCGd','stderr','scriptContent','alias','stdin','730xExCAC','9013640cVFAqg','string','nonInteractive','Force\x20pull\x20cancelled.','apps','No\x20remote\x20BFF\x20scripts\x20found.','ENDPOINT','54331692UUvWXD','GET','\x20pulled,\x20','parse','bool','filePath','Would\x20inspect\x20','\x20failed','110335ejSrdn','datasetCode','scriptsRoot','toISOString','Force\x20overwrite\x20local\x20unsynced\x20changes','operationType','validation','message','scriptType','14330415SFGjsE','push','apiDir','yes','utf8','Lock\x20scope\x20for\x20app\x20\x22','lockKey','local\x20unsynced\x20changes','cancelled','appCode','type','map','587083XbHHUk','hookLocation','9SMaLbB','Pull\x20only\x20this\x20script\x20type','write','str','Pull\x20complete:\x20','trim','includes','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','boolean','functionName','8996SpFlyn','24vuHnvl','force','pull','324HWPhjG','functionNode','lockFilePath','functions','version','all','654UXAyae','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.'];a31_0xeb00=function(){return _0x550b81;};return a31_0xeb00();}import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';function a31_0x14ce(_0x30b166,_0x3d9bda){_0x30b166=_0x30b166-0x1a7;const _0xeb00f5=a31_0xeb00();let _0x14ce4d=_0xeb00f5[_0x30b166];return _0x14ce4d;}import{CliErrors}from'../../errors.js';export const bffPull={'service':'bff','command':a31_0x2c6972(0x1e9),'description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':a31_0x2c6972(0x1de),'flags':[{'name':'type','type':a31_0x2c6972(0x1b7),'description':a31_0x2c6972(0x1dd),'enum':['COMMON',a31_0x2c6972(0x1bc),'HOOK']},{'name':'force','type':a31_0x2c6972(0x1e4),'description':a31_0x2c6972(0x1c9)}],async 'dryRun'(_0x451a0e){const _0x52a3ca=a31_0x2c6972,_0x50df38=loadBffProjectConfig(_0x451a0e[_0x52a3ca(0x1d7)]),_0x5e20e2=await readBffLockFile(_0x50df38[_0x52a3ca(0x1a8)]),{appLock:_0x1cac5d}=ensureLockScope(_0x5e20e2??createEmptyBffLock(),_0x451a0e[_0x52a3ca(0x1d7)],_0x50df38[_0x52a3ca(0x1c7)],_0x52a3ca(0x1e9)),_0x292cc0=normalizeBffType(_0x451a0e[_0x52a3ca(0x1df)](_0x52a3ca(0x1d8)))??undefined,_0xd82581=buildDatasetCodeToAliasMap(_0x451a0e[_0x52a3ca(0x1d0)],_0x451a0e[_0x52a3ca(0x1d7)]),[_0x5c2d08,_0x4330c7]=await Promise['all']([listBffScripts(_0x451a0e[_0x52a3ca(0x1d7)],_0x292cc0),getBffScriptStatistics(_0x451a0e[_0x52a3ca(0x1d7)])]),_0x43a071=createHookLocationMap(_0x4330c7),_0xac15d9=[];for(const _0x5f4b0c of _0x5c2d08){const _0x211ef7=resolveRemoteScriptTarget(_0x50df38,_0x5f4b0c,_0x43a071,_0x1cac5d[_0x52a3ca(0x1a9)],_0xd82581);if(!_0x211ef7){_0xac15d9[_0x52a3ca(0x1cf)]({'scriptType':_0x5f4b0c['scriptType'],'functionName':_0x5f4b0c[_0x52a3ca(0x1e5)]??'','status':'skipped','reason':'unresolvable\x20target\x20path'});continue;}const _0x41f87f=_0x1cac5d['functions'][_0x211ef7[_0x52a3ca(0x1d4)]],_0x4d7020=_0x5f4b0c[_0x52a3ca(0x1b2)]!=null?computeContentHash(_0x5f4b0c['scriptContent']):undefined,_0x5f50ad=await hasUnsyncedLocalChanges(_0x211ef7[_0x52a3ca(0x1c2)],_0x41f87f,_0x4d7020);_0xac15d9[_0x52a3ca(0x1cf)]({'lockKey':_0x211ef7[_0x52a3ca(0x1d4)],'filePath':_0x211ef7[_0x52a3ca(0x1c2)],'remoteId':_0x5f4b0c['id']??null,'status':_0x5f50ad?'conflict':'would_pull'});}return{'method':_0x52a3ca(0x1be),'url':'/api/management/library/scripts/list?appCode='+_0x451a0e[_0x52a3ca(0x1d7)]+(_0x292cc0?'&type='+_0x292cc0:''),'body':{'appCode':_0x451a0e[_0x52a3ca(0x1d7)],'filterType':_0x292cc0??null,'files':_0xac15d9},'description':_0x52a3ca(0x1c3)+_0xac15d9['length']+'\x20remote\x20BFF\x20script(s)\x20for\x20pull'};},async 'execute'(_0x122f30){const _0x4244e9=a31_0x2c6972,_0x35588b=loadBffProjectConfig(_0x122f30['appCode']),_0x527ab2=await readBffLockFile(_0x35588b[_0x4244e9(0x1a8)]),{lockData:_0x474db3,appLock:_0x168421}=ensureLockScope(_0x527ab2??createEmptyBffLock(),_0x122f30['appCode'],_0x35588b[_0x4244e9(0x1c7)],_0x4244e9(0x1e9)),_0x52ecc0=normalizeBffType(_0x122f30[_0x4244e9(0x1df)](_0x4244e9(0x1d8)))??undefined;if(_0x122f30['str'](_0x4244e9(0x1d8))&&!_0x52ecc0)throw CliErrors[_0x4244e9(0x1cb)](_0x4244e9(0x1ad));const [_0x1270a9,_0x4c79c2]=await Promise[_0x4244e9(0x1ab)]([listBffScripts(_0x122f30[_0x4244e9(0x1d7)],_0x52ecc0),getBffScriptStatistics(_0x122f30[_0x4244e9(0x1d7)])]);if(_0x1270a9[_0x4244e9(0x1af)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x4244e9(0x1bb)};const _0x291d9f=_0x122f30[_0x4244e9(0x1c1)](_0x4244e9(0x1e8));if(_0x291d9f&&!_0x122f30[_0x4244e9(0x1b8)]){const _0x463a45=await confirmForce();if(!_0x463a45)throw CliErrors[_0x4244e9(0x1d6)](_0x4244e9(0x1b9));}if(_0x291d9f&&_0x122f30[_0x4244e9(0x1b8)]){}const _0x1b352c=buildDatasetCodeToAliasMap(_0x122f30[_0x4244e9(0x1d0)],_0x122f30['appCode']),_0x25a739=createHookLocationMap(_0x4c79c2),_0x421271=JSON[_0x4244e9(0x1c0)](JSON['stringify'](_0x474db3)),_0x34b79d=_0x122f30['appCode'],_0x2e0990=_0x421271[_0x4244e9(0x1ba)][_0x34b79d];if(!_0x2e0990)throw new Error(_0x4244e9(0x1d3)+_0x34b79d+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0x1b6849=[],_0x4e535b=[],_0x2953f7=[];for(const _0x5246a0 of _0x1270a9){const _0x5cd73b=resolveRemoteScriptTarget(_0x35588b,_0x5246a0,_0x25a739,_0x168421['functions'],_0x1b352c);if(!_0x5cd73b){_0x4e535b['push']({'lockKey':_0x5246a0[_0x4244e9(0x1cd)]+'/'+_0x5246a0['functionName'],'reason':_0x4244e9(0x1ae)});continue;}const _0x892b58=_0x168421['functions'][_0x5cd73b[_0x4244e9(0x1d4)]];try{if(!_0x5246a0['id'])throw new Error('Remote\x20script\x20missing\x20id.');if(_0x5246a0[_0x4244e9(0x1b2)]==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x4398f0=_0x5246a0[_0x4244e9(0x1b2)],_0x43f6cc=computeContentHash(_0x4398f0);if(!_0x291d9f){const _0xc59cd4=await hasUnsyncedLocalChanges(_0x5cd73b[_0x4244e9(0x1c2)],_0x892b58,_0x43f6cc);if(_0xc59cd4){_0x4e535b['push']({'lockKey':_0x5cd73b['lockKey'],'reason':_0x4244e9(0x1d5)});continue;}}await ensureParentDirectory(_0x5cd73b[_0x4244e9(0x1c2)]),await writeFile(_0x5cd73b['filePath'],_0x4398f0,_0x4244e9(0x1d2));const _0x39c89d={'hash':_0x43f6cc,'remoteId':_0x5246a0['id'],'version':_0x5246a0[_0x4244e9(0x1aa)]};_0x5cd73b[_0x4244e9(0x1d8)]==='HOOK'&&_0x5cd73b[_0x4244e9(0x1db)]&&(_0x39c89d['alias']=_0x5cd73b[_0x4244e9(0x1db)][_0x4244e9(0x1b3)],_0x39c89d[_0x4244e9(0x1c6)]=_0x5cd73b[_0x4244e9(0x1db)]['datasetCode'],_0x39c89d['operationType']=_0x5cd73b[_0x4244e9(0x1db)][_0x4244e9(0x1ca)],_0x39c89d['functionNode']=_0x5cd73b['hookLocation'][_0x4244e9(0x1a7)]),_0x2e0990['functions'][_0x5cd73b['lockKey']]=_0x39c89d,_0x1b6849['push']({'lockKey':_0x5cd73b[_0x4244e9(0x1d4)],'remoteId':_0x5246a0['id']});}catch(_0x4d256c){_0x2953f7[_0x4244e9(0x1cf)]({'lockKey':_0x5cd73b[_0x4244e9(0x1d4)],'error':_0x4d256c instanceof Error?_0x4d256c[_0x4244e9(0x1cc)]:String(_0x4d256c)});}}return _0x2e0990['lastSync']=new Date()[_0x4244e9(0x1c8)](),await writeBffLockFile(_0x35588b['lockFilePath'],_0x421271),{'ok':_0x2953f7['length']===0x0,'data':{'pulled':_0x1b6849,'skipped':_0x4e535b,'failed':_0x2953f7},'message':_0x4244e9(0x1e0)+_0x1b6849[_0x4244e9(0x1af)]+_0x4244e9(0x1bf)+_0x4e535b[_0x4244e9(0x1af)]+'\x20skipped,\x20'+_0x2953f7[_0x4244e9(0x1af)]+_0x4244e9(0x1c4)};}};async function hasUnsyncedLocalChanges(_0x234098,_0x1e3d17,_0x2db77c){if(!await fileExists(_0x234098))return![];const _0x7c00ee=await computeFileHash(_0x234098);if(!_0x1e3d17)return _0x2db77c?_0x7c00ee!==_0x2db77c:!![];return _0x7c00ee!==_0x1e3d17['hash'];}function buildDatasetCodeToAliasMap(_0x25f971,_0x2e2204){const _0x400806=a31_0x2c6972,_0x1ce0af=loadAliasMap(_0x25f971,undefined,resolveApiFilePath(_0x25f971,_0x2e2204));return new Map(_0x1ce0af[_0x400806(0x1d9)](_0x523916=>[_0x523916[_0x400806(0x1c6)],_0x523916[_0x400806(0x1b3)]]));}async function confirmForce(){const _0x25243b=a31_0x2c6972,_0x358603=createInterface({'input':process[_0x25243b(0x1b4)],'output':process[_0x25243b(0x1b1)]}),_0x2f298a=await new Promise(_0x4763f6=>{const _0x5b1662=_0x25243b;_0x358603['question'](_0x5b1662(0x1e3),_0x4763f6);});return _0x358603['close'](),['y',_0x25243b(0x1d1)][_0x25243b(0x1e2)](_0x2f298a[_0x25243b(0x1e1)]()['toLowerCase']());}
1
+ const a31_0x251216=a31_0x237d;(function(_0x2aad19,_0x2bff61){const _0x430188=a31_0x237d,_0x1f8b0e=_0x2aad19();while(!![]){try{const _0xb26e5e=parseInt(_0x430188(0x9d))/0x1*(-parseInt(_0x430188(0xd7))/0x2)+parseInt(_0x430188(0xa4))/0x3*(parseInt(_0x430188(0xd2))/0x4)+-parseInt(_0x430188(0xad))/0x5+parseInt(_0x430188(0xcb))/0x6*(parseInt(_0x430188(0xb6))/0x7)+-parseInt(_0x430188(0xde))/0x8*(parseInt(_0x430188(0xa6))/0x9)+-parseInt(_0x430188(0xdd))/0xa*(-parseInt(_0x430188(0xd4))/0xb)+-parseInt(_0x430188(0xe6))/0xc*(-parseInt(_0x430188(0xb9))/0xd);if(_0xb26e5e===_0x2bff61)break;else _0x1f8b0e['push'](_0x1f8b0e['shift']());}catch(_0x16ec93){_0x1f8b0e['push'](_0x1f8b0e['shift']());}}}(a31_0x14c5,0x7134d));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';function a31_0x237d(_0x32ae10,_0x3d3e10){_0x32ae10=_0x32ae10-0x9c;const _0x14c594=a31_0x14c5();let _0x237d2e=_0x14c594[_0x32ae10];return _0x237d2e;}function a31_0x14c5(){const _0x5770fc=['unresolvable\x20target\x20path','close','functions','/api/management/library/scripts/list?appCode=','all','2190GwEVdY','1480664GKzuXc','operationType','Lock\x20scope\x20for\x20app\x20\x22','Force\x20overwrite\x20local\x20unsynced\x20changes','Pull\x20complete:\x20','stderr','Remote\x20script\x20missing\x20id.','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','594732KIWRkV','skipped','2qJEtqm','scriptsRoot','\x20failed','scriptContent','map','hash','toLowerCase','187098GxKfSq','str','27SyqWyc','length','apps','lockKey','appCode','alias','boolean','3235220tsvpwu','datasetCode','hookLocation','question','yes','version','would_pull','COMMON','pull','35AmXgHh','local\x20unsynced\x20changes','bff','182JGHiUk','parse','stdin','Pull\x20only\x20this\x20script\x20type','force','\x20skipped,\x20','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','\x20remote\x20BFF\x20script(s)\x20for\x20pull','\x20pulled,\x20','scriptType','type','apiDir','filePath','string','includes','HOOK','functionNode','ENDPOINT','779238qLrDhL','&type=','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','functionName','cancelled','message','push','8qqlSas','lockFilePath','22099bTedXV','validation','nonInteractive','241936mIfFqI'];a31_0x14c5=function(){return _0x5770fc;};return a31_0x14c5();}import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0x251216(0xb8),'command':a31_0x251216(0xb5),'description':a31_0x251216(0xbf),'risk':'write','flags':[{'name':a31_0x251216(0xc3),'type':a31_0x251216(0xc6),'description':a31_0x251216(0xbc),'enum':[a31_0x251216(0xb4),a31_0x251216(0xca),a31_0x251216(0xc8)]},{'name':a31_0x251216(0xbd),'type':a31_0x251216(0xac),'description':a31_0x251216(0xe1)}],async 'dryRun'(_0x11c19c){const _0x3d6a8b=a31_0x251216,_0x538360=loadBffProjectConfig(_0x11c19c[_0x3d6a8b(0xaa)]),_0x301832=await readBffLockFile(_0x538360[_0x3d6a8b(0xd3)]),{appLock:_0x4a272d}=ensureLockScope(_0x301832??createEmptyBffLock(),_0x11c19c['appCode'],_0x538360[_0x3d6a8b(0x9e)],_0x3d6a8b(0xb5)),_0x470869=normalizeBffType(_0x11c19c[_0x3d6a8b(0xa5)](_0x3d6a8b(0xc3)))??undefined,_0x2cf79c=buildDatasetCodeToAliasMap(_0x11c19c[_0x3d6a8b(0xc4)],_0x11c19c[_0x3d6a8b(0xaa)]),[_0x5a113d,_0x51765f]=await Promise[_0x3d6a8b(0xdc)]([listBffScripts(_0x11c19c[_0x3d6a8b(0xaa)],_0x470869),getBffScriptStatistics(_0x11c19c[_0x3d6a8b(0xaa)])]),_0x397152=createHookLocationMap(_0x51765f),_0x1937f6=[];for(const _0xcda5ef of _0x5a113d){const _0x1df3ed=resolveRemoteScriptTarget(_0x538360,_0xcda5ef,_0x397152,_0x4a272d[_0x3d6a8b(0xda)],_0x2cf79c);if(!_0x1df3ed){_0x1937f6[_0x3d6a8b(0xd1)]({'scriptType':_0xcda5ef['scriptType'],'functionName':_0xcda5ef[_0x3d6a8b(0xce)]??'','status':_0x3d6a8b(0x9c),'reason':_0x3d6a8b(0xd8)});continue;}const _0x13efc7=_0x4a272d[_0x3d6a8b(0xda)][_0x1df3ed[_0x3d6a8b(0xa9)]],_0x3a74d9=_0xcda5ef[_0x3d6a8b(0xa0)]!=null?computeContentHash(_0xcda5ef[_0x3d6a8b(0xa0)]):undefined,_0x3f15a2=await hasUnsyncedLocalChanges(_0x1df3ed['filePath'],_0x13efc7,_0x3a74d9);_0x1937f6[_0x3d6a8b(0xd1)]({'lockKey':_0x1df3ed[_0x3d6a8b(0xa9)],'filePath':_0x1df3ed[_0x3d6a8b(0xc5)],'remoteId':_0xcda5ef['id']??null,'status':_0x3f15a2?'conflict':_0x3d6a8b(0xb3)});}return{'method':'GET','url':_0x3d6a8b(0xdb)+_0x11c19c[_0x3d6a8b(0xaa)]+(_0x470869?_0x3d6a8b(0xcc)+_0x470869:''),'body':{'appCode':_0x11c19c[_0x3d6a8b(0xaa)],'filterType':_0x470869??null,'files':_0x1937f6},'description':'Would\x20inspect\x20'+_0x1937f6['length']+_0x3d6a8b(0xc0)};},async 'execute'(_0x5de6d3){const _0x4223d8=a31_0x251216,_0x397a82=loadBffProjectConfig(_0x5de6d3[_0x4223d8(0xaa)]),_0x2a7559=await readBffLockFile(_0x397a82[_0x4223d8(0xd3)]),{lockData:_0x4aa2a1,appLock:_0x3fabc}=ensureLockScope(_0x2a7559??createEmptyBffLock(),_0x5de6d3['appCode'],_0x397a82[_0x4223d8(0x9e)],_0x4223d8(0xb5)),_0x5597f0=normalizeBffType(_0x5de6d3[_0x4223d8(0xa5)](_0x4223d8(0xc3)))??undefined;if(_0x5de6d3[_0x4223d8(0xa5)](_0x4223d8(0xc3))&&!_0x5597f0)throw CliErrors[_0x4223d8(0xd5)](_0x4223d8(0xcd));const [_0x28757e,_0x46f89d]=await Promise[_0x4223d8(0xdc)]([listBffScripts(_0x5de6d3[_0x4223d8(0xaa)],_0x5597f0),getBffScriptStatistics(_0x5de6d3[_0x4223d8(0xaa)])]);if(_0x28757e['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20BFF\x20scripts\x20found.'};const _0x4c1f9d=_0x5de6d3['bool']('force');if(_0x4c1f9d&&!_0x5de6d3[_0x4223d8(0xd6)]){const _0x571a9e=await confirmForce();if(!_0x571a9e)throw CliErrors[_0x4223d8(0xcf)]('Force\x20pull\x20cancelled.');}if(_0x4c1f9d&&_0x5de6d3[_0x4223d8(0xd6)]){}const _0x4ed29a=buildDatasetCodeToAliasMap(_0x5de6d3[_0x4223d8(0xc4)],_0x5de6d3['appCode']),_0x37b480=createHookLocationMap(_0x46f89d),_0x1c824a=JSON[_0x4223d8(0xba)](JSON['stringify'](_0x4aa2a1)),_0x1ef2e9=_0x5de6d3[_0x4223d8(0xaa)],_0x1a8379=_0x1c824a[_0x4223d8(0xa8)][_0x1ef2e9];if(!_0x1a8379)throw new Error(_0x4223d8(0xe0)+_0x1ef2e9+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0x4c0155=[],_0x5cbbe3=[],_0x404043=[];for(const _0x3a7acf of _0x28757e){const _0x27cac6=resolveRemoteScriptTarget(_0x397a82,_0x3a7acf,_0x37b480,_0x3fabc[_0x4223d8(0xda)],_0x4ed29a);if(!_0x27cac6){_0x5cbbe3[_0x4223d8(0xd1)]({'lockKey':_0x3a7acf[_0x4223d8(0xc2)]+'/'+_0x3a7acf[_0x4223d8(0xce)],'reason':'unresolvable\x20target\x20path'});continue;}const _0xad9886=_0x3fabc[_0x4223d8(0xda)][_0x27cac6[_0x4223d8(0xa9)]];try{if(!_0x3a7acf['id'])throw new Error(_0x4223d8(0xe4));if(_0x3a7acf[_0x4223d8(0xa0)]==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x3ded57=_0x3a7acf[_0x4223d8(0xa0)],_0x27d56d=computeContentHash(_0x3ded57);if(!_0x4c1f9d){const _0x134648=await hasUnsyncedLocalChanges(_0x27cac6['filePath'],_0xad9886,_0x27d56d);if(_0x134648){_0x5cbbe3['push']({'lockKey':_0x27cac6[_0x4223d8(0xa9)],'reason':_0x4223d8(0xb7)});continue;}}await ensureParentDirectory(_0x27cac6['filePath']),await writeFile(_0x27cac6[_0x4223d8(0xc5)],_0x3ded57,'utf8');const _0x4bfe33={'hash':_0x27d56d,'remoteId':_0x3a7acf['id'],'version':_0x3a7acf[_0x4223d8(0xb2)]};_0x27cac6['type']===_0x4223d8(0xc8)&&_0x27cac6[_0x4223d8(0xaf)]&&(_0x4bfe33[_0x4223d8(0xab)]=_0x27cac6['hookLocation'][_0x4223d8(0xab)],_0x4bfe33[_0x4223d8(0xae)]=_0x27cac6['hookLocation']['datasetCode'],_0x4bfe33[_0x4223d8(0xdf)]=_0x27cac6['hookLocation'][_0x4223d8(0xdf)],_0x4bfe33[_0x4223d8(0xc9)]=_0x27cac6[_0x4223d8(0xaf)][_0x4223d8(0xc9)]),_0x1a8379[_0x4223d8(0xda)][_0x27cac6[_0x4223d8(0xa9)]]=_0x4bfe33,_0x4c0155[_0x4223d8(0xd1)]({'lockKey':_0x27cac6[_0x4223d8(0xa9)],'remoteId':_0x3a7acf['id']});}catch(_0x5a1adf){_0x404043[_0x4223d8(0xd1)]({'lockKey':_0x27cac6[_0x4223d8(0xa9)],'error':_0x5a1adf instanceof Error?_0x5a1adf[_0x4223d8(0xd0)]:String(_0x5a1adf)});}}return _0x1a8379['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x397a82[_0x4223d8(0xd3)],_0x1c824a),{'ok':_0x404043[_0x4223d8(0xa7)]===0x0,'data':{'pulled':_0x4c0155,'skipped':_0x5cbbe3,'failed':_0x404043},'message':_0x4223d8(0xe2)+_0x4c0155['length']+_0x4223d8(0xc1)+_0x5cbbe3[_0x4223d8(0xa7)]+_0x4223d8(0xbe)+_0x404043[_0x4223d8(0xa7)]+_0x4223d8(0x9f)};}};async function hasUnsyncedLocalChanges(_0x4e40a6,_0x20153a,_0x2f4f07){const _0x5e60b9=a31_0x251216;if(!await fileExists(_0x4e40a6))return![];const _0x4f8709=await computeFileHash(_0x4e40a6);if(!_0x20153a)return _0x2f4f07?_0x4f8709!==_0x2f4f07:!![];return _0x4f8709!==_0x20153a[_0x5e60b9(0xa2)];}function buildDatasetCodeToAliasMap(_0xc5e52e,_0x4ac0f3){const _0x321781=a31_0x251216,_0x447619=loadAliasMap(_0xc5e52e,undefined,resolveApiFilePath(_0xc5e52e,_0x4ac0f3));return new Map(_0x447619[_0x321781(0xa1)](_0xecc09d=>[_0xecc09d[_0x321781(0xae)],_0xecc09d['alias']]));}async function confirmForce(){const _0x393d3a=a31_0x251216,_0x314468=createInterface({'input':process[_0x393d3a(0xbb)],'output':process[_0x393d3a(0xe3)]}),_0x5a9664=await new Promise(_0x34e40f=>{const _0x496289=_0x393d3a;_0x314468[_0x496289(0xb0)](_0x496289(0xe5),_0x34e40f);});return _0x314468[_0x393d3a(0xd9)](),['y',_0x393d3a(0xb1)][_0x393d3a(0xc7)](_0x5a9664['trim']()[_0x393d3a(0xa3)]());}