@sendbird/cli 0.0.0-stage → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/.claude-plugin/plugin.json +11 -0
  2. package/.codex-plugin/plugin.json +39 -0
  3. package/LICENSE +13 -0
  4. package/NOTICE.md +1105 -0
  5. package/PROVENANCE.md +15 -0
  6. package/README.md +44 -2
  7. package/dist/acl.d.ts +2 -0
  8. package/dist/acl.js +12 -0
  9. package/dist/acl.js.map +1 -0
  10. package/dist/billing-plan.d.ts +68 -0
  11. package/dist/billing-plan.js +235 -0
  12. package/dist/billing-plan.js.map +1 -0
  13. package/dist/browser.d.ts +1 -0
  14. package/dist/browser.js +20 -0
  15. package/dist/browser.js.map +1 -0
  16. package/dist/calls-catalog.d.ts +79 -0
  17. package/dist/calls-catalog.js +322 -0
  18. package/dist/calls-catalog.js.map +1 -0
  19. package/dist/calls-credits.d.ts +31 -0
  20. package/dist/calls-credits.js +224 -0
  21. package/dist/calls-credits.js.map +1 -0
  22. package/dist/calls-trial.d.ts +45 -0
  23. package/dist/calls-trial.js +77 -0
  24. package/dist/calls-trial.js.map +1 -0
  25. package/dist/calls.d.ts +10 -0
  26. package/dist/calls.js +470 -0
  27. package/dist/calls.js.map +1 -0
  28. package/dist/catalog.d.ts +67 -0
  29. package/dist/catalog.js +784 -0
  30. package/dist/catalog.js.map +1 -0
  31. package/dist/cli.d.ts +6 -0
  32. package/dist/cli.js +502 -0
  33. package/dist/cli.js.map +1 -0
  34. package/dist/core.d.ts +86 -0
  35. package/dist/core.js +531 -0
  36. package/dist/core.js.map +1 -0
  37. package/dist/diagnostics.d.ts +206 -0
  38. package/dist/diagnostics.js +664 -0
  39. package/dist/diagnostics.js.map +1 -0
  40. package/dist/discovery.d.ts +703 -0
  41. package/dist/discovery.js +846 -0
  42. package/dist/discovery.js.map +1 -0
  43. package/dist/docs.d.ts +31 -0
  44. package/dist/docs.js +139 -0
  45. package/dist/docs.js.map +1 -0
  46. package/dist/features.d.ts +131 -0
  47. package/dist/features.js +227 -0
  48. package/dist/features.js.map +1 -0
  49. package/dist/generated-api.d.ts +116 -0
  50. package/dist/generated-api.js +118 -0
  51. package/dist/generated-api.js.map +1 -0
  52. package/dist/human-format.d.ts +40 -0
  53. package/dist/human-format.js +205 -0
  54. package/dist/human-format.js.map +1 -0
  55. package/dist/human-list.d.ts +2 -0
  56. package/dist/human-list.js +368 -0
  57. package/dist/human-list.js.map +1 -0
  58. package/dist/human-output.d.ts +10 -0
  59. package/dist/human-output.js +1351 -0
  60. package/dist/human-output.js.map +1 -0
  61. package/dist/human-pro.d.ts +3 -0
  62. package/dist/human-pro.js +201 -0
  63. package/dist/human-pro.js.map +1 -0
  64. package/dist/human-progress.d.ts +5 -0
  65. package/dist/human-progress.js +49 -0
  66. package/dist/human-progress.js.map +1 -0
  67. package/dist/local.d.ts +42 -0
  68. package/dist/local.js +707 -0
  69. package/dist/local.js.map +1 -0
  70. package/dist/oauth-callback.d.ts +3 -0
  71. package/dist/oauth-callback.js +66 -0
  72. package/dist/oauth-callback.js.map +1 -0
  73. package/dist/oauth-lock.d.ts +6 -0
  74. package/dist/oauth-lock.js +212 -0
  75. package/dist/oauth-lock.js.map +1 -0
  76. package/dist/oauth.d.ts +32 -0
  77. package/dist/oauth.js +493 -0
  78. package/dist/oauth.js.map +1 -0
  79. package/dist/presentation.d.ts +208 -0
  80. package/dist/presentation.js +156 -0
  81. package/dist/presentation.js.map +1 -0
  82. package/dist/pro-api-catalog.d.ts +24 -0
  83. package/dist/pro-api-catalog.js +619 -0
  84. package/dist/pro-api-catalog.js.map +1 -0
  85. package/dist/pro-api.d.ts +10 -0
  86. package/dist/pro-api.js +338 -0
  87. package/dist/pro-api.js.map +1 -0
  88. package/dist/project.d.ts +34 -0
  89. package/dist/project.js +62 -0
  90. package/dist/project.js.map +1 -0
  91. package/dist/recovery.d.ts +41 -0
  92. package/dist/recovery.js +417 -0
  93. package/dist/recovery.js.map +1 -0
  94. package/dist/runner.d.ts +47 -0
  95. package/dist/runner.js +603 -0
  96. package/dist/runner.js.map +1 -0
  97. package/dist/sdk-catalog.d.ts +69 -0
  98. package/dist/sdk-catalog.js +527 -0
  99. package/dist/sdk-catalog.js.map +1 -0
  100. package/dist/sdk-config.d.ts +19 -0
  101. package/dist/sdk-config.js +85 -0
  102. package/dist/sdk-config.js.map +1 -0
  103. package/dist/sdk-dto.d.ts +244 -0
  104. package/dist/sdk-dto.js +98 -0
  105. package/dist/sdk-dto.js.map +1 -0
  106. package/dist/sdk-limits.d.ts +2 -0
  107. package/dist/sdk-limits.js +3 -0
  108. package/dist/sdk-limits.js.map +1 -0
  109. package/dist/sdk-node-file-reader.d.ts +6 -0
  110. package/dist/sdk-node-file-reader.js +38 -0
  111. package/dist/sdk-node-file-reader.js.map +1 -0
  112. package/dist/sdk-pro-catalog.d.ts +22 -0
  113. package/dist/sdk-pro-catalog.js +234 -0
  114. package/dist/sdk-pro-catalog.js.map +1 -0
  115. package/dist/sdk-pro-runtime.d.ts +31 -0
  116. package/dist/sdk-pro-runtime.js +293 -0
  117. package/dist/sdk-pro-runtime.js.map +1 -0
  118. package/dist/sdk-query.d.ts +10 -0
  119. package/dist/sdk-query.js +29 -0
  120. package/dist/sdk-query.js.map +1 -0
  121. package/dist/sdk-runtime.d.ts +15 -0
  122. package/dist/sdk-runtime.js +685 -0
  123. package/dist/sdk-runtime.js.map +1 -0
  124. package/dist/sdk-worker.d.ts +1 -0
  125. package/dist/sdk-worker.js +26 -0
  126. package/dist/sdk-worker.js.map +1 -0
  127. package/dist/sdk.d.ts +29 -0
  128. package/dist/sdk.js +346 -0
  129. package/dist/sdk.js.map +1 -0
  130. package/dist/search-engine.d.ts +17 -0
  131. package/dist/search-engine.js +54 -0
  132. package/dist/search-engine.js.map +1 -0
  133. package/dist/search-intents.d.ts +2 -0
  134. package/dist/search-intents.js +106 -0
  135. package/dist/search-intents.js.map +1 -0
  136. package/dist/search.d.ts +7 -0
  137. package/dist/search.js +58 -0
  138. package/dist/search.js.map +1 -0
  139. package/dist/secret-output.d.ts +2 -0
  140. package/dist/secret-output.js +108 -0
  141. package/dist/secret-output.js.map +1 -0
  142. package/dist/shell.d.ts +3 -0
  143. package/dist/shell.js +14 -0
  144. package/dist/shell.js.map +1 -0
  145. package/dist/skills.d.ts +210 -0
  146. package/dist/skills.js +374 -0
  147. package/dist/skills.js.map +1 -0
  148. package/dist/value-semantics.d.ts +70 -0
  149. package/dist/value-semantics.js +173 -0
  150. package/dist/value-semantics.js.map +1 -0
  151. package/dist/version.d.ts +1 -0
  152. package/dist/version.js +3 -0
  153. package/dist/version.js.map +1 -0
  154. package/dist/windows.d.ts +4 -0
  155. package/dist/windows.js +136 -0
  156. package/dist/windows.js.map +1 -0
  157. package/dist/workflows.d.ts +228 -0
  158. package/dist/workflows.js +1207 -0
  159. package/dist/workflows.js.map +1 -0
  160. package/package.json +90 -4
  161. package/plugin.json +25 -0
  162. package/references/agent-guide.json +199 -0
  163. package/references/commands.md +247 -0
  164. package/references/dashboard-inventory.json +14796 -0
  165. package/references/docs-index.json +5329 -0
  166. package/references/sdk-commands.json +15065 -0
  167. package/references/workflows.json +1246 -0
  168. package/skills/sendbird/SKILL.md +96 -0
  169. package/skills/sendbird/agents/openai.yaml +4 -0
  170. package/skills/sendbird/references/build-chat-app.md +50 -0
  171. package/skills/sendbird/references/client-guide.md +34 -0
  172. package/skills/sendbird/references/client-plugin-bridge.md +77 -0
  173. package/skills/sendbird/references/client-plugin-install.md +39 -0
  174. package/skills/sendbird/references/operational-checks.md +35 -0
  175. package/skills/sendbird/references/pro-capabilities.md +52 -0
  176. package/skills/sendbird/scripts/client-guide.mjs +283 -0
  177. package/skills/sendbird/scripts/client-plugin-bridge.mjs +703 -0
  178. package/skills/sendbird-setup/SKILL.md +18 -0
  179. package/skills/sendbird-setup/agents/openai.yaml +4 -0
  180. package/skills/sendbird-setup/references/onboarding.md +73 -0
  181. package/skills/sendbird-setup/scripts/install-cli.mjs +447 -0
  182. package/skills/sendbird-setup/scripts/npm-run.mjs +34 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,EACL,WAAW,EACX,UAAU,EACV,UAAU,GAEX,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,cAAc,EACd,UAAU,GAEX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAwB,MAAM,mBAAmB,CAAC;AACvE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,OAAO;IACP,MAAM;IACN,UAAU;IACV,WAAW;IACX,UAAU;IACV,aAAa;IACb,WAAW;CACZ,CAAC;AACF,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,MAAM,IAAI,GAAyC,EAAE,CAAC;IACtD,SAAS,IAAI,CAAC,CAAU,EAAE,MAAM,GAAG,EAAE;QACnC,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC/B,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9D,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC1B,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC;oBAC5C,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;gBACtC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACpB,CAAC;;gBAAM,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,CAAC;IACX,OAAO,IAAI,CAAC;AACd,CAAC;AACD,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,CAAC,GAAG,WAAW,EAAE,GAAG,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAC1E,CAAC;AACD,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,KAAK,KAAK;QACxB,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,CAAC;YACC;gBACE,gBAAgB;gBAChB,aAAa;gBACb,QAAQ;gBACR,YAAY;gBACZ,aAAa;gBACb,mBAAmB;gBACnB,0BAA0B;gBAC1B,SAAS;gBACT,SAAS;gBACT,iBAAiB;gBACjB,gBAAgB;aACjB,CAAC,QAAQ,CAAC,IAAI,CAAC;YAClB,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,OAAO,CAAC;AAChB,CAAC;AACD,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,KAAK,KAAK;QACrB,OAAQ,CAAmB,CAAC,MAAM;YAChC,CAAC,CAAC,QAAQ;YACV,CAAC,CAAE,CAAmB,CAAC,OAAO;gBAC5B,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,UAAU,CAAC;IACnB,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;IACvD,OAAO;QACL,gBAAgB;QAChB,aAAa;QACb,gBAAgB;QAChB,SAAS;QACT,WAAW;QACX,SAAS;QACT,WAAW;QACX,cAAc;QACd,YAAY;QACZ,aAAa;QACb,mBAAmB;QACnB,0BAA0B;QAC1B,gBAAgB;QAChB,aAAa;QACb,OAAO;QACP,gBAAgB;QAChB,eAAe;KAChB,CAAC,QAAQ,CAAC,IAAI,CAAC;QACd,CAAC,CAAC,qBAAqB;QACvB,CAAC,CAAC,CAAC,aAAa,EAAE,QAAQ,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CACnE,IAAI,CACL;YACH,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,SAAS,CAAC;AAClB,CAAC;AACD,MAAM,UAAU,UAAU;IACxB,OAAO;QACL,gBAAgB,EAAE,CAAC;QACnB,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,uBAAuB;QACnC,OAAO,EAAE,kDAAkD;QAC3D,aAAa,EAAE;YACb,UAAU,EAAE,iDAAiD;SAC9D;QACD,WAAW,EAAE;YACX,0LAA0L;YAC1L,0HAA0H;YAC1H,wKAAwK;YACxK,sHAAsH;YACtH,uHAAuH;YACvH,yGAAyG;YACzG,kKAAkK;YAClK,0CAA0C;YAC1C,6JAA6J;SAC9J;QACD,UAAU,EAAE;YACV,KAAK,EAAE,gBAAgB;YACvB,KAAK,EAAE,wCAAwC;YAC/C,OAAO,EACL,0QAA0Q;YAC5Q,KAAK,EAAE,CAAC,aAAa,EAAE,OAAO,CAAC;SAChC;QACD,kBAAkB,EAAE;YAClB,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC;YACzC,QAAQ,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC;YAClD,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,UAAU;oBACV,QAAQ;oBACR,SAAS;oBACT,SAAS;oBACT,QAAQ;oBACR,SAAS;oBACT,SAAS;iBACV;gBACD,KAAK,EAAE;oBACL,UAAU;oBACV,QAAQ;oBACR,SAAS;oBACT,SAAS;oBACT,OAAO;oBACP,SAAS;oBACT,SAAS;iBACV;aACF;YACD,IAAI,EAAE,4HAA4H;SACnI;QACD,cAAc,EACZ,oMAAoM;QACtM,iBAAiB,EACf,6KAA6K;QAC/K,cAAc,EAAE;YACd,IAAI,EAAE,iBAAiB;YACvB,OAAO,EACL,+EAA+E;YACjF,OAAO,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC;YAC1C,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;YACtE,UAAU,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC;YAC9C,UAAU,EACR,uIAAuI;SAC1I;QACD,SAAS,EAAE;YACT;gBACE,IAAI,EAAE;oBACJ,UAAU;oBACV,QAAQ;oBACR,UAAU;oBACV,WAAW;oBACX,UAAU;oBACV,cAAc;iBACf;gBACD,OAAO,EAAE,gCAAgC;aAC1C;YACD;gBACE,IAAI,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC;gBACnE,OAAO,EACL,yEAAyE;aAC5E;YACD;gBACE,IAAI,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAC;gBACzC,OAAO,EAAE,iDAAiD;aAC3D;YACD;gBACE,IAAI,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC;gBAC5D,OAAO,EACL,gEAAgE;aACnE;SACF;QACD,cAAc,EAAE;YACd,SAAS,EAAE;gBACT,UAAU,EAAE,oCAAoC;gBAChD,KAAK,EAAE;oBACL,UAAU;oBACV,QAAQ;oBACR,WAAW;oBACX,SAAS;oBACT,MAAM;oBACN,QAAQ;oBACR,WAAW;iBACZ;gBACD,KAAK,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;gBAC5D,IAAI,EAAE,uJAAuJ;aAC9J;YACD,GAAG,EAAE;gBACH,UAAU,EACR,4FAA4F;gBAC9F,QAAQ,EAAE;oBACR,UAAU;oBACV,WAAW;oBACX,yGAAyG;iBAC1G;gBACD,UAAU,EAAE;oBACV,UAAU;oBACV,WAAW;oBACX,SAAS;oBACT,UAAU;oBACV,QAAQ;oBACR,MAAM;oBACN,KAAK;oBACL,QAAQ;oBACR,mBAAmB;oBACnB,oBAAoB;oBACpB,WAAW;oBACX,SAAS;iBACV;gBACD,OAAO,EAAE;oBACP,UAAU;oBACV,WAAW;oBACX,SAAS;oBACT,UAAU;oBACV,QAAQ;oBACR,KAAK;oBACL,YAAY;oBACZ,OAAO;iBACR;gBACD,IAAI,EAAE,oTAAoT;aAC3T;SACF;QACD,QAAQ,EAAE;YACR,MAAM,EACJ,6ZAA6Z;YAC/Z,MAAM,EACJ,kIAAkI;YACpI,KAAK,EACH,8EAA8E;YAChF,SAAS,EACP,uGAAuG;YACzG,KAAK,EACH,oFAAoF;YACtF,OAAO,EACL,yHAAyH;YAC3H,YAAY,EACV,2EAA2E;SAC9E;QACD,YAAY,EAAE;YACZ,qIAAqI;YACrI,6SAA6S;YAC7S,+HAA+H;SAChI;KACF,CAAC;AACJ,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAa,EACb,IAKC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,EACpC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IACpC,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;QACxB,KAAK,GAAG,CAAC;QACT,KAAK,GAAG,GAAG;QACX,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;QACzB,MAAM,GAAG,CAAC;QAEV,MAAM,IAAI,QAAQ,CAChB,SAAS,EACT,gEAAgE,EAChE,CAAC,CACF,CAAC;IACJ,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;QAC3E,MAAM,IAAI,QAAQ,CAChB,SAAS,EACT,2CAA2C,EAC3C,CAAC,CACF,CAAC;IACJ,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAClE,CAAC;IACF,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,MAAM,OAAO,GAAG,IAAI,GAAG,EAGpB,CAAC;IACJ,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACxB,MAAM,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpE,MAAM,CAAC,oBAAoB,CAAC;YAC5B,MAAM,CAAC,qBAAqB,CAAC;SAC9B,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG;YAC1B,MAAM,IAAI,QAAQ,CAChB,SAAS,EACT,6CAA6C,EAC7C,CAAC,CACF,CAAC;QACJ,MAAM,KAAK,GAAG,iBAAiB,CAC7B,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACf,EAAE,EAAE,CAAC,CAAC,IAAI;YACV,KAAK,EAAE,CAAC,CAAC,IAAI;YACb,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE;YACpC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC;SAChC,CAAC,CAAC,CACJ,CAAC;QACF,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACzB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE;gBAC3B,UAAU,EAAE,GAAG,CAAC,UAAU;gBAC1B,aAAa,EAAE,GAAG,CAAC,aAAa;aACjC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAE,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC;IACD,OAAO;QACL,OAAO,EAAE,OAAO;QAChB,KAAK,EAAE,OAAO,CAAC,MAAM;QACrB,MAAM;QACN,KAAK;QACL,WAAW,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI;QACpE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1D,OAAO,EAAE,YAAY,CAAC,CAAC,IAAI,EAAE;YAC7B,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE;YACpC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;YAC/B,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;YACzB,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvD,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D,CAAC,CAAC;QACH,GAAG,CAAC,OAAO,CAAC,MAAM;YAChB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,IAAI,EAAE;oBACJ,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC;oBACrC,CAAC,UAAU,EAAE,WAAW,CAAC;iBAC1B;aACF,CAAC;KACP,CAAC;AACJ,CAAC;AACD,MAAM,UAAU,WAAW,CAAC,CAAa;IACvC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAkB,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAChD,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK;QAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACvD,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,iBAAiB,IAAI,CAAC,CAAC,WAAW;QACpE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACnC,IAAI,CAAC,CAAC,MAAM,KAAK,KAAK;QAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC1D,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAU,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAA4B,CAAC;QAClD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,IACE,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACjD,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EACpE,CAAC;gBACD,WAAW,GAAG,IAAI,CAAC;gBACnB,SAAS;YACX,CAAC;YACD,IAAI,CAAC,IAAI,CACP,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,EAC1C,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAC9C,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,WAAW;QAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;IAC/D,IACE;QACE,mBAAmB;QACnB,mBAAmB;QACnB,kBAAkB;QAClB,kBAAkB;KACnB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAElB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,yBAAyB,CAAC,CAAC;IAC5D,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvB,OAAO;QACL,IAAI;QACJ,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE,uBAAuB,CAAC;QAClD,KAAK,EAAE,CAAC;QACR,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,IAAI,EAAE,8SAA8S;KACrT,CAAC;AACJ,CAAC;AACD,SAAS,WAAW,CAAC,MAAwC;IAC3D,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAGzC,CAAC;IACF,OAAO;QACL,GAAG,KAAK;QACR,QAAQ,EAAE,CAAE,KAAK,CAAC,QAAqB,IAAI,EAAE,CAAC,CAAC,MAAM,CACnD,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,CACpD;KACF,CAAC;AACJ,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,IAAa,EAAE,IAAY;IACzD,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/C,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC5D,IAAI,CAAC,GAAG;QACN,MAAM,IAAI,QAAQ,CAChB,aAAa,EACb,+EAA+E,EAC/E,CAAC,CACF,CAAC;IACJ,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;IAChC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,MAAM,KAAK,GAAG;QACZ,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO;QACtB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC;KACtD;SACE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACZ,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QACnD,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,MAAM,EAAE,CAAC,CAAC,KAAK;QACf,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,WAAW,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ;KACtC,CAAC,CAAC,CAAC;IACN,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAU,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACtC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAoB;YAC3C,IACE,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACrD,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAEvD,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,CAAC,EAAE,KAAK,KAAK,KAAK;QAAE,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACjE,IAAI,CAAC,EAAE,KAAK,KAAK,KAAK,IAAI,IAAI,KAAK,iBAAiB,IAAI,CAAC,EAAE,WAAW;QACpE,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IAC3C,IAAI,GAAG;QACL,QAAQ,CAAC,IAAI,CACX,WAAW,EACX,iEAAiE,CAClE,CAAC;IACJ,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,IAAI,KAAK,OAAO;QAClB,WAAW,CAAC,IAAI,CACd,iaAAia,CACla,CAAC;IACJ,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;QACjC,WAAW,CAAC,IAAI,CACd,qnBAAqnB,CACtnB,CAAC;IACJ,IACE,kEAAkE,CAAC,IAAI,CACrE,IAAI,CACL;QACD,sCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAE3B,WAAW,CAAC,IAAI,CACd,yTAAyT,CAC1T,CAAC;IACJ,IAAI,IAAI,KAAK,YAAY;QACvB,WAAW,CAAC,IAAI,CACd,iKAAiK,CAClK,CAAC;IACJ,IAAI,IAAI,KAAK,uBAAuB;QAClC,WAAW,CAAC,IAAI,CACd,+IAA+I,CAChJ,CAAC;IACJ,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAC7B,WAAW,CAAC,IAAI,CACd,4QAA4Q,CAC7Q,CAAC;IACJ,IAAI,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC9C,WAAW,CAAC,IAAI,CACd,0MAA0M,CAC3M,CAAC;IACJ,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACnC,WAAW,CAAC,IAAI,CACd,mMAAmM,CACpM,CAAC;IACJ,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC;QACrC,WAAW,CAAC,IAAI,CACd,sLAAsL,CACvL,CAAC;IACJ,IAAI,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC;QAC1C,WAAW,CAAC,IAAI,CACd,8JAA8J,CAC/J,CAAC;IACJ,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC3B,WAAW,CAAC,IAAI,CACd,qHAAqH,CACtH,CAAC;IACJ,IAAI,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC;QACjD,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACnC,WAAW,CAAC,IAAI,CACd,meAAme,CACpe,CAAC;IACJ,IAAI,IAAI,KAAK,gBAAgB;QAC3B,WAAW,CAAC,IAAI,CACd,kgBAAkgB,CACngB,CAAC;IACJ,IACE;QACE,mBAAmB;QACnB,mBAAmB;QACnB,kBAAkB;QAClB,kBAAkB;KACnB,CAAC,QAAQ,CAAC,IAAI,CAAC;QAEhB,WAAW,CAAC,IAAI,CACd,yTAAyT,CAC1T,CAAC;IACJ,IACE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QACzB,CAAC,EAAE,MAAM,KAAK,KAAK;QACnB,IAAI,KAAK,2BAA2B;QAEpC,WAAW,CAAC,IAAI,CACd,+GAA+G,CAChH,CAAC;IACJ,IAAI,IAAI,KAAK,YAAY;QACvB,WAAW,CAAC,IAAI,CACd,qpBAAqpB,CACtpB,CAAC;IACJ,IAAI,IAAI,KAAK,qBAAqB;QAChC,WAAW,CAAC,IAAI,CACd,qEAAqE,EACrE,gFAAgF,CACjF,CAAC;IACJ,IAAI,IAAI,KAAK,mBAAmB,IAAI,IAAI,KAAK,qBAAqB;QAChE,WAAW,CAAC,IAAI,CACd,oIAAoI,CACrI,CAAC;IACJ,IAAI,IAAI,KAAK,mBAAmB;QAC9B,WAAW,CAAC,IAAI,CACd,6EAA6E,CAC9E,CAAC;IACJ,IAAI,IAAI,KAAK,mBAAmB;QAC9B,WAAW,CAAC,IAAI,CACd,8EAA8E,CAC/E,CAAC;IACJ,IAAI,IAAI,KAAK,qBAAqB;QAChC,WAAW,CAAC,IAAI,CACd,gFAAgF,CACjF,CAAC;IACJ,IAAI,CAAC,EAAE,MAAM;QACX,WAAW,CAAC,IAAI,CACd,sFAAsF,CACvF,CAAC;IACJ,IAAI,GAAG;QACL,WAAW,CAAC,IAAI,CACd,gWAAgW,EAChW,wFAAwF,CACzF,CAAC;IACJ,IACE;QACE,0BAA0B;QAC1B,gCAAgC;QAChC,+BAA+B;QAC/B,4BAA4B;QAC5B,iCAAiC;QACjC,oBAAoB;KACrB,CAAC,QAAQ,CAAC,IAAI,CAAC;QAEhB,WAAW,CAAC,IAAI,CACd,sRAAsR,CACvR,CAAC;IACJ,MAAM,aAAa,GAA6B;QAC9C,aAAa,EAAE,CAAC,YAAY,CAAC;QAC7B,WAAW,EAAE,CAAC,MAAM,CAAC;QACrB,gBAAgB,EAAE,CAAC,yBAAyB,CAAC;QAC7C,gBAAgB,EAAE,CAAC,SAAS,CAAC;QAC7B,eAAe,EAAE,CAAC,SAAS,EAAE,0BAA0B,CAAC;QACxD,gBAAgB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;QACrC,aAAa,EAAE,CAAC,QAAQ,CAAC;QACzB,gBAAgB,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;QACrC,SAAS,EAAE,CAAC,MAAM,CAAC;QACnB,gBAAgB,EAAE,CAAC,MAAM,CAAC;QAC1B,SAAS,EAAE,CAAC,MAAM,CAAC;KACpB,CAAC;IACF,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9C,IAAI,IAAI,KAAK,gBAAgB;QAC3B,WAAW,CAAC,IAAI,CACd,gFAAgF,CACjF,CAAC;IACJ,IAAI,IAAI,KAAK,gBAAgB;QAC3B,WAAW,CAAC,IAAI,CACd,uIAAuI,CACxI,CAAC;IACJ,IAAI,IAAI,KAAK,YAAY;QACvB,WAAW,CAAC,IAAI,CACd,uMAAuM,CACxM,CAAC;IACJ,IAAI,IAAI,KAAK,aAAa;QACxB,WAAW,CAAC,IAAI,CACd,gOAAgO,CACjO,CAAC;IACJ,IAAI,IAAI,KAAK,mBAAmB;QAC9B,WAAW,CAAC,IAAI,CACd,oKAAoK,CACrK,CAAC;IACJ,IAAI,IAAI,KAAK,YAAY;QACvB,WAAW,CAAC,IAAI,CACd,mGAAmG,CACpG,CAAC;IACJ,IAAI,IAAI,KAAK,WAAW;QACtB,WAAW,CAAC,IAAI,CACd,8JAA8J,EAC9J,oFAAoF,CACrF,CAAC;IACJ,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACzD,IACE,KAAK;QACL,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAC3B,CAAC;YACC,SAAS;YACT,cAAc;YACd,gBAAgB;YAChB,mBAAmB;YACnB,0BAA0B;SAC3B,CAAC,QAAQ,CAAC,IAAI,CAAC;QAEhB,WAAW,CAAC,IAAI,CACd,iIAAiI,CAClI,CAAC;IACJ,IAAI,IAAI,KAAK,SAAS;QACpB,WAAW,CAAC,IAAI,CACd,ySAAyS,CAC1S,CAAC;IACJ,IAAI,IAAI,KAAK,aAAa;QACxB,WAAW,CAAC,IAAI,CACd,8OAA8O,CAC/O,CAAC;IACJ,IAAI,IAAI,KAAK,QAAQ;QACnB,WAAW,CAAC,IAAI,CACd,oQAAoQ,CACrQ,CAAC;IACJ,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAC5B,WAAW,CAAC,IAAI,CACd,oXAAoX,CACrX,CAAC;IACJ,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC;QAClC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC;QACtD,CAAC,CAAC,IAAI,KAAK,QAAQ;YACjB,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;YACjD,CAAC,CAAC,IAAI,KAAK,aAAa;gBACtB,CAAC,CAAC;oBACE,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE;wBACR,SAAS;wBACT,OAAO;wBACP,OAAO;wBACP,QAAQ;wBACR,OAAO;wBACP,aAAa;wBACb,SAAS;qBACV;oBACD,UAAU,EAAE;wBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACzB,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wBAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wBAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;wBAC1B,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE;wBAC1C,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;qBACtD;iBACF;gBACH,CAAC,CAAC,IAAI,KAAK,WAAW;oBACpB,CAAC,CAAC;wBACE,IAAI,EAAE,QAAQ;wBACd,QAAQ,EAAE;4BACR,SAAS;4BACT,IAAI;4BACJ,OAAO;4BACP,QAAQ;4BACR,YAAY;4BACZ,QAAQ;4BACR,SAAS;yBACV;wBACD,UAAU,EAAE;4BACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC3B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACtB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACzB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC1B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC9B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC1B,OAAO,EAAE;gCACP,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,iCAAiC;6BAC/C;yBACF;qBACF;oBACH,CAAC,CAAC,SAAS,CAAC;IACpB,OAAO;QACL,gBAAgB,EAAE,CAAC;QACnB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,YAAY,IAAI,EAAE;QAC3B,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE;QACtC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC;QAC7B,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC;QACvB,cAAc,EACZ,IAAI,KAAK,aAAa;YACpB,CAAC,CAAC,qEAAqE;YACvE,CAAC,CAAC,GAAG;gBACH,CAAC,CAAC,uGAAuG;gBACzG,CAAC,CAAC,CAAC;oBACD,CAAC,CAAC,oDAAoD;oBACtD,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;wBACxB,CAAC,CAAC,8CAA8C;wBAChD,CAAC,CAAC,IAAI,KAAK,gBAAgB;4BACvB,IAAI,KAAK,aAAa;4BACtB,IAAI,KAAK,QAAQ;4BACnB,CAAC,CAAC,oDAAoD;4BACtD,CAAC,CAAC,mBAAmB;QACjC,QAAQ;QACR,KAAK;QACL,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACrD,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;YACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,WAAW,EAAE,CAAC,CAAC,WAAW;SAC3B,CAAC,CAAC;QACH,WAAW;QACX,KAAK,EAAE;YACL,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC;YAC9B,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC;YAC5B,IAAI,EAAE,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC;SAC3B;QACD,MAAM,EACJ,UAAU;YACV,YAAY,CACV,CAAC;gBACC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,QAAQ,CAAC;gBAC1C,CAAC,CAAC,IAAI,KAAK,OAAO;oBAChB,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC;oBACzB,CAAC,CAAC,IAAI,KAAK,gBAAgB;wBACzB,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC;wBAC7B,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,EACtD,CAAC,GAAG;gBACF,CAAC,CAAE,CAAmB,CAAC,MAAM;oBAC3B,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAE,CAAmB,CAAC,OAAO;wBAC5B,CAAC,CAAC,UAAU;wBACZ,CAAC,CAAC,UAAU;gBAChB,CAAC,CAAC,CAAC;oBACD,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK;wBAClB,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,UAAU;oBACd,CAAC,CAAC,OAAO,CAAoB,CAClC;QACH,eAAe,EAAE,cAAc,CAAC,IAAI,CAAC;QACrC,aAAa,EACX,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC/D,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,UAAU;YACV,CAAC,CAAC;gBACA,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,QAAQ,CAAC;gBAC1C,CAAC,CAAC,IAAI,KAAK,OAAO;oBAChB,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC;oBACzB,CAAC,CAAC,IAAI,KAAK,gBAAgB;wBACzB,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC;wBAC7B,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;QACzD,OAAO,EACL,IAAI,KAAK,aAAa;YACpB,CAAC,CAAC;gBACE,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC;gBAClD,KAAK,EAAE,mCAAmC;aAC3C;YACH,CAAC,CAAC,IAAI,KAAK,WAAW;gBACpB,CAAC,CAAC;oBACE,IAAI,EAAE;wBACJ,UAAU;wBACV,MAAM;wBACN,MAAM;wBACN,iDAAiD;qBAClD;oBACD,KAAK,EACH,sEAAsE;iBACzE;gBACH,CAAC,CAAC,CAAC;oBACD,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;oBAChB,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,IAAI,YAAY,IAAI,SAAS,EAAE;QAChE,QAAQ,EAAE;YACR,6HAA6H;YAC7H,0IAA0I;YAC1I,2CAA2C;SAC5C;KACF,CAAC;AACJ,CAAC;AACD,MAAM,UAAU,iBAAiB,CAAC,IAAa,EAAE,IAAc;IAC7D,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CACpD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CACvD,CAAC;YACF,IAAI,CAAC,GAAG;gBAAE,MAAM;YAChB,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,CAAC,EAAE,CAAC;YAC9D,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC;QAC7D,IAAI,CAAC,KAAK;YAAE,MAAM;QAClB,OAAO,GAAG,KAAK,CAAC;IAClB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AACD,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC,GAAwB,OAAO,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACxB,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IACf,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AACD,MAAM,UAAU,QAAQ,CAAC,KAAe,EAAE,OAAgB,EAAE,IAAa;IACvE,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IACvC,MAAM,MAAM,GAAG;QACb,UAAU;QACV,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,OAAO;YACjC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC;YAC/C,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;gBAChC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC;gBAC7B,CAAC,CAAC,EAAE,CAAC;KACV,CAAC;IACF,MAAM,IAAI,GAAyC,EAAE,CAAC;IACtD,MAAM,OAAO,GAAG,GAAG,EAAE,CACnB,IAAI,CAAC,IAAI,CAAC;QACR,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,EAAE,oDAAoD;KAC7D,CAAC,CAAC;IACL,IAAI,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;;QAErE,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;YAC3B,MAAM,EAAE,yCAAyC;SAClD,CAAC,CAAC;IACL,IACE,KAAK,CAAC,IAAI,KAAK,UAAU;QACzB,IAAI,KAAK,qBAAqB;QAC9B,CAAC,KAAK,CAAC,gBAAgB;QACvB,KAAK,CAAC,OAAO;QACb,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;QACjC,aAAa,IAAI,KAAK,CAAC,OAAO;QAC9B,OAAO,KAAK,CAAC,OAAO,CAAC,WAAW,KAAK,QAAQ,EAC7C,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,IACE,MAAM;YACN,OAAO,MAAM,KAAK,QAAQ;YAC1B,UAAU,IAAI,MAAM;YACpB,OAAO,MAAM,CAAC,QAAQ,KAAK,SAAS;YAEpC,IAAI,CAAC,OAAO,CAAC;gBACX,IAAI,EAAE;oBACJ,GAAG,MAAM;oBACT,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnE,MAAM;oBACN,SAAS;oBACT,KAAK;oBACL,QAAQ;oBACR,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO;oBACxC,MAAM;oBACN,KAAK,CAAC,OAAO,CAAC,WAAW;iBAC1B;gBACD,MAAM,EACJ,yGAAyG;aAC5G,CAAC,CAAC;IACP,CAAC;IACD,IACE,IAAI,KAAK,qBAAqB;QAC9B,IAAI,CAAC,IAAI,KAAK,YAAY;QAC1B,KAAK,CAAC,OAAO;QACb,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;QACjC,eAAe,IAAI,KAAK,CAAC,OAAO;QAChC,KAAK,CAAC,OAAO,CAAC,aAAa,KAAK,MAAM;QACtC,QAAQ,IAAI,KAAK,CAAC,OAAO;QACzB,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,GAAG,EAC5B,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,gBAAgB,EAAE,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC;QAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,gBAAgB,EAAE,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC;QAC3D,IAAI,CAAC,OAAO,CAAC;YACX,IAAI,EAAE;gBACJ,GAAG,MAAM;gBACT,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzD,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzD,QAAQ;gBACR,WAAW;gBACX,qBAAqB;gBACrB,QAAQ;gBACR,YAAY;gBACZ,QAAQ;aACT;YACD,MAAM,EACJ,kMAAkM;SACrM,CAAC,CAAC;IACL,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,KAAK;QACzD,IAAI,CAAC,IAAI,CACP,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC;YACxC,CAAC,CAAC;gBACE,IAAI,EAAE,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;gBAClC,MAAM,EACJ,sGAAsG;aACzG;YACH,CAAC,CAAC;gBACE,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;gBAChE,MAAM,EACJ,2IAA2I;aAC9I,CACN,CAAC;SACC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;QAC9B,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;YAClC,MAAM,EACJ,8EAA8E;SACjF,CAAC,CAAC;IACL,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC5D,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE;gBACJ,GAAG,MAAM;gBACT,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnE,KAAK;gBACL,KAAK;aACN;YACD,MAAM,EACJ,2LAA2L;SAC9L,CAAC,CAAC;IACL,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB;QACjC,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,CAAC;YACtD,MAAM,EACJ,uEAAuE;SAC1E,CAAC,CAAC;IACL,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;QAC7B,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,aAAa,CAAC;YAC9C,MAAM,EACJ,6FAA6F;SAChG,CAAC,CAAC;IACL,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB;QACnC,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClD,MAAM,EACJ,0HAA0H;SAC7H,CAAC,CAAC;IACL,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,CAAC,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC;YACpC,MAAM,EAAE,8DAA8D;SACvE,CAAC,CAAC;IACL,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc;QAC/B,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC;YAChD,MAAM,EACJ,mEAAmE;SACtE,CAAC,CAAC;IACL,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB;QACrC,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC;YAC1D,MAAM,EACJ,iLAAiL;SACpL,CAAC,CAAC;IACL,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,OAAO;QACpD,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,CAAC,GAAG,MAAM,EAAE,QAAQ,CAAC;YAC3B,MAAM,EACJ,qFAAqF;SACxF,CAAC,CAAC;IACL,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB;QACxE,IAAI,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC;YAC7C,MAAM,EACJ,yFAAyF;SAC5F,CAAC,CAAC;IACL,MAAM,SAAS,GACb,KAAK,CAAC,aAAa,KAAK,SAAS;QAC/B,CAAC,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS;YACjC,KAAK,CAAC,aAAa,KAAK,cAAc;QACxC,CAAC,CAAC;YACE,WAAW;YACX,WAAW;YACX,eAAe;YACf,eAAe;YACf,OAAO;YACP,UAAU;YACV,YAAY;YACZ,YAAY;SACb,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;YACtB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,UAAU;gBAC7B,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC;IACpE,MAAM,QAAQ,GACZ,SAAS,IAAI,KAAK,CAAC,gBAAgB;QACjC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC;QACrD,CAAC,CAAC,SAAS,CAAC;IAChB,IAAI,QAAQ;QAAE,IAAI,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;QAC9C,eAAe,EAAE,KAAK;QACtB,eAAe,EAAE,SAAS;QAC1B,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,IAAI,EAAE,IAAI,CAAC,MAAM,CACf,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CACpB,GAAG,CAAC,SAAS,CACX,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CACrE,KAAK,KAAK,CACd;KACF,CAAC;AACJ,CAAC"}
package/dist/docs.d.ts ADDED
@@ -0,0 +1,31 @@
1
+ export declare function searchDocs(query: string, limitValue?: string, offsetValue?: string): {
2
+ next?: string[] | undefined;
3
+ version: string;
4
+ query: string;
5
+ total: number;
6
+ offset: number;
7
+ limit: number;
8
+ next_offset: number | null;
9
+ results: {
10
+ id: string;
11
+ title: string;
12
+ description: string;
13
+ excerpt: string;
14
+ source: string;
15
+ source_url: string;
16
+ match: {
17
+ type: "exact" | "expanded" | "partial";
18
+ terms: string[];
19
+ };
20
+ read: string[];
21
+ }[];
22
+ };
23
+ export declare function readDocs(id: string, baseUrl?: string, fetcher?: typeof fetch): Promise<{
24
+ version: string;
25
+ id: string;
26
+ title: string;
27
+ source: string;
28
+ source_url: string;
29
+ sha256: string;
30
+ content: string;
31
+ }>;
package/dist/docs.js ADDED
@@ -0,0 +1,139 @@
1
+ import { createHash } from "node:crypto";
2
+ import { readFileSync } from "node:fs";
3
+ import { CliError } from "./core.js";
4
+ import { createSearchIndex } from "./search-engine.js";
5
+ import { VERSION } from "./version.js";
6
+ let cached;
7
+ function index() {
8
+ if (!cached) {
9
+ const loaded = JSON.parse(readFileSync(new URL("../references/docs-index.json", import.meta.url), "utf8"));
10
+ if (loaded.version !== VERSION || !Array.isArray(loaded.sections))
11
+ throw new CliError("E_DOCS_VERSION", "Installed docs index does not match this CLI version; reinstall the package", 8);
12
+ cached = loaded;
13
+ }
14
+ return cached;
15
+ }
16
+ function boundedLimit(value) {
17
+ const limit = Number(value ?? 10);
18
+ if (!Number.isInteger(limit) || limit < 1 || limit > 20)
19
+ throw new CliError("E_INPUT", "Docs search --limit must be an integer from 1 to 20", 2);
20
+ return limit;
21
+ }
22
+ export function searchDocs(query, limitValue, offsetValue) {
23
+ if (!query.trim() || query.length > 256)
24
+ throw new CliError("E_INPUT", "Docs search needs 1–256 query characters", 2);
25
+ const limit = boundedLimit(limitValue);
26
+ const offset = Number(offsetValue ?? 0);
27
+ if (!Number.isInteger(offset) || offset < 0)
28
+ throw new CliError("E_INPUT", "Docs search --offset must be a nonnegative integer", 2);
29
+ const catalog = index();
30
+ const search = createSearchIndex(catalog.sections
31
+ .filter((section) => section.searchable !== false)
32
+ .map((section) => ({
33
+ id: section.id,
34
+ title: section.title,
35
+ description: section.description,
36
+ intents: section.intents,
37
+ text: section.terms,
38
+ })));
39
+ const byId = new Map(catalog.sections.map((section) => [section.id, section]));
40
+ const hits = search.search(query, catalog.sections.length);
41
+ return {
42
+ version: catalog.version,
43
+ query,
44
+ total: hits.length,
45
+ offset,
46
+ limit,
47
+ next_offset: offset + limit < hits.length ? offset + limit : null,
48
+ results: hits.slice(offset, offset + limit).map((hit) => {
49
+ const section = byId.get(hit.document.id);
50
+ return {
51
+ id: section.id,
52
+ title: section.title,
53
+ description: section.description,
54
+ excerpt: section.excerpt,
55
+ source: section.source,
56
+ source_url: section.url,
57
+ match: { type: hit.match_type, terms: hit.matched_terms },
58
+ read: ["sendbird", "docs", "read", section.id],
59
+ };
60
+ }),
61
+ ...(hits.length
62
+ ? {}
63
+ : { next: ["sendbird", "commands", "--compact", "--search", query] }),
64
+ };
65
+ }
66
+ function docsBase(value) {
67
+ const input = value ?? process.env.SENDBIRD_DOCS_URL ?? "http://127.0.0.1:4173";
68
+ let url;
69
+ try {
70
+ url = new URL(input);
71
+ }
72
+ catch {
73
+ throw new CliError("E_INPUT", "Docs --base-url must be a valid HTTPS URL or loopback HTTP URL", 2);
74
+ }
75
+ const loopback = ["127.0.0.1", "localhost", "[::1]"].includes(url.hostname);
76
+ if ((url.protocol !== "https:" && !(url.protocol === "http:" && loopback)) ||
77
+ url.username ||
78
+ url.password ||
79
+ url.search ||
80
+ url.hash)
81
+ throw new CliError("E_INPUT", "Docs --base-url must be HTTPS (loopback HTTP allowed), without credentials, query or fragment", 2);
82
+ return url.href.endsWith("/") ? url.href : url.href + "/";
83
+ }
84
+ export async function readDocs(id, baseUrl, fetcher = fetch) {
85
+ const catalog = index();
86
+ const section = catalog.sections.find((s) => s.id === id);
87
+ if (!section)
88
+ throw new CliError("E_DISCOVERY", "Unknown docs section ID; run sendbird docs search WORDS", 2);
89
+ const base = docsBase(baseUrl);
90
+ const url = new URL(section.path.slice(1), base);
91
+ let response;
92
+ try {
93
+ response = await fetcher(url, { signal: AbortSignal.timeout(5000) });
94
+ }
95
+ catch {
96
+ throw new CliError("E_DOCS_UNAVAILABLE", "Docs server unavailable. In a source checkout run npm run docs -- --no-open, or pass --base-url to a hosted docs build", 7);
97
+ }
98
+ if (!response.ok)
99
+ throw new CliError("E_DOCS_UNAVAILABLE", `Docs section unavailable (HTTP ${response.status}). Rebuild/restart the docs server or set --base-url to a matching docs build`, 7);
100
+ if (Number(response.headers.get("content-length") ?? 0) > 24_000)
101
+ throw new CliError("E_DOCS_SIZE", "Docs section exceeds the 24 KB response limit", 8);
102
+ const reader = response.body?.getReader();
103
+ if (!reader)
104
+ throw new CliError("E_DOCS_UNAVAILABLE", "Docs server returned no section body", 7);
105
+ const chunks = [];
106
+ let size = 0;
107
+ try {
108
+ while (true) {
109
+ const part = await reader.read();
110
+ if (part.done)
111
+ break;
112
+ size += part.value.byteLength;
113
+ if (size > 24_000) {
114
+ await reader.cancel();
115
+ throw new CliError("E_DOCS_SIZE", "Docs section exceeds the 24 KB response limit", 8);
116
+ }
117
+ chunks.push(part.value);
118
+ }
119
+ }
120
+ catch (error) {
121
+ if (error instanceof CliError)
122
+ throw error;
123
+ throw new CliError("E_DOCS_UNAVAILABLE", "Docs stream interrupted; retry after checking the docs server", 7);
124
+ }
125
+ const content = Buffer.concat(chunks).toString("utf8");
126
+ const digest = createHash("sha256").update(content).digest("hex");
127
+ if (digest !== section.sha256 || size !== section.bytes)
128
+ throw new CliError("E_DOCS_VERSION", "Docs content does not match the installed CLI index; use a docs build for this CLI version", 8);
129
+ return {
130
+ version: catalog.version,
131
+ id: section.id,
132
+ title: section.title,
133
+ source: section.source,
134
+ source_url: new URL(section.url.slice(1), base).href,
135
+ sha256: digest,
136
+ content,
137
+ };
138
+ }
139
+ //# sourceMappingURL=docs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs.js","sourceRoot":"","sources":["../src/docs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAiBvC,IAAI,MAAyB,CAAC;AAE9B,SAAS,KAAK;IACZ,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CACvB,YAAY,CACV,IAAI,GAAG,CAAC,+BAA+B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EACzD,MAAM,CACP,CACO,CAAC;QACX,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;YAC/D,MAAM,IAAI,QAAQ,CAChB,gBAAgB,EAChB,6EAA6E,EAC7E,CAAC,CACF,CAAC;QACJ,MAAM,GAAG,MAAM,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAClC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;QACrD,MAAM,IAAI,QAAQ,CAChB,SAAS,EACT,qDAAqD,EACrD,CAAC,CACF,CAAC;IACJ,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,KAAa,EACb,UAAmB,EACnB,WAAoB;IAEpB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG;QACrC,MAAM,IAAI,QAAQ,CAChB,SAAS,EACT,0CAA0C,EAC1C,CAAC,CACF,CAAC;IACJ,MAAM,KAAK,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC;QACzC,MAAM,IAAI,QAAQ,CAChB,SAAS,EACT,oDAAoD,EACpD,CAAC,CACF,CAAC;IACJ,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC;IACxB,MAAM,MAAM,GAAG,iBAAiB,CAC9B,OAAO,CAAC,QAAQ;SACb,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,KAAK,KAAK,CAAC;SACjD,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACjB,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,IAAI,EAAE,OAAO,CAAC,KAAK;KACpB,CAAC,CAAC,CACN,CAAC;IACF,MAAM,IAAI,GAAG,IAAI,GAAG,CAClB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CACzD,CAAC;IACF,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3D,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK;QACL,KAAK,EAAE,IAAI,CAAC,MAAM;QAClB,MAAM;QACN,KAAK;QACL,WAAW,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI;QACjE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACtD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAE,CAAC;YAC3C,OAAO;gBACL,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU,EAAE,OAAO,CAAC,GAAG;gBACvB,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,aAAa,EAAE;gBACzD,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;aAC/C,CAAC;QACJ,CAAC,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,MAAM;YACb,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,MAAM,KAAK,GACT,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,uBAAuB,CAAC;IACpE,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,QAAQ,CAChB,SAAS,EACT,gEAAgE,EAChE,CAAC,CACF,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5E,IACE,CAAC,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,QAAQ,CAAC,CAAC;QACtE,GAAG,CAAC,QAAQ;QACZ,GAAG,CAAC,QAAQ;QACZ,GAAG,CAAC,MAAM;QACV,GAAG,CAAC,IAAI;QAER,MAAM,IAAI,QAAQ,CAChB,SAAS,EACT,+FAA+F,EAC/F,CAAC,CACF,CAAC;IACJ,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC;AAC5D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,EAAU,EACV,OAAgB,EAChB,UAAwB,KAAK;IAE7B,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1D,IAAI,CAAC,OAAO;QACV,MAAM,IAAI,QAAQ,CAChB,aAAa,EACb,yDAAyD,EACzD,CAAC,CACF,CAAC;IACJ,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACjD,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,QAAQ,CAChB,oBAAoB,EACpB,wHAAwH,EACxH,CAAC,CACF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,EAAE;QACd,MAAM,IAAI,QAAQ,CAChB,oBAAoB,EACpB,kCAAkC,QAAQ,CAAC,MAAM,+EAA+E,EAChI,CAAC,CACF,CAAC;IACJ,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM;QAC9D,MAAM,IAAI,QAAQ,CAChB,aAAa,EACb,+CAA+C,EAC/C,CAAC,CACF,CAAC;IACJ,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IAC1C,IAAI,CAAC,MAAM;QACT,MAAM,IAAI,QAAQ,CAChB,oBAAoB,EACpB,sCAAsC,EACtC,CAAC,CACF,CAAC;IACJ,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,IAAI,CAAC,IAAI;gBAAE,MAAM;YACrB,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YAC9B,IAAI,IAAI,GAAG,MAAM,EAAE,CAAC;gBAClB,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;gBACtB,MAAM,IAAI,QAAQ,CAChB,aAAa,EACb,+CAA+C,EAC/C,CAAC,CACF,CAAC;YACJ,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,QAAQ;YAAE,MAAM,KAAK,CAAC;QAC3C,MAAM,IAAI,QAAQ,CAChB,oBAAoB,EACpB,+DAA+D,EAC/D,CAAC,CACF,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClE,IAAI,MAAM,KAAK,OAAO,CAAC,MAAM,IAAI,IAAI,KAAK,OAAO,CAAC,KAAK;QACrD,MAAM,IAAI,QAAQ,CAChB,gBAAgB,EAChB,4FAA4F,EAC5F,CAAC,CACF,CAAC;IACJ,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,UAAU,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI;QACpD,MAAM,EAAE,MAAM;QACd,OAAO;KACR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,131 @@
1
+ /** Dashboard Features API contract. Keep entitlement, activation and runtime distinct. */
2
+ import { z } from "zod";
3
+ import { type Request, type Transport } from "./core.js";
4
+ import type { Definition } from "./catalog.js";
5
+ export declare const featureKeys: readonly ["auto_thumbnail", "translation_tools", "image_moderation", "moderation_tools", "delivery_receipt", "announcement", "supergroup", "advanced_analytics", "message_search", "domain_filter", "profanity_filter", "webhook", "poll", "hive_integration", "moderator_messages", "advanced_profanity_filter"];
6
+ export declare const featureName: z.ZodEnum<{
7
+ supergroup: "supergroup";
8
+ announcement: "announcement";
9
+ profanity_filter: "profanity_filter";
10
+ image_moderation: "image_moderation";
11
+ webhook: "webhook";
12
+ auto_thumbnail: "auto_thumbnail";
13
+ translation_tools: "translation_tools";
14
+ moderation_tools: "moderation_tools";
15
+ delivery_receipt: "delivery_receipt";
16
+ advanced_analytics: "advanced_analytics";
17
+ message_search: "message_search";
18
+ domain_filter: "domain_filter";
19
+ poll: "poll";
20
+ hive_integration: "hive_integration";
21
+ moderator_messages: "moderator_messages";
22
+ advanced_profanity_filter: "advanced_profanity_filter";
23
+ }>;
24
+ export declare const featureSnapshotSchema: z.ZodObject<{
25
+ [x: string]: z.ZodOptional<z.ZodBoolean>;
26
+ }, z.core.$strip>;
27
+ export declare const featureListSchema: z.ZodObject<{
28
+ features: z.ZodArray<z.ZodObject<{
29
+ feature: z.ZodEnum<{
30
+ supergroup: "supergroup";
31
+ announcement: "announcement";
32
+ profanity_filter: "profanity_filter";
33
+ image_moderation: "image_moderation";
34
+ webhook: "webhook";
35
+ auto_thumbnail: "auto_thumbnail";
36
+ translation_tools: "translation_tools";
37
+ moderation_tools: "moderation_tools";
38
+ delivery_receipt: "delivery_receipt";
39
+ advanced_analytics: "advanced_analytics";
40
+ message_search: "message_search";
41
+ domain_filter: "domain_filter";
42
+ poll: "poll";
43
+ hive_integration: "hive_integration";
44
+ moderator_messages: "moderator_messages";
45
+ advanced_profanity_filter: "advanced_profanity_filter";
46
+ }>;
47
+ enabled: z.ZodNullable<z.ZodBoolean>;
48
+ }, z.core.$strip>>;
49
+ runtime_verified: z.ZodLiteral<false>;
50
+ note: z.ZodString;
51
+ }, z.core.$strip>;
52
+ export declare const featureSetSchema: z.ZodObject<{
53
+ feature: z.ZodEnum<{
54
+ supergroup: "supergroup";
55
+ announcement: "announcement";
56
+ profanity_filter: "profanity_filter";
57
+ image_moderation: "image_moderation";
58
+ webhook: "webhook";
59
+ auto_thumbnail: "auto_thumbnail";
60
+ translation_tools: "translation_tools";
61
+ moderation_tools: "moderation_tools";
62
+ delivery_receipt: "delivery_receipt";
63
+ advanced_analytics: "advanced_analytics";
64
+ message_search: "message_search";
65
+ domain_filter: "domain_filter";
66
+ poll: "poll";
67
+ hive_integration: "hive_integration";
68
+ moderator_messages: "moderator_messages";
69
+ advanced_profanity_filter: "advanced_profanity_filter";
70
+ }>;
71
+ requested_enabled: z.ZodBoolean;
72
+ acknowledgement: z.ZodArray<z.ZodObject<{
73
+ feature: z.ZodEnum<{
74
+ supergroup: "supergroup";
75
+ announcement: "announcement";
76
+ profanity_filter: "profanity_filter";
77
+ image_moderation: "image_moderation";
78
+ webhook: "webhook";
79
+ auto_thumbnail: "auto_thumbnail";
80
+ translation_tools: "translation_tools";
81
+ moderation_tools: "moderation_tools";
82
+ delivery_receipt: "delivery_receipt";
83
+ advanced_analytics: "advanced_analytics";
84
+ message_search: "message_search";
85
+ domain_filter: "domain_filter";
86
+ poll: "poll";
87
+ hive_integration: "hive_integration";
88
+ moderator_messages: "moderator_messages";
89
+ advanced_profanity_filter: "advanced_profanity_filter";
90
+ }>;
91
+ enabled: z.ZodNullable<z.ZodBoolean>;
92
+ }, z.core.$strip>>;
93
+ readback: z.ZodObject<{
94
+ status: z.ZodEnum<{
95
+ matches: "matches";
96
+ mismatch: "mismatch";
97
+ unavailable: "unavailable";
98
+ }>;
99
+ features: z.ZodArray<z.ZodObject<{
100
+ feature: z.ZodEnum<{
101
+ supergroup: "supergroup";
102
+ announcement: "announcement";
103
+ profanity_filter: "profanity_filter";
104
+ image_moderation: "image_moderation";
105
+ webhook: "webhook";
106
+ auto_thumbnail: "auto_thumbnail";
107
+ translation_tools: "translation_tools";
108
+ moderation_tools: "moderation_tools";
109
+ delivery_receipt: "delivery_receipt";
110
+ advanced_analytics: "advanced_analytics";
111
+ message_search: "message_search";
112
+ domain_filter: "domain_filter";
113
+ poll: "poll";
114
+ hive_integration: "hive_integration";
115
+ moderator_messages: "moderator_messages";
116
+ advanced_profanity_filter: "advanced_profanity_filter";
117
+ }>;
118
+ enabled: z.ZodNullable<z.ZodBoolean>;
119
+ }, z.core.$strip>>;
120
+ next: z.ZodArray<z.ZodObject<{
121
+ argv: z.ZodArray<z.ZodString>;
122
+ reason: z.ZodString;
123
+ }, z.core.$strip>>;
124
+ }, z.core.$strip>;
125
+ runtime_verified: z.ZodLiteral<false>;
126
+ note: z.ZodString;
127
+ }, z.core.$strip>;
128
+ export declare const featureDefinitions: Definition[];
129
+ export declare function featureBody(d: Definition, body: Record<string, unknown> | undefined): Record<string, unknown> | undefined;
130
+ export declare function beforeFeatures(d: Definition, r: Request, t: Transport, orgId?: string, onPipelineRequest?: () => void): Promise<void>;
131
+ export declare function featuresResult(d: Definition, r: Request, t: Transport, value: unknown, prefix: string[]): Promise<unknown>;
@@ -0,0 +1,227 @@
1
+ /** Dashboard Features API contract. Keep entitlement, activation and runtime distinct. */
2
+ import { z } from "zod";
3
+ import { CliError, request, encodeSegment, } from "./core.js";
4
+ // Gate application_feature_util.FEATURE_KEYS_LIST, excluding Data Export by product decision.
5
+ // Desk and AI Engine use different APIs and must never be accepted as silent no-ops here.
6
+ export const featureKeys = [
7
+ "auto_thumbnail",
8
+ "translation_tools",
9
+ "image_moderation",
10
+ "moderation_tools",
11
+ "delivery_receipt",
12
+ "announcement",
13
+ "supergroup",
14
+ "advanced_analytics",
15
+ "message_search",
16
+ "domain_filter",
17
+ "profanity_filter",
18
+ "webhook",
19
+ "poll",
20
+ "hive_integration",
21
+ "moderator_messages",
22
+ "advanced_profanity_filter",
23
+ ];
24
+ export const featureName = z.enum(featureKeys);
25
+ export const featureSnapshotSchema = z
26
+ .object(Object.fromEntries(featureKeys.map((k) => [k, z.boolean().optional()])))
27
+ .strip()
28
+ .refine((v) => Object.keys(v).length > 0, "Missing feature flags");
29
+ const item = z.object({
30
+ feature: featureName,
31
+ enabled: z.boolean().nullable(),
32
+ });
33
+ export const featureListSchema = z.object({
34
+ features: z.array(item),
35
+ runtime_verified: z.literal(false),
36
+ note: z.string(),
37
+ });
38
+ export const featureSetSchema = z.object({
39
+ feature: featureName,
40
+ requested_enabled: z.boolean(),
41
+ acknowledgement: z.array(item),
42
+ readback: z.object({
43
+ status: z.enum(["matches", "mismatch", "unavailable"]),
44
+ features: z.array(item),
45
+ next: z.array(z.object({ argv: z.array(z.string()), reason: z.string() })),
46
+ }),
47
+ runtime_verified: z.literal(false),
48
+ note: z.string(),
49
+ });
50
+ const rows = (v) => featureKeys.map((feature) => ({
51
+ feature,
52
+ enabled: typeof v[feature] === "boolean" ? v[feature] : null,
53
+ }));
54
+ export const featureDefinitions = [
55
+ {
56
+ name: "app feature list",
57
+ description: "List app feature activation snapshots (not subscription entitlement or runtime verification)",
58
+ method: "GET",
59
+ path: "/dashboard_api/applications/{appId}/enabled_features/",
60
+ scope: "app",
61
+ response: featureSnapshotSchema,
62
+ resultSchema: featureListSchema,
63
+ source: ["app/core/api/application.ts", "fetchEnabledFeatures"],
64
+ },
65
+ {
66
+ name: "app feature set",
67
+ description: "Enable or disable one app feature under Dashboard subscription policy; requires --yes",
68
+ method: "PUT",
69
+ path: "/dashboard_api/applications/{appId}/enabled_features/",
70
+ scope: "app",
71
+ body: z.object({ feature: featureName, enabled: z.boolean() }).strict(),
72
+ response: featureSnapshotSchema,
73
+ resultSchema: featureSetSchema,
74
+ danger: true,
75
+ source: ["app/core/api/application.ts", "updateEnabledFeatures"],
76
+ example: { feature: "poll", enabled: true },
77
+ },
78
+ ];
79
+ export function featureBody(d, body) {
80
+ if (d.name !== "app feature set")
81
+ return body;
82
+ return {
83
+ [String(body.feature)]: body.enabled,
84
+ ...(body.feature === "advanced_profanity_filter" && body.enabled === true
85
+ ? { profanity_filter: false }
86
+ : {}),
87
+ };
88
+ }
89
+ const obj = (v) => v && typeof v === "object" && !Array.isArray(v)
90
+ ? v
91
+ : {};
92
+ const fail = (message) => {
93
+ throw new CliError("E_POLICY", message, 5);
94
+ };
95
+ export async function beforeFeatures(d, r, t, orgId, onPipelineRequest) {
96
+ if (d.name !== "app feature set")
97
+ return;
98
+ // Subscription endpoints are account-scoped. Bind the authenticated organization first.
99
+ const who = obj(await request(t, { method: "GET", path: "/dashboard/auth/verify2/" }));
100
+ const organizations = Array.isArray(who.organizations)
101
+ ? who.organizations.map(obj)
102
+ : [];
103
+ const sole = typeof obj(who.organization).uid === "string"
104
+ ? obj(who.organization).uid
105
+ : organizations.length === 1
106
+ ? organizations[0].uid
107
+ : null;
108
+ if (!orgId || sole !== orgId)
109
+ throw new CliError("E_CONTEXT", "Bind the selected app to the authenticated organization before changing features", 5);
110
+ // The pipeline status GET below can reset failed state. Check the write ACL
111
+ // before reaching it, so a view-only user cannot trigger that side effect.
112
+ const permissions = obj(who.role).permissions;
113
+ if (!Array.isArray(permissions) ||
114
+ !permissions.includes("application.settings.all"))
115
+ throw new CliError("E_PERMISSION", "Feature changes require application.settings.all; no feature change sent", 5);
116
+ const org = obj(await request(t, {
117
+ method: "GET",
118
+ path: `/dashboard_api/organizations/${encodeSegment(orgId)}/`,
119
+ }));
120
+ if (org.uid !== orgId)
121
+ throw new CliError("E_CONTEXT", "Organization identity mismatch; no feature change sent", 5);
122
+ if (org.status !== "ACTIVE" || org.is_self_serve !== true)
123
+ fail("Feature toggles require an active self-service organization, as in Dashboard");
124
+ const sub = obj(await request(t, {
125
+ method: "GET",
126
+ path: "/dashboard_api/billing/subscriptions/info/",
127
+ query: { product: "CHAT" },
128
+ }));
129
+ const subscription = obj(sub.current_subscription), plan = obj(subscription.plan);
130
+ if (!subscription.subscription_name || !Object.keys(plan).length)
131
+ fail("Current Chat subscription is unknown; no feature change sent");
132
+ const feature = Object.keys(r.body)[0];
133
+ const enabled = r.body[feature];
134
+ const keys = feature === "message_search"
135
+ ? ["message_search_index", "message_search_query"]
136
+ : [feature];
137
+ if (enabled === true && !keys.every((k) => obj(plan[k]).enabled === true))
138
+ fail("Feature is not enabled by the current Chat subscription; review the plan in Dashboard");
139
+ const parsedCurrent = featureSnapshotSchema.safeParse(await request(t, { method: "GET", path: r.path, appId: r.appId }));
140
+ if (!parsedCurrent.success)
141
+ throw new CliError("E_SCHEMA", "Feature snapshot response changed; no feature change sent", 8);
142
+ const current = parsedCurrent.data;
143
+ if (feature === "profanity_filter" &&
144
+ current.advanced_profanity_filter === true)
145
+ fail("Dashboard locks the basic profanity filter while the advanced filter is enabled; disable the advanced filter in a separate confirmed operation first");
146
+ if (feature === "message_search") {
147
+ const app = obj(await request(t, {
148
+ method: "GET",
149
+ path: `/dashboard/applications/${encodeSegment(r.appId)}/get_detail/`,
150
+ }));
151
+ if (app.app_id !== r.appId ||
152
+ (app.is_delight_region !== undefined &&
153
+ typeof app.is_delight_region !== "boolean") ||
154
+ typeof app.region !== "string")
155
+ fail("Message Search region identity is unknown; no feature change sent");
156
+ const regions = obj(app.is_delight_region ? org.delight_regions : org.regions);
157
+ if (obj(obj(regions[String(app.region)]).features).message_search !== true)
158
+ fail("Message Search is not available in the app's selected region");
159
+ // Gate's status GET may reset a failed non-live pipeline. Only call as part of
160
+ // this explicitly confirmed change; never from list, doctor, or dry-run.
161
+ onPipelineRequest?.();
162
+ const pipelineResponse = await request(t, {
163
+ method: "GET",
164
+ path: "/message_search_api/migration_pipeline/",
165
+ appId: r.appId,
166
+ allowNull: true,
167
+ });
168
+ if (pipelineResponse === null && current.message_search === false)
169
+ return; // Dashboard initial pipeline state.
170
+ const pipeline = obj(pipelineResponse);
171
+ if (String(pipeline.app_uuid).toLowerCase() !== r.appId.toLowerCase() ||
172
+ typeof pipeline.is_live !== "boolean" ||
173
+ !["SCHEDULED", "EXECUTING", "MIGRATION_ERRORED", "STOPPED"].includes(String(pipeline.migration_status)) ||
174
+ !["SUBSCRIBED", "UNSUBSCRIBED"].includes(String(pipeline.subscription_status)))
175
+ fail("Message Search pipeline state is unknown; inspect Dashboard before changing it");
176
+ if ((!pipeline.is_live &&
177
+ ["SCHEDULED", "EXECUTING"].includes(String(pipeline.migration_status))) ||
178
+ (pipeline.subscription_status === "UNSUBSCRIBED" &&
179
+ pipeline.migration_status !== "STOPPED"))
180
+ fail("Message Search is transitioning; wait for Dashboard migration to finish before another change");
181
+ }
182
+ }
183
+ export async function featuresResult(d, r, t, value, prefix) {
184
+ if (!d.name.startsWith("app feature "))
185
+ return value;
186
+ const snapshot = value;
187
+ if (d.method === "GET")
188
+ return {
189
+ features: rows(snapshot),
190
+ runtime_verified: false,
191
+ note: "App activation snapshot only. null means not reported. This does not establish entitlement, SDK availability, or Message Search readiness. Data Export is excluded.",
192
+ };
193
+ const feature = Object.keys(r.body)[0], requested = r.body[feature];
194
+ let status = "unavailable", observed = [];
195
+ try {
196
+ const read = featureSnapshotSchema.safeParse(await request(t, { method: "GET", path: r.path, appId: r.appId }));
197
+ if (read.success) {
198
+ observed = rows(read.data);
199
+ status = Object.keys(r.body).some((k) => typeof read.data[k] !== "boolean")
200
+ ? "unavailable"
201
+ : Object.entries(r.body).every(([k, v]) => read.data[k] === v)
202
+ ? "matches"
203
+ : "mismatch";
204
+ }
205
+ }
206
+ catch {
207
+ /* Preserve the write acknowledgement; never replay after failed readback. */
208
+ }
209
+ return {
210
+ feature,
211
+ requested_enabled: requested,
212
+ acknowledgement: rows(snapshot),
213
+ readback: {
214
+ status,
215
+ features: observed,
216
+ next: [
217
+ {
218
+ argv: [...prefix, "app", "feature", "list", "--json"],
219
+ reason: "Read current settings before another change; do not repeat the write blindly.",
220
+ },
221
+ ],
222
+ },
223
+ runtime_verified: false,
224
+ note: "Write acknowledged; inspect readback. Activation may affect usage charges under the existing plan. No subscription was purchased or changed. Runtime and search index readiness are not verified.",
225
+ };
226
+ }
227
+ //# sourceMappingURL=features.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features.js","sourceRoot":"","sources":["../src/features.ts"],"names":[],"mappings":"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"}