pepr 0.42.0 → 0.42.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 (149) hide show
  1. package/dist/cli/build.d.ts +1 -0
  2. package/dist/cli/build.d.ts.map +1 -1
  3. package/dist/cli/build.helpers.d.ts +66 -0
  4. package/dist/cli/build.helpers.d.ts.map +1 -1
  5. package/dist/cli/deploy.d.ts +15 -0
  6. package/dist/cli/deploy.d.ts.map +1 -1
  7. package/dist/cli/dev.d.ts.map +1 -1
  8. package/dist/cli/format.d.ts.map +1 -1
  9. package/dist/cli/format.helpers.d.ts +3 -0
  10. package/dist/cli/format.helpers.d.ts.map +1 -0
  11. package/dist/cli/init/enums.d.ts +10 -0
  12. package/dist/cli/init/enums.d.ts.map +1 -0
  13. package/dist/cli/init/index.d.ts.map +1 -1
  14. package/dist/cli/init/templates.d.ts +15 -11
  15. package/dist/cli/init/templates.d.ts.map +1 -1
  16. package/dist/cli/init/utils.d.ts.map +1 -1
  17. package/dist/cli/init/walkthrough.d.ts +3 -2
  18. package/dist/cli/init/walkthrough.d.ts.map +1 -1
  19. package/dist/cli/kfc.d.ts.map +1 -1
  20. package/dist/cli/monitor.d.ts +23 -0
  21. package/dist/cli/monitor.d.ts.map +1 -1
  22. package/dist/cli/root.d.ts.map +1 -1
  23. package/dist/cli/update.d.ts.map +1 -1
  24. package/dist/cli/uuid.d.ts.map +1 -1
  25. package/dist/cli.js +483 -586
  26. package/dist/controller.js +1 -195
  27. package/dist/fixtures/loader.d.ts.map +1 -1
  28. package/dist/lib/assets/deploy.d.ts.map +1 -1
  29. package/dist/lib/assets/destroy.d.ts.map +1 -1
  30. package/dist/lib/assets/helm.d.ts +1 -1
  31. package/dist/lib/assets/helm.d.ts.map +1 -1
  32. package/dist/lib/assets/index.d.ts +1 -1
  33. package/dist/lib/assets/index.d.ts.map +1 -1
  34. package/dist/lib/assets/pods.d.ts +6 -22
  35. package/dist/lib/assets/pods.d.ts.map +1 -1
  36. package/dist/lib/assets/rbac.d.ts.map +1 -1
  37. package/dist/lib/assets/webhooks.d.ts.map +1 -1
  38. package/dist/lib/assets/yaml.d.ts.map +1 -1
  39. package/dist/lib/controller/index.d.ts +2 -2
  40. package/dist/lib/controller/index.d.ts.map +1 -1
  41. package/dist/lib/controller/store.d.ts +1 -2
  42. package/dist/lib/controller/store.d.ts.map +1 -1
  43. package/dist/lib/controller/storeCache.d.ts +2 -1
  44. package/dist/lib/controller/storeCache.d.ts.map +1 -1
  45. package/dist/lib/{capability.d.ts → core/capability.d.ts} +1 -1
  46. package/dist/lib/core/capability.d.ts.map +1 -0
  47. package/dist/lib/{module.d.ts → core/module.d.ts} +2 -2
  48. package/dist/lib/core/module.d.ts.map +1 -0
  49. package/dist/lib/core/queue.d.ts.map +1 -0
  50. package/dist/lib/{schedule.d.ts → core/schedule.d.ts} +0 -1
  51. package/dist/lib/core/schedule.d.ts.map +1 -0
  52. package/dist/lib/{storage.d.ts → core/storage.d.ts} +4 -4
  53. package/dist/lib/core/storage.d.ts.map +1 -0
  54. package/dist/lib/deploymentChecks.d.ts.map +1 -1
  55. package/dist/lib/errors.d.ts +0 -5
  56. package/dist/lib/errors.d.ts.map +1 -1
  57. package/dist/lib/filesystemService.d.ts.map +1 -1
  58. package/dist/lib/filter/adjudicators/adjudicators.d.ts +5 -4
  59. package/dist/lib/filter/adjudicators/adjudicators.d.ts.map +1 -1
  60. package/dist/lib/filter/filter.d.ts +33 -1
  61. package/dist/lib/filter/filter.d.ts.map +1 -1
  62. package/dist/lib/finalizer.d.ts.map +1 -1
  63. package/dist/lib/helpers.d.ts +4 -9
  64. package/dist/lib/helpers.d.ts.map +1 -1
  65. package/dist/lib/included-files.d.ts.map +1 -1
  66. package/dist/lib/mutate-request.d.ts +2 -2
  67. package/dist/lib/mutate-request.d.ts.map +1 -1
  68. package/dist/lib/processors/mutate-processor.d.ts +28 -0
  69. package/dist/lib/processors/mutate-processor.d.ts.map +1 -0
  70. package/dist/lib/processors/validate-processor.d.ts +9 -0
  71. package/dist/lib/processors/validate-processor.d.ts.map +1 -0
  72. package/dist/lib/{watch-processor.d.ts → processors/watch-processor.d.ts} +2 -2
  73. package/dist/lib/processors/watch-processor.d.ts.map +1 -0
  74. package/dist/lib/telemetry/logger.d.ts.map +1 -1
  75. package/dist/lib/telemetry/metrics.d.ts.map +1 -1
  76. package/dist/lib/utils.d.ts.map +1 -1
  77. package/dist/lib/validate-request.d.ts +2 -2
  78. package/dist/lib/validate-request.d.ts.map +1 -1
  79. package/dist/lib.d.ts +2 -2
  80. package/dist/lib.d.ts.map +1 -1
  81. package/dist/lib.js +508 -341
  82. package/dist/lib.js.map +4 -4
  83. package/dist/sdk/heredoc.d.ts.map +1 -1
  84. package/package.json +9 -9
  85. package/src/cli/build.helpers.ts +180 -0
  86. package/src/cli/build.ts +85 -133
  87. package/src/cli/deploy.ts +113 -74
  88. package/src/cli/dev.ts +2 -2
  89. package/src/cli/format.helpers.ts +27 -0
  90. package/src/cli/format.ts +4 -18
  91. package/src/cli/init/enums.ts +9 -0
  92. package/src/cli/init/index.ts +4 -3
  93. package/src/cli/init/templates.ts +30 -2
  94. package/src/cli/init/utils.ts +3 -3
  95. package/src/cli/init/walkthrough.ts +7 -8
  96. package/src/cli/kfc.ts +1 -1
  97. package/src/cli/monitor.ts +108 -65
  98. package/src/cli/root.ts +1 -1
  99. package/src/cli/update.ts +1 -1
  100. package/src/cli/uuid.ts +1 -1
  101. package/src/fixtures/loader.ts +2 -2
  102. package/src/lib/assets/deploy.ts +11 -11
  103. package/src/lib/assets/destroy.ts +1 -1
  104. package/src/lib/assets/helm.ts +6 -6
  105. package/src/lib/assets/index.ts +23 -23
  106. package/src/lib/assets/pods.ts +11 -6
  107. package/src/lib/assets/webhooks.ts +31 -46
  108. package/src/lib/assets/yaml.ts +12 -9
  109. package/src/lib/controller/index.ts +13 -11
  110. package/src/lib/controller/store.ts +25 -12
  111. package/src/lib/controller/storeCache.ts +16 -3
  112. package/src/lib/{capability.ts → core/capability.ts} +25 -14
  113. package/src/lib/{module.ts → core/module.ts} +10 -10
  114. package/src/lib/{queue.ts → core/queue.ts} +13 -5
  115. package/src/lib/{storage.ts → core/storage.ts} +33 -24
  116. package/src/lib/deploymentChecks.ts +2 -2
  117. package/src/lib/errors.ts +3 -8
  118. package/src/lib/filesystemService.ts +1 -1
  119. package/src/lib/filter/adjudicators/adjudicators.ts +40 -9
  120. package/src/lib/filter/filter.ts +204 -111
  121. package/src/lib/finalizer.ts +2 -2
  122. package/src/lib/helpers.ts +20 -133
  123. package/src/lib/included-files.ts +1 -1
  124. package/src/lib/mutate-request.ts +11 -11
  125. package/src/lib/processors/mutate-processor.ts +225 -0
  126. package/src/lib/processors/validate-processor.ts +93 -0
  127. package/src/lib/{watch-processor.ts → processors/watch-processor.ts} +19 -15
  128. package/src/lib/telemetry/logger.ts +3 -1
  129. package/src/lib/tls.ts +5 -1
  130. package/src/lib/utils.ts +5 -5
  131. package/src/lib/validate-request.ts +4 -4
  132. package/src/lib.ts +2 -2
  133. package/src/runtime/controller.ts +2 -2
  134. package/src/sdk/cosign.ts +4 -4
  135. package/src/sdk/heredoc.ts +1 -1
  136. package/dist/lib/capability.d.ts.map +0 -1
  137. package/dist/lib/module.d.ts.map +0 -1
  138. package/dist/lib/mutate-processor.d.ts +0 -6
  139. package/dist/lib/mutate-processor.d.ts.map +0 -1
  140. package/dist/lib/queue.d.ts.map +0 -1
  141. package/dist/lib/schedule.d.ts.map +0 -1
  142. package/dist/lib/storage.d.ts.map +0 -1
  143. package/dist/lib/validate-processor.d.ts +0 -6
  144. package/dist/lib/validate-processor.d.ts.map +0 -1
  145. package/dist/lib/watch-processor.d.ts.map +0 -1
  146. package/src/lib/mutate-processor.ts +0 -165
  147. package/src/lib/validate-processor.ts +0 -85
  148. /package/dist/lib/{queue.d.ts → core/queue.d.ts} +0 -0
  149. /package/src/lib/{schedule.ts → core/schedule.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"finalizer.d.ts","sourceRoot":"","sources":["../../src/lib/finalizer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAO,gBAAgB,EAAgB,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EAAE,OAAO,EAAe,MAAM,SAAS,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,wBAAgB,YAAY,CAAC,CAAC,SAAS,gBAAgB,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,QAmBrF;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,iBAgC5E"}
1
+ {"version":3,"file":"finalizer.d.ts","sourceRoot":"","sources":["../../src/lib/finalizer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAO,gBAAgB,EAAgB,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EAAE,OAAO,EAAe,MAAM,SAAS,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,wBAAgB,YAAY,CAAC,CAAC,SAAS,gBAAgB,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,IAAI,CAmB5F;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgC5F"}
@@ -1,21 +1,15 @@
1
- import { KubernetesObject } from "kubernetes-fluent-client";
2
- import { Binding, CapabilityExport } from "./types";
1
+ import { CapabilityExport } from "./types";
3
2
  export declare function matchesRegex(pattern: string, testString: string): boolean;
4
3
  export declare class ValidationError extends Error {
5
4
  }
6
5
  export declare function validateCapabilityNames(capabilities: CapabilityExport[] | undefined): void;
7
6
  export declare function validateHash(expectedHash: string): void;
8
- export type RBACMap = {
7
+ type RBACMap = {
9
8
  [key: string]: {
10
9
  verbs: string[];
11
10
  plural: string;
12
11
  };
13
12
  };
14
- /**
15
- * Decide to run callback after the event comes back from API Server
16
- **/
17
- export declare function filterNoMatchReason(binding: Binding, kubernetesObject: Partial<KubernetesObject>, capabilityNamespaces: string[], ignoredNamespaces?: string[]): string;
18
- export declare function addVerbIfNotExists(verbs: string[], verb: string): void;
19
13
  export declare function createRBACMap(capabilities: CapabilityExport[]): RBACMap;
20
14
  export declare function hasEveryOverlap<T>(array1: T[], array2: T[]): boolean;
21
15
  export declare function hasAnyOverlap<T>(array1: T[], array2: T[]): boolean;
@@ -24,7 +18,8 @@ export declare function bindingAndCapabilityNSConflict(bindingNamespaces: string
24
18
  export declare function generateWatchNamespaceError(ignoredNamespaces: string[], bindingNamespaces: string[], capabilityNamespaces: string[]): string;
25
19
  export declare function namespaceComplianceValidator(capability: CapabilityExport, ignoredNamespaces?: string[]): void;
26
20
  export declare function secretOverLimit(str: string): boolean;
27
- export declare const parseTimeout: (value: string, previous: unknown) => number;
21
+ export declare const parseTimeout: (value: string) => number;
28
22
  export declare function dedent(file: string): string;
29
23
  export declare function replaceString(str: string, stringA: string, stringB: string): string;
24
+ export {};
30
25
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/lib/helpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AA2BpD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAEzE;AAED,qBAAa,eAAgB,SAAQ,KAAK;CAAG;AAE7C,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,SAAS,GAAG,IAAI,CAQ1F;AAED,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAOvD;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,CAAC;AAEF;;IAEI;AACJ,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAC3C,oBAAoB,EAAE,MAAM,EAAE,EAC9B,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAC3B,MAAM,CAuER;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,QAI/D;AAED,wBAAgB,aAAa,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAiCvE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,CAMpE;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,CAMlE;AAED,wBAAgB,wBAAwB,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAE/F;AAED,wBAAgB,8BAA8B,CAAC,iBAAiB,EAAE,MAAM,EAAE,EAAE,oBAAoB,EAAE,MAAM,EAAE,WAKzG;AAED,wBAAgB,2BAA2B,CACzC,iBAAiB,EAAE,MAAM,EAAE,EAC3B,iBAAiB,EAAE,MAAM,EAAE,EAC3B,oBAAoB,EAAE,MAAM,EAAE,UAoB/B;AAGD,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,QAsDtG;AAGD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMpD;AAGD,eAAO,MAAM,YAAY,UAAW,MAAM,YAAY,OAAO,KAAG,MAW/D,CAAC;AAGF,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAe3C;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAKnF"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/lib/helpers.ts"],"names":[],"mappings":"AAIA,OAAO,EAAW,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAGpD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAEzE;AAED,qBAAa,eAAgB,SAAQ,KAAK;CAAG;AAE7C,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,SAAS,GAAG,IAAI,CAQ1F;AAED,wBAAgB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAOvD;AAED,KAAK,OAAO,GAAG;IACb,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,CAAC;AAEF,wBAAgB,aAAa,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAiCvE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,CAMpE;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,CAMlE;AAED,wBAAgB,wBAAwB,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,OAAO,CAEzG;AAED,wBAAgB,8BAA8B,CAAC,iBAAiB,EAAE,MAAM,EAAE,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,OAAO,CAKnH;AAED,wBAAgB,2BAA2B,CACzC,iBAAiB,EAAE,MAAM,EAAE,EAC3B,iBAAiB,EAAE,MAAM,EAAE,EAC3B,oBAAoB,EAAE,MAAM,EAAE,GAC7B,MAAM,CAmBR;AAGD,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAsB7G;AAmCD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMpD;AAED,eAAO,MAAM,YAAY,UAAW,MAAM,KAAG,MAW5C,CAAC;AAGF,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAe3C;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAKnF"}
@@ -1 +1 @@
1
- {"version":3,"file":"included-files.d.ts","sourceRoot":"","sources":["../../src/lib/included-files.ts"],"names":[],"mappings":"AAKA,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,iBAanG"}
1
+ {"version":3,"file":"included-files.d.ts","sourceRoot":"","sources":["../../src/lib/included-files.ts"],"names":[],"mappings":"AAKA,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAanH"}
@@ -5,8 +5,8 @@ export declare class PeprMutateRequest<T extends KubernetesObject> {
5
5
  Raw: T;
6
6
  get PermitSideEffects(): boolean;
7
7
  get IsDryRun(): boolean | undefined;
8
- get OldResource(): T | undefined;
9
- get Request(): AdmissionRequest<T>;
8
+ get OldResource(): KubernetesObject | undefined;
9
+ get Request(): AdmissionRequest<KubernetesObject>;
10
10
  constructor(input: AdmissionRequest<T>);
11
11
  Merge: (obj: DeepPartial<T>) => void;
12
12
  SetLabel: (key: string, value: string) => this;
@@ -1 +1 @@
1
- {"version":3,"file":"mutate-request.d.ts","sourceRoot":"","sources":["../../src/lib/mutate-request.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI5D,qBAAa,iBAAiB,CAAC,CAAC,SAAS,gBAAgB;;IACvD,GAAG,EAAE,CAAC,CAAC;IAGP,IAAI,iBAAiB,YAEpB;IAED,IAAI,QAAQ,wBAEX;IAED,IAAI,WAAW,kBAEd;IAED,IAAI,OAAO,wBAEV;gBAEW,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAetC,KAAK,QAAS,YAAY,CAAC,CAAC,UAE1B;IAEF,QAAQ,QAAS,MAAM,SAAS,MAAM,UAMpC;IAEF,aAAa,QAAS,MAAM,SAAS,MAAM,UAMzC;IAEF,WAAW,QAAS,MAAM,UAKxB;IAEF,gBAAgB,QAAS,MAAM,UAK7B;IAEF,QAAQ,QAAS,MAAM,aAErB;IAEF,aAAa,QAAS,MAAM,aAE1B;CACH"}
1
+ {"version":3,"file":"mutate-request.d.ts","sourceRoot":"","sources":["../../src/lib/mutate-request.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI5D,qBAAa,iBAAiB,CAAC,CAAC,SAAS,gBAAgB;;IACvD,GAAG,EAAE,CAAC,CAAC;IAGP,IAAI,iBAAiB,IAAI,OAAO,CAE/B;IAED,IAAI,QAAQ,IAAI,OAAO,GAAG,SAAS,CAElC;IAED,IAAI,WAAW,IAAI,gBAAgB,GAAG,SAAS,CAE9C;IAED,IAAI,OAAO,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAEhD;gBAEW,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAetC,KAAK,QAAS,WAAW,CAAC,CAAC,CAAC,KAAG,IAAI,CAEjC;IAEF,QAAQ,QAAS,MAAM,SAAS,MAAM,KAAG,IAAI,CAM3C;IAEF,aAAa,QAAS,MAAM,SAAS,MAAM,KAAG,IAAI,CAMhD;IAEF,WAAW,QAAS,MAAM,KAAG,IAAI,CAK/B;IAEF,gBAAgB,QAAS,MAAM,KAAG,IAAI,CAKpC;IAEF,QAAQ,QAAS,MAAM,KAAG,OAAO,CAE/B;IAEF,aAAa,QAAS,MAAM,KAAG,OAAO,CAEpC;CACH"}
@@ -0,0 +1,28 @@
1
+ import { KubernetesObject } from "kubernetes-fluent-client";
2
+ import { Capability } from "../core/capability";
3
+ import { MutateResponse } from "../k8s";
4
+ import { AdmissionRequest, Binding } from "../types";
5
+ import { ModuleConfig } from "../core/module";
6
+ import { PeprMutateRequest } from "../mutate-request";
7
+ export interface Bindable {
8
+ req: AdmissionRequest;
9
+ config: ModuleConfig;
10
+ name: string;
11
+ namespaces: string[];
12
+ binding: Binding;
13
+ actMeta: Record<string, string>;
14
+ }
15
+ export interface Result {
16
+ wrapped: PeprMutateRequest<KubernetesObject>;
17
+ response: MutateResponse;
18
+ }
19
+ export declare function updateStatus(config: ModuleConfig, name: string, wrapped: PeprMutateRequest<KubernetesObject>, status: string): PeprMutateRequest<KubernetesObject>;
20
+ export declare function logMutateErrorMessage(e: Error): string;
21
+ export declare function decodeData(wrapped: PeprMutateRequest<KubernetesObject>): {
22
+ skipped: string[];
23
+ wrapped: PeprMutateRequest<KubernetesObject>;
24
+ };
25
+ export declare function reencodeData(wrapped: PeprMutateRequest<KubernetesObject>, skipped: string[]): KubernetesObject;
26
+ export declare function processRequest(bindable: Bindable, wrapped: PeprMutateRequest<KubernetesObject>, response: MutateResponse): Promise<Result>;
27
+ export declare function mutateProcessor(config: ModuleConfig, capabilities: Capability[], req: AdmissionRequest, reqMetadata: Record<string, string>): Promise<MutateResponse>;
28
+ //# sourceMappingURL=mutate-processor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutate-processor.d.ts","sourceRoot":"","sources":["../../../src/lib/processors/mutate-processor.ts"],"names":[],"mappings":"AAIA,OAAO,EAAQ,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAItD,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,gBAAgB,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,MAAM;IACrB,OAAO,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAC7C,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAID,wBAAgB,YAAY,CAC1B,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,EAC5C,MAAM,EAAE,MAAM,GACb,iBAAiB,CAAC,gBAAgB,CAAC,CAQrC;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAUtD;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,GAAG;IACxE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;CAC9C,CAUA;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,gBAAgB,CAU9G;AAED,wBAAsB,cAAc,CAClC,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,EAC5C,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC,CAwCjB;AAGD,wBAAsB,eAAe,CACnC,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,UAAU,EAAE,EAC1B,GAAG,EAAE,gBAAgB,EACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClC,OAAO,CAAC,cAAc,CAAC,CAqFzB"}
@@ -0,0 +1,9 @@
1
+ import { KubernetesObject } from "kubernetes-fluent-client";
2
+ import { Capability } from "../core/capability";
3
+ import { ValidateResponse } from "../k8s";
4
+ import { AdmissionRequest, Binding } from "../types";
5
+ import { PeprValidateRequest } from "../validate-request";
6
+ import { ModuleConfig } from "../core/module";
7
+ export declare function processRequest(binding: Binding, actionMetadata: Record<string, string>, peprValidateRequest: PeprValidateRequest<KubernetesObject>): Promise<ValidateResponse>;
8
+ export declare function validateProcessor(config: ModuleConfig, capabilities: Capability[], req: AdmissionRequest, reqMetadata: Record<string, string>): Promise<ValidateResponse[]>;
9
+ //# sourceMappingURL=validate-processor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-processor.d.ts","sourceRoot":"","sources":["../../../src/lib/processors/validate-processor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAQ,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,wBAAsB,cAAc,CAClC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACtC,mBAAmB,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,GACzD,OAAO,CAAC,gBAAgB,CAAC,CAkC3B;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,UAAU,EAAE,EAC1B,GAAG,EAAE,gBAAgB,EACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAkC7B"}
@@ -1,6 +1,6 @@
1
+ import { Capability } from "../core/capability";
1
2
  import { KubernetesObject, WatchEvent } from "kubernetes-fluent-client";
2
- import { Capability } from "./capability";
3
- import { Queue } from "./queue";
3
+ import { Queue } from "../core/queue";
4
4
  /**
5
5
  * Get the key for an entry in the queues
6
6
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watch-processor.d.ts","sourceRoot":"","sources":["../../../src/lib/processors/watch-processor.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAO,gBAAgB,EAAY,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAStC;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,gBAAgB,GAAG,MAAM,CAkBtD;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAM/E;AAuBD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,YAAY,EAAE,UAAU,EAAE,EAAE,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAMzF;AAmHD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,GAAE,MAAW,EAAE,GAAG,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAO9F"}
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/lib/telemetry/logger.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAgB/B,QAAA,MAAM,GAAG,uCAGP,CAAC;AAMH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CASjD;AAED,wBAAgB,aAAa,CAAC,KAAK,GAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAM,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAwB9F;AAED,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/lib/telemetry/logger.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAkB/B,QAAA,MAAM,GAAG,uCAGP,CAAC;AAMH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CASjD;AAED,wBAAgB,aAAa,CAAC,KAAK,GAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAM,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAwB9F;AAED,eAAe,GAAG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/lib/telemetry/metrics.ts"],"names":[],"mappings":"AAWA,KAAK,wBAAwB,GAAG,YAAY,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAiBtE;;GAEG;AACH,qBAAa,gBAAgB;;IAiB3B;;;OAGG;gBACS,MAAM,SAAS;IAmC3B,UAAU,SAAU,MAAM,QAAQ,MAAM,KAAG,IAAI,CAE7C;IAEF,UAAU,SAAU,MAAM,QAAQ,MAAM,KAAG,IAAI,CAE7C;IAEF,QAAQ,SAAU,MAAM,QAAQ,MAAM,eAAe,MAAM,EAAE,KAAG,IAAI,CAElE;IAEF,UAAU,SAAU,MAAM,KAAG,IAAI,CAE/B;IAEF,QAAQ,SAAU,MAAM,WAAW,OAAO,MAAM,EAAE,MAAM,CAAC,UAAS,MAAM,KAAO,IAAI,CAEjF;IAEF;;OAEG;IACH,KAAK,QAAO,IAAI,CAA8C;IAE9D;;OAEG;IACH,KAAK,QAAO,IAAI,CAA8C;IAE9D;;;;OAIG;IACH,UAAU,cAAe,MAAM,SAAQ,MAAM,KAA8B,IAAI,CAE7E;IAEF;;;OAGG;IACH,UAAU,QAAO,QAAQ,MAAM,CAAC,CAA6B;IAE7D;;;OAGG;IACH,MAAM,CAAC,YAAY,IAAI,MAAM;IAI7B;;;OAGG;IACH,YAAY,WAAY,MAAM,KAAG,IAAI,CAEnC;IAEF;;;OAGG;IACH,aAAa,UAAW,MAAM,KAAG,IAAI,CAEnC;IAEF;;;OAGG;IACH,mBAAmB,WAAY,MAAM,KAAG,IAAI,CAI1C;CAkBH;AAED,eAAO,MAAM,gBAAgB,EAAE,wBAAuD,CAAC"}
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/lib/telemetry/metrics.ts"],"names":[],"mappings":"AAWA,KAAK,wBAAwB,GAAG,YAAY,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAiBtE;;GAEG;AACH,qBAAa,gBAAgB;;IAiB3B;;;OAGG;gBACS,MAAM,SAAS;IAmC3B,UAAU,SAAU,MAAM,QAAQ,MAAM,KAAG,IAAI,CAE7C;IAEF,UAAU,SAAU,MAAM,QAAQ,MAAM,KAAG,IAAI,CAE7C;IAEF,QAAQ,SAAU,MAAM,QAAQ,MAAM,eAAe,MAAM,EAAE,KAAG,IAAI,CAElE;IAEF,UAAU,SAAU,MAAM,KAAG,IAAI,CAE/B;IAEF,QAAQ,SAAU,MAAM,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAS,MAAM,KAAO,IAAI,CAEjF;IAEF;;OAEG;IACH,KAAK,QAAO,IAAI,CAA8C;IAE9D;;OAEG;IACH,KAAK,QAAO,IAAI,CAA8C;IAE9D;;;;OAIG;IACH,UAAU,cAAe,MAAM,SAAQ,MAAM,KAA8B,IAAI,CAE7E;IAEF;;;OAGG;IACH,UAAU,QAAO,OAAO,CAAC,MAAM,CAAC,CAA6B;IAE7D;;;OAGG;IACH,MAAM,CAAC,YAAY,IAAI,MAAM;IAI7B;;;OAGG;IACH,YAAY,WAAY,MAAM,KAAG,IAAI,CAEnC;IAEF;;;OAGG;IACH,aAAa,UAAW,MAAM,KAAG,IAAI,CAEnC;IAEF;;;OAGG;IACH,mBAAmB,WAAY,MAAM,KAAG,IAAI,CAI1C;CAkBH;AAED,eAAO,MAAM,gBAAgB,EAAE,wBAAuD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAKA,uCAAuC;AACvC,eAAO,MAAM,OAAO,QAAqB,CAAC;AAE1C;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAOxF;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,YAmB1E;AAED,6BAA6B;AAC7B,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,UAExC;AAED,gCAAgC;AAChC,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,UAExC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAKA,uCAAuC;AACvC,eAAO,MAAM,OAAO,EAAE,MAA2B,CAAC;AAElD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAO/F;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,MAAM,EAAE,CAmBrF;AAED,6BAA6B;AAC7B,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED,gCAAgC;AAChC,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjD"}
@@ -12,12 +12,12 @@ export declare class PeprValidateRequest<T extends KubernetesObject> {
12
12
  * Provides access to the old resource in the request if available.
13
13
  * @returns The old Kubernetes resource object or null if not available.
14
14
  */
15
- get OldResource(): T | undefined;
15
+ get OldResource(): KubernetesObject | undefined;
16
16
  /**
17
17
  * Provides access to the request object.
18
18
  * @returns The request object containing the Kubernetes resource.
19
19
  */
20
- get Request(): AdmissionRequest<T>;
20
+ get Request(): AdmissionRequest<KubernetesObject>;
21
21
  /**
22
22
  * Creates a new instance of the Action class.
23
23
  * @param input - The request object containing the Kubernetes resource to modify.
@@ -1 +1 @@
1
- {"version":3,"file":"validate-request.d.ts","sourceRoot":"","sources":["../../src/lib/validate-request.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAGjD;;;GAGG;AACH,qBAAa,mBAAmB,CAAC,CAAC,SAAS,gBAAgB;;IACzD,GAAG,EAAE,CAAC,CAAC;IAIP;;;OAGG;IACH,IAAI,WAAW,kBAEd;IAED;;;OAGG;IACH,IAAI,OAAO,wBAEV;IAED;;;OAGG;gBACS,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAgBtC;;;;;OAKG;IACH,QAAQ,QAAS,MAAM,aAErB;IAEF;;;;;OAKG;IACH,aAAa,QAAS,MAAM,aAE1B;IAEF;;;;OAIG;IACH,OAAO,QAAO,sBAAsB,CAIlC;IAEF;;;;;;OAMG;IACH,IAAI,mBAAoB,MAAM,eAAe,MAAM,KAAG,sBAAsB,CAM1E;CACH"}
1
+ {"version":3,"file":"validate-request.d.ts","sourceRoot":"","sources":["../../src/lib/validate-request.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAGjD;;;GAGG;AACH,qBAAa,mBAAmB,CAAC,CAAC,SAAS,gBAAgB;;IACzD,GAAG,EAAE,CAAC,CAAC;IAIP;;;OAGG;IACH,IAAI,WAAW,IAAI,gBAAgB,GAAG,SAAS,CAE9C;IAED;;;OAGG;IACH,IAAI,OAAO,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAEhD;IAED;;;OAGG;gBACS,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAgBtC;;;;;OAKG;IACH,QAAQ,QAAS,MAAM,KAAG,OAAO,CAE/B;IAEF;;;;;OAKG;IACH,aAAa,QAAS,MAAM,KAAG,OAAO,CAEpC;IAEF;;;;OAIG;IACH,OAAO,QAAO,sBAAsB,CAIlC;IAEF;;;;;;OAMG;IACH,IAAI,mBAAoB,MAAM,eAAe,MAAM,KAAG,sBAAsB,CAM1E;CACH"}
package/dist/lib.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { K8s, RegisterKind, kind as a, fetch, fetchStatus, kind } from "kubernetes-fluent-client";
2
2
  import * as R from "ramda";
3
- import { Capability } from "./lib/capability";
3
+ import { Capability } from "./lib/core/capability";
4
4
  import Log from "./lib/telemetry/logger";
5
- import { PeprModule } from "./lib/module";
5
+ import { PeprModule } from "./lib/core/module";
6
6
  import { PeprMutateRequest } from "./lib/mutate-request";
7
7
  import * as PeprUtils from "./lib/utils";
8
8
  import { PeprValidateRequest } from "./lib/validate-request";
package/dist/lib.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAClG,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,GAAG,MAAM,wBAAwB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,GAAG,MAAM,WAAW,CAAC;AAEjC,OAAO,EACL,UAAU,EACV,GAAG,EACH,GAAG,EACH,UAAU,EACV,iBAAiB,EACjB,SAAS,EACT,mBAAmB,EACnB,CAAC,EACD,YAAY,EACZ,CAAC,EACD,KAAK,EACL,WAAW,EACX,IAAI,EACJ,GAAG,GACJ,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAClG,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAE3B,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,GAAG,MAAM,wBAAwB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,GAAG,MAAM,WAAW,CAAC;AAEjC,OAAO,EACL,UAAU,EACV,GAAG,EACH,GAAG,EACH,UAAU,EACV,iBAAiB,EACjB,SAAS,EACT,mBAAmB,EACnB,CAAC,EACD,YAAY,EACZ,CAAC,EACD,KAAK,EACL,WAAW,EACX,IAAI,EACJ,GAAG,GACJ,CAAC"}