@kastov/grammy-nestjs 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/README.md +362 -0
  3. package/package.json +48 -0
  4. package/src/decorators/composer/chat-type.decorator.d.ts +1 -0
  5. package/src/decorators/composer/chat-type.decorator.js +6 -0
  6. package/src/decorators/composer/chat-type.decorator.js.map +1 -0
  7. package/src/decorators/composer/drop.decorator.d.ts +1 -0
  8. package/src/decorators/composer/drop.decorator.js +6 -0
  9. package/src/decorators/composer/drop.decorator.js.map +1 -0
  10. package/src/decorators/composer/filter.decorator.d.ts +1 -0
  11. package/src/decorators/composer/filter.decorator.js +6 -0
  12. package/src/decorators/composer/filter.decorator.js.map +1 -0
  13. package/src/decorators/composer/index.d.ts +3 -0
  14. package/src/decorators/composer/index.js +7 -0
  15. package/src/decorators/composer/index.js.map +1 -0
  16. package/src/decorators/core/index.d.ts +2 -0
  17. package/src/decorators/core/index.js +6 -0
  18. package/src/decorators/core/index.js.map +1 -0
  19. package/src/decorators/core/inject-bot.decorator.d.ts +1 -0
  20. package/src/decorators/core/inject-bot.decorator.js +8 -0
  21. package/src/decorators/core/inject-bot.decorator.js.map +1 -0
  22. package/src/decorators/core/update.decorator.d.ts +5 -0
  23. package/src/decorators/core/update.decorator.js +12 -0
  24. package/src/decorators/core/update.decorator.js.map +1 -0
  25. package/src/decorators/index.d.ts +4 -0
  26. package/src/decorators/index.js +8 -0
  27. package/src/decorators/index.js.map +1 -0
  28. package/src/decorators/listeners/admin.decorator.d.ts +6 -0
  29. package/src/decorators/listeners/admin.decorator.js +11 -0
  30. package/src/decorators/listeners/admin.decorator.js.map +1 -0
  31. package/src/decorators/listeners/callback-query.decorator.d.ts +6 -0
  32. package/src/decorators/listeners/callback-query.decorator.js +11 -0
  33. package/src/decorators/listeners/callback-query.decorator.js.map +1 -0
  34. package/src/decorators/listeners/command.decorator.d.ts +6 -0
  35. package/src/decorators/listeners/command.decorator.js +11 -0
  36. package/src/decorators/listeners/command.decorator.js.map +1 -0
  37. package/src/decorators/listeners/hears.decorator.d.ts +6 -0
  38. package/src/decorators/listeners/hears.decorator.js +11 -0
  39. package/src/decorators/listeners/hears.decorator.js.map +1 -0
  40. package/src/decorators/listeners/help.decorator.d.ts +6 -0
  41. package/src/decorators/listeners/help.decorator.js +11 -0
  42. package/src/decorators/listeners/help.decorator.js.map +1 -0
  43. package/src/decorators/listeners/index.d.ts +9 -0
  44. package/src/decorators/listeners/index.js +14 -0
  45. package/src/decorators/listeners/index.js.map +1 -0
  46. package/src/decorators/listeners/inline-query.decorator.d.ts +6 -0
  47. package/src/decorators/listeners/inline-query.decorator.js +11 -0
  48. package/src/decorators/listeners/inline-query.decorator.js.map +1 -0
  49. package/src/decorators/listeners/on.decorator.d.ts +6 -0
  50. package/src/decorators/listeners/on.decorator.js +11 -0
  51. package/src/decorators/listeners/on.decorator.js.map +1 -0
  52. package/src/decorators/listeners/settings.decorator.d.ts +6 -0
  53. package/src/decorators/listeners/settings.decorator.js +11 -0
  54. package/src/decorators/listeners/settings.decorator.js.map +1 -0
  55. package/src/decorators/listeners/start.decorator.d.ts +6 -0
  56. package/src/decorators/listeners/start.decorator.js +11 -0
  57. package/src/decorators/listeners/start.decorator.js.map +1 -0
  58. package/src/decorators/params/context.decorator.d.ts +2 -0
  59. package/src/decorators/params/context.decorator.js +8 -0
  60. package/src/decorators/params/context.decorator.js.map +1 -0
  61. package/src/decorators/params/index.d.ts +4 -0
  62. package/src/decorators/params/index.js +8 -0
  63. package/src/decorators/params/index.js.map +1 -0
  64. package/src/decorators/params/message.decorator.d.ts +4 -0
  65. package/src/decorators/params/message.decorator.js +10 -0
  66. package/src/decorators/params/message.decorator.js.map +1 -0
  67. package/src/decorators/params/next.decorator.d.ts +1 -0
  68. package/src/decorators/params/next.decorator.js +7 -0
  69. package/src/decorators/params/next.decorator.js.map +1 -0
  70. package/src/decorators/params/sender.decorator.d.ts +4 -0
  71. package/src/decorators/params/sender.decorator.js +10 -0
  72. package/src/decorators/params/sender.decorator.js.map +1 -0
  73. package/src/enums/grammy-paramtype.enum.d.ts +6 -0
  74. package/src/enums/grammy-paramtype.enum.js +12 -0
  75. package/src/enums/grammy-paramtype.enum.js.map +1 -0
  76. package/src/enums/index.d.ts +1 -0
  77. package/src/enums/index.js +5 -0
  78. package/src/enums/index.js.map +1 -0
  79. package/src/errors/grammy.exception.d.ts +2 -0
  80. package/src/errors/grammy.exception.js +7 -0
  81. package/src/errors/grammy.exception.js.map +1 -0
  82. package/src/errors/index.d.ts +1 -0
  83. package/src/errors/index.js +5 -0
  84. package/src/errors/index.js.map +1 -0
  85. package/src/execution-context/grammy-arguments-host.d.ts +8 -0
  86. package/src/execution-context/grammy-arguments-host.js +20 -0
  87. package/src/execution-context/grammy-arguments-host.js.map +1 -0
  88. package/src/execution-context/grammy-execution-context.d.ts +10 -0
  89. package/src/execution-context/grammy-execution-context.js +23 -0
  90. package/src/execution-context/grammy-execution-context.js.map +1 -0
  91. package/src/execution-context/index.d.ts +3 -0
  92. package/src/execution-context/index.js +7 -0
  93. package/src/execution-context/index.js.map +1 -0
  94. package/src/execution-context/tg-arguments-host.interface.d.ts +5 -0
  95. package/src/execution-context/tg-arguments-host.interface.js +3 -0
  96. package/src/execution-context/tg-arguments-host.interface.js.map +1 -0
  97. package/src/factories/grammy-params-factory.d.ts +6 -0
  98. package/src/factories/grammy-params-factory.js +25 -0
  99. package/src/factories/grammy-params-factory.js.map +1 -0
  100. package/src/factories/index.d.ts +1 -0
  101. package/src/factories/index.js +5 -0
  102. package/src/factories/index.js.map +1 -0
  103. package/src/index.d.ts +13 -0
  104. package/src/index.js +17 -0
  105. package/src/index.js.map +1 -0
  106. package/src/interfaces/composer-metadata.interface.d.ts +14 -0
  107. package/src/interfaces/composer-metadata.interface.js +3 -0
  108. package/src/interfaces/composer-metadata.interface.js.map +1 -0
  109. package/src/interfaces/grammy-exception-filter.interface.d.ts +4 -0
  110. package/src/interfaces/grammy-exception-filter.interface.js +3 -0
  111. package/src/interfaces/grammy-exception-filter.interface.js.map +1 -0
  112. package/src/interfaces/grammy-options.interface.d.ts +22 -0
  113. package/src/interfaces/grammy-options.interface.js +3 -0
  114. package/src/interfaces/grammy-options.interface.js.map +1 -0
  115. package/src/interfaces/index.d.ts +4 -0
  116. package/src/interfaces/index.js +8 -0
  117. package/src/interfaces/index.js.map +1 -0
  118. package/src/interfaces/listener-metadata.interface.d.ts +6 -0
  119. package/src/interfaces/listener-metadata.interface.js +3 -0
  120. package/src/interfaces/listener-metadata.interface.js.map +1 -0
  121. package/src/nestjs-grammy-core.module.d.ts +13 -0
  122. package/src/nestjs-grammy-core.module.js +108 -0
  123. package/src/nestjs-grammy-core.module.js.map +1 -0
  124. package/src/nestjs-grammy.constants.d.ts +8 -0
  125. package/src/nestjs-grammy.constants.js +13 -0
  126. package/src/nestjs-grammy.constants.js.map +1 -0
  127. package/src/nestjs-grammy.module.d.ts +6 -0
  128. package/src/nestjs-grammy.module.js +32 -0
  129. package/src/nestjs-grammy.module.js.map +1 -0
  130. package/src/services/base-explorer.service.d.ts +7 -0
  131. package/src/services/base-explorer.service.js +43 -0
  132. package/src/services/base-explorer.service.js.map +1 -0
  133. package/src/services/index.d.ts +3 -0
  134. package/src/services/index.js +7 -0
  135. package/src/services/index.js.map +1 -0
  136. package/src/services/listeners-explorer.service.d.ts +29 -0
  137. package/src/services/listeners-explorer.service.js +104 -0
  138. package/src/services/listeners-explorer.service.js.map +1 -0
  139. package/src/services/metadata-accessor.service.d.ts +9 -0
  140. package/src/services/metadata-accessor.service.js +30 -0
  141. package/src/services/metadata-accessor.service.js.map +1 -0
  142. package/src/types/grammy-types.d.ts +8 -0
  143. package/src/types/grammy-types.js +3 -0
  144. package/src/types/grammy-types.js.map +1 -0
  145. package/src/types/index.d.ts +1 -0
  146. package/src/types/index.js +5 -0
  147. package/src/types/index.js.map +1 -0
  148. package/src/utils/create-bot-factory.util.d.ts +3 -0
  149. package/src/utils/create-bot-factory.util.js +25 -0
  150. package/src/utils/create-bot-factory.util.js.map +1 -0
  151. package/src/utils/create-composer-decorator.util.d.ts +3 -0
  152. package/src/utils/create-composer-decorator.util.js +22 -0
  153. package/src/utils/create-composer-decorator.util.js.map +1 -0
  154. package/src/utils/create-emiiter-decorator.util.d.ts +3 -0
  155. package/src/utils/create-emiiter-decorator.util.js +23 -0
  156. package/src/utils/create-emiiter-decorator.util.js.map +1 -0
  157. package/src/utils/get-bot-name.util.d.ts +1 -0
  158. package/src/utils/get-bot-name.util.js +9 -0
  159. package/src/utils/get-bot-name.util.js.map +1 -0
  160. package/src/utils/index.d.ts +4 -0
  161. package/src/utils/index.js +8 -0
  162. package/src/utils/index.js.map +1 -0
  163. package/src/utils/param-decorator.util.d.ts +6 -0
  164. package/src/utils/param-decorator.util.js +26 -0
  165. package/src/utils/param-decorator.util.js.map +1 -0
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createComposerDecorator = void 0;
4
+ const nestjs_grammy_constants_1 = require("../nestjs-grammy.constants");
5
+ function createComposerDecorator(method) {
6
+ return (arg) => {
7
+ return (_target, _key, descriptor) => {
8
+ const metadata = [
9
+ {
10
+ method,
11
+ arg,
12
+ },
13
+ ];
14
+ const prevValue = Reflect.getMetadata(nestjs_grammy_constants_1.COMPOSER_METADATA, descriptor.value) || [];
15
+ const value = [...prevValue, ...metadata];
16
+ Reflect.defineMetadata(nestjs_grammy_constants_1.COMPOSER_METADATA, value, descriptor.value);
17
+ return descriptor;
18
+ };
19
+ };
20
+ }
21
+ exports.createComposerDecorator = createComposerDecorator;
22
+ //# sourceMappingURL=create-composer-decorator.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-composer-decorator.util.js","sourceRoot":"","sources":["../../../../../packages/grammy-nestjs/src/utils/create-composer-decorator.util.ts"],"names":[],"mappings":";;;AACA,wEAA8D;AAS9D,SAAgB,uBAAuB,CAAuC,MAAkC;IAC9G,OAAO,CAAC,GAAS,EAAmB,EAAE;QACpC,OAAO,CAAC,OAAY,EAAE,IAAsB,EAAE,UAAyC,EAAE,EAAE;YACzF,MAAM,QAAQ,GAAG;gBACf;oBACE,MAAM;oBACN,GAAG;iBACgB;aACtB,CAAA;YAED,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,2CAAiB,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;YAChF,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,EAAE,GAAG,QAAQ,CAAC,CAAA;YACzC,OAAO,CAAC,cAAc,CAAC,2CAAiB,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAA;YAClE,OAAO,UAAU,CAAA;QACnB,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAhBD,0DAgBC"}
@@ -0,0 +1,3 @@
1
+ import { Composer, FilterQuery } from 'grammy';
2
+ import { StringOrRegexQuery, BotQuery, CommandQuery } from '../types/grammy-types';
3
+ export declare function createBotDecorator<TComposer extends Composer<never>, TSearch extends BotQuery>(emitter: BotQuery, method?: CommandQuery): (search?: FilterQuery | StringOrRegexQuery) => MethodDecorator;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createBotDecorator = void 0;
4
+ const nestjs_grammy_constants_1 = require("../nestjs-grammy.constants");
5
+ function createBotDecorator(emitter, method) {
6
+ return (search, ...args) => {
7
+ return (_target, _key, descriptor) => {
8
+ const metadata = [
9
+ {
10
+ method: method || search,
11
+ args,
12
+ emitter,
13
+ },
14
+ ];
15
+ const previousValue = Reflect.getMetadata(nestjs_grammy_constants_1.LISTENERS_METADATA, descriptor.value) || [];
16
+ const value = [...previousValue, ...metadata];
17
+ Reflect.defineMetadata(nestjs_grammy_constants_1.LISTENERS_METADATA, value, descriptor.value);
18
+ return descriptor;
19
+ };
20
+ };
21
+ }
22
+ exports.createBotDecorator = createBotDecorator;
23
+ //# sourceMappingURL=create-emiiter-decorator.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-emiiter-decorator.util.js","sourceRoot":"","sources":["../../../../../packages/grammy-nestjs/src/utils/create-emiiter-decorator.util.ts"],"names":[],"mappings":";;;AAEA,wEAA+D;AAG/D,SAAgB,kBAAkB,CAChC,OAAiB,EACjB,MAAqB;IAErB,OAAO,CAAC,MAAyC,EAAE,GAAG,IAA4C,EAAmB,EAAE;QACrH,OAAO,CAAC,OAAY,EAAE,IAAsB,EAAE,UAAyC,EAAE,EAAE;YACzF,MAAM,QAAQ,GAAG;gBACf;oBACE,MAAM,EAAE,MAAM,IAAI,MAAM;oBACxB,IAAI;oBACJ,OAAO;iBACY;aACtB,CAAA;YAED,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,4CAAkB,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;YACrF,MAAM,KAAK,GAAG,CAAC,GAAG,aAAa,EAAE,GAAG,QAAQ,CAAC,CAAA;YAC7C,OAAO,CAAC,cAAc,CAAC,4CAAkB,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAA;YACnE,OAAO,UAAU,CAAA;QACnB,CAAC,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AApBD,gDAoBC"}
@@ -0,0 +1 @@
1
+ export declare function getBotName(name?: string): string;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBotName = void 0;
4
+ const nestjs_grammy_constants_1 = require("../nestjs-grammy.constants");
5
+ function getBotName(name) {
6
+ return name && name !== nestjs_grammy_constants_1.DEFAULT_BOT_NAME ? `${name}Bot` : nestjs_grammy_constants_1.DEFAULT_BOT_NAME;
7
+ }
8
+ exports.getBotName = getBotName;
9
+ //# sourceMappingURL=get-bot-name.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-bot-name.util.js","sourceRoot":"","sources":["../../../../../packages/grammy-nestjs/src/utils/get-bot-name.util.ts"],"names":[],"mappings":";;;AAAA,wEAA6D;AAE7D,SAAgB,UAAU,CAAC,IAAa;IACtC,OAAO,IAAI,IAAI,IAAI,KAAK,0CAAgB,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,0CAAgB,CAAA;AAC5E,CAAC;AAFD,gCAEC"}
@@ -0,0 +1,4 @@
1
+ export * from './create-bot-factory.util';
2
+ export * from './create-emiiter-decorator.util';
3
+ export * from './get-bot-name.util';
4
+ export * from './param-decorator.util';
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./create-bot-factory.util"), exports);
5
+ tslib_1.__exportStar(require("./create-emiiter-decorator.util"), exports);
6
+ tslib_1.__exportStar(require("./get-bot-name.util"), exports);
7
+ tslib_1.__exportStar(require("./param-decorator.util"), exports);
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/grammy-nestjs/src/utils/index.ts"],"names":[],"mappings":";;;AAAA,oEAAyC;AACzC,0EAA+C;AAC/C,8DAAmC;AACnC,iEAAsC"}
@@ -0,0 +1,6 @@
1
+ import { PipeTransform, Type } from '@nestjs/common';
2
+ import { GrammyParamtype } from '../enums/grammy-paramtype.enum';
3
+ export declare type ParamData = object | string | number;
4
+ export declare const createGrammyParamDecorator: (paramtype: GrammyParamtype) => (data?: ParamData) => ParameterDecorator;
5
+ export declare const createGrammyPipesParamDecorator: (paramtype: GrammyParamtype) => (data?: any, ...pipes: (Type<PipeTransform> | PipeTransform)[]) => ParameterDecorator;
6
+ export declare const addPipesMetadata: (paramtype: GrammyParamtype, data: any, pipes: (Type<PipeTransform> | PipeTransform)[], target: Record<string, any>, key: string | symbol, index: number) => void;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addPipesMetadata = exports.createGrammyPipesParamDecorator = exports.createGrammyParamDecorator = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ const shared_utils_1 = require("@nestjs/common/utils/shared.utils");
6
+ const nestjs_grammy_constants_1 = require("../nestjs-grammy.constants");
7
+ const createGrammyParamDecorator = (paramtype) => {
8
+ return (data) => (target, key, index) => {
9
+ const args = Reflect.getMetadata(nestjs_grammy_constants_1.PARAM_ARGS_METADATA, target.constructor, key) || {};
10
+ Reflect.defineMetadata(nestjs_grammy_constants_1.PARAM_ARGS_METADATA, (0, common_1.assignMetadata)(args, paramtype, index, data), target.constructor, key);
11
+ };
12
+ };
13
+ exports.createGrammyParamDecorator = createGrammyParamDecorator;
14
+ const createGrammyPipesParamDecorator = (paramtype) => (data, ...pipes) => (target, key, index) => {
15
+ (0, exports.addPipesMetadata)(paramtype, data, pipes, target, key, index);
16
+ };
17
+ exports.createGrammyPipesParamDecorator = createGrammyPipesParamDecorator;
18
+ const addPipesMetadata = (paramtype, data, pipes, target, key, index) => {
19
+ const args = Reflect.getMetadata(nestjs_grammy_constants_1.PARAM_ARGS_METADATA, target.constructor, key) || {};
20
+ const hasParamData = (0, shared_utils_1.isNil)(data) || (0, shared_utils_1.isString)(data);
21
+ const paramData = hasParamData ? data : undefined;
22
+ const paramPipes = hasParamData ? pipes : [data, ...pipes];
23
+ Reflect.defineMetadata(nestjs_grammy_constants_1.PARAM_ARGS_METADATA, (0, common_1.assignMetadata)(args, paramtype, index, paramData, ...paramPipes), target.constructor, key);
24
+ };
25
+ exports.addPipesMetadata = addPipesMetadata;
26
+ //# sourceMappingURL=param-decorator.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"param-decorator.util.js","sourceRoot":"","sources":["../../../../../packages/grammy-nestjs/src/utils/param-decorator.util.ts"],"names":[],"mappings":";;;AAAA,2CAAoE;AACpE,oEAAmE;AAEnE,wEAAgE;AAIzD,MAAM,0BAA0B,GAAG,CAAC,SAA0B,EAAE,EAAE;IACvE,OAAO,CAAC,IAAgB,EAAsB,EAAE,CAC9C,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,6CAAmB,EAAE,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,CAAA;QACpF,OAAO,CAAC,cAAc,CAAC,6CAAmB,EAAE,IAAA,uBAAc,EAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;IACpH,CAAC,CAAA;AACL,CAAC,CAAA;AANY,QAAA,0BAA0B,8BAMtC;AAEM,MAAM,+BAA+B,GAC1C,CAAC,SAA0B,EAAE,EAAE,CAC/B,CAAC,IAAU,EAAE,GAAG,KAA8C,EAAsB,EAAE,CACtF,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;IACrB,IAAA,wBAAgB,EAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;AAC9D,CAAC,CAAA;AALU,QAAA,+BAA+B,mCAKzC;AAEI,MAAM,gBAAgB,GAAG,CAC9B,SAA0B,EAC1B,IAAS,EACT,KAA8C,EAC9C,MAA2B,EAC3B,GAAoB,EACpB,KAAa,EACb,EAAE;IACF,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,6CAAmB,EAAE,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,CAAA;IACpF,MAAM,YAAY,GAAG,IAAA,oBAAK,EAAC,IAAI,CAAC,IAAI,IAAA,uBAAQ,EAAC,IAAI,CAAC,CAAA;IAClD,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;IACjD,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,CAAA;IAE1D,OAAO,CAAC,cAAc,CACpB,6CAAmB,EACnB,IAAA,uBAAc,EAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,EAChE,MAAM,CAAC,WAAW,EAClB,GAAG,CACJ,CAAA;AACH,CAAC,CAAA;AAnBY,QAAA,gBAAgB,oBAmB5B"}