@azure-tools/typespec-rust 0.8.2 → 0.9.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.
@@ -1 +1 @@
1
- {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../src/codegen/clients.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,qBAAqB;AACrB,MAAM,WAAW,IAAI;IACnB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,+BAA+B;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,+BAA+B;IAC/B,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAmR5F"}
1
+ {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../src/codegen/clients.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,qBAAqB;AACrB,MAAM,WAAW,IAAI;IACnB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,+BAA+B;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,mCAAmC;AACnC,MAAM,WAAW,cAAc;IAC7B,+BAA+B;IAC/B,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CA6O5F"}
@@ -205,7 +205,29 @@ export function emitClients(crate, targetDir) {
205
205
  body += `${indent.pop().get()}}\n`;
206
206
  body += '}\n\n'; // end impl
207
207
  }
208
- // emit method options
208
+ body += '\n';
209
+ // add using for method_options as required
210
+ for (const method of client.methods) {
211
+ if (method.kind !== 'clientaccessor') {
212
+ use.addType('crate::generated::clients::method_options', '*');
213
+ break;
214
+ }
215
+ }
216
+ let content = helpers.contentPreamble();
217
+ content += use.text();
218
+ content += body;
219
+ const clientMod = codegen.deconstruct(client.name).join('_');
220
+ clientFiles.push({ name: `${targetDir}/${clientMod}.rs`, content: content });
221
+ }
222
+ // emit method options into method_options.rs
223
+ clientFiles.push({ name: `${targetDir}/method_options.rs`, content: getMethodOptionsRs(crate) });
224
+ return { clients: clientFiles };
225
+ }
226
+ function getMethodOptionsRs(crate) {
227
+ const use = new Use();
228
+ const indent = new helpers.indentation();
229
+ let body = '';
230
+ for (const client of crate.clients) {
209
231
  for (let i = 0; i < client.methods.length; ++i) {
210
232
  const method = client.methods[i];
211
233
  if (method.kind === 'clientaccessor') {
@@ -250,14 +272,11 @@ export function emitClients(crate, targetDir) {
250
272
  body += '\n';
251
273
  }
252
274
  }
253
- body += '\n';
254
- let content = helpers.contentPreamble();
255
- content += use.text();
256
- content += body;
257
- const clientMod = codegen.deconstruct(client.name).join('_');
258
- clientFiles.push({ name: `${targetDir}/${clientMod}.rs`, content: content });
259
275
  }
260
- return { clients: clientFiles };
276
+ let content = helpers.contentPreamble();
277
+ content += use.text();
278
+ content += body;
279
+ return content;
261
280
  }
262
281
  /**
263
282
  * builds the block of doc comments for a callable's parameters.
@@ -1 +1 @@
1
- {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../../src/codegen/clients.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,WAAW,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAkB/B;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,KAAiB,EAAE,SAAiB;IAC9D,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,KAAK,EAAQ,CAAC;IAEtC,wCAAwC;IACxC,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QAEzC,IAAI,YAAY,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC1B,4DAA4D;YAC5D,YAAY,GAAG,aAAa,CAAC;QAC/B,CAAC;QAED,IAAI,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,IAAI,cAAc,MAAM,CAAC,IAAI,MAAM,CAAC;QACxC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,YAAY,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QACtG,CAAC;QACD,IAAI,IAAI,OAAO,CAAC,CAAC,aAAa;QAE9B,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;YACzB,iFAAiF;YACjF,yEAAyE;YACzE,IAAI,aAAa,GAAG,WAAW,CAAC;YAChC,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxD,aAAa,GAAG,EAAE,CAAC;YACrB,CAAC;YACD,IAAI,IAAI,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzE,GAAG,CAAC,OAAO,CAAC,2BAA2B,EAAE,WAAW,CAAC,CAAC;YACtD,IAAI,IAAI,mBAAmB,aAAa,eAAe,CAAC;YACxD,IAAI,IAAI,cAAc,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/D,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxD,IAAI,IAAI,MAAM,CAAC;gBACf,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBAC7D,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC3B,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;gBACpH,CAAC;gBACD,IAAI,IAAI,OAAO,CAAC,CAAC,qBAAqB;YACxC,CAAC;iBAAM,CAAC;gBACN,IAAI,IAAI,OAAO,CAAC;YAClB,CAAC;QACH,CAAC;QAED,IAAI,IAAI,QAAQ,MAAM,CAAC,IAAI,MAAM,CAAC;QAElC,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;YACzB,qFAAqF;YACrF,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAEpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;gBAClE,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBACzD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvE,MAAM,UAAU,GAAG,wBAAwB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;gBACjE,IAAI,UAAU,EAAE,CAAC;oBACf,IAAI,IAAI,UAAU,CAAC;gBACrB,CAAC;gBACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,UAAU,WAAW,CAAC,IAAI,IAAI,uBAAuB,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,uBAAuB,CAAC;gBAC3J,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,8CAA8C,CAAC;gBACtE,mEAAmE;gBACnE,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACrD,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,WAAW,iBAAiB,iBAAiB,iBAAiB,OAAO,CAAC;gBACpG,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,iBAAiB,qBAAqB,CAAC;gBAEjE,8DAA8D;gBAC9D,IAAI,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;oBAClC,MAAM,oBAAoB,GAAG,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;oBAC3D,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,gCAAgC,oBAAoB,CAAC,IAAI,OAAO,CAAC;oBACxF,KAAK,MAAM,KAAK,IAAI,oBAAoB,CAAC,UAAU,EAAE,CAAC;wBACpD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,yBAAyB,KAAK,CAAC,OAAO,OAAO,2BAA2B,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC/G,CAAC;oBACD,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,iBAAiB,MAAM,iBAAiB,kBAAkB,CAAC;gBAC9F,CAAC;gBAED,kEAAkE;gBAClE,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;gBACnD,IAAI,UAAU,EAAE,CAAC;oBACf,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,IAAI,CAAC;gBAC3C,CAAC;gBACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,aAAa,CAAC;gBAErC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAEd,0DAA0D;gBAC1D,0FAA0F;gBAC1F,sHAAsH;gBACtH,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;qBAChD,IAAI,CAAC,CAAC,CAAuB,EAAE,CAAuB,EAAE,EAAE,GAAG,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;qBAC9G,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC,OAAO,EAAE,CAAC;gBAE7D,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;oBACjC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;wBACnB,SAAS;oBACX,CAAC;yBAAM,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;wBACpC,gEAAgE;wBAChE,SAAS;oBACX,CAAC;oBAED,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAmB,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBACpF,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,IAAI,cAAc,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;oBACxF,CAAC;oBAED,wDAAwD;oBACxD,qDAAqD;oBACrD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,KAAK,CAAC;gBAC5C,CAAC;gBAED,iEAAiE;gBACjE,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;oBACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;wBACpB,SAAS;oBACX,CAAC;oBAED,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAmB,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBACpF,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,IAAI,cAAc,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;oBACxF,CAAC;oBAED,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAmB,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC/G,MAAM,IAAI,KAAK,CAAC,uCAAuC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,uBAAuB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;oBACpI,CAAC;oBAED,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,aAAa,KAAK,CAAC,IAAI,KAAK,CAAC;gBACnE,CAAC;gBAED,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,4BAA4B,CAAC;gBACpD,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,kCAAkC,CAAC;gBACjE,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,qCAAqC,CAAC;gBAC7D,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,2BAA2B,CAAC;gBACnD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,mBAAmB,CAAC;gBAC3C,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,gBAAgB,KAAK,CAAC;gBACnF,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,oBAAoB;gBACzD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,SAAS;gBAC9C,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,kBAAkB;gBAEtD,4DAA4D;gBAC5D,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClF,IAAI,IAAI,IAAI,CAAC;gBACf,CAAC;YACH,CAAC;QACH,CAAC;QAED,2DAA2D;QAC3D,2DAA2D;QAC3D,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,oDAAoD,CAAC;QAC5E,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,oCAAoC,CAAC;QAC5D,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,SAAS,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC;QACxE,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC;QAErC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,UAAU,GAAG,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC9D,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,4DAA4D;YAC5D,4DAA4D;YAC5D,uCAAuC;YACvC,IAAI,UAAwD,CAAC;YAC7D,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC/B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;gBACpB,KAAK,OAAO;oBACV,KAAK,GAAG,QAAQ,CAAC;oBACjB,UAAU,GAAG,CAAC,WAAgC,EAAU,EAAE;wBACxD,OAAO,kBAAkB,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;oBAC9D,CAAC,CAAC;oBACF,MAAM;gBACR,KAAK,UAAU;oBACb,UAAU,GAAG,CAAC,WAAgC,EAAU,EAAE;wBACxD,OAAO,qBAAqB,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;oBACjE,CAAC,CAAC;oBACF,MAAM;gBACR,KAAK,gBAAgB;oBACnB,UAAU,GAAG,CAAC,WAAgC,EAAU,EAAE;wBACxD,OAAO,2BAA2B,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;oBAClE,CAAC,CAAC;oBACF,MAAM;YACV,CAAC;YACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAClE,MAAM,UAAU,GAAG,wBAAwB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC5D,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,IAAI,UAAU,CAAC;YACrB,CAAC;YACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,MAAM,MAAM,CAAC,IAAI,IAAI,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,UAAU,MAAM,CAAC;YAC1I,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;YACxD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,aAAa;YACjD,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBAClC,IAAI,IAAI,IAAI,CAAC;YACf,CAAC;QACH,CAAC;QAED,IAAI,IAAI,OAAO,CAAC,CAAC,kBAAkB;QAEnC,2DAA2D;QAC3D,oDAAoD;QACpD,IAAI,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChF,kDAAkD;YAClD,MAAM,iBAAiB,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC;YACvD,IAAI,IAAI,oBAAoB,iBAAiB,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC;YAC9D,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,0BAA0B,CAAC;YAClD,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC;YACzC,MAAM,CAAC,IAAI,EAAE,CAAC;YACd,KAAK,MAAM,KAAK,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAClD,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CAAC,0CAA0C,iBAAiB,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gBACzG,CAAC;gBACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,YAAY,KAAK,CAAC;YACnE,CAAC;YACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;YACnC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;YACnC,IAAI,IAAI,OAAO,CAAC,CAAC,WAAW;QAC9B,CAAC;QAED,sBAAsB;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBACrC,SAAS;YACX,CAAC;YAED,IAAI,IAAI,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3D,GAAG,CAAC,OAAO,CAAC,2BAA2B,EAAE,WAAW,CAAC,CAAC;YACtD,IAAI,IAAI,wCAAwC,CAAC;YACjD,IAAI,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;YACtG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;gBAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC5C,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;gBACxC,CAAC;gBACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;gBAClH,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC9C,IAAI,IAAI,IAAI,CAAC;gBACf,CAAC;YACH,CAAC;YACD,IAAI,IAAI,OAAO,CAAC,CAAC,cAAc;YAE/B,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC/B,IAAI,IAAI,QAAQ,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;gBAC5E,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,8BAA8B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC;gBAC7F,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC;gBAChE,MAAM,CAAC,IAAI,EAAE,CAAC;gBACd,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBAC/C,IAAI,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;wBACtC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,2BAA2B,CAAC;wBAChE,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,CAAC,IAAI,0BAA0B,CAAC;wBACpF,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC;wBACpC,SAAS;oBACX,CAAC;oBACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,UAAU,KAAK,CAAC,IAAI,KAAK,CAAC;gBAChE,CAAC;gBACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;gBACnC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;gBACnC,IAAI,IAAI,KAAK,CAAC;YAChB,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBAClC,IAAI,IAAI,IAAI,CAAC;YACf,CAAC;QACH,CAAC;QAED,IAAI,IAAI,IAAI,CAAC;QAEb,IAAI,OAAO,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;QACxC,OAAO,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACtB,OAAO,IAAI,IAAI,CAAC;QAEhB,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7D,WAAW,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,GAAG,SAAS,IAAI,SAAS,KAAK,EAAE,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC;IAC7E,CAAC;IAED,OAAO,EAAC,OAAO,EAAE,WAAW,EAAC,CAAC;AAChC,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,wBAAwB,CAAC,MAA2B,EAAE,QAA4C;IACzG,MAAM,iBAAiB,GAAG,UAAS,SAAiB;QAClD,OAAO,OAAO,SAAS,OAAO,CAAC;IACjC,CAAC,CAAC;IAEF,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpC,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;YACxB,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC5B,CAAC;QAED,IAAI,QAAQ,GAA2B,QAAQ,CAAC;QAChD,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;YACxB,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC5B,CAAC;QAED,IAAI,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACvE,mDAAmD;YACnD,SAAS;QACX,CAAC;QAED,sFAAsF;QACtF,EAAE;QACF,kCAAkC;QAClC,wBAAwB;QACxB,IAAI,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;QAE3F,yCAAyC;QACzC,EAAE;QACF,kCAAkC;QAClC,0BAA0B;QAC1B,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;YAC1D,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;gBACvC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAClD,CAAC;YACD,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,aAAa,IAAI,QAAQ,CAAC;IAC5B,CAAC;IAED,IAAI,QAAQ,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACpC,aAAa,IAAI,OAAO,CAAC,gBAAgB,CAAC,EAAC,OAAO,EAAE,wCAAwC,EAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;IACvI,CAAC;SAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QAC9C,aAAa,IAAI,OAAO,CAAC,gBAAgB,CAAC,EAAC,OAAO,EAAE,sCAAsC,EAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;IACrI,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,WAAW,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC;IACzC,WAAW,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,mBAAmB,CAAC;IAClD,WAAW,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC;IACtC,WAAW,IAAI,aAAa,CAAC;IAE7B,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,uBAAuB,CAAC,MAAmC,EAAE,OAA2B,EAAE,GAAQ;IACzG,MAAM,SAAS,GAAG,IAAI,KAAK,EAAU,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,qDAAqD;YACrD,SAAS;QACX,CAAC;QAED,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YAC/C,GAAG,GAAG,GAAG,CAAC;QACZ,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,GAAG,GAAG,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,SAAS,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAClE,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,MAAuB,EAAE,GAAQ;IAC3D,MAAM,SAAS,GAAG,IAAI,KAAK,EAAU,CAAC;IACtC,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAEjD,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QACrC,8CAA8C;QAC9C,8CAA8C;QAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3B,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAClC,8EAA8E;gBAC9E,SAAS;YACX,CAAC;YAED,8DAA8D;YAC9D,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnD,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3B,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QAED,SAAS,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,aAAa,CAAC,IAAsB,EAAE,GAAQ;IACrD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YAC5E,GAAG,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,6BAA6B,EAAE,QAAQ,CAAC,CAAC,CAAC;YACtE,MAAM,MAAM,GAAG,IAAI,KAAK,EAAU,CAAC;YACnC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC3C,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;YAC5B,CAAC;YACD,OAAO,iGAAiG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAClI,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,mBAAmB,CAAC,KAAwD;IACnF,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,MAAM,GAAG,GAAG,CAAC;IACf,CAAC;IACD,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QACd,MAAM,IAAI,MAAM,CAAC;IACnB,CAAC;IACD,IAA2B,KAAM,CAAC,IAAI,EAAE,CAAC;QACvC,MAAM,WAAW,GAAyB,KAAK,CAAC;QAChD,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;QAChG,MAAM,IAAI,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;SAAM,IAAqB,KAAM,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,WAAW,GAAmB,KAAK,CAAC;QAC1C,MAAM,IAAI,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,qBAAqB;QACrB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,MAAmB;IAC/C,oDAAoD;IACpD,iDAAiD;IACjD,IAAI,iBAAqC,CAAC;IAC1C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,EAAG,CAAC;YAC/B,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,uCAAuC,MAAM,CAAC,IAAI,sBAAsB,CAAC,CAAC;YAC5F,CAAC;YACD,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC;QACjC,CAAC;IACH,CAAC;IACD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,oCAAoC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,2BAA2B,CAAC,MAA2B,EAAE,MAAmB,EAAE,cAAmC;IACxH,IAAI,IAAI,GAAG,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC;IAChD,MAAM,UAAU,GAAG,IAAI,KAAK,EAAU,CAAC;IACvC,KAAK,MAAM,KAAK,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;QAC1C,qDAAqD;QACrD,qDAAqD;QACrD,gDAAgD;QAChD,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,2DAA2D;IAC3D,8DAA8D;IAC9D,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,UAAU,KAAK,CAAC,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvG,CAAC;IAED,8DAA8D;IAC9D,UAAU,CAAC,IAAI,EAAE,CAAC;IAClB,MAAM,CAAC,IAAI,EAAE,CAAC;IACd,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,SAAS,KAAK,CAAC;IAC3C,CAAC;IACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;IACjC,OAAO,IAAI,CAAC;AACd,CAAC;AA4BD;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,MAAoB;IAC/C,oDAAoD;IACpD,IAAI,eAAgD,CAAC;IACrD,MAAM,YAAY,GAAG,IAAI,KAAK,EAAmB,CAAC;IAClD,MAAM,UAAU,GAAG,IAAI,KAAK,EAAsB,CAAC;IACnD,MAAM,WAAW,GAAG,IAAI,KAAK,EAAkB,CAAC;IAChD,MAAM,iBAAiB,GAAG,IAAI,KAAK,EAA6B,CAAC;IAEjE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,QAAQ,CAAC;YACd,KAAK,kBAAkB,CAAC;YACxB,KAAK,eAAe;gBAClB,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACzB,MAAM;YACR,KAAK,aAAa;gBAChB,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC9B,MAAM;YACR,KAAK,MAAM;gBACT,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvB,MAAM;YACR,KAAK,OAAO,CAAC;YACb,KAAK,iBAAiB;gBACpB,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACxB,MAAM;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACjD,eAAe,GAAG,KAAK,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,YAAY,CAAC,IAAI,CAAC,CAAC,CAAkB,EAAE,CAAkB,EAAE,EAAE,GAAG,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrH,UAAU,CAAC,IAAI,CAAC,CAAC,CAAqB,EAAE,CAAqB,EAAE,EAAE,GAAG,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3H,WAAW,CAAC,IAAI,CAAC,CAAC,CAAiB,EAAE,CAAiB,EAAE,EAAE,GAAG,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5G,IAAI,SAAyC,CAAC;IAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC1B,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,+BAA+B,CAAC,CAAC;YACxE,CAAC;YACD,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO;QACL,UAAU,EAAE,eAAe;QAC3B,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,YAAY;QACpB,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,WAAW;KACnB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,mBAAmB,CAAC,MAA2B,EAAE,KAA2B,EAAE,MAAoB;IACzG,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,yDAAyD;QACzD,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE;YACrD,SAAS,EAAE,YAAY,KAAK,CAAC,IAAI,eAAe,KAAK,CAAC,IAAI,EAAE;YAC5D,IAAI,EAAE,MAAM;SACb,CAAC,CAAC;QACH,OAAO,EAAE,GAAG,IAAI,CAAC;IACnB,CAAC;IACD,OAAO,MAAM,EAAE,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,YAAY,CAAC,MAA2B,EAAE,GAAQ,EAAE,MAAoB,EAAE,WAA8B,EAAE,aAAqB,KAAK;IAC3I,oFAAoF;IACpF,gFAAgF;IAChF,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;IAED,0GAA0G;IAC1G,MAAM,WAAW,GAAG,UAAS,KAAqB;QAChD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9B,CAAC,CAAC;IAEF,IAAI,IAAI,GAAG,EAAE,CAAC;IAEd,mEAAmE;IACnE,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC1B,IAAI,IAAI,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC;QAChC,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,qCAAqC;YACrC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,MAAM,UAAU,SAAS,IAAI,OAAO,CAAC;QAC3E,CAAC;aAAM,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC;YACjG,qFAAqF;YACrF,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACtC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,MAAM,UAAU,SAAS,WAAW,CAAC,SAAS,CAAC,GAAG,4BAA4B,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC;QAClJ,CAAC;aAAM,CAAC;YACN,sFAAsF;YACtF,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,+BAA+B,IAAI,MAAM,CAAC;YACjE,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;gBACzC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,yBAAyB,SAAS,CAAC,OAAO,OAAO,WAAW,CAAC,SAAS,CAAC,GAAG,4BAA4B,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;YAC5J,CAAC;YACD,IAAI,GAAG,OAAO,CAAC;YACf,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,MAAM,UAAU,SAAS,IAAI,OAAO,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,oBAAoB,CAAC;QACzD,6CAA6C;QAC7C,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;YACpB,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBAC5B,IAAI,IAAI,iBAAiB,EAAE,OAAO,GAAG,IAAI,CAAC;gBAC5C,CAAC;qBAAM,CAAC;oBACN,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;wBACpB,IAAI,IAAI,iBAAiB,EAAE,OAAO,CAAC,IAAI,CAAC;oBAC1C,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,IAAI,qBAAqB,EAAE,IAAI,CAAC;YACtC,CAAC;QACH,CAAC;QACD,IAAI,IAAI,KAAK,CAAC;IAChB,CAAC;IAED,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;QAC3C,IAAI,UAAU,CAAC,IAAI,KAAK,iBAAiB,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC3E,IAAI,IAAI,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE;gBACnD,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpC,IAAI,IAAI,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,OAAO,QAAQ,OAAO,UAAU,CAAC,IAAI,aAAa,CAAC;gBAC7E,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,UAAU,mCAAmC,UAAU,CAAC,GAAG,MAAM,QAAQ,MAAM,CAAC;gBACjH,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;gBACnC,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,IAAI,IAAI,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE;gBACnD,8DAA8D;gBAC9D,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;gBAC9E,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,mCAAmC,UAAU,CAAC,GAAG,MAAM,MAAM,GAAG,4BAA4B,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC/K,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,gBAAgB,CAAC,MAA2B,EAAE,GAAQ,EAAE,MAAoB,EAAE,WAA8B,EAAE,QAAQ,GAAG,IAAI;IACpI,IAAI,IAAI,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,+CAA+C,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;IAErH,KAAK,MAAM,WAAW,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QAC7C,IAAI,IAAI,mBAAmB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE;YACpD,IAAI,WAAW,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gBACzC,IAAI,MAAM,GAAG,kBAAkB,WAAW,CAAC,IAAI,MAAM,CAAC;gBACtD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,kCAAkC,WAAW,CAAC,MAAM,iBAAiB,CAAC;gBACtG,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC;gBACrC,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,KAAK,QAAQ,IAAI,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACjG,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,0BAA0B,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,MAAM,GAAG,4BAA4B,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,CAAC,GAAG,OAAO,MAAM,CAAC;QAC1K,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC;IACnC,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,IAAI,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE;YAClD,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,oBAAoB,SAAS,CAAC,IAAI,MAAM,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,0EAA0E;QAC1E,MAAM,kBAAkB,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3D,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;QACnC,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,aAAa,OAAO,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,MAAM,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC;QACnI,MAAM,CAAC,IAAI,EAAE,CAAC;QACd,KAAK,MAAM,gBAAgB,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC;YACvD,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAC3E,MAAM,IAAI,KAAK,CAAC,gBAAgB,gBAAgB,CAAC,IAAI,+BAA+B,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,yBAAyB,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC9L,CAAC;YAED,IAAI,gBAAgB,CAAC,QAAQ,EAAE,CAAC;gBAC9B,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC,IAAI,aAAa,gBAAgB,CAAC,IAAI,KAAK,CAAC;gBACvF,SAAS;YACX,CAAC;YAED,IAAI,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC;YACxC,IAAI,gBAAgB,CAAC,GAAG,EAAE,CAAC;gBACzB,WAAW,GAAG,GAAG,WAAW,aAAa,CAAC;YAC5C,CAAC;YACD,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC9C,6EAA6E;gBAC7E,WAAW,GAAG,QAAQ,WAAW,GAAG,CAAC;YACvC,CAAC;YAED,iEAAiE;YACjE,IAAI,WAAW,KAAK,gBAAgB,CAAC,IAAI,EAAE,CAAC;gBAC1C,WAAW,GAAG,GAAG,gBAAgB,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC3D,CAAC;YAED,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,WAAW,KAAK,CAAC;QAC7C,CAAC;QACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,kBAAkB,CAAC;QAChD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,2BAA2B,CAAC;IACrD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,WAA8B,EAAE,MAAoB;IAC1E,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;QAC3F,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,kBAAkB,CAAC,MAA2B,EAAE,GAAQ,EAAE,MAAmB,EAAE,MAAwB;IAC9G,GAAG,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,IAAI,GAAG,8CAA8C,CAAC;IAC1D,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,qEAAqE,CAAC;IAC7F,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,OAAO,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,cAAc,oBAAoB,CAAC,MAAM,CAAC,aAAa,CAAC;IAEzH,IAAI,IAAI,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACvD,IAAI,IAAI,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3D,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,gDAAgD,CAAC;IACxE,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAAC,MAA2B,EAAE,GAAQ,EAAE,MAAmB,EAAE,MAA2B;IACpH,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;SAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;IAClD,GAAG,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IACxF,GAAG,CAAC,OAAO,CAAC,4BAA4B,EAAE,aAAa,CAAC,CAAC;IACzD,GAAG,CAAC,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;IAC5C,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEzC,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,WAAW,CAAC;IAE3B,IAAI,IAAI,GAAG,2DAA2D,CAAC;IACvE,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,yCAAyC,CAAC;IACjE,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,OAAO,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,MAAM,WAAW,oBAAoB,CAAC,MAAM,CAAC,aAAa,CAAC;IAC/H,IAAI,IAAI,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IAC/D,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;QAC3B,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,OAAO,WAAW,CAAC,UAAU,CAAC,IAAI,MAAM,4BAA4B,CAAC,GAAG,EAAE,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC;IAC9I,CAAC;IACD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,iCAAiC,YAAY,oBAAoB,CAAC;IAEzF,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC;YACrF,OAAO,EAAE,QAAQ,YAAY,GAAG;YAChC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE;gBACf,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;oBAC3B,MAAM,aAAa,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC;oBACxD,+DAA+D;oBAC/D,oEAAoE;oBACpE,kEAAkE;oBAClE,0CAA0C;oBAC1C,IAAI,aAAa,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,YAAY,YAAY,6CAA6C,aAAa,OAAO,CAAC;oBAC7H,aAAa,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,WAAW,YAAY,MAAM,YAAY,aAAa,CAAC;oBACvF,aAAa,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,YAAY,2DAA2D,aAAa,MAAM,WAAW,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC;oBAC/J,aAAa,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,YAAY,IAAI,CAAC;oBACpD,OAAO,aAAa,CAAC;gBACvB,CAAC;gBACD,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,IAAI,YAAY,IAAI,CAAC;YAC7C,CAAC;SACF,EAAE;YACD,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,MAAM,YAAY;SACvD,CAAC,CAAC,CAAC;IACJ,IAAI,IAAI,KAAK,CAAC;IAEd,iCAAiC;IACjC,MAAM,UAAU,GAAG,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAExE,IAAI,IAAI,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;IAClE,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,qDAAqD,CAAC;IAC7E,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,oCAAoC,CAAC;IAC5D,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,gBAAgB,CAAC;IACxC,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,qBAAqB,UAAU,iDAAiD,CAAC;IAC/G,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,oDAAoD,CAAC;IAC5E,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,sCAAsC,CAAC;IAC9D,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,YAAY,UAAU,uCAAuC,CAAC;IACrF,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,2DAA2D,CAAC;IAEnF,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,YAAY,EAAE,EAAE,CAAC;YAC9E,OAAO,EAAE,QAAQ,YAAY,GAAG;YAChC,OAAO,EAAE,uBAAuB;YAChC,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,mBAAmB,MAAM,CAAC,GAAG,EAAE,iBAAiB,YAAY,cAAc;SAC5G,EAAE;YACD,OAAO,EAAE,MAAM;YACf,OAAO,EAAE,uBAAuB;YAChC,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,kBAAkB;SAC9C,CAAC,CAAC,EAAE,CAAC;IACN,IAAI,IAAI,KAAK,CAAC,CAAC,SAAS;IACxB,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,iBAAiB;IACrD,IAAI,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,8BAA8B;IAElE,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAS,2BAA2B,CAAC,KAAmC;IACtE,IAAI,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;IAC3B,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IACrC,CAAC;IAED,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,QAAQ;YACX,OAAO,IAAI,SAAS,EAAE,CAAC;QACzB,KAAK,MAAM;YACT,OAAO,GAAG,SAAS,WAAW,CAAC;QACjC,KAAK,gBAAgB,CAAC;QACtB,KAAK,QAAQ;YACX,OAAO,IAAI,SAAS,cAAc,CAAC;QACrC;YACE,MAAM,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC,IAAI,oBAAoB,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAClF,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,4BAA4B,CAAC,GAAQ,EAAE,KAA4D,EAAE,QAAiB;IAC7H,IAAI,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;IAC3B,4EAA4E;IAC5E,4EAA4E;IAC5E,0DAA0D;IAC1D,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,EAAE,CAAC;QAC5C,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IAClC,CAAC;IAED,MAAM,WAAW,GAAG,UAAS,IAAuB,EAAE,KAAc;QAClE,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QACpC,IAAI,QAAgB,CAAC;QACrB,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,KAAK,KAAK;gBACR,QAAQ,GAAG,gBAAgB,CAAC;gBAC5B,MAAM;YACR,KAAK,KAAK;gBACR,QAAQ,GAAG,yBAAyB,CAAC;gBACrC,MAAM;QACV,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,GAAG,QAAQ,IAAI,KAAK,GAAG,CAAC;QACjC,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,UAAS,IAAyB,EAAE,KAAa;QACtE,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QAClC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,KAAK,SAAS,CAAC;YACf,KAAK,SAAS;gBACZ,OAAO,YAAY,IAAI,CAAC,QAAQ,KAAK,KAAK,GAAG,CAAC;YAChD,KAAK,WAAW;gBACd,OAAO,GAAG,KAAK,+BAA+B,CAAC;QACnD,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;QAC1E,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACzF,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7C,OAAO,GAAG,SAAS,UAAU,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QACxE,CAAC;QAED,+BAA+B;QAC/B,IAAI,OAAe,CAAC;QACpB,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC7B,KAAK,cAAc;gBACjB,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvC,MAAM;YACR,KAAK,gBAAgB;gBACnB,OAAO,GAAG,OAAO,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;gBACxD,MAAM;YACR;gBACE,OAAO,GAAG,mBAAmB,CAAC;QAClC,CAAC;QAED,OAAO,GAAG,KAAK,CAAC,IAAI,eAAe,OAAO,oCAAoC,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;IACzH,CAAC;IAED,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,QAAQ,CAAC;QACd,KAAK,KAAK;YACR,OAAO,SAAS,CAAC;QACnB,KAAK,cAAc;YACjB,OAAO,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5C,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ;YACX,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACzD,8CAA8C;gBAC9C,yDAAyD;gBACzD,OAAO,GAAG,SAAS,WAAW,CAAC;YACjC,CAAC;YACD,OAAO,GAAG,SAAS,cAAc,CAAC;QACpC,KAAK,WAAW;YACd,OAAO,GAAG,SAAS,SAAS,CAAC;QAC/B,KAAK,SAAS;YACZ,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC;QACjC,KAAK,gBAAgB;YACnB,OAAO,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAChD;YACE,MAAM,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC,IAAI,oBAAoB,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAClF,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAAC,MAA6B;IAC3D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK;YACR,OAAO,GAAG,CAAC;QACb,KAAK,OAAO;YACV,OAAO,GAAG,CAAC;QACb,KAAK,KAAK;YACR,OAAO,GAAG,CAAC;QACb,KAAK,KAAK;YACR,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,qEAAqE;AACrE,SAAS,eAAe,CAAC,IAAe;IACtC,MAAM,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACjD,QAAQ,aAAa,CAAC,IAAI,EAAE,CAAC;QAC3B,KAAK,QAAQ,CAAC;QACd,KAAK,KAAK,CAAC;QACX,KAAK,UAAU,CAAC;QAChB,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC;QACd;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,SAAS,qBAAqB,CAAC,IAAe;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,qBAAqB,CAAC;AACzE,CAAC;AAED,+CAA+C;AAC/C,SAAS,YAAY,CAAC,IAAe;IACnC,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/C,OAAO,aAAa,CAAC,IAAI,KAAK,iBAAiB,CAAC;AAClD,CAAC"}
1
+ {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../../src/codegen/clients.ts"],"names":[],"mappings":"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"}
@@ -24,9 +24,10 @@ export declare class CodeGenerator {
24
24
  /**
25
25
  * generates the lib.rs file for crate
26
26
  *
27
+ * @param existingLibRs contents of preexisting lib.rs file
27
28
  * @returns the content for lib.rs
28
29
  */
29
- emitLibRs(): string;
30
+ emitLibRs(existingLibRs?: string): string;
30
31
  /**
31
32
  * generates all clients, models, and any helper content
32
33
  *
@@ -1 +1 @@
1
- {"version":3,"file":"codeGenerator.d.ts","sourceRoot":"","sources":["../../../src/codegen/codeGenerator.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,qBAAqB;AACrB,MAAM,WAAW,IAAI;IACnB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,+BAA+B;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,0EAA0E;AAC1E,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IAEnC;;;OAGG;gBACS,KAAK,EAAE,IAAI,CAAC,KAAK;IAK7B;;;;OAIG;IACH,aAAa,IAAI,MAAM;IAIvB;;;;OAIG;IACH,SAAS,IAAI,MAAM;IAInB;;;;OAIG;IACH,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC;CA6C3B"}
1
+ {"version":3,"file":"codeGenerator.d.ts","sourceRoot":"","sources":["../../../src/codegen/codeGenerator.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,qBAAqB;AACrB,MAAM,WAAW,IAAI;IACnB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,+BAA+B;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,0EAA0E;AAC1E,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IAEnC;;;OAGG;gBACS,KAAK,EAAE,IAAI,CAAC,KAAK;IAK7B;;;;OAIG;IACH,aAAa,IAAI,MAAM;IAIvB;;;;;OAKG;IACH,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM;IAIzC;;;;OAIG;IACH,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC;CA6C3B"}
@@ -30,10 +30,11 @@ export class CodeGenerator {
30
30
  /**
31
31
  * generates the lib.rs file for crate
32
32
  *
33
+ * @param existingLibRs contents of preexisting lib.rs file
33
34
  * @returns the content for lib.rs
34
35
  */
35
- emitLibRs() {
36
- return emitLibRs(this.crate);
36
+ emitLibRs(existingLibRs) {
37
+ return emitLibRs(this.crate, existingLibRs);
37
38
  }
38
39
  /**
39
40
  * generates all clients, models, and any helper content
@@ -47,21 +48,21 @@ export class CodeGenerator {
47
48
  const clientsSubDir = 'clients';
48
49
  const clients = emitClients(this.crate, clientsSubDir);
49
50
  if (clients) {
50
- generatedModRS.push('pub mod clients');
51
+ generatedModRS.push('pub(crate) mod clients');
51
52
  files.push(...clients.clients);
52
53
  }
53
54
  const enums = emitEnums(this.crate, this.context);
54
55
  if (enums) {
55
- generatedModRS.push('pub mod enums');
56
+ generatedModRS.push('pub(crate) mod enums');
56
57
  files.push({ name: 'enums.rs', content: enums });
57
58
  }
58
59
  const models = emitModels(this.crate, this.context);
59
60
  if (models.public) {
60
- generatedModRS.push('pub mod models');
61
+ generatedModRS.push('pub(crate) mod models');
61
62
  files.push({ name: 'models.rs', content: models.public });
62
63
  }
63
64
  if (models.serde) {
64
- generatedModRS.push('pub mod models_serde');
65
+ generatedModRS.push('pub(crate) mod models_serde');
65
66
  files.push({ name: 'models_serde.rs', content: models.serde });
66
67
  }
67
68
  if (models.internal) {
@@ -1 +1 @@
1
- {"version":3,"file":"codeGenerator.js","sourceRoot":"","sources":["../../../src/codegen/codeGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codeGenerator.js","sourceRoot":"","sources":["../../../src/codegen/codeGenerator.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,8 @@ import * as rust from '../codemodel/index.js';
3
3
  * emits the contents of the lib.rs file
4
4
  *
5
5
  * @param crate the crate for which to emit a lib.rs file
6
+ * @param existingLibRs contents of preexisting lib.rs file
6
7
  * @returns the contents of the lib.rs file
7
8
  */
8
- export declare function emitLibRs(crate: rust.Crate): string;
9
+ export declare function emitLibRs(crate: rust.Crate, existingLibRs?: string): string;
9
10
  //# sourceMappingURL=lib.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../src/codegen/lib.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,MAAM,CAgDnD"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../src/codegen/lib.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAK9C;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAsB3E"}
@@ -3,26 +3,79 @@
3
3
  * Licensed under the MIT License. See License.txt in the project root for license information.
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import * as helpers from './helpers.js';
6
+ const beginDelimiter = '// BEGIN GENERATED CODE -- do not edit from here till END';
7
+ const endDelimiter = '// END GENERATED CODE';
6
8
  /**
7
9
  * emits the contents of the lib.rs file
8
10
  *
9
11
  * @param crate the crate for which to emit a lib.rs file
12
+ * @param existingLibRs contents of preexisting lib.rs file
10
13
  * @returns the contents of the lib.rs file
11
14
  */
12
- export function emitLibRs(crate) {
15
+ export function emitLibRs(crate, existingLibRs) {
16
+ const generatedContent = getGeneratedContent(crate);
17
+ // if there's no preexisting lib.rs file or there's
18
+ // no begin delimiter then just overwrite the file.
19
+ if (!existingLibRs || existingLibRs.indexOf(beginDelimiter) === -1) {
20
+ let content = helpers.contentPreamble();
21
+ content += generatedContent;
22
+ return content;
23
+ }
24
+ // need to merge the generated content with preexisting content. the
25
+ // algorithm is to preserve all content outside beginDelimiter and endDelimiter
26
+ const beginDelimiterPos = existingLibRs.indexOf(beginDelimiter);
27
+ const endDelimiterPos = existingLibRs.indexOf(endDelimiter);
28
+ let content = existingLibRs.substring(0, beginDelimiterPos);
29
+ content += generatedContent;
30
+ // the + 1 is for the traililng \n
31
+ content += existingLibRs.substring(endDelimiterPos + endDelimiter.length + 1);
32
+ return content;
33
+ }
34
+ /**
35
+ * creates the generated content including the begin and end delimiters
36
+ *
37
+ * @param crate the crate for which to emit a lib.rs file
38
+ * @returns the generated content for lib.rs
39
+ */
40
+ function getGeneratedContent(crate) {
13
41
  const indent = new helpers.indentation();
14
- let content = helpers.contentPreamble();
15
- content += 'mod generated;\n\n';
42
+ // DO NOT emit any content before beginDelimiter!!
43
+ let content = beginDelimiter;
44
+ content += '\nmod generated;\n\n';
16
45
  if (crate.clients.length > 0) {
17
46
  content += 'pub mod clients {\n';
18
- content += `${indent.get()}pub use crate::generated::clients::*;\n`;
47
+ // we want to reexport all clients and client options, not method_options
48
+ const clientsAndClientOptions = new Array();
49
+ for (const client of crate.clients) {
50
+ clientsAndClientOptions.push(client.name);
51
+ if (client.constructable) {
52
+ clientsAndClientOptions.push(client.constructable.options.type.name);
53
+ }
54
+ }
55
+ content += `${indent.get()}pub use crate::generated::clients::{${clientsAndClientOptions.join(', ')}};\n`;
19
56
  content += '}\n\n';
20
57
  }
58
+ // emit pub mod models section
21
59
  let closeModels = false;
22
- if (crate.enums.length > 0 || crate.models.length > 0) {
60
+ if (crate.clients.length > 0 || crate.enums.length > 0 || crate.models.length > 0) {
23
61
  closeModels = true;
24
62
  content += 'pub mod models {\n';
25
63
  }
64
+ if (crate.clients.length > 0) {
65
+ // all client method options are reexported from models
66
+ content += `${indent.get()}pub use crate::generated::clients::method_options::{\n`;
67
+ indent.push();
68
+ for (const client of crate.clients) {
69
+ for (const method of client.methods) {
70
+ if (!method.pub || method.kind === 'clientaccessor') {
71
+ continue;
72
+ }
73
+ content += `${indent.get()}${method.options.type.name},\n`;
74
+ }
75
+ }
76
+ indent.pop();
77
+ content += `${indent.get()}};\n`;
78
+ }
26
79
  if (crate.enums.length > 0) {
27
80
  content += `${indent.get()}pub use crate::generated::enums::*;\n`;
28
81
  }
@@ -32,23 +85,20 @@ export function emitLibRs(crate) {
32
85
  if (closeModels) {
33
86
  content += '}\n\n';
34
87
  }
35
- // re-export all instantiable clients and client options, and all client method options.
36
- // the idea here is that anything a caller can construct should be exposed in the root.
88
+ // end pub mod models section
89
+ // now reexport all instantiable clients and their client options types from the root
37
90
  if (crate.clients.length > 0) {
38
- content += 'pub use crate::generated::clients::{\n';
91
+ const clientsAndClientOptions = new Array();
39
92
  for (const client of crate.clients) {
40
93
  if (client.constructable) {
41
- content += `${indent.get()}${client.name}, ${client.constructable.options.type.name},\n`;
42
- }
43
- for (const method of client.methods) {
44
- if (!method.pub || method.kind === 'clientaccessor') {
45
- continue;
46
- }
47
- content += `${indent.get()}${method.options.type.name},\n`;
94
+ clientsAndClientOptions.push(client.name);
95
+ clientsAndClientOptions.push(client.constructable.options.type.name);
48
96
  }
49
97
  }
50
- content += '};\n\n';
98
+ content += `${indent.get()}pub use crate::generated::clients::{${clientsAndClientOptions.join(', ')}};\n`;
51
99
  }
100
+ content += endDelimiter + '\n';
101
+ // DO NOT emit any content after endDelimiter!!
52
102
  return content;
53
103
  }
54
104
  //# sourceMappingURL=lib.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../src/codegen/lib.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAGxC;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,KAAiB;IACzC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IACzC,IAAI,OAAO,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IACxC,OAAO,IAAI,oBAAoB,CAAC;IAEhC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,qBAAqB,CAAC;QACjC,OAAO,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,yCAAyC,CAAC;QACpE,OAAO,IAAI,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,WAAW,GAAG,IAAI,CAAC;QACnB,OAAO,IAAI,oBAAoB,CAAC;IAClC,CAAC;IAED,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,uCAAuC,CAAC;IACpE,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,wCAAwC,CAAC;IACrE,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,IAAI,OAAO,CAAC;IACrB,CAAC;IAED,wFAAwF;IACxF,uFAAuF;IACvF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,wCAAwC,CAAC;QACpD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;gBACzB,OAAO,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;YAC3F,CAAC;YACD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;oBACpD,SAAS;gBACX,CAAC;gBACD,OAAO,IAAI,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;YAC7D,CAAC;QACH,CAAC;QACD,OAAO,IAAI,QAAQ,CAAC;IACtB,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../src/codegen/lib.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/codegen/mod.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAuBnF;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAE/D"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/codegen/mod.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CA0BnF;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAE/D"}
@@ -21,6 +21,8 @@ export function emitClientsModRs(crate, addlMods) {
21
21
  body.push(`mod ${clientModule};`);
22
22
  modules.push(clientModule);
23
23
  }
24
+ // add module for method options
25
+ body.push('pub(crate) mod method_options;');
24
26
  // add any additional mod entries
25
27
  for (const addlMod of addlMods) {
26
28
  body.push(`${addlMod};`);
@@ -1 +1 @@
1
- {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/codegen/mod.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAGxC;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAiB,EAAE,QAAuB;IACzE,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,KAAK,EAAU,CAAC;IAEjC,MAAM,OAAO,GAAG,IAAI,KAAK,EAAU,CAAC;IACpC,wCAAwC;IACxC,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,CAAC,OAAO,YAAY,GAAG,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7B,CAAC;IAED,iCAAiC;IACjC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,4CAA4C;IAC5C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,WAAW,MAAM,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAsB;IACrD,OAAO,OAAO,CAAC,eAAe,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/codegen/mod.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAGxC;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAiB,EAAE,QAAuB;IACzE,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,KAAK,EAAU,CAAC;IAEjC,MAAM,OAAO,GAAG,IAAI,KAAK,EAAU,CAAC;IACpC,wCAAwC;IACxC,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,CAAC,OAAO,YAAY,GAAG,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7B,CAAC;IAED,gCAAgC;IAChC,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAE5C,iCAAiC;IACjC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,4CAA4C;IAC5C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,WAAW,MAAM,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAsB;IACrD,OAAO,OAAO,CAAC,eAAe,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;AACjE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../../src/emitter.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAI9C,OAAO,EAAE,WAAW,EAAY,MAAM,oBAAoB,CAAC;AAC3D,OAAO,gCAAgC,CAAC;AAExC;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,kBAAkB,CAAC,iBAgCrE"}
1
+ {"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../../src/emitter.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAK9C,OAAO,EAAE,WAAW,EAAY,MAAM,oBAAoB,CAAC;AAC3D,OAAO,gCAAgC,CAAC;AAExC;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,kBAAkB,CAAC,iBA+DrE"}
@@ -4,7 +4,8 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import { CodeGenerator } from './codegen/codeGenerator.js';
6
6
  import { Adapter } from './tcgcadapter/adapter.js';
7
- import { existsSync } from 'fs';
7
+ import { execSync } from 'child_process';
8
+ import { existsSync, readFileSync } from 'fs';
8
9
  import { mkdir, writeFile } from 'fs/promises';
9
10
  import * as path from 'path';
10
11
  import { NoTarget } from '@typespec/compiler';
@@ -25,8 +26,8 @@ export async function $onEmit(context) {
25
26
  const cargoTomlPath = `${context.emitterOutputDir}/Cargo.toml`;
26
27
  if (existsSync(cargoTomlPath) && !context.options['overwrite-cargo-toml']) {
27
28
  context.program.reportDiagnostic({
28
- code: "FileAlreadyExists",
29
- severity: "warning",
29
+ code: 'FileAlreadyExists',
30
+ severity: 'warning',
30
31
  message: `skip overwriting file ${cargoTomlPath}`,
31
32
  target: NoTarget,
32
33
  });
@@ -34,14 +35,44 @@ export async function $onEmit(context) {
34
35
  else {
35
36
  await writeFile(cargoTomlPath, codegen.emitCargoToml());
36
37
  }
37
- // TODO: this will overwrite an existing lib.rs file.
38
- // we will likely need to support merging generated content with a preexisting lib.rs
39
- // https://github.com/Azure/typespec-rust/issues/20
40
- await writeFile(`${context.emitterOutputDir}/src/lib.rs`, codegen.emitLibRs());
38
+ let existingLibRs;
39
+ const libRsPath = `${context.emitterOutputDir}/src/lib.rs`;
40
+ if (existsSync(libRsPath)) {
41
+ existingLibRs = readFileSync(libRsPath, { encoding: 'ascii' });
42
+ }
43
+ await writeFile(libRsPath, codegen.emitLibRs(existingLibRs));
41
44
  const files = codegen.emitContent();
42
45
  for (const file of files) {
43
46
  await writeToGeneratedDir(context.emitterOutputDir, file.name, file.content);
44
47
  }
48
+ // probe to see if cargo is on the path before executing cargo fmt.
49
+ // we do this to avoid having to parse any output from cargo fmt to
50
+ // distinguish between failure due to not on the path vs a legit failure
51
+ // like choking on malformed code.
52
+ try {
53
+ execSync('cargo --version', { encoding: 'ascii' });
54
+ }
55
+ catch {
56
+ context.program.reportDiagnostic({
57
+ code: 'CargoFmt',
58
+ severity: 'warning',
59
+ message: 'skip executing cargo fmt (is cargo on the path?)',
60
+ target: NoTarget,
61
+ });
62
+ // no cargo available so exit
63
+ return;
64
+ }
65
+ try {
66
+ execSync('cargo fmt -- --emit files', { cwd: context.emitterOutputDir, encoding: 'ascii' });
67
+ }
68
+ catch (err) {
69
+ context.program.reportDiagnostic({
70
+ code: 'CargoFmt',
71
+ severity: 'error',
72
+ message: err.message,
73
+ target: NoTarget,
74
+ });
75
+ }
45
76
  }
46
77
  /**
47
78
  *
@@ -1 +1 @@
1
- {"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/emitter.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAe,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,gCAAgC,CAAC;AAExC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAwC;IACpE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAEpC,MAAM,KAAK,CAAC,GAAG,OAAO,CAAC,gBAAgB,MAAM,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;IAElE,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC;IAEzC,yDAAyD;IACzD,0FAA0F;IAC1F,mDAAmD;IACnD,MAAM,aAAa,GAAG,GAAG,OAAO,CAAC,gBAAgB,aAAa,CAAC;IAC/D,IAAI,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC1E,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAC/B,IAAI,EAAE,mBAAmB;YACzB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,yBAAyB,aAAa,EAAE;YACjD,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,qDAAqD;IACrD,qFAAqF;IACrF,mDAAmD;IACnD,MAAM,SAAS,CAAC,GAAG,OAAO,CAAC,gBAAgB,aAAa,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAE/E,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,mBAAmB,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,mBAAmB,CAAC,MAAc,EAAE,QAAgB,EAAE,OAAe;IAClF,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IACrE,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAClF,MAAM,KAAK,CAAC,WAAW,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;IAC5C,MAAM,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/emitter.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAe,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,gCAAgC,CAAC;AAExC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAwC;IACpE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAEpC,MAAM,KAAK,CAAC,GAAG,OAAO,CAAC,gBAAgB,MAAM,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;IAElE,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC;IAEzC,yDAAyD;IACzD,0FAA0F;IAC1F,mDAAmD;IACnD,MAAM,aAAa,GAAG,GAAG,OAAO,CAAC,gBAAgB,aAAa,CAAC;IAC/D,IAAI,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC1E,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAC/B,IAAI,EAAE,mBAAmB;YACzB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,yBAAyB,aAAa,EAAE;YACjD,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,aAAiC,CAAC;IACtC,MAAM,SAAS,GAAG,GAAG,OAAO,CAAC,gBAAgB,aAAa,CAAC;IAC3D,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1B,aAAa,GAAG,YAAY,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;IAE7D,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,mBAAmB,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/E,CAAC;IAED,mEAAmE;IACnE,mEAAmE;IACnE,wEAAwE;IACxE,kCAAkC;IAClC,IAAI,CAAC;QACH,QAAQ,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAC/B,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,kDAAkD;YAC3D,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QAEH,6BAA6B;QAC7B,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,QAAQ,CAAC,2BAA2B,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAC/B,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAU,GAAI,CAAC,OAAO;YAC7B,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,mBAAmB,CAAC,MAAc,EAAE,QAAgB,EAAE,OAAe;IAClF,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IACrE,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAClF,MAAM,KAAK,CAAC,WAAW,EAAE,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;IAC5C,MAAM,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC"}
@@ -17,6 +17,8 @@ export declare class Adapter {
17
17
  private constructor();
18
18
  /** performs all the steps to convert tcgc to a crate */
19
19
  tcgcToCrate(): rust.Crate;
20
+ /** converts tcgc docs to formatted rust.Docs */
21
+ private adaptDocs;
20
22
  /** converts all tcgc types to their Rust type equivalent */
21
23
  private adaptTypes;
22
24
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"AAOA,OAAO,EAAyB,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,2DAA2D;AAC3D,qBAAa,OAAO;IAClB;;;;;OAKG;WACU,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAW/E,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IAGtC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAG/C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoC;IAEvE,OAAO;IAaP,wDAAwD;IACxD,WAAW,IAAI,IAAI,CAAC,KAAK;IAgCzB,4DAA4D;IAC5D,OAAO,CAAC,UAAU;IAuBlB;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAwBf;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAmEhB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAsBrB,0CAA0C;IAC1C,OAAO,CAAC,OAAO;IAyKf,yCAAyC;IACzC,OAAO,CAAC,cAAc;IAUtB,iCAAiC;IACjC,OAAO,CAAC,WAAW;IAWnB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAWlB,4EAA4E;IAC5E,OAAO,CAAC,YAAY;IAcpB;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IAqO5B;;;;;;OAMG;IACH,OAAO,CAAC,yBAAyB;IAgBjC;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IAsC5B;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAY3B;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IA8KnB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IA2G5B;;;;;;;OAOG;IACH,OAAO,CAAC,0BAA0B;IA2ClC;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAaxB"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"AAOA,OAAO,EAAyB,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C,2DAA2D;AAC3D,qBAAa,OAAO;IAClB;;;;;OAKG;WACU,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAW/E,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IAGtC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAG/C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoC;IAEvE,OAAO;IAaP,wDAAwD;IACxD,WAAW,IAAI,IAAI,CAAC,KAAK;IAgCzB,gDAAgD;IAChD,OAAO,CAAC,SAAS;IAajB,4DAA4D;IAC5D,OAAO,CAAC,UAAU;IAuBlB;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAsBf;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAkEhB;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAqBrB,0CAA0C;IAC1C,OAAO,CAAC,OAAO;IAyKf,yCAAyC;IACzC,OAAO,CAAC,cAAc;IAUtB,iCAAiC;IACjC,OAAO,CAAC,WAAW;IAWnB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAWlB,4EAA4E;IAC5E,OAAO,CAAC,YAAY;IAcpB;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IAmO5B;;;;;;OAMG;IACH,OAAO,CAAC,yBAAyB;IAgBjC;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IAqC5B;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAW3B;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IA2KnB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IA0G5B;;;;;;;OAOG;IACH,OAAO,CAAC,0BAA0B;IA2ClC;;;;;OAKG;IACH,OAAO,CAAC,eAAe;CAaxB"}
@@ -44,7 +44,7 @@ export class Adapter {
44
44
  this.crate.addDependency(new rust.CrateDependency('serde'));
45
45
  }
46
46
  if (this.crate.clients.length > 0 || this.crate.enums.length > 0 || this.crate.models.length > 0) {
47
- this.crate.addDependency(new rust.CrateDependency('typespec_client_core'));
47
+ this.crate.addDependency(new rust.CrateDependency('typespec_client_core', ['derive']));
48
48
  }
49
49
  // TODO: remove once https://github.com/Azure/typespec-rust/issues/22 is fixed
50
50
  for (const client of this.crate.clients) {
@@ -64,6 +64,19 @@ export class Adapter {
64
64
  this.crate.sortContent();
65
65
  return this.crate;
66
66
  }
67
+ /** converts tcgc docs to formatted rust.Docs */
68
+ adaptDocs(summary, doc) {
69
+ if (summary) {
70
+ summary = helpers.formatDocs(summary);
71
+ }
72
+ if (doc) {
73
+ doc = helpers.formatDocs(doc);
74
+ }
75
+ return {
76
+ summary: summary,
77
+ description: doc,
78
+ };
79
+ }
67
80
  /** converts all tcgc types to their Rust type equivalent */
68
81
  adaptTypes() {
69
82
  for (const sdkEnum of this.ctx.sdkPackage.enums) {
@@ -102,13 +115,11 @@ export class Adapter {
102
115
  const values = new Array();
103
116
  for (const value of sdkEnum.values) {
104
117
  const rustEnumValue = new rust.EnumValue(helpers.fixUpEnumValueName(value.name), value.value);
105
- rustEnumValue.docs.summary = value.summary;
106
- rustEnumValue.docs.description = value.doc;
118
+ rustEnumValue.docs = this.adaptDocs(value.summary, value.doc);
107
119
  values.push(rustEnumValue);
108
120
  }
109
121
  rustEnum = new rust.Enum(enumName, sdkEnum.access === 'public', values, !sdkEnum.isFixed);
110
- rustEnum.docs.summary = sdkEnum.summary;
111
- rustEnum.docs.description = sdkEnum.doc;
122
+ rustEnum.docs = this.adaptDocs(sdkEnum.summary, sdkEnum.doc);
112
123
  this.types.set(enumName, rustEnum);
113
124
  return rustEnum;
114
125
  }
@@ -135,8 +146,7 @@ export class Adapter {
135
146
  modelFlags |= rust.ModelFlags.Output;
136
147
  }
137
148
  rustModel = new rust.Model(modelName, model.access === 'internal', modelFlags);
138
- rustModel.docs.summary = model.summary;
139
- rustModel.docs.description = model.doc;
149
+ rustModel.docs = this.adaptDocs(model.summary, model.doc);
140
150
  rustModel.xmlName = getXMLName(model.decorators);
141
151
  this.types.set(modelName, rustModel);
142
152
  // aggregate the properties from the provided type and its parent types
@@ -193,8 +203,7 @@ export class Adapter {
193
203
  fieldType = new rust.Option(fieldType);
194
204
  }
195
205
  const modelField = new rust.ModelField(naming.getEscapedReservedName(snakeCaseName(property.name), 'prop'), property.serializedName, true, fieldType);
196
- modelField.docs.summary = property.summary;
197
- modelField.docs.description = property.doc;
206
+ modelField.docs = this.adaptDocs(property.summary, property.doc);
198
207
  const xmlName = getXMLName(property.decorators);
199
208
  if (xmlName) {
200
209
  // use the XML name when specified
@@ -449,8 +458,7 @@ export class Adapter {
449
458
  clientName += 'Client';
450
459
  }
451
460
  const rustClient = new rust.Client(clientName);
452
- rustClient.docs.summary = client.summary;
453
- rustClient.docs.description = client.doc;
461
+ rustClient.docs = this.adaptDocs(client.summary, client.doc);
454
462
  rustClient.parent = parent;
455
463
  rustClient.fields.push(new rust.StructField('pipeline', false, new rust.ExternalType(this.crate, 'azure_core', 'Pipeline')));
456
464
  // anything other than public means non-instantiable client
@@ -546,8 +554,7 @@ export class Adapter {
546
554
  // NOTE: we use param.name here instead of templateArg.name as
547
555
  // the former has the fixed name "endpoint" which is what we want.
548
556
  const adaptedParam = new rust.ClientMethodParameter(param.name, this.getStringSlice(), false, true);
549
- adaptedParam.docs.summary = param.summary;
550
- adaptedParam.docs.description = param.doc;
557
+ adaptedParam.docs = this.adaptDocs(param.summary, param.doc);
551
558
  ctorParams.push(adaptedParam);
552
559
  rustClient.fields.push(new rust.StructField(param.name, false, new rust.Url(this.crate)));
553
560
  // if the server's URL is *only* the endpoint parameter then we're done.
@@ -696,8 +703,7 @@ export class Adapter {
696
703
  adaptedParam = new rust.ClientEndpointParameter(paramName, paramType, optional, param.serializedName);
697
704
  break;
698
705
  }
699
- adaptedParam.docs.summary = param.summary;
700
- adaptedParam.docs.description = param.doc;
706
+ adaptedParam.docs = this.adaptDocs(param.summary, param.doc);
701
707
  return adaptedParam;
702
708
  }
703
709
  /**
@@ -712,8 +718,7 @@ export class Adapter {
712
718
  clientAccessor.docs.summary = `Returns a new instance of ${subClient.name}.`;
713
719
  for (const param of method.parameters) {
714
720
  const adaptedParam = new rust.Parameter(snakeCaseName(param.name), this.getType(param.type));
715
- adaptedParam.docs.summary = param.summary;
716
- adaptedParam.docs.description = param.doc;
721
+ adaptedParam.docs = this.adaptDocs(param.summary, param.doc);
717
722
  clientAccessor.params.push(adaptedParam);
718
723
  }
719
724
  rustClient.methods.push(clientAccessor);
@@ -771,8 +776,7 @@ export class Adapter {
771
776
  default:
772
777
  throw new Error(`method kind ${method.kind} NYI`);
773
778
  }
774
- rustMethod.docs.summary = method.summary;
775
- rustMethod.docs.description = method.doc;
779
+ rustMethod.docs = this.adaptDocs(method.summary, method.doc);
776
780
  rustClient.methods.push(rustMethod);
777
781
  // stuff all of the operation parameters into one array for easy traversal
778
782
  const allOpParams = new Array();
@@ -805,8 +809,7 @@ export class Adapter {
805
809
  else {
806
810
  adaptedParam = this.adaptMethodParameter(opParam);
807
811
  }
808
- adaptedParam.docs.summary = param.summary;
809
- adaptedParam.docs.description = param.doc;
812
+ adaptedParam.docs = this.adaptDocs(param.summary, param.doc);
810
813
  rustMethod.params.push(adaptedParam);
811
814
  if (adaptedParam.optional) {
812
815
  let fieldType;
@@ -834,8 +837,7 @@ export class Adapter {
834
837
  for (const opParam of allOpParams) {
835
838
  if (opParam.onClient) {
836
839
  const adaptedParam = this.adaptMethodParameter(opParam);
837
- adaptedParam.docs.summary = opParam.summary;
838
- adaptedParam.docs.description = opParam.doc;
840
+ adaptedParam.docs = this.adaptDocs(opParam.summary, opParam.doc);
839
841
  rustMethod.params.push(adaptedParam);
840
842
  }
841
843
  }
@@ -986,8 +988,7 @@ export class Adapter {
986
988
  }
987
989
  break;
988
990
  }
989
- adaptedParam.docs.summary = param.summary;
990
- adaptedParam.docs.description = param.doc;
991
+ adaptedParam.docs = this.adaptDocs(param.summary, param.doc);
991
992
  adaptedParam.ref = paramByRef;
992
993
  if (paramLoc === 'client') {
993
994
  this.clientMethodParams.set(getClientParamsKey(param), adaptedParam);
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"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"}
@@ -19,4 +19,13 @@ export declare function sortClientParameters(params: Array<rust.ClientParameter>
19
19
  * @returns the unwrapped type. can be the original value if no unwrapping was required
20
20
  */
21
21
  export declare function unwrapOption(type: rust.Type): rust.Type;
22
+ /**
23
+ * applies certain formatting to a doc string.
24
+ * if the doc string doesn't require formatting
25
+ * the original doc string is returned.
26
+ *
27
+ * @param docs the doc string to format
28
+ * @returns the original or formatted doc string
29
+ */
30
+ export declare function formatDocs(docs: string): string;
22
31
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/helpers.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAsCvD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAQ9E;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAKvD"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/tcgcadapter/helpers.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAsCvD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAQ9E;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAKvD;AAKD;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAkB/C"}
@@ -3,6 +3,8 @@
3
3
  * Licensed under the MIT License. See License.txt in the project root for license information.
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import * as codegen from '@azure-tools/codegen';
6
+ import * as linkifyjs from 'linkifyjs';
7
+ import turndownService from 'turndown';
6
8
  /**
7
9
  * fixes up enum names to follow Rust conventions
8
10
  *
@@ -70,4 +72,30 @@ export function unwrapOption(type) {
70
72
  }
71
73
  return type;
72
74
  }
75
+ // used by formatDocs
76
+ const tds = new turndownService({ codeBlockStyle: 'fenced', fence: '```' });
77
+ /**
78
+ * applies certain formatting to a doc string.
79
+ * if the doc string doesn't require formatting
80
+ * the original doc string is returned.
81
+ *
82
+ * @param docs the doc string to format
83
+ * @returns the original or formatted doc string
84
+ */
85
+ export function formatDocs(docs) {
86
+ // if the docs contain any HTML, convert it to markdown
87
+ if (docs.match(/<[a-z]+[\s\S]+\/[a-z]+>/i)) {
88
+ docs = tds.turndown(docs);
89
+ }
90
+ // enclose any hyperlinks in angle brackets
91
+ const links = linkifyjs.find(docs, 'url');
92
+ for (const link of links) {
93
+ const enclosed = `<${link.href}>`;
94
+ // don't enclose hyperlinks that are already enclosed or are markdown
95
+ if (!docs.includes(enclosed) && !docs.includes(`(${link.href})`)) {
96
+ docs = docs.replace(link.href, enclosed);
97
+ }
98
+ }
99
+ return docs;
100
+ }
73
101
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/tcgcadapter/helpers.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAGhD;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAEhC,kEAAkE;IAClE,wDAAwD;IACxD,8CAA8C;IAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAChD,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC/C,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,6DAA6D;IAC7D,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAE7B,yDAAyD;IACzD,6DAA6D;IAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,IAAI,GAAG,EAAE,CAAC;QACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACrC,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChF,IAAI,IAAI,GAAG,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAmC;IACtE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAuB,EAAE,CAAuB,EAAU,EAAE;QACvE,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC;YAChF,sEAAsE;YACtE,OAAO,CAAC,CAAC,CAAC;QACZ,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,IAAe;IAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/tcgcadapter/helpers.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-rust",
3
- "version": "0.8.2",
3
+ "version": "0.9.0",
4
4
  "description": "TypeSpec emitter for Rust SDKs",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",
@@ -78,9 +78,12 @@
78
78
  "dependencies": {
79
79
  "@azure-tools/codegen": "~2.9.2",
80
80
  "@azure-tools/linq": "~3.1.263",
81
+ "@types/turndown": "^5.0.5",
81
82
  "js-yaml": "^4.1.0",
83
+ "linkifyjs": "^4.2.0",
82
84
  "query-string": "9.1.1",
83
85
  "source-map-support": "0.5.21",
86
+ "turndown": "^7.2.0",
84
87
  "vitest": "^1.6.1"
85
88
  },
86
89
  "packageManager": "pnpm@9.15.5+sha512.845196026aab1cc3f098a0474b64dfbab2afe7a1b4e91dd86895d8e4aa32a7a6d03049e2d0ad770bbe4de023a7122fb68c1a1d6e0d033c7076085f9d5d4800d4"