faros-airbyte-common 0.19.21 → 0.19.22

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.
@@ -11,10 +11,89 @@ export interface RoundRobinConfig {
11
11
  bucket_total?: number;
12
12
  [key: string]: any;
13
13
  }
14
- export declare function bucket(key: string, data: string, bucketTotal: number): number;
14
+ export declare function bucket(key: string, data: string, bucketTotal?: number): number;
15
15
  export declare function validateBucketingConfig(config: RoundRobinConfig, logger?: (message: string) => void): void;
16
16
  export declare function nextBucketId(config: RoundRobinConfig, state?: BucketExecutionState): number;
17
17
  export declare function applyRoundRobinBucketing(config: RoundRobinConfig, state?: BucketExecutionState, logger?: (message: string) => void): {
18
18
  config: RoundRobinConfig;
19
19
  state: BucketExecutionState;
20
20
  };
21
+ export interface BucketingCreateOptions {
22
+ partitionKey: string;
23
+ config: RoundRobinConfig;
24
+ state?: BucketExecutionState;
25
+ logger?: (message: string) => void;
26
+ }
27
+ /**
28
+ * Unified bucketing manager that handles validation, round-robin, and filtering.
29
+ *
30
+ * This class encapsulates all bucketing concerns in one place:
31
+ * - Validates bucketing configuration
32
+ * - Applies round-robin bucket execution if enabled
33
+ * - Provides simple filtering methods
34
+ * - Manages state for persistence
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * // Create manager (validates and applies round-robin automatically)
39
+ * const bucketing = Bucketing.create({
40
+ * partitionKey: 'farosai/airbyte-gitlab-source',
41
+ * config,
42
+ * state,
43
+ * logger
44
+ * });
45
+ *
46
+ * // Filter items
47
+ * const filtered = bucketing.filter(items, item => item.key);
48
+ *
49
+ * // Get state for persistence
50
+ * const newState = bucketing.getState();
51
+ * ```
52
+ */
53
+ export declare class Bucketing {
54
+ private readonly partitionKey;
55
+ private readonly bucketId;
56
+ private readonly bucketTotal;
57
+ private readonly state;
58
+ private constructor();
59
+ /**
60
+ * Create and initialize bucketing manager.
61
+ * Automatically validates config and applies round-robin if enabled.
62
+ *
63
+ * @param options - Creation options
64
+ * @param options.partitionKey - Unique key for this connector (e.g., 'farosai/airbyte-gitlab-source')
65
+ * @param options.config - Configuration with bucketing parameters
66
+ * @param options.state - Previous state for round-robin execution
67
+ * @param options.logger - Optional logger function
68
+ * @returns Initialized Bucketing instance
69
+ */
70
+ static create(options: BucketingCreateOptions): Bucketing;
71
+ private static isInBucket;
72
+ /**
73
+ * Filter an array of items based on bucketing.
74
+ *
75
+ * @param items - Array of items to filter
76
+ * @param getKey - Function to extract the partition key from each item
77
+ * @returns Filtered array containing only items in this bucket
78
+ */
79
+ filter<T>(items: ReadonlyArray<T>, getKey: (item: T) => string): ReadonlyArray<T>;
80
+ /**
81
+ * Get updated state for persistence.
82
+ * This state should be saved and passed to the next sync run.
83
+ *
84
+ * @returns State object with bucket execution information
85
+ */
86
+ getState(): BucketExecutionState;
87
+ /**
88
+ * Get current bucket ID being processed.
89
+ *
90
+ * @returns The bucket ID (1-indexed)
91
+ */
92
+ getBucketId(): number;
93
+ /**
94
+ * Get total number of buckets.
95
+ *
96
+ * @returns The total bucket count
97
+ */
98
+ getBucketTotal(): number;
99
+ }
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Bucketing = void 0;
6
7
  exports.bucket = bucket;
7
8
  exports.validateBucketingConfig = validateBucketingConfig;
8
9
  exports.nextBucketId = nextBucketId;
@@ -10,7 +11,7 @@ exports.applyRoundRobinBucketing = applyRoundRobinBucketing;
10
11
  const crypto_1 = require("crypto");
11
12
  const verror_1 = __importDefault(require("verror"));
12
13
  const bucket_set_1 = require("./bucket-set");
13
- function bucket(key, data, bucketTotal) {
14
+ function bucket(key, data, bucketTotal = 1) {
14
15
  const md5 = (0, crypto_1.createHmac)('md5', key);
15
16
  md5.update(data);
16
17
  const hex = md5.digest('hex').substring(0, 8);
@@ -64,4 +65,97 @@ function applyRoundRobinBucketing(config, state, logger) {
64
65
  },
65
66
  };
66
67
  }
68
+ /**
69
+ * Unified bucketing manager that handles validation, round-robin, and filtering.
70
+ *
71
+ * This class encapsulates all bucketing concerns in one place:
72
+ * - Validates bucketing configuration
73
+ * - Applies round-robin bucket execution if enabled
74
+ * - Provides simple filtering methods
75
+ * - Manages state for persistence
76
+ *
77
+ * @example
78
+ * ```typescript
79
+ * // Create manager (validates and applies round-robin automatically)
80
+ * const bucketing = Bucketing.create({
81
+ * partitionKey: 'farosai/airbyte-gitlab-source',
82
+ * config,
83
+ * state,
84
+ * logger
85
+ * });
86
+ *
87
+ * // Filter items
88
+ * const filtered = bucketing.filter(items, item => item.key);
89
+ *
90
+ * // Get state for persistence
91
+ * const newState = bucketing.getState();
92
+ * ```
93
+ */
94
+ class Bucketing {
95
+ constructor(partitionKey, bucketId, bucketTotal, state) {
96
+ this.partitionKey = partitionKey;
97
+ this.bucketId = bucketId;
98
+ this.bucketTotal = bucketTotal;
99
+ this.state = state !== null && state !== void 0 ? state : {};
100
+ }
101
+ /**
102
+ * Create and initialize bucketing manager.
103
+ * Automatically validates config and applies round-robin if enabled.
104
+ *
105
+ * @param options - Creation options
106
+ * @param options.partitionKey - Unique key for this connector (e.g., 'farosai/airbyte-gitlab-source')
107
+ * @param options.config - Configuration with bucketing parameters
108
+ * @param options.state - Previous state for round-robin execution
109
+ * @param options.logger - Optional logger function
110
+ * @returns Initialized Bucketing instance
111
+ */
112
+ static create(options) {
113
+ var _a, _b;
114
+ const { partitionKey, config, state, logger } = options;
115
+ // Validate configuration
116
+ validateBucketingConfig(config, logger);
117
+ // Apply round-robin bucketing if enabled
118
+ const { config: newConfig, state: newState } = applyRoundRobinBucketing(config, state, logger);
119
+ return new Bucketing(partitionKey, (_a = newConfig.bucket_id) !== null && _a !== void 0 ? _a : 1, (_b = newConfig.bucket_total) !== null && _b !== void 0 ? _b : 1, newState);
120
+ }
121
+ static isInBucket(key, data, bucketId, bucketTotal) {
122
+ return bucket(key, data, bucketTotal) === bucketId;
123
+ }
124
+ /**
125
+ * Filter an array of items based on bucketing.
126
+ *
127
+ * @param items - Array of items to filter
128
+ * @param getKey - Function to extract the partition key from each item
129
+ * @returns Filtered array containing only items in this bucket
130
+ */
131
+ filter(items, getKey) {
132
+ return items.filter((item) => Bucketing.isInBucket(this.partitionKey, getKey(item), this.bucketId, this.bucketTotal));
133
+ }
134
+ /**
135
+ * Get updated state for persistence.
136
+ * This state should be saved and passed to the next sync run.
137
+ *
138
+ * @returns State object with bucket execution information
139
+ */
140
+ getState() {
141
+ return this.state;
142
+ }
143
+ /**
144
+ * Get current bucket ID being processed.
145
+ *
146
+ * @returns The bucket ID (1-indexed)
147
+ */
148
+ getBucketId() {
149
+ return this.bucketId;
150
+ }
151
+ /**
152
+ * Get total number of buckets.
153
+ *
154
+ * @returns The total bucket count
155
+ */
156
+ getBucketTotal() {
157
+ return this.bucketTotal;
158
+ }
159
+ }
160
+ exports.Bucketing = Bucketing;
67
161
  //# sourceMappingURL=bucketing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bucketing.js","sourceRoot":"","sources":["../../src/common/bucketing.ts"],"names":[],"mappings":";;;;;AAoBA,wBAKC;AAED,0DAuBC;AAED,oCAcC;AAED,4DAwBC;AA5FD,mCAAkC;AAClC,oDAA4B;AAE5B,6CAAuC;AAiBvC,SAAgB,MAAM,CAAC,GAAW,EAAE,IAAY,EAAE,WAAmB;IACnE,MAAM,GAAG,GAAG,IAAA,mBAAU,EAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACnC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,0BAA0B;AAC1E,CAAC;AAED,SAAgB,uBAAuB,CACrC,MAAwB,EACxB,MAAkC;;IAElC,MAAM,WAAW,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,MAAA,MAAM,CAAC,SAAS,mCAAI,CAAC,CAAC;IAEvC,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,gBAAM,CAAC,yCAAyC,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,WAAW,EAAE,CAAC;QAC3C,MAAM,IAAI,gBAAM,CAAC,mCAAmC,WAAW,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,4BAA4B,EAAE,CAAC;YACzC,MAAM,aAAN,MAAM,uBAAN,MAAM,CACJ,iBAAiB,MAAM,CAAC,aAAa,8DAA8D,CACpG,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,sBAAS,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAgB,YAAY,CAC1B,MAAwB,EACxB,KAA4B;;IAE5B,MAAM,WAAW,GAAG,MAAA,MAAM,CAAC,YAAY,mCAAI,CAAC,CAAC;IAC7C,MAAM,oBAAoB,GACxB,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,wBAAwB,0CAAE,uBAAuB,mCAAI,WAAW,CAAC;IAE1E,IAAI,MAAM,CAAC,4BAA4B,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QAChE,MAAM,SAAS,GAAG,IAAI,sBAAS,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;QACnE,OAAO,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,CAAC,oBAAoB,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;AAClD,CAAC;AAED,SAAgB,wBAAwB,CACtC,MAAwB,EACxB,KAA4B,EAC5B,MAAkC;IAElC,IAAI,CAAC,MAAM,CAAC,4BAA4B,EAAE,CAAC;QACzC,OAAO,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC;IACzB,CAAC;IAED,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACzC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,kDAAkD,IAAI,EAAE,CAAC,CAAC;IAEnE,OAAO;QACL,MAAM,EAAE;YACN,GAAG,MAAM;YACT,SAAS,EAAE,IAAI;SAChB;QACD,KAAK,EAAE;YACL,GAAG,KAAK;YACR,wBAAwB,EAAE;gBACxB,uBAAuB,EAAE,IAAI;aAC9B;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"bucketing.js","sourceRoot":"","sources":["../../src/common/bucketing.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { FarosClient } from 'faros-js-client';
2
- export { bucket, validateBucketingConfig, nextBucketId, applyRoundRobinBucketing, RoundRobinConfig, } from './bucketing';
2
+ export { bucket, validateBucketingConfig, nextBucketId, applyRoundRobinBucketing, RoundRobinConfig, Bucketing, BucketExecutionState, } from './bucketing';
3
3
  export { VCSFilter, VCSFilterConfig, VCSConfigFields, VCSEntityNames, VCSAdapter, RepoInclusion, } from './vcs-filter';
4
4
  export interface FileDiff {
5
5
  deletions: number;
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.VCSFilter = exports.applyRoundRobinBucketing = exports.nextBucketId = exports.validateBucketingConfig = exports.bucket = void 0;
6
+ exports.VCSFilter = exports.Bucketing = exports.applyRoundRobinBucketing = exports.nextBucketId = exports.validateBucketingConfig = exports.bucket = void 0;
7
7
  exports.normalizeString = normalizeString;
8
8
  exports.calculateDateRange = calculateDateRange;
9
9
  exports.collectReposByOrg = collectReposByOrg;
@@ -21,6 +21,7 @@ Object.defineProperty(exports, "bucket", { enumerable: true, get: function () {
21
21
  Object.defineProperty(exports, "validateBucketingConfig", { enumerable: true, get: function () { return bucketing_1.validateBucketingConfig; } });
22
22
  Object.defineProperty(exports, "nextBucketId", { enumerable: true, get: function () { return bucketing_1.nextBucketId; } });
23
23
  Object.defineProperty(exports, "applyRoundRobinBucketing", { enumerable: true, get: function () { return bucketing_1.applyRoundRobinBucketing; } });
24
+ Object.defineProperty(exports, "Bucketing", { enumerable: true, get: function () { return bucketing_1.Bucketing; } });
24
25
  var vcs_filter_1 = require("./vcs-filter");
25
26
  Object.defineProperty(exports, "VCSFilter", { enumerable: true, get: function () { return vcs_filter_1.VCSFilter; } });
26
27
  function normalizeString(str) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;;;;AAmCA,0CAEC;AAED,gDA0CC;AAED,8CAkBC;AAwBD,0CA2CC;AAyBD,wBAEC;AAnMD,mCAAkC;AAClC,qDAA8D;AAC9D,4CAAoB;AACpB,mCAA+B;AAC/B,iCAA+B;AAC/B,gDAAwB;AACxB,mCAA8B;AAE9B,yCAMqB;AALnB,mGAAA,MAAM,OAAA;AACN,oHAAA,uBAAuB,OAAA;AACvB,yGAAA,YAAY,OAAA;AACZ,qHAAA,wBAAwB,OAAA;AAI1B,2CAOsB;AANpB,uGAAA,SAAS,OAAA;AAkBX,SAAgB,eAAe,CAAC,GAAW;IACzC,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAC9C,CAAC;AAED,SAAgB,kBAAkB,CAAC,OAKlC;IACC,MAAM,EAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAC,GAAG,OAAO,CAAC;IAE5D,IAAI,SAAe,CAAC;IACpB,IAAI,OAAa,CAAC;IAElB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,2CAA2C,CAAC,CAAC;QACpD,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;QAC9B,MAAM,CAAC,kEAAkE,CAAC,CAAC;IAC7E,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,SAAS,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;SAAM,CAAC;QACN,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,CAAC,4DAA4D,CAAC,CAAC;YACrE,SAAS,GAAG,gBAAQ,CAAC,UAAU,CAAC,OAAO,CAAC;iBACrC,KAAK,CAAC,EAAC,IAAI,EAAE,WAAW,EAAC,CAAC;iBAC1B,QAAQ,EAAE,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,IAAI,SAAS,GAAG,OAAO,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,eAAe,SAAS,uBAAuB,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,MAAM,CAAC,0BAA0B,SAAS,OAAO,OAAO,EAAE,CAAC,CAAC;IAE5D,OAAO,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC;AAC9B,CAAC;AAED,SAAgB,iBAAiB,CAC/B,UAAoC,EACpC,KAA4B;IAE5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,eAAM,CACd,4BAA4B,IAAI,gDAAgD,CACjF,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,IAAA,gBAAO,EAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,aAAa,GAAG,IAAA,gBAAO,EAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9B,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,MAAM,qBAAqB,GAAG,CAAC,QAAgB,EAAE,EAAE,CACjD,YAAE,CAAC,YAAY,CACb,cAAI,CAAC,IAAI,CACP,SAAS,EACT,IAAI,EACJ,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,SAAS,EACT,QAAQ,CACT,EACD,MAAM,CACP,CAAC;AAEJ,MAAM,4BAA4B,GAAG,qBAAqB,CACxD,kCAAkC,CACnC,CAAC;AAEF,MAAM,4BAA4B,GAAG,qBAAqB,CACxD,kCAAkC,CACnC,CAAC;AAEK,KAAK,UAAU,eAAe,CACnC,WAAmC,EACnC,MAAc,EACd,WAAwB,EACxB,KAAa;IAKb,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,IAAI,KAAa,CAAC;IAClB,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,OAAO;YACV,KAAK,GAAG,4BAA4B,CAAC;YACrC,MAAM;QACR,KAAK,YAAY;YACf,KAAK,GAAG,4BAA4B,CAAC;YACrC,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,+BAA+B,WAAW,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,IAAI,GAAG,WAAW,CAAC,YAAY,CACnC,KAAK,EACL,KAAK,EACL,IAAI,EACJ,kCAAgB,EAChB,IAAI,GAAG,CACL,MAAM,CAAC,OAAO,CAAC;QACb,MAAM;KACP,CAAC,CACH,CACF,CAAC;IACF,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,sBAAsB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,IAAI,OAAO,CAAC,iBAAiB,KAAK,UAAU,EAAE,CAAC;YAC7C,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;aAAM,IAAI,OAAO,CAAC,iBAAiB,KAAK,UAAU,EAAE,CAAC;YACpD,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IACD,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAC,CAAC;AAC9B,CAAC;AAED,MAAM,sBAAsB,GAAG,CAC7B,WAAmC,EACnC,OAAY,EACJ,EAAE;;IACV,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,KAAK,GAAG,MAAA,OAAO,CAAC,KAAK,0CAAE,GAAG,CAAC;YACjC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO;YACT,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,IAAI,GAAG,MAAA,OAAO,CAAC,UAAU,0CAAE,IAAI,CAAC;YACtC,MAAM,GAAG,GAAG,MAAA,MAAA,OAAO,CAAC,UAAU,0CAAE,YAAY,0CAAE,GAAG,CAAC;YAClD,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;gBAClB,OAAO;YACT,CAAC;YACD,OAAO,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,SAAgB,MAAM,CAAC,KAAa;IAClC,OAAO,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"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"}