@super-protocol/sdk-js 2.2.0-beta.95 → 2.2.0-beta.97

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.
@@ -12,47 +12,17 @@ declare class Order {
12
12
  startDate?: number;
13
13
  id: BlockchainId;
14
14
  constructor(orderId: BlockchainId);
15
- /**
16
- * Check if order exist
17
- */
18
15
  isExist(): Promise<boolean>;
19
- /**
20
- * Check if order is in `processing` state
21
- */
22
16
  isOrderProcessing(): Promise<boolean>;
23
- /**
24
- * Function for fetching avaliable for unlock order profit.
25
- */
26
17
  isOrderProfitAvailable(): Promise<TokenAmount>;
27
- /**
28
- * Function for fetching order price
29
- */
30
18
  calculateCurrentPrice(): Promise<TokenAmount>;
31
- /**
32
- * Function for fetching order info from blockchain
33
- */
34
19
  getOrderInfo(): Promise<OrderInfo>;
35
20
  private checkIfOrderExistsWithInterval;
36
21
  getConsumer(): Promise<string>;
37
- /**
38
- * Function for fetching order result from blockchain
39
- */
40
22
  getOrderResult(): Promise<OrderResult>;
41
- /**
42
- * Function for fetching sub orders from blockchain
43
- */
44
23
  getSubOrders(): Promise<BlockchainId[]>;
45
- /**
46
- * Function for fetching parent order from blockchain
47
- */
48
24
  getParentOrder(): Promise<BlockchainId>;
49
- /**
50
- * Function for fetching order options deposit spent from blockchain
51
- */
52
25
  getOptionsDepositSpent(): Promise<TokenAmount>;
53
- /**
54
- * Function for fetching order deposit spent from blockchain
55
- */
56
26
  getSelectedUsage(): Promise<OrderUsage>;
57
27
  getCertificate(): Promise<string>;
58
28
  setCertificate(certificate?: string, transactionOptions?: TransactionOptions): Promise<void>;
@@ -60,9 +30,6 @@ declare class Order {
60
30
  * Function for fetching hold deposits sum of the order and its suborders
61
31
  */
62
32
  calculateTotalOrderDeposit(): Promise<TokenAmount>;
63
- /**
64
- * Function for fetching reserve for output order
65
- */
66
33
  calculateOrderOutputReserve(): Promise<TokenAmount>;
67
34
  /**
68
35
  * Function for fetching spent deposits sum of the order and its suborders
@@ -72,78 +39,21 @@ declare class Order {
72
39
  * Function for fetching unspent deposits sum of the order and its suborders
73
40
  */
74
41
  calculateTotalDepositUnspent(): Promise<TokenAmount>;
75
- /**
76
- * Fetch new Origins (createdDate, createdBy, modifiedDate and modifiedBy)
77
- */
78
42
  getOrigins(): Promise<Origins>;
79
- /**
80
- * Function for fetching parent order from blockchain
81
- */
82
43
  getAwaitingPayment(): Promise<boolean>;
83
- /**
84
- * Function for fetching deposit of order from blockchain
85
- */
86
44
  getDeposit(): Promise<TokenAmount>;
87
- /**
88
- * Function for fetching start of processing date
89
- */
90
45
  getStartDate(): Promise<number>;
91
- /**
92
- * Function for fetching start of processing date
93
- */
94
46
  calculateOrderTime(): Promise<number>;
95
- /**
96
- * Function for fetching parent order from blockchain
97
- */
98
47
  setAwaitingPayment(value: boolean, transactionOptions?: TransactionOptions): Promise<void>;
99
- /**
100
- * Sets options deposit spent
101
- */
102
48
  setOptionsDepositSpent(value: TokenAmount, transactionOptions?: TransactionOptions): Promise<void>;
103
- /**
104
- * Function for updating status of contract
105
- */
106
49
  updateStatus(status: OrderStatus, transactionOptions?: TransactionOptions): Promise<void>;
107
- /**
108
- * Function for updating status of contract
109
- */
110
50
  cancelOrder(transactionOptions?: TransactionOptions): Promise<void>;
111
- /**
112
- * Starts suspended order
113
- */
114
51
  start(transactionOptions?: TransactionOptions): Promise<void>;
115
- /**
116
- * Updates order result
117
- */
118
52
  updateOrderResult(encryptedResult?: string, transactionOptions?: TransactionOptions): Promise<void>;
119
- /**
120
- * Completes order
121
- */
122
53
  complete(status: OrderStatus, encryptedResult?: string, transactionOptions?: TransactionOptions): Promise<void>;
123
- /**
124
- * Unlocks profit
125
- */
126
54
  unlockProfit(transactionOptions?: TransactionOptions): Promise<void>;
127
- /**
128
- * Function for creating sub orders for current order
129
- * @param subOrderInfo - order info for new subOrder
130
- * @param blockParentOrder - is sub order blocking
131
- * @param transactionOptions - object what contains alternative action account or gas limit (optional)
132
- * @returns Promise<void> - Does not return id of created sub order!
133
- */
134
55
  createSubOrder(subOrderInfo: OrderInfo, slots: OrderSlots, blockParentOrder: boolean, deposit?: TokenAmount, transactionOptions?: TransactionOptions, checkTxBeforeSend?: boolean): Promise<void>;
135
- /**
136
- * Function for creating pack of sub orders (wokflow) for current order
137
- * @param subOrdersInfo - orders info for new subOrders
138
- * @param transactionOptions - object what contains action account and web3 instance
139
- * @returns {Promise<string[]>} - tx hashes
140
- */
141
56
  createSubOrders(subOrdersInfo: ExtendedOrderInfo[], subOrdersSlots: OrderSlots[], transactionOptions: TransactionOptions): Promise<string[]>;
142
- /**
143
- * Function for adding event listeners to contract events
144
- * @param callback - function for processing each order related with event
145
- * @returns unsubscribe - function unsubscribing from event
146
- */
147
57
  onStatusUpdated(callback: onOrderStatusUpdatedCallback): () => void;
148
58
  }
149
59
  export type onOrderStatusUpdatedCallback = (status: OrderStatus) => void;
@@ -39,21 +39,12 @@ class Order {
39
39
  }
40
40
  this.logger = logger_js_1.default.child({ className: 'Order', orderId: this.id });
41
41
  }
42
- /**
43
- * Check if order exist
44
- */
45
42
  isExist() {
46
43
  return Order.contract.methods.isOrderValid(this.id).call();
47
44
  }
48
- /**
49
- * Check if order is in `processing` state
50
- */
51
45
  isOrderProcessing() {
52
46
  return Order.contract.methods.isOrderProcessing(this.id).call();
53
47
  }
54
- /**
55
- * Function for fetching avaliable for unlock order profit.
56
- */
57
48
  async isOrderProfitAvailable() {
58
49
  const parsedResponse = await Order.contract.methods
59
50
  .isOrderProfitAvailable(this.id)
@@ -61,18 +52,12 @@ class Order {
61
52
  .then((response) => (0, helper_js_1.cleanWeb3Data)(response));
62
53
  return parsedResponse.profit;
63
54
  }
64
- /**
65
- * Function for fetching order price
66
- */
67
55
  calculateCurrentPrice() {
68
56
  return Order.contract.methods
69
57
  .calculateOrderCurrentPrice(this.id)
70
58
  .call()
71
59
  .then((price) => price.toString());
72
60
  }
73
- /**
74
- * Function for fetching order info from blockchain
75
- */
76
61
  async getOrderInfo() {
77
62
  if (!(await this.checkIfOrderExistsWithInterval())) {
78
63
  throw Error(`Order ${this.id} does not exist`);
@@ -101,16 +86,10 @@ class Order {
101
86
  this.consumer = consumer[0];
102
87
  return this.consumer;
103
88
  }
104
- /**
105
- * Function for fetching order result from blockchain
106
- */
107
89
  async getOrderResult() {
108
90
  const orderResults = await Order.contract.methods.getOrder(this.id).call();
109
91
  return (this.orderResult = (0, helper_js_1.cleanWeb3Data)(orderResults[2]));
110
92
  }
111
- /**
112
- * Function for fetching sub orders from blockchain
113
- */
114
93
  async getSubOrders() {
115
94
  this.subOrders = await Order.contract.methods
116
95
  .getOrderSubOrders(this.id)
@@ -118,9 +97,6 @@ class Order {
118
97
  .then((ids) => ids.map((id) => id.toString()));
119
98
  return this.subOrders;
120
99
  }
121
- /**
122
- * Function for fetching parent order from blockchain
123
- */
124
100
  async getParentOrder() {
125
101
  this.parentOrder = await Order.contract.methods
126
102
  .getOrderParentOrder(this.id)
@@ -128,18 +104,12 @@ class Order {
128
104
  .then((id) => id.toString());
129
105
  return this.parentOrder;
130
106
  }
131
- /**
132
- * Function for fetching order options deposit spent from blockchain
133
- */
134
107
  getOptionsDepositSpent() {
135
108
  return Order.contract.methods
136
109
  .getOptionsDepositSpent(this.id)
137
110
  .call()
138
111
  .then((price) => price.toString());
139
112
  }
140
- /**
141
- * Function for fetching order deposit spent from blockchain
142
- */
143
113
  async getSelectedUsage() {
144
114
  const coresDenominator = await TeeOffers_js_1.default.getDenominator();
145
115
  const selectedUsageSlotInfo = await Order.contract.methods
@@ -174,9 +144,6 @@ class Order {
174
144
  .call()
175
145
  .then((price) => price.toString());
176
146
  }
177
- /**
178
- * Function for fetching reserve for output order
179
- */
180
147
  calculateOrderOutputReserve() {
181
148
  return Order.contract.methods
182
149
  .calculateOrderOutputReserve(this.id)
@@ -201,9 +168,6 @@ class Order {
201
168
  .call()
202
169
  .then((price) => price.toString());
203
170
  }
204
- /**
205
- * Fetch new Origins (createdDate, createdBy, modifiedDate and modifiedBy)
206
- */
207
171
  async getOrigins() {
208
172
  const origins = await Order.contract.methods
209
173
  .getOrderOrigins(this.id)
@@ -214,50 +178,29 @@ class Order {
214
178
  origins.modifiedDate = Number(origins.modifiedDate) * 1000;
215
179
  return (this.origins = origins);
216
180
  }
217
- /**
218
- * Function for fetching parent order from blockchain
219
- */
220
181
  getAwaitingPayment() {
221
182
  return Order.contract.methods.getAwaitingPayment(this.id).call();
222
183
  }
223
- /**
224
- * Function for fetching deposit of order from blockchain
225
- */
226
184
  getDeposit() {
227
185
  return Order.contract.methods
228
186
  .getOrderDeposit(this.id)
229
187
  .call()
230
188
  .then((price) => price.toString());
231
189
  }
232
- /**
233
- * Function for fetching start of processing date
234
- */
235
190
  async getStartDate() {
236
191
  return Number(await Order.contract.methods.getStartDate(this.id).call());
237
192
  }
238
- /**
239
- * Function for fetching start of processing date
240
- */
241
193
  async calculateOrderTime() {
242
194
  return Number(await Order.contract.methods.calculateOrderTime(this.id).call());
243
195
  }
244
- /**
245
- * Function for fetching parent order from blockchain
246
- */
247
196
  async setAwaitingPayment(value, transactionOptions) {
248
197
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
249
198
  await TxManager_js_1.default.execute(Order.contract.methods.setAwaitingPayment(this.id, value), transactionOptions);
250
199
  }
251
- /**
252
- * Sets options deposit spent
253
- */
254
200
  async setOptionsDepositSpent(value, transactionOptions) {
255
201
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
256
202
  await TxManager_js_1.default.execute(Order.contract.methods.setOptionsDepositSpent(this.id, value), transactionOptions);
257
203
  }
258
- /**
259
- * Function for updating status of contract
260
- */
261
204
  async updateStatus(status, transactionOptions) {
262
205
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
263
206
  if (status === index_js_1.OrderStatus.Processing) {
@@ -266,48 +209,26 @@ class Order {
266
209
  if (this.orderInfo)
267
210
  this.orderInfo.status = status;
268
211
  }
269
- /**
270
- * Function for updating status of contract
271
- */
272
212
  async cancelOrder(transactionOptions) {
273
213
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
274
214
  await TxManager_js_1.default.execute(Order.contract.methods.cancelOrder(this.id), transactionOptions);
275
215
  }
276
- /**
277
- * Starts suspended order
278
- */
279
216
  async start(transactionOptions) {
280
217
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
281
218
  await TxManager_js_1.default.execute(Order.contract.methods.startOrder(this.id), transactionOptions);
282
219
  }
283
- /**
284
- * Updates order result
285
- */
286
220
  async updateOrderResult(encryptedResult = '', transactionOptions) {
287
221
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
288
222
  await TxManager_js_1.default.execute(Order.contract.methods.updateOrderResult(this.id, encryptedResult), transactionOptions);
289
223
  }
290
- /**
291
- * Completes order
292
- */
293
224
  async complete(status, encryptedResult = '', transactionOptions) {
294
225
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
295
226
  await TxManager_js_1.default.execute(Order.contract.methods.completeOrder(this.id, status, encryptedResult), transactionOptions);
296
227
  }
297
- /**
298
- * Unlocks profit
299
- */
300
228
  async unlockProfit(transactionOptions) {
301
229
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
302
230
  await TxManager_js_1.default.execute(Order.contract.methods.unlockProfit(this.id), transactionOptions);
303
231
  }
304
- /**
305
- * Function for creating sub orders for current order
306
- * @param subOrderInfo - order info for new subOrder
307
- * @param blockParentOrder - is sub order blocking
308
- * @param transactionOptions - object what contains alternative action account or gas limit (optional)
309
- * @returns Promise<void> - Does not return id of created sub order!
310
- */
311
232
  async createSubOrder(subOrderInfo, slots, blockParentOrder, deposit, transactionOptions, checkTxBeforeSend = false) {
312
233
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
313
234
  deposit = deposit ?? '0';
@@ -322,12 +243,6 @@ class Order {
322
243
  }
323
244
  await TxManager_js_1.default.execute(Order.contract.methods.createSubOrder(this.id, preparedInfo, slots, args, params), transactionOptions);
324
245
  }
325
- /**
326
- * Function for creating pack of sub orders (wokflow) for current order
327
- * @param subOrdersInfo - orders info for new subOrders
328
- * @param transactionOptions - object what contains action account and web3 instance
329
- * @returns {Promise<string[]>} - tx hashes
330
- */
331
246
  async createSubOrders(subOrdersInfo, subOrdersSlots, transactionOptions) {
332
247
  (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
333
248
  if (subOrdersInfo.length !== subOrdersSlots.length) {
@@ -347,11 +262,6 @@ class Order {
347
262
  }
348
263
  return (await Promise.all(promises)).map((tx) => tx.transactionHash);
349
264
  }
350
- /**
351
- * Function for adding event listeners to contract events
352
- * @param callback - function for processing each order related with event
353
- * @returns unsubscribe - function unsubscribing from event
354
- */
355
265
  onStatusUpdated(callback) {
356
266
  const listener = index_js_2.BlockchainEventsListener.getInstance();
357
267
  const logger = this.logger.child({ method: 'onOrderStatusUpdated' });
@@ -543,4 +453,4 @@ __decorate([
543
453
  __metadata("design:returntype", Promise)
544
454
  ], Order.prototype, "createSubOrders", null);
545
455
  exports.default = Order;
546
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL09yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBbUIyQjtBQUczQiw2REFBc0M7QUFFdEMsa0RBTzRCO0FBQzVCLHFEQUF1RjtBQUN2RixnRkFBcUQ7QUFDckQseUVBQThDO0FBQzlDLHdEQUE0RDtBQUM1RCxrREFBaUc7QUFNakcsTUFBTSxLQUFLO0lBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBdUI7SUFDdEMsTUFBTSxDQUFvQjtJQUUzQixhQUFhLENBQWM7SUFDM0IsU0FBUyxDQUFhO0lBQ3RCLFdBQVcsQ0FBZTtJQUMxQixTQUFTLENBQWtCO0lBQzNCLFdBQVcsQ0FBZ0I7SUFDM0IsUUFBUSxDQUFVO0lBQ2xCLE9BQU8sQ0FBVztJQUNsQixTQUFTLENBQVU7SUFDbkIsRUFBRSxDQUFlO0lBRXhCLFlBQVksT0FBcUI7UUFDL0IsSUFBSSxDQUFDLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNwQixLQUFLLENBQUMsUUFBUSxHQUFHLDhCQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25FLENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLG1CQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVEOztPQUVHO0lBQ0ksT0FBTztRQUNaLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxpQkFBaUI7UUFDdEIsT0FBTyxLQUFLLENBQUMsUUFB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
456
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWxzL09yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBbUIyQjtBQUczQiw2REFBc0M7QUFFdEMsa0RBTzRCO0FBQzVCLHFEQUF1RjtBQUN2RixnRkFBcUQ7QUFDckQseUVBQThDO0FBQzlDLHdEQUE0RDtBQUM1RCxrREFBaUc7QUFNakcsTUFBTSxLQUFLO0lBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBdUI7SUFDdEMsTUFBTSxDQUFvQjtJQUUzQixhQUFhLENBQWM7SUFDM0IsU0FBUyxDQUFhO0lBQ3RCLFdBQVcsQ0FBZTtJQUMxQixTQUFTLENBQWtCO0lBQzNCLFdBQVcsQ0FBZ0I7SUFDM0IsUUFBUSxDQUFVO0lBQ2xCLE9BQU8sQ0FBVztJQUNsQixTQUFTLENBQVU7SUFDbkIsRUFBRSxDQUFlO0lBRXhCLFlBQVksT0FBcUI7UUFDL0IsSUFBSSxDQUFDLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNwQixLQUFLLENBQUMsUUFBUSxHQUFHLDhCQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25FLENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLG1CQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVNLE9BQU87UUFDWixPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0QsQ0FBQztJQUVNLGlCQUFpQjtRQUN0QixPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLGlCQUFp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
@@ -10,6 +10,7 @@ declare class OfferResources {
10
10
  static increaseReplicationFactor(offerResource: Omit<OfferResource, 'timestamp'>, n: number, transactionOptions?: TransactionOptions): Promise<void>;
11
11
  static createOrder(requestOfferId: BlockchainId, requestOfferVersion: number | undefined, resultInfo: string, resultInfoSignatureBySecretKey: Signature, signedTime: number, transactionOptions?: TransactionOptions): Promise<void>;
12
12
  static clear(teeOfferKeeperId: BlockchainId, transactionOptions?: TransactionOptions): Promise<void>;
13
+ static remove(teeOfferIssuerId: BlockchainId, teeOfferKeeperId: BlockchainId, offerId: BlockchainId, offerVersion: number, transactionOptions?: TransactionOptions): Promise<void>;
13
14
  static onOfferResourceCreated(callback: onOfferResourceCreatedCallback): () => void;
14
15
  static onOrderResourceCreated(callback: onOrderResourceCreatedCallback): () => void;
15
16
  }
@@ -80,6 +80,15 @@ class OfferResources {
80
80
  };
81
81
  await TxManager_js_1.default.execute(contract.methods.clearOfferResources(teeOfferKeeperId), options);
82
82
  }
83
+ static async remove(teeOfferIssuerId, teeOfferKeeperId, offerId, offerVersion, transactionOptions) {
84
+ const contract = index_js_1.BlockchainConnector.getInstance().getContract();
85
+ (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
86
+ const options = {
87
+ gas: constants_js_1.AMOY_TX_GAS_LIMIT,
88
+ ...transactionOptions,
89
+ };
90
+ await TxManager_js_1.default.execute(contract.methods.removeOfferResource(teeOfferIssuerId, teeOfferKeeperId, offerId, offerVersion), options);
91
+ }
83
92
  static onOfferResourceCreated(callback) {
84
93
  const listener = index_js_1.BlockchainEventsListener.getInstance();
85
94
  const logger = this.logger.child({ method: 'onOfferResourceCreated' });
@@ -120,4 +129,4 @@ class OfferResources {
120
129
  }
121
130
  }
122
131
  exports.default = OfferResources;
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2ZmZXJSZXNvdXJjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3RhdGljTW9kZWxzL09mZmVyUmVzb3VyY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscURBQXVGO0FBUXZGLGtEQUk0QjtBQUM1Qix5RUFBOEM7QUFFOUMsNkRBQXNDO0FBS3RDLGtEQUFvRDtBQUVwRCxNQUFNLGNBQWM7SUFDVixNQUFNLENBQVUsTUFBTSxHQUFHLG1CQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUU1RSxNQUFNLENBQUMsYUFBYSxDQUFDLGdCQUE4QjtRQUN4RCxNQUFNLFFBQVEsR0FBRyw4QkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVqRSxPQUFPLFFBQVEsQ0FBQyxPQUFPO2FBQ3BCLDJCQUEyQixDQUFDLGdCQUFnQixDQUFDO2FBQzdDLElBQUksRUFBRTthQUNOLElBQUksQ0FBQyxDQUFDLFNBQTJCLEVBQUUsRUFBRSxDQUNwQyxTQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFBLHVDQUEyQixFQUFDLFFBQXlCLENBQUMsQ0FBQyxDQUNyRixDQUFDO0lBQ04sQ0FBQztJQUVNLE1BQU0sQ0FBQyxhQUFhLENBQUMsZ0JBQThCO1FBQ3hELE1BQU0sUUFBUSxHQUFHLDhCQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRWpFLE9BQU8sUUFBUSxDQUFDLE9BQU87YUFDcEIsMkJBQTJCLENBQUMsZ0JBQWdCLENBQUM7YUFDN0MsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsU0FBMkIsRUFBRSxFQUFFLENBQ3BDLFNBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLElBQUEsdUNBQTJCLEVBQUMsUUFBeUIsQ0FBQyxDQUFD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
132
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2ZmZXJSZXNvdXJjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3RhdGljTW9kZWxzL09mZmVyUmVzb3VyY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscURBQXVGO0FBUXZGLGtEQUk0QjtBQUM1Qix5RUFBOEM7QUFFOUMsNkRBQXNDO0FBS3RDLGtEQUFvRDtBQUVwRCxNQUFNLGNBQWM7SUFDVixNQUFNLENBQVUsTUFBTSxHQUFHLG1CQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUU1RSxNQUFNLENBQUMsYUFBYSxDQUFDLGdCQUE4QjtRQUN4RCxNQUFNLFFBQVEsR0FBRyw4QkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVqRSxPQUFPLFFBQVEsQ0FBQyxPQUFPO2FBQ3BCLDJCQUEyQixDQUFDLGdCQUFnQixDQUFDO2FBQzdDLElBQUksRUFBRTthQUNOLElBQUksQ0FBQyxDQUFDLFNBQTJCLEVBQUUsRUFBRSxDQUNwQyxTQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFBLHVDQUEyQixFQUFDLFFBQXlCLENBQUMsQ0FBQyxDQUNyRixDQUFDO0lBQ04sQ0FBQztJQUVNLE1BQU0sQ0FBQyxhQUFhLENBQUMsZ0JBQThCO1FBQ3hELE1BQU0sUUFBUSxHQUFHLDhCQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRWpFLE9BQU8sUUFBUSxDQUFDLE9BQU87YUFDcEIsMkJBQTJCLENBQUMsZ0JBQWdCLENBQUM7YUFDN0MsSUFBSSxFQUFFO2FBQ04sSUFBSSxDQUFDLENBQUMsU0FBMkIsRUFBRSxFQUFFLENBQ3BDLFNBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLElBQUEsdUNBQTJCLEVBQUMsUUFBeUIsQ0FBQyxDQUFD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