cdk-serverless 2.7.0 → 2.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
- window.searchData = JSON.parse("{\"rows\":[{\"kind\":32,\"name\":\"PACKAGE_NAME\",\"url\":\"variables/PACKAGE_NAME.html\",\"classes\":\"\"},{\"kind\":256,\"name\":\"ServerlessProjectOptions\",\"url\":\"interfaces/ServerlessProjectOptions.html\",\"classes\":\"\"},{\"kind\":128,\"name\":\"ServerlessProject\",\"url\":\"classes/ServerlessProject.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/ServerlessProject.html#constructor\",\"classes\":\"\",\"parent\":\"ServerlessProject\"},{\"kind\":256,\"name\":\"RestApiOptions\",\"url\":\"interfaces/RestApiOptions.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"apiName\",\"url\":\"interfaces/RestApiOptions.html#apiName\",\"classes\":\"\",\"parent\":\"RestApiOptions\"},{\"kind\":1024,\"name\":\"definitionFile\",\"url\":\"interfaces/RestApiOptions.html#definitionFile\",\"classes\":\"\",\"parent\":\"RestApiOptions\"},{\"kind\":128,\"name\":\"RestApi\",\"url\":\"classes/RestApi.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/RestApi.html#constructor\",\"classes\":\"\",\"parent\":\"RestApi\"},{\"kind\":1024,\"name\":\"options\",\"url\":\"classes/RestApi.html#options\",\"classes\":\"tsd-is-protected\",\"parent\":\"RestApi\"},{\"kind\":2048,\"name\":\"createConstructFile\",\"url\":\"classes/RestApi.html#createConstructFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"RestApi\"},{\"kind\":2048,\"name\":\"addRestResource\",\"url\":\"classes/RestApi.html#addRestResource\",\"classes\":\"tsd-is-protected\",\"parent\":\"RestApi\"},{\"kind\":2048,\"name\":\"createEntryFile\",\"url\":\"classes/RestApi.html#createEntryFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"RestApi\"},{\"kind\":256,\"name\":\"DatastoreOptions\",\"url\":\"interfaces/DatastoreOptions.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"modelName\",\"url\":\"interfaces/DatastoreOptions.html#modelName\",\"classes\":\"\",\"parent\":\"DatastoreOptions\"},{\"kind\":1024,\"name\":\"definitionFile\",\"url\":\"interfaces/DatastoreOptions.html#definitionFile\",\"classes\":\"\",\"parent\":\"DatastoreOptions\"},{\"kind\":128,\"name\":\"Datastore\",\"url\":\"classes/Datastore.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Datastore.html#constructor\",\"classes\":\"\",\"parent\":\"Datastore\"},{\"kind\":1024,\"name\":\"options\",\"url\":\"classes/Datastore.html#options\",\"classes\":\"tsd-is-protected\",\"parent\":\"Datastore\"},{\"kind\":2048,\"name\":\"createModelFile\",\"url\":\"classes/Datastore.html#createModelFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"Datastore\"},{\"kind\":2048,\"name\":\"stringifyModel\",\"url\":\"classes/Datastore.html#stringifyModel\",\"classes\":\"tsd-is-private\",\"parent\":\"Datastore\"},{\"kind\":2048,\"name\":\"createConstructFile\",\"url\":\"classes/Datastore.html#createConstructFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"Datastore\"},{\"kind\":256,\"name\":\"WorkflowOptions\",\"url\":\"interfaces/WorkflowOptions.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"workflowName\",\"url\":\"interfaces/WorkflowOptions.html#workflowName\",\"classes\":\"\",\"parent\":\"WorkflowOptions\"},{\"kind\":1024,\"name\":\"definitionFile\",\"url\":\"interfaces/WorkflowOptions.html#definitionFile\",\"classes\":\"\",\"parent\":\"WorkflowOptions\"},{\"kind\":128,\"name\":\"Workflow\",\"url\":\"classes/Workflow.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Workflow.html#constructor\",\"classes\":\"\",\"parent\":\"Workflow\"},{\"kind\":1024,\"name\":\"options\",\"url\":\"classes/Workflow.html#options\",\"classes\":\"tsd-is-protected\",\"parent\":\"Workflow\"},{\"kind\":2048,\"name\":\"createConstructFile\",\"url\":\"classes/Workflow.html#createConstructFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"Workflow\"},{\"kind\":2048,\"name\":\"renderStateConfigDefinition\",\"url\":\"classes/Workflow.html#renderStateConfigDefinition\",\"classes\":\"tsd-is-protected\",\"parent\":\"Workflow\"},{\"kind\":2048,\"name\":\"renderDefinitionSubstitution\",\"url\":\"classes/Workflow.html#renderDefinitionSubstitution\",\"classes\":\"tsd-is-protected\",\"parent\":\"Workflow\"},{\"kind\":256,\"name\":\"GraphQlApiOptions\",\"url\":\"interfaces/GraphQlApiOptions.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"apiName\",\"url\":\"interfaces/GraphQlApiOptions.html#apiName\",\"classes\":\"\",\"parent\":\"GraphQlApiOptions\"},{\"kind\":1024,\"name\":\"definitionFile\",\"url\":\"interfaces/GraphQlApiOptions.html#definitionFile\",\"classes\":\"\",\"parent\":\"GraphQlApiOptions\"},{\"kind\":128,\"name\":\"GraphQlApi\",\"url\":\"classes/GraphQlApi.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/GraphQlApi.html#constructor\",\"classes\":\"\",\"parent\":\"GraphQlApi\"},{\"kind\":1024,\"name\":\"options\",\"url\":\"classes/GraphQlApi.html#options\",\"classes\":\"tsd-is-protected\",\"parent\":\"GraphQlApi\"},{\"kind\":2048,\"name\":\"createConstructFile\",\"url\":\"classes/GraphQlApi.html#createConstructFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"GraphQlApi\"}],\"index\":{\"version\":\"2.3.9\",\"fields\":[\"name\",\"comment\"],\"fieldVectors\":[[\"name/0\",[0,32.581]],[\"comment/0\",[]],[\"name/1\",[1,32.581]],[\"comment/1\",[]],[\"name/2\",[2,32.581]],[\"comment/2\",[]],[\"name/3\",[3,19.588]],[\"comment/3\",[]],[\"name/4\",[4,32.581]],[\"comment/4\",[]],[\"name/5\",[5,27.473]],[\"comment/5\",[]],[\"name/6\",[6,21.595]],[\"comment/6\",[]],[\"name/7\",[7,32.581]],[\"comment/7\",[]],[\"name/8\",[3,19.588]],[\"comment/8\",[]],[\"name/9\",[8,21.595]],[\"comment/9\",[]],[\"name/10\",[9,21.595]],[\"comment/10\",[]],[\"name/11\",[10,32.581]],[\"comment/11\",[]],[\"name/12\",[11,32.581]],[\"comment/12\",[]],[\"name/13\",[12,32.581]],[\"comment/13\",[]],[\"name/14\",[13,32.581]],[\"comment/14\",[]],[\"name/15\",[6,21.595]],[\"comment/15\",[]],[\"name/16\",[14,32.581]],[\"comment/16\",[]],[\"name/17\",[3,19.588]],[\"comment/17\",[]],[\"name/18\",[8,21.595]],[\"comment/18\",[]],[\"name/19\",[15,32.581]],[\"comment/19\",[]],[\"name/20\",[16,32.581]],[\"comment/20\",[]],[\"name/21\",[9,21.595]],[\"comment/21\",[]],[\"name/22\",[17,32.581]],[\"comment/22\",[]],[\"name/23\",[18,32.581]],[\"comment/23\",[]],[\"name/24\",[6,21.595]],[\"comment/24\",[]],[\"name/25\",[19,32.581]],[\"comment/25\",[]],[\"name/26\",[3,19.588]],[\"comment/26\",[]],[\"name/27\",[8,21.595]],[\"comment/27\",[]],[\"name/28\",[9,21.595]],[\"comment/28\",[]],[\"name/29\",[20,32.581]],[\"comment/29\",[]],[\"name/30\",[21,32.581]],[\"comment/30\",[]],[\"name/31\",[22,32.581]],[\"comment/31\",[]],[\"name/32\",[5,27.473]],[\"comment/32\",[]],[\"name/33\",[6,21.595]],[\"comment/33\",[]],[\"name/34\",[23,32.581]],[\"comment/34\",[]],[\"name/35\",[3,19.588]],[\"comment/35\",[]],[\"name/36\",[8,21.595]],[\"comment/36\",[]],[\"name/37\",[9,21.595]],[\"comment/37\",[]]],\"invertedIndex\":[[\"addrestresource\",{\"_index\":10,\"name\":{\"11\":{}},\"comment\":{}}],[\"apiname\",{\"_index\":5,\"name\":{\"5\":{},\"32\":{}},\"comment\":{}}],[\"constructor\",{\"_index\":3,\"name\":{\"3\":{},\"8\":{},\"17\":{},\"26\":{},\"35\":{}},\"comment\":{}}],[\"createconstructfile\",{\"_index\":9,\"name\":{\"10\":{},\"21\":{},\"28\":{},\"37\":{}},\"comment\":{}}],[\"createentryfile\",{\"_index\":11,\"name\":{\"12\":{}},\"comment\":{}}],[\"createmodelfile\",{\"_index\":15,\"name\":{\"19\":{}},\"comment\":{}}],[\"datastore\",{\"_index\":14,\"name\":{\"16\":{}},\"comment\":{}}],[\"datastoreoptions\",{\"_index\":12,\"name\":{\"13\":{}},\"comment\":{}}],[\"definitionfile\",{\"_index\":6,\"name\":{\"6\":{},\"15\":{},\"24\":{},\"33\":{}},\"comment\":{}}],[\"graphqlapi\",{\"_index\":23,\"name\":{\"34\":{}},\"comment\":{}}],[\"graphqlapioptions\",{\"_index\":22,\"name\":{\"31\":{}},\"comment\":{}}],[\"modelname\",{\"_index\":13,\"name\":{\"14\":{}},\"comment\":{}}],[\"options\",{\"_index\":8,\"name\":{\"9\":{},\"18\":{},\"27\":{},\"36\":{}},\"comment\":{}}],[\"package_name\",{\"_index\":0,\"name\":{\"0\":{}},\"comment\":{}}],[\"renderdefinitionsubstitution\",{\"_index\":21,\"name\":{\"30\":{}},\"comment\":{}}],[\"renderstateconfigdefinition\",{\"_index\":20,\"name\":{\"29\":{}},\"comment\":{}}],[\"restapi\",{\"_index\":7,\"name\":{\"7\":{}},\"comment\":{}}],[\"restapioptions\",{\"_index\":4,\"name\":{\"4\":{}},\"comment\":{}}],[\"serverlessproject\",{\"_index\":2,\"name\":{\"2\":{}},\"comment\":{}}],[\"serverlessprojectoptions\",{\"_index\":1,\"name\":{\"1\":{}},\"comment\":{}}],[\"stringifymodel\",{\"_index\":16,\"name\":{\"20\":{}},\"comment\":{}}],[\"workflow\",{\"_index\":19,\"name\":{\"25\":{}},\"comment\":{}}],[\"workflowname\",{\"_index\":18,\"name\":{\"23\":{}},\"comment\":{}}],[\"workflowoptions\",{\"_index\":17,\"name\":{\"22\":{}},\"comment\":{}}]],\"pipeline\":[]}}");
1
+ window.searchData = JSON.parse("{\"rows\":[{\"kind\":32,\"name\":\"PACKAGE_NAME\",\"url\":\"variables/PACKAGE_NAME.html\",\"classes\":\"\"},{\"kind\":256,\"name\":\"ServerlessProjectOptions\",\"url\":\"interfaces/ServerlessProjectOptions.html\",\"classes\":\"\"},{\"kind\":128,\"name\":\"ServerlessProject\",\"url\":\"classes/ServerlessProject.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/ServerlessProject.html#constructor\",\"classes\":\"\",\"parent\":\"ServerlessProject\"},{\"kind\":256,\"name\":\"RestApiOptions\",\"url\":\"interfaces/RestApiOptions.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"apiName\",\"url\":\"interfaces/RestApiOptions.html#apiName\",\"classes\":\"\",\"parent\":\"RestApiOptions\"},{\"kind\":1024,\"name\":\"definitionFile\",\"url\":\"interfaces/RestApiOptions.html#definitionFile\",\"classes\":\"\",\"parent\":\"RestApiOptions\"},{\"kind\":128,\"name\":\"RestApi\",\"url\":\"classes/RestApi.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/RestApi.html#constructor\",\"classes\":\"\",\"parent\":\"RestApi\"},{\"kind\":1024,\"name\":\"options\",\"url\":\"classes/RestApi.html#options\",\"classes\":\"tsd-is-protected\",\"parent\":\"RestApi\"},{\"kind\":2048,\"name\":\"createConstructFile\",\"url\":\"classes/RestApi.html#createConstructFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"RestApi\"},{\"kind\":2048,\"name\":\"validatePathRef\",\"url\":\"classes/RestApi.html#validatePathRef\",\"classes\":\"tsd-is-protected\",\"parent\":\"RestApi\"},{\"kind\":2048,\"name\":\"addRestResource\",\"url\":\"classes/RestApi.html#addRestResource\",\"classes\":\"tsd-is-protected\",\"parent\":\"RestApi\"},{\"kind\":2048,\"name\":\"createEntryFile\",\"url\":\"classes/RestApi.html#createEntryFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"RestApi\"},{\"kind\":2048,\"name\":\"synthesize\",\"url\":\"classes/RestApi.html#synthesize\",\"classes\":\"\",\"parent\":\"RestApi\"},{\"kind\":256,\"name\":\"DatastoreOptions\",\"url\":\"interfaces/DatastoreOptions.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"modelName\",\"url\":\"interfaces/DatastoreOptions.html#modelName\",\"classes\":\"\",\"parent\":\"DatastoreOptions\"},{\"kind\":1024,\"name\":\"definitionFile\",\"url\":\"interfaces/DatastoreOptions.html#definitionFile\",\"classes\":\"\",\"parent\":\"DatastoreOptions\"},{\"kind\":128,\"name\":\"Datastore\",\"url\":\"classes/Datastore.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Datastore.html#constructor\",\"classes\":\"\",\"parent\":\"Datastore\"},{\"kind\":1024,\"name\":\"options\",\"url\":\"classes/Datastore.html#options\",\"classes\":\"tsd-is-protected\",\"parent\":\"Datastore\"},{\"kind\":2048,\"name\":\"createModelFile\",\"url\":\"classes/Datastore.html#createModelFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"Datastore\"},{\"kind\":2048,\"name\":\"stringifyModel\",\"url\":\"classes/Datastore.html#stringifyModel\",\"classes\":\"tsd-is-private\",\"parent\":\"Datastore\"},{\"kind\":2048,\"name\":\"createConstructFile\",\"url\":\"classes/Datastore.html#createConstructFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"Datastore\"},{\"kind\":2048,\"name\":\"synthesize\",\"url\":\"classes/Datastore.html#synthesize\",\"classes\":\"\",\"parent\":\"Datastore\"},{\"kind\":256,\"name\":\"WorkflowOptions\",\"url\":\"interfaces/WorkflowOptions.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"workflowName\",\"url\":\"interfaces/WorkflowOptions.html#workflowName\",\"classes\":\"\",\"parent\":\"WorkflowOptions\"},{\"kind\":1024,\"name\":\"definitionFile\",\"url\":\"interfaces/WorkflowOptions.html#definitionFile\",\"classes\":\"\",\"parent\":\"WorkflowOptions\"},{\"kind\":128,\"name\":\"Workflow\",\"url\":\"classes/Workflow.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/Workflow.html#constructor\",\"classes\":\"\",\"parent\":\"Workflow\"},{\"kind\":1024,\"name\":\"options\",\"url\":\"classes/Workflow.html#options\",\"classes\":\"tsd-is-protected\",\"parent\":\"Workflow\"},{\"kind\":2048,\"name\":\"createConstructFile\",\"url\":\"classes/Workflow.html#createConstructFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"Workflow\"},{\"kind\":2048,\"name\":\"renderStateConfigDefinition\",\"url\":\"classes/Workflow.html#renderStateConfigDefinition\",\"classes\":\"tsd-is-protected\",\"parent\":\"Workflow\"},{\"kind\":2048,\"name\":\"renderDefinitionSubstitution\",\"url\":\"classes/Workflow.html#renderDefinitionSubstitution\",\"classes\":\"tsd-is-protected\",\"parent\":\"Workflow\"},{\"kind\":2048,\"name\":\"synthesize\",\"url\":\"classes/Workflow.html#synthesize\",\"classes\":\"\",\"parent\":\"Workflow\"},{\"kind\":256,\"name\":\"GraphQlApiOptions\",\"url\":\"interfaces/GraphQlApiOptions.html\",\"classes\":\"\"},{\"kind\":1024,\"name\":\"apiName\",\"url\":\"interfaces/GraphQlApiOptions.html#apiName\",\"classes\":\"\",\"parent\":\"GraphQlApiOptions\"},{\"kind\":1024,\"name\":\"definitionFile\",\"url\":\"interfaces/GraphQlApiOptions.html#definitionFile\",\"classes\":\"\",\"parent\":\"GraphQlApiOptions\"},{\"kind\":128,\"name\":\"GraphQlApi\",\"url\":\"classes/GraphQlApi.html\",\"classes\":\"\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/GraphQlApi.html#constructor\",\"classes\":\"\",\"parent\":\"GraphQlApi\"},{\"kind\":1024,\"name\":\"codegenConfigFileName\",\"url\":\"classes/GraphQlApi.html#codegenConfigFileName\",\"classes\":\"tsd-is-protected\",\"parent\":\"GraphQlApi\"},{\"kind\":1024,\"name\":\"options\",\"url\":\"classes/GraphQlApi.html#options\",\"classes\":\"tsd-is-protected\",\"parent\":\"GraphQlApi\"},{\"kind\":2048,\"name\":\"createConstructFile\",\"url\":\"classes/GraphQlApi.html#createConstructFile\",\"classes\":\"tsd-is-protected\",\"parent\":\"GraphQlApi\"},{\"kind\":2048,\"name\":\"synthesize\",\"url\":\"classes/GraphQlApi.html#synthesize\",\"classes\":\"\",\"parent\":\"GraphQlApi\"}],\"index\":{\"version\":\"2.3.9\",\"fields\":[\"name\",\"comment\"],\"fieldVectors\":[[\"name/0\",[0,34.012]],[\"comment/0\",[]],[\"name/1\",[1,34.012]],[\"comment/1\",[]],[\"name/2\",[2,34.012]],[\"comment/2\",[]],[\"name/3\",[3,21.019]],[\"comment/3\",[]],[\"name/4\",[4,34.012]],[\"comment/4\",[]],[\"name/5\",[5,28.904]],[\"comment/5\",[]],[\"name/6\",[6,23.026]],[\"comment/6\",[]],[\"name/7\",[7,34.012]],[\"comment/7\",[]],[\"name/8\",[3,21.019]],[\"comment/8\",[]],[\"name/9\",[8,23.026]],[\"comment/9\",[]],[\"name/10\",[9,23.026]],[\"comment/10\",[]],[\"name/11\",[10,34.012]],[\"comment/11\",[]],[\"name/12\",[11,34.012]],[\"comment/12\",[]],[\"name/13\",[12,34.012]],[\"comment/13\",[]],[\"name/14\",[13,23.026]],[\"comment/14\",[]],[\"name/15\",[14,34.012]],[\"comment/15\",[]],[\"name/16\",[15,34.012]],[\"comment/16\",[]],[\"name/17\",[6,23.026]],[\"comment/17\",[]],[\"name/18\",[16,34.012]],[\"comment/18\",[]],[\"name/19\",[3,21.019]],[\"comment/19\",[]],[\"name/20\",[8,23.026]],[\"comment/20\",[]],[\"name/21\",[17,34.012]],[\"comment/21\",[]],[\"name/22\",[18,34.012]],[\"comment/22\",[]],[\"name/23\",[9,23.026]],[\"comment/23\",[]],[\"name/24\",[13,23.026]],[\"comment/24\",[]],[\"name/25\",[19,34.012]],[\"comment/25\",[]],[\"name/26\",[20,34.012]],[\"comment/26\",[]],[\"name/27\",[6,23.026]],[\"comment/27\",[]],[\"name/28\",[21,34.012]],[\"comment/28\",[]],[\"name/29\",[3,21.019]],[\"comment/29\",[]],[\"name/30\",[8,23.026]],[\"comment/30\",[]],[\"name/31\",[9,23.026]],[\"comment/31\",[]],[\"name/32\",[22,34.012]],[\"comment/32\",[]],[\"name/33\",[23,34.012]],[\"comment/33\",[]],[\"name/34\",[13,23.026]],[\"comment/34\",[]],[\"name/35\",[24,34.012]],[\"comment/35\",[]],[\"name/36\",[5,28.904]],[\"comment/36\",[]],[\"name/37\",[6,23.026]],[\"comment/37\",[]],[\"name/38\",[25,34.012]],[\"comment/38\",[]],[\"name/39\",[3,21.019]],[\"comment/39\",[]],[\"name/40\",[26,34.012]],[\"comment/40\",[]],[\"name/41\",[8,23.026]],[\"comment/41\",[]],[\"name/42\",[9,23.026]],[\"comment/42\",[]],[\"name/43\",[13,23.026]],[\"comment/43\",[]]],\"invertedIndex\":[[\"addrestresource\",{\"_index\":11,\"name\":{\"12\":{}},\"comment\":{}}],[\"apiname\",{\"_index\":5,\"name\":{\"5\":{},\"36\":{}},\"comment\":{}}],[\"codegenconfigfilename\",{\"_index\":26,\"name\":{\"40\":{}},\"comment\":{}}],[\"constructor\",{\"_index\":3,\"name\":{\"3\":{},\"8\":{},\"19\":{},\"29\":{},\"39\":{}},\"comment\":{}}],[\"createconstructfile\",{\"_index\":9,\"name\":{\"10\":{},\"23\":{},\"31\":{},\"42\":{}},\"comment\":{}}],[\"createentryfile\",{\"_index\":12,\"name\":{\"13\":{}},\"comment\":{}}],[\"createmodelfile\",{\"_index\":17,\"name\":{\"21\":{}},\"comment\":{}}],[\"datastore\",{\"_index\":16,\"name\":{\"18\":{}},\"comment\":{}}],[\"datastoreoptions\",{\"_index\":14,\"name\":{\"15\":{}},\"comment\":{}}],[\"definitionfile\",{\"_index\":6,\"name\":{\"6\":{},\"17\":{},\"27\":{},\"37\":{}},\"comment\":{}}],[\"graphqlapi\",{\"_index\":25,\"name\":{\"38\":{}},\"comment\":{}}],[\"graphqlapioptions\",{\"_index\":24,\"name\":{\"35\":{}},\"comment\":{}}],[\"modelname\",{\"_index\":15,\"name\":{\"16\":{}},\"comment\":{}}],[\"options\",{\"_index\":8,\"name\":{\"9\":{},\"20\":{},\"30\":{},\"41\":{}},\"comment\":{}}],[\"package_name\",{\"_index\":0,\"name\":{\"0\":{}},\"comment\":{}}],[\"renderdefinitionsubstitution\",{\"_index\":23,\"name\":{\"33\":{}},\"comment\":{}}],[\"renderstateconfigdefinition\",{\"_index\":22,\"name\":{\"32\":{}},\"comment\":{}}],[\"restapi\",{\"_index\":7,\"name\":{\"7\":{}},\"comment\":{}}],[\"restapioptions\",{\"_index\":4,\"name\":{\"4\":{}},\"comment\":{}}],[\"serverlessproject\",{\"_index\":2,\"name\":{\"2\":{}},\"comment\":{}}],[\"serverlessprojectoptions\",{\"_index\":1,\"name\":{\"1\":{}},\"comment\":{}}],[\"stringifymodel\",{\"_index\":18,\"name\":{\"22\":{}},\"comment\":{}}],[\"synthesize\",{\"_index\":13,\"name\":{\"14\":{},\"24\":{},\"34\":{},\"43\":{}},\"comment\":{}}],[\"validatepathref\",{\"_index\":10,\"name\":{\"11\":{}},\"comment\":{}}],[\"workflow\",{\"_index\":21,\"name\":{\"28\":{}},\"comment\":{}}],[\"workflowname\",{\"_index\":20,\"name\":{\"26\":{}},\"comment\":{}}],[\"workflowoptions\",{\"_index\":19,\"name\":{\"25\":{}},\"comment\":{}}]],\"pipeline\":[]}}");
@@ -42,7 +42,7 @@
42
42
  <a href="Datastore.html#postSynthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>post<wbr/>Synthesize</span></a>
43
43
  <a href="Datastore.html#preSynthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>pre<wbr/>Synthesize</span></a>
44
44
  <a href="Datastore.html#stringifyModel" class="tsd-index-link tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>stringify<wbr/>Model</span></a>
45
- <a href="Datastore.html#synthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a>
45
+ <a href="Datastore.html#synthesize" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a>
46
46
  </div></section></div></details></section></section>
47
47
  <section class="tsd-panel-group tsd-member-group">
48
48
  <h2>Constructors</h2>
@@ -128,16 +128,13 @@
128
128
  <li>
129
129
  <h5><span class="tsd-kind-parameter">model</span>: <span class="tsd-signature-type ">OneSchema</span></h5></li></ul></div>
130
130
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section>
131
- <section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="synthesize" class="tsd-anchor"></a>
131
+ <section class="tsd-panel tsd-member"><a id="synthesize" class="tsd-anchor"></a>
132
132
  <h3 class="tsd-anchor-link"><span>synthesize</span><a href="#synthesize" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
133
- <ul class="tsd-signatures tsd-is-inherited tsd-is-external">
133
+ <ul class="tsd-signatures">
134
134
  <li class="tsd-signature tsd-anchor-link" id="synthesize.synthesize-1"><span class="tsd-kind-call-signature">synthesize</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#synthesize.synthesize-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
135
135
  <li class="tsd-description">
136
- <div class="tsd-comment tsd-typography"><p>Synthesizes files to the project output directory.</p>
137
- </div>
138
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
139
- <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
140
- <p>Inherited from pj.Component.synthesize</p></aside></li></ul></section></section></div>
136
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
137
+ <p>Overrides pj.Component.synthesize</p></aside></li></ul></section></section></div>
141
138
  <div class="col-sidebar">
142
139
  <div class="page-menu">
143
140
  <div class="tsd-navigation settings">
@@ -165,7 +162,7 @@
165
162
  <li><a href="#postSynthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>post<wbr/>Synthesize</span></a></li>
166
163
  <li><a href="#preSynthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>pre<wbr/>Synthesize</span></a></li>
167
164
  <li><a href="#stringifyModel" class="tsd-is-private"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>stringify<wbr/>Model</span></a></li>
168
- <li><a href="#synthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a></li></ul></div></details></div>
165
+ <li><a href="#synthesize" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a></li></ul></div></details></div>
169
166
  <div class="site-menu">
170
167
  <nav class="tsd-navigation"><a href="../modules.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-4"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.33 16V7.24H10.77L13.446 14.74C13.43 14.54 13.41 14.296 13.386 14.008C13.37 13.712 13.354 13.404 13.338 13.084C13.33 12.756 13.326 12.448 13.326 12.16V7.24H14.37V16H12.93L10.266 8.5C10.282 8.692 10.298 8.936 10.314 9.232C10.33 9.52 10.342 9.828 10.35 10.156C10.366 10.476 10.374 10.784 10.374 11.08V16H9.33Z" fill="var(--color-text)"></path></g></svg><span>cdk-<wbr/>serverless</span></a>
171
168
  <ul class="tsd-small-nested-navigation">
@@ -32,7 +32,8 @@
32
32
  </div></section>
33
33
  <section class="tsd-index-section">
34
34
  <h3 class="tsd-index-heading">Properties</h3>
35
- <div class="tsd-index-list"><a href="GraphQlApi.html#options" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-1024"><rect fill="var(--color-icon-background)" stroke="#FF984D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.354 16V7.24H12.174C12.99 7.24 13.638 7.476 14.118 7.948C14.606 8.412 14.85 9.036 14.85 9.82C14.85 10.604 14.606 11.232 14.118 11.704C13.638 12.168 12.99 12.4 12.174 12.4H10.434V16H9.354ZM10.434 11.428H12.174C12.646 11.428 13.022 11.284 13.302 10.996C13.59 10.7 13.734 10.308 13.734 9.82C13.734 9.324 13.59 8.932 13.302 8.644C13.022 8.356 12.646 8.212 12.174 8.212H10.434V11.428Z" fill="var(--color-text)"></path></g></svg><span>options</span></a>
35
+ <div class="tsd-index-list"><a href="GraphQlApi.html#codegenConfigFileName" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-1024"><rect fill="var(--color-icon-background)" stroke="#FF984D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.354 16V7.24H12.174C12.99 7.24 13.638 7.476 14.118 7.948C14.606 8.412 14.85 9.036 14.85 9.82C14.85 10.604 14.606 11.232 14.118 11.704C13.638 12.168 12.99 12.4 12.174 12.4H10.434V16H9.354ZM10.434 11.428H12.174C12.646 11.428 13.022 11.284 13.302 10.996C13.59 10.7 13.734 10.308 13.734 9.82C13.734 9.324 13.59 8.932 13.302 8.644C13.022 8.356 12.646 8.212 12.174 8.212H10.434V11.428Z" fill="var(--color-text)"></path></g></svg><span>codegen<wbr/>Config<wbr/>File<wbr/>Name</span></a>
36
+ <a href="GraphQlApi.html#options" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>options</span></a>
36
37
  <a href="GraphQlApi.html#project" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>project</span></a>
37
38
  </div></section>
38
39
  <section class="tsd-index-section">
@@ -40,7 +41,7 @@
40
41
  <div class="tsd-index-list"><a href="GraphQlApi.html#createConstructFile" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-2048"><rect fill="var(--color-icon-background)" stroke="#FF4DB8" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.162 16V7.24H10.578L11.514 10.072C11.602 10.328 11.674 10.584 11.73 10.84C11.794 11.088 11.842 11.28 11.874 11.416C11.906 11.28 11.954 11.088 12.018 10.84C12.082 10.584 12.154 10.324 12.234 10.06L13.122 7.24H14.538V16H13.482V12.82C13.482 12.468 13.49 12.068 13.506 11.62C13.53 11.172 13.558 10.716 13.59 10.252C13.622 9.78 13.654 9.332 13.686 8.908C13.726 8.476 13.762 8.1 13.794 7.78L12.366 12.16H11.334L9.894 7.78C9.934 8.092 9.97 8.456 10.002 8.872C10.042 9.28 10.078 9.716 10.11 10.18C10.142 10.636 10.166 11.092 10.182 11.548C10.206 12.004 10.218 12.428 10.218 12.82V16H9.162Z" fill="var(--color-text)"></path></g></svg><span>create<wbr/>Construct<wbr/>File</span></a>
41
42
  <a href="GraphQlApi.html#postSynthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>post<wbr/>Synthesize</span></a>
42
43
  <a href="GraphQlApi.html#preSynthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>pre<wbr/>Synthesize</span></a>
43
- <a href="GraphQlApi.html#synthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a>
44
+ <a href="GraphQlApi.html#synthesize" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a>
44
45
  </div></section></div></details></section></section>
45
46
  <section class="tsd-panel-group tsd-member-group">
46
47
  <h2>Constructors</h2>
@@ -60,6 +61,9 @@
60
61
  <p>Overrides pj.Component.constructor</p></aside></li></ul></section></section>
61
62
  <section class="tsd-panel-group tsd-member-group">
62
63
  <h2>Properties</h2>
64
+ <section class="tsd-panel tsd-member tsd-is-protected"><a id="codegenConfigFileName" class="tsd-anchor"></a>
65
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <code class="tsd-tag ts-flagReadonly">Readonly</code> <span>codegen<wbr/>Config<wbr/>File<wbr/>Name</span><a href="#codegenConfigFileName" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
66
+ <div class="tsd-signature"><span class="tsd-kind-property">codegen<wbr/>Config<wbr/>File<wbr/>Name</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div></section>
63
67
  <section class="tsd-panel tsd-member tsd-is-protected"><a id="options" class="tsd-anchor"></a>
64
68
  <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>options</span><a href="#options" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
65
69
  <div class="tsd-signature"><span class="tsd-kind-property">options</span><span class="tsd-signature-symbol">:</span> <a href="../interfaces/GraphQlApiOptions.html" class="tsd-signature-type tsd-kind-interface">GraphQlApiOptions</a></div></section>
@@ -100,16 +104,13 @@
100
104
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
101
105
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
102
106
  <p>Inherited from pj.Component.preSynthesize</p></aside></li></ul></section>
103
- <section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="synthesize" class="tsd-anchor"></a>
107
+ <section class="tsd-panel tsd-member"><a id="synthesize" class="tsd-anchor"></a>
104
108
  <h3 class="tsd-anchor-link"><span>synthesize</span><a href="#synthesize" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
105
- <ul class="tsd-signatures tsd-is-inherited tsd-is-external">
109
+ <ul class="tsd-signatures">
106
110
  <li class="tsd-signature tsd-anchor-link" id="synthesize.synthesize-1"><span class="tsd-kind-call-signature">synthesize</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#synthesize.synthesize-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
107
111
  <li class="tsd-description">
108
- <div class="tsd-comment tsd-typography"><p>Synthesizes files to the project output directory.</p>
109
- </div>
110
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
111
- <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
112
- <p>Inherited from pj.Component.synthesize</p></aside></li></ul></section></section></div>
112
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
113
+ <p>Overrides pj.Component.synthesize</p></aside></li></ul></section></section></div>
113
114
  <div class="col-sidebar">
114
115
  <div class="page-menu">
115
116
  <div class="tsd-navigation settings">
@@ -130,12 +131,13 @@
130
131
  <div class="tsd-accordion-details">
131
132
  <ul>
132
133
  <li><a href="#constructor" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-512"></use></svg><span>constructor</span></a></li>
134
+ <li><a href="#codegenConfigFileName" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>codegen<wbr/>Config<wbr/>File<wbr/>Name</span></a></li>
133
135
  <li><a href="#options" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>options</span></a></li>
134
136
  <li><a href="#project" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>project</span></a></li>
135
137
  <li><a href="#createConstructFile" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Construct<wbr/>File</span></a></li>
136
138
  <li><a href="#postSynthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>post<wbr/>Synthesize</span></a></li>
137
139
  <li><a href="#preSynthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>pre<wbr/>Synthesize</span></a></li>
138
- <li><a href="#synthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a></li></ul></div></details></div>
140
+ <li><a href="#synthesize" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a></li></ul></div></details></div>
139
141
  <div class="site-menu">
140
142
  <nav class="tsd-navigation"><a href="../modules.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-4"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.33 16V7.24H10.77L13.446 14.74C13.43 14.54 13.41 14.296 13.386 14.008C13.37 13.712 13.354 13.404 13.338 13.084C13.33 12.756 13.326 12.448 13.326 12.16V7.24H14.37V16H12.93L10.266 8.5C10.282 8.692 10.298 8.936 10.314 9.232C10.33 9.52 10.342 9.828 10.35 10.156C10.366 10.476 10.374 10.784 10.374 11.08V16H9.33Z" fill="var(--color-text)"></path></g></svg><span>cdk-<wbr/>serverless</span></a>
141
143
  <ul class="tsd-small-nested-navigation">
@@ -42,7 +42,8 @@
42
42
  <a href="RestApi.html#createEntryFile" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Entry<wbr/>File</span></a>
43
43
  <a href="RestApi.html#postSynthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>post<wbr/>Synthesize</span></a>
44
44
  <a href="RestApi.html#preSynthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>pre<wbr/>Synthesize</span></a>
45
- <a href="RestApi.html#synthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a>
45
+ <a href="RestApi.html#synthesize" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a>
46
+ <a href="RestApi.html#validatePathRef" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>validate<wbr/>Path<wbr/>Ref</span></a>
46
47
  </div></section></div></details></section></section>
47
48
  <section class="tsd-panel-group tsd-member-group">
48
49
  <h2>Constructors</h2>
@@ -132,16 +133,28 @@
132
133
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
133
134
  <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
134
135
  <p>Inherited from pj.Component.preSynthesize</p></aside></li></ul></section>
135
- <section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="synthesize" class="tsd-anchor"></a>
136
+ <section class="tsd-panel tsd-member"><a id="synthesize" class="tsd-anchor"></a>
136
137
  <h3 class="tsd-anchor-link"><span>synthesize</span><a href="#synthesize" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
137
- <ul class="tsd-signatures tsd-is-inherited tsd-is-external">
138
+ <ul class="tsd-signatures">
138
139
  <li class="tsd-signature tsd-anchor-link" id="synthesize.synthesize-1"><span class="tsd-kind-call-signature">synthesize</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#synthesize.synthesize-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
139
140
  <li class="tsd-description">
140
- <div class="tsd-comment tsd-typography"><p>Synthesizes files to the project output directory.</p>
141
- </div>
142
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
143
- <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
144
- <p>Inherited from pj.Component.synthesize</p></aside></li></ul></section></section></div>
141
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
142
+ <p>Overrides pj.Component.synthesize</p></aside></li></ul></section>
143
+ <section class="tsd-panel tsd-member tsd-is-protected"><a id="validatePathRef" class="tsd-anchor"></a>
144
+ <h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagProtected">Protected</code> <span>validate<wbr/>Path<wbr/>Ref</span><a href="#validatePathRef" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
145
+ <ul class="tsd-signatures tsd-is-protected">
146
+ <li class="tsd-signature tsd-anchor-link" id="validatePathRef.validatePathRef-1"><span class="tsd-kind-call-signature">validate<wbr/>Path<wbr/>Ref</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">apiSpec</span>, <span class="tsd-kind-parameter">path</span>, <span class="tsd-kind-parameter">visited</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#validatePathRef.validatePathRef-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
147
+ <li class="tsd-description">
148
+ <div class="tsd-parameters">
149
+ <h4 class="tsd-parameters-title">Parameters</h4>
150
+ <ul class="tsd-parameter-list">
151
+ <li>
152
+ <h5><span class="tsd-kind-parameter">apiSpec</span>: <span class="tsd-signature-type ">OpenAPI3</span></h5></li>
153
+ <li>
154
+ <h5><span class="tsd-kind-parameter">path</span>: <span class="tsd-signature-type">string</span></h5></li>
155
+ <li>
156
+ <h5><span class="tsd-kind-parameter">visited</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = []</span></h5></li></ul></div>
157
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section></section></div>
145
158
  <div class="col-sidebar">
146
159
  <div class="page-menu">
147
160
  <div class="tsd-navigation settings">
@@ -169,7 +182,8 @@
169
182
  <li><a href="#createEntryFile" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>create<wbr/>Entry<wbr/>File</span></a></li>
170
183
  <li><a href="#postSynthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>post<wbr/>Synthesize</span></a></li>
171
184
  <li><a href="#preSynthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>pre<wbr/>Synthesize</span></a></li>
172
- <li><a href="#synthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a></li></ul></div></details></div>
185
+ <li><a href="#synthesize" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a></li>
186
+ <li><a href="#validatePathRef" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>validate<wbr/>Path<wbr/>Ref</span></a></li></ul></div></details></div>
173
187
  <div class="site-menu">
174
188
  <nav class="tsd-navigation"><a href="../modules.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-4"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.33 16V7.24H10.77L13.446 14.74C13.43 14.54 13.41 14.296 13.386 14.008C13.37 13.712 13.354 13.404 13.338 13.084C13.33 12.756 13.326 12.448 13.326 12.16V7.24H14.37V16H12.93L10.266 8.5C10.282 8.692 10.298 8.936 10.314 9.232C10.33 9.52 10.342 9.828 10.35 10.156C10.366 10.476 10.374 10.784 10.374 11.08V16H9.33Z" fill="var(--color-text)"></path></g></svg><span>cdk-<wbr/>serverless</span></a>
175
189
  <ul class="tsd-small-nested-navigation">
@@ -42,7 +42,7 @@
42
42
  <a href="Workflow.html#preSynthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>pre<wbr/>Synthesize</span></a>
43
43
  <a href="Workflow.html#renderDefinitionSubstitution" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>render<wbr/>Definition<wbr/>Substitution</span></a>
44
44
  <a href="Workflow.html#renderStateConfigDefinition" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>render<wbr/>State<wbr/>Config<wbr/>Definition</span></a>
45
- <a href="Workflow.html#synthesize" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a>
45
+ <a href="Workflow.html#synthesize" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a>
46
46
  </div></section></div></details></section></section>
47
47
  <section class="tsd-panel-group tsd-member-group">
48
48
  <h2>Constructors</h2>
@@ -126,16 +126,13 @@
126
126
  <li>
127
127
  <h5><span class="tsd-kind-parameter">def</span>: <span class="tsd-signature-type ">VariableDefinition</span></h5></li></ul></div>
128
128
  <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4></li></ul></section>
129
- <section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="synthesize" class="tsd-anchor"></a>
129
+ <section class="tsd-panel tsd-member"><a id="synthesize" class="tsd-anchor"></a>
130
130
  <h3 class="tsd-anchor-link"><span>synthesize</span><a href="#synthesize" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
131
- <ul class="tsd-signatures tsd-is-inherited tsd-is-external">
131
+ <ul class="tsd-signatures">
132
132
  <li class="tsd-signature tsd-anchor-link" id="synthesize.synthesize-1"><span class="tsd-kind-call-signature">synthesize</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#synthesize.synthesize-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
133
133
  <li class="tsd-description">
134
- <div class="tsd-comment tsd-typography"><p>Synthesizes files to the project output directory.</p>
135
- </div>
136
- <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
137
- <div class="tsd-comment tsd-typography"></div><aside class="tsd-sources">
138
- <p>Inherited from pj.Component.synthesize</p></aside></li></ul></section></section></div>
134
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
135
+ <p>Overrides pj.Component.synthesize</p></aside></li></ul></section></section></div>
139
136
  <div class="col-sidebar">
140
137
  <div class="page-menu">
141
138
  <div class="tsd-navigation settings">
@@ -163,7 +160,7 @@
163
160
  <li><a href="#preSynthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>pre<wbr/>Synthesize</span></a></li>
164
161
  <li><a href="#renderDefinitionSubstitution" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>render<wbr/>Definition<wbr/>Substitution</span></a></li>
165
162
  <li><a href="#renderStateConfigDefinition" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>render<wbr/>State<wbr/>Config<wbr/>Definition</span></a></li>
166
- <li><a href="#synthesize" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a></li></ul></div></details></div>
163
+ <li><a href="#synthesize" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>synthesize</span></a></li></ul></div></details></div>
167
164
  <div class="site-menu">
168
165
  <nav class="tsd-navigation"><a href="../modules.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-4"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.33 16V7.24H10.77L13.446 14.74C13.43 14.54 13.41 14.296 13.386 14.008C13.37 13.712 13.354 13.404 13.338 13.084C13.33 12.756 13.326 12.448 13.326 12.16V7.24H14.37V16H12.93L10.266 8.5C10.282 8.692 10.298 8.936 10.314 9.232C10.33 9.52 10.342 9.828 10.35 10.156C10.366 10.476 10.374 10.784 10.374 11.08V16H9.33Z" fill="var(--color-text)"></path></g></svg><span>cdk-<wbr/>serverless</span></a>
169
166
  <ul class="tsd-small-nested-navigation">
@@ -10,4 +10,5 @@ export declare class Datastore extends pj.Component {
10
10
  protected createModelFile(fileName: string, model: OneSchema): void;
11
11
  private stringifyModel;
12
12
  protected createConstructFile(fileName: string, model: OneSchema): void;
13
+ synthesize(): void;
13
14
  }
@@ -33,9 +33,6 @@ class Datastore extends pj.Component {
33
33
  this.options = options;
34
34
  app.addDeps('dynamodb-onetable', '@aws-sdk/client-dynamodb', '@aws-sdk/lib-dynamodb', 'uuid');
35
35
  app.addDevDeps('@types/uuid');
36
- const model = JSON.parse(fs.readFileSync(options.definitionFile).toString());
37
- this.createModelFile(`./src/generated/datastore.${options.modelName.toLowerCase()}-model.generated.ts`, model);
38
- this.createConstructFile(`./src/generated/datastore.${options.modelName.toLowerCase()}-construct.generated.ts`, model);
39
36
  }
40
37
  createModelFile(fileName, model) {
41
38
  fs.writeFileSync(fileName, `/* eslint-disable */
@@ -139,6 +136,45 @@ export class ${this.options.modelName}Datastore extends SingleTableDatastore {
139
136
  encoding: 'utf-8',
140
137
  });
141
138
  }
139
+ synthesize() {
140
+ super.synthesize();
141
+ if (!fs.existsSync(this.options.definitionFile)) {
142
+ fs.writeFileSync(this.options.definitionFile, JSON.stringify({
143
+ format: 'onetable:1.0.0',
144
+ version: '0.1.0',
145
+ indexes: {
146
+ primary: {
147
+ hash: 'PK',
148
+ sort: 'SK',
149
+ },
150
+ },
151
+ models: {
152
+ User: {
153
+ PK: {
154
+ type: 'string',
155
+ required: true,
156
+ value: 'User#${name}',
157
+ },
158
+ SK: {
159
+ type: 'string',
160
+ required: true,
161
+ value: 'User#${name}',
162
+ },
163
+ name: {
164
+ type: 'string',
165
+ required: true,
166
+ },
167
+ },
168
+ },
169
+ }));
170
+ }
171
+ const model = JSON.parse(fs.readFileSync(this.options.definitionFile).toString());
172
+ if (!fs.existsSync(`${this.project.outdir}/src/generated`)) {
173
+ fs.mkdirSync(`${this.project.outdir}/src/generated`);
174
+ }
175
+ this.createModelFile(`${this.project.outdir}/src/generated/datastore.${this.options.modelName.toLowerCase()}-model.generated.ts`, model);
176
+ this.createConstructFile(`${this.project.outdir}/src/generated/datastore.${this.options.modelName.toLowerCase()}-construct.generated.ts`, model);
177
+ }
142
178
  }
143
179
  exports.Datastore = Datastore;
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb2plbi9kYXRhc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBeUI7QUFFekIsMkNBQTZCO0FBQzdCLGlDQUFzQztBQU90QyxNQUFhLFNBQVUsU0FBUSxFQUFFLENBQUMsU0FBUztJQUV6QyxZQUFZLEdBQWtDLEVBQVksT0FBeUI7UUFDakYsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRDZDLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBR2pGLEdBQUcsQ0FBQyxPQUFPLENBQ1QsbUJBQW1CLEVBQ25CLDBCQUEwQixFQUMxQix1QkFBdUIsRUFDdkIsTUFBTSxDQUNQLENBQUM7UUFDRixHQUFHLENBQUMsVUFBVSxDQUNaLGFBQWEsQ0FDZCxDQUFDO1FBRUYsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBYyxDQUFDO1FBRTFGLElBQUksQ0FBQyxlQUFlLENBQUMsNkJBQTZCLE9BQU8sQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLHFCQUFxQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQy9HLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyw2QkFBNkIsT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUseUJBQXlCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekgsQ0FBQztJQUVTLGVBQWUsQ0FBQyxRQUFnQixFQUFFLEtBQWdCO1FBRTFELEVBQUUsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFOzs7Ozs7Ozs7RUFTN0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxD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LENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN4RyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQzs7O1lBR2IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDOzBCQUNsRixHQUFHOzt1QkFFTixJQUFJLENBQUMsSUFBSTs7OzZDQUdhLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVM7Y0FDMUYsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUN4RyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQzs7Ozs7O0VBTXZCLEVBQUU7WUFDRSxRQUFRLEVBQUUsT0FBTztTQUNsQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBRUY7QUFqSUQsOEJBaUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IHsgT25lU2NoZW1hIH0gZnJvbSAnZHluYW1vZGItb25ldGFibGUnO1xuaW1wb3J0ICogYXMgcGogZnJvbSAncHJvamVuJztcbmltcG9ydCB7IFBBQ0tBR0VfTkFNRSB9IGZyb20gJy4vY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YXN0b3JlT3B0aW9ucyB7XG4gIHJlYWRvbmx5IG1vZGVsTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBkZWZpbml0aW9uRmlsZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgRGF0YXN0b3JlIGV4dGVuZHMgcGouQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcihhcHA6IHBqLmF3c2Nkay5Bd3NDZGtUeXBlU2NyaXB0QXBwLCBwcm90ZWN0ZWQgb3B0aW9uczogRGF0YXN0b3JlT3B0aW9ucykge1xuICAgIHN1cGVyKGFwcCk7XG5cbiAgICBhcHAuYWRkRGVwcyhcbiAgICAgICdkeW5hbW9kYi1vbmV0YWJsZScsXG4gICAgICAnQGF3cy1zZGsvY2xpZW50LWR5bmFtb2RiJyxcbiAgICAgICdAYXdzLXNkay9saWItZHluYW1vZGInLFxuICAgICAgJ3V1aWQnLFxuICAgICk7XG4gICAgYXBwLmFkZERldkRlcHMoXG4gICAgICAnQHR5cGVzL3V1aWQnLFxuICAgICk7XG5cbiAgICBjb25zdCBtb2RlbCA9IEpTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKG9wdGlvbnMuZGVmaW5pdGlvbkZpbGUpLnRvU3RyaW5nKCkpIGFzIE9uZVNjaGVtYTtcblxuICAgIHRoaXMuY3JlYXRlTW9kZWxGaWxlKGAuL3NyYy9nZW5lcmF0ZWQvZGF0YXN0b3JlLiR7b3B0aW9ucy5tb2RlbE5hbWUudG9Mb3dlckNhc2UoKX0tbW9kZWwuZ2VuZXJhdGVkLnRzYCwgbW9kZWwpO1xuICAgIHRoaXMuY3JlYXRlQ29uc3RydWN0RmlsZShgLi9zcmMvZ2VuZXJhdGVkL2RhdGFzdG9yZS4ke29wdGlvbnMubW9kZWxOYW1lLnRvTG93ZXJDYXNlKCl9LWNvbnN0cnVjdC5nZW5lcmF0ZWQudHNgLCBtb2RlbCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlTW9kZWxGaWxlKGZpbGVOYW1lOiBzdHJpbmcsIG1vZGVsOiBPbmVTY2hlbWEpIHtcblxuICAgIGZzLndyaXRlRmlsZVN5bmMoZmlsZU5hbWUsIGAvKiBlc2xpbnQtZGlzYWJsZSAqL1xuaW1wb3J0IHsgTW9kZWwsIFRhYmxlLCBFbnRpdHkgfSBmcm9tICdkeW5hbW9kYi1vbmV0YWJsZSc7XG5pbXBvcnQgeyBlbnYgfSBmcm9tICdwcm9jZXNzJztcbmltcG9ydCB7IER5bmFtbyB9IGZyb20gJ2R5bmFtb2RiLW9uZXRhYmxlL0R5bmFtbyc7XG5pbXBvcnQgeyBEeW5hbW9EQkNsaWVudCB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1keW5hbW9kYic7XG5cbmV4cG9ydCBjb25zdCBkeW5hbW9DbGllbnQgPSBuZXcgRHluYW1vKHsgY2xpZW50OiBuZXcgRHluYW1vREJDbGllbnQoe30pIH0pXG5leHBvcnQgY29uc3QgVEFCTEVfTkFNRTogc3RyaW5nID0gZW52LlRBQkxFITtcblxuJHtPYmplY3QuZW50cmllcyhtb2RlbC5pbmRleGVzKS5tYXAoKFtpZHgsIGRhdGFdKSA9PiBgZXhwb3J0IGNvbnN0IEluZGV4XyR7aWR4fV9OYW1lID0gJyR7aWR4fSc7XG5leHBvcnQgY29uc3QgSW5kZXhfJHtpZHh9X0hhc2hLZXkgPSAnJHtkYXRhLmhhc2h9JztcbmV4cG9ydCBjb25zdCBJbmRleF8ke2lkeH1fU29ydEtleSA9ICcke2RhdGEuc29ydH0nO1xuYCkuam9pbignXFxuJyl9XG5cbmV4cG9ydCBjb25zdCBTY2hlbWEgPSAke3RoaXMuc3RyaW5naWZ5TW9kZWwobW9kZWwpfTtcblxuZXhwb3J0IGNvbnN0IHRhYmxlID0gbmV3IFRhYmxlKHtcbiAgY2xpZW50OiBkeW5hbW9DbGllbnQsXG4gIG5hbWU6IFRBQkxFX05BTUUsXG4gIHNjaGVtYTogU2NoZW1hLFxuICBpc29EYXRlczogdHJ1ZSxcbiAgLy8gbG9nZ2VyOiB0cnVlLFxuICBoaWRkZW46IGZhbHNlLFxufSk7XG5cbiR7T2JqZWN0LmVudHJpZXMobW9kZWwubW9kZWxzKS5tYXAoKFt0eXBlTmFtZSwgX10pID0+IGBleHBvcnQgdHlwZSAke3R5cGVOYW1lfVR5cGUgPSBFbnRpdHk8dHlwZW9mIFNjaGVtYS5tb2RlbHMuJHt0eXBlTmFtZX0+O1xuZXhwb3J0IGNvbnN0ICR7dHlwZU5hbWV9OiBNb2RlbDwke3R5cGVOYW1lfVR5cGU+ID0gdGFibGUuZ2V0TW9kZWw8JHt0eXBlTmFtZX1UeXBlPignJHt0eXBlTmFtZX0nKTtcbmApLmpvaW4oJ1xcbicpfVxuXG5gLCB7XG4gICAgICBlbmNvZGluZzogJ3V0Zi04JyxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc3RyaW5naWZ5TW9kZWwobW9kZWw6IE9uZVNjaGVtYSkge1xuICAgIC8vIGFycmF5LCBiaW5hcnksIGJvb2xlYW4sICAgICAgICAgZGF0ZSwgbnVtYmVyLCBvYmplY3QsIHNldCwgc3RyaW5nXG4gICAgLy8gQXJyYXksIEJpbmFyeSwgQm9vbGVhbiwgQnVmZmVyLCBEYXRlLCBOdW1iZXIsIE9iamVjdCwgU2V0LCBTdHJpbmdcblxuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShtb2RlbCwgbnVsbCwgMilcbiAgICAgIC5yZXBsYWNlKC9cInR5cGVcIjogXCJhcnJheVwiL2csICdcInR5cGVcIjogQXJyYXknKVxuICAgICAgLnJlcGxhY2UoL1widHlwZVwiOiBcImJpbmFyeVwiL2csICdcInR5cGVcIjogQmluYXJ5JylcbiAgICAgIC5yZXBsYWNlKC9cInR5cGVcIjogXCJib29sZWFuXCIvZywgJ1widHlwZVwiOiBCb29sZWFuJylcbiAgICAgIC5yZXBsYWNlKC9cInR5cGVcIjogXCJkYXRlXCIvZywgJ1widHlwZVwiOiBEYXRlJylcbiAgICAgIC5yZXBsYWNlKC9cInR5cGVcIjogXCJudW1iZXJcIi9nLCAnXCJ0eXBlXCI6IE51bWJlcicpXG4gICAgICAucmVwbGFjZSgvXCJ0eXBlXCI6IFwib2JqZWN0XCIvZywgJ1widHlwZVwiOiBPYmplY3QnKVxuICAgICAgLnJlcGxhY2UoL1widHlwZVwiOiBcInNldFwiL2csICdcInR5cGVcIjogU2V0JylcbiAgICAgIC5yZXBsYWNlKC9cInR5cGVcIjogXCJzdHJpbmdcIi9nLCAnXCJ0eXBlXCI6IFN0cmluZycpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUNvbnN0cnVjdEZpbGUoZmlsZU5hbWU6IHN0cmluZywgbW9kZWw6IE9uZVNjaGVtYSkge1xuXG4gICAgZnMud3JpdGVGaWxlU3luYyhmaWxlTmFtZSwgYC8qIGVzbGludC1kaXNhYmxlICovXG5pbXBvcnQgeyBBdHRyaWJ1dGVUeXBlLCBQcm9qZWN0aW9uVHlwZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1keW5hbW9kYic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IFNpbmdsZVRhYmxlRGF0YXN0b3JlLCBTaW5nbGVUYWJsZURhdGFzdG9yZVByb3BzIH0gZnJvbSAnJHtQQUNLQUdFX05BTUV9L2xpYi9jb25zdHJ1Y3RzJztcblxuZXhwb3J0IGludGVyZmFjZSAke3RoaXMub3B0aW9ucy5tb2RlbE5hbWV9RGF0YXN0b3JlUHJvcHMgZXh0ZW5kcyBPbWl0PFNpbmdsZVRhYmxlRGF0YXN0b3JlUHJvcHMsICdkZXNpZ24nPiB7XG4gIC8vXG59XG5cbmV4cG9ydCBjbGFzcyAke3RoaXMub3B0aW9ucy5tb2RlbE5hbWV9RGF0YXN0b3JlIGV4dGVuZHMgU2luZ2xlVGFibGVEYXRhc3RvcmUge1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiAke3RoaXMub3B0aW9ucy5tb2RlbE5hbWV9RGF0YXN0b3JlUHJvcHMgPSB7fSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBkZXNpZ246IHtcbiAgICAgICAgcHJpbWFyeUtleToge1xuICAgICAgICAgIHBhcnRpdGlvbktleTogJyR7bW9kZWwuaW5kZXhlcy5wcmltYXJ5Lmhhc2h9JyxcbiAgICAgICAgICAke21vZGVsLmluZGV4ZXMucHJpbWFyeS5zb3J0ID8gYHNvcnRLZXk6ICcke21vZGVsLmluZGV4ZXMucHJpbWFyeS5zb3J0fScsYCA6ICcnfVxuICAgICAgICB9LFxuICAgICAgICAvLyB0aW1lVG9MaXZlQXR0cmlidXRlOiAnVE9ETycsXG4gICAgICAgIGdsb2JhbEluZGV4ZXM6IFtcbiAgICAgICAgICAke09iamVjdC5lbnRyaWVzKG1vZGVsLmluZGV4ZXMpLmZpbHRlcigoW2lkeCwgZGF0YV0pID0+IGlkeCAhPT0gJ3ByaW1hcnknICYmIGRhdGEudHlwZSAhPT0gJ2xvY2FsJykubWFwKChbaWR4LCBkYXRhXSkgPT4gYHtcbiAgICAgICAgICAgIGluZGV4TmFtZTogJyR7aWR4fScsXG4gICAgICAgICAgICBwYXJ0aXRpb25LZXk6IHtcbiAgICAgICAgICAgICAgbmFtZTogJyR7ZGF0YS5oYXNofScsXG4gICAgICAgICAgICAgIHR5cGU6IEF0dHJpYnV0ZVR5cGUuU1RSSU5HLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICR7ZGF0YS5zb3J0ID8gYHNvcnRLZXk6IHtcbiAgICAgICAgICAgICAgbmFtZTogJyR7ZGF0YS5zb3J0fScsXG4gICAgICAgICAgICAgIHR5cGU6IEF0dHJpYnV0ZVR5cGUuU1RSSU5HLFxuICAgICAgICAgICAgfSxgIDogJyd9XG4gICAgICAgICAgICBwcm9qZWN0aW9uVHlwZTogUHJvamVjdGlvblR5cGUuJHt0eXBlb2YgZGF0YS5wcm9qZWN0ID09PSAnc3RyaW5nJyA/IGRhdGEucHJvamVjdC50b1VwcGVyQ2FzZSgpIDogJ0lOQ0xVREUnfSxcbiAgICAgICAgICAgICR7QXJyYXkuaXNBcnJheShkYXRhLnByb2plY3QpID8gYG5vbktleUF0dHJpYnV0ZXM6IFske2RhdGEucHJvamVjdC5tYXAoZSA9PiBgJyR7ZX0nYCkuam9pbignLCcpfV0sYCA6ICcnfVxuICAgICAgICAgIH1gKS5qb2luKCcsXFxuJyl9XG4gICAgICAgIF0sXG4gICAgICAgIGxvY2FsSW5kZXhlczogW1xuICAgICAgICAgICR7T2JqZWN0LmVudHJpZXMobW9kZWwuaW5kZXhlcykuZmlsdGVyKChbXywgZGF0YV0pID0+IGRhdGEudHlwZSA9PT0gJ2xvY2FsJykubWFwKChbaWR4LCBkYXRhXSkgPT4gYHtcbiAgICAgICAgICAgIGluZGV4TmFtZTogJyR7aWR4fScsXG4gICAgICAgICAgICBzb3J0S2V5OiB7XG4gICAgICAgICAgICAgIG5hbWU6ICcke2RhdGEuc29ydH0nLFxuICAgICAgICAgICAgICB0eXBlOiBBdHRyaWJ1dGVUeXBlLlNUUklORyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwcm9qZWN0aW9uVHlwZTogUHJvamVjdGlvblR5cGUuJHt0eXBlb2YgZGF0YS5wcm9qZWN0ID09PSAnc3RyaW5nJyA/IGRhdGEucHJvamVjdCA6ICdJTkNMVURFJ30sXG4gICAgICAgICAgICAke0FycmF5LmlzQXJyYXkoZGF0YS5wcm9qZWN0KSA/IGBub25LZXlBdHRyaWJ1dGVzOiBbJHtkYXRhLnByb2plY3QubWFwKGUgPT4gYCcke2V9J2ApLmpvaW4oJywnKX1dLGAgOiAnJ31cbiAgICAgICAgICB9YCkuam9pbignLFxcbicpfVxuICAgICAgICBdLFxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbn1gLCB7XG4gICAgICBlbmNvZGluZzogJ3V0Zi04JyxcbiAgICB9KTtcbiAgfVxuXG59Il19
180
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb2plbi9kYXRhc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBeUI7QUFFekIsMkNBQTZCO0FBQzdCLGlDQUFzQztBQU90QyxNQUFhLFNBQVUsU0FBUSxFQUFFLENBQUMsU0FBUztJQUV6QyxZQUFZLEdBQWtDLEVBQVksT0FBeUI7UUFDakYsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRDZDLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBR2pGLEdBQUcsQ0FBQyxPQUFPLENBQ1QsbUJBQW1CLEVBQ25CLDBCQUEwQixFQUMxQix1QkFBdUIsRUFDdkIsTUFBTSxDQUNQLENBQUM7UUFDRixHQUFHLENBQUMsVUFBVSxDQUNaLGFBQWEsQ0FDZCxDQUFDO0lBQ0osQ0FBQztJQUVTLGVBQWUsQ0FBQyxRQUFnQixFQUFFLEtBQWdCO1FBRTFELEVBQUUsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFOzs7Ozs7Ozs7RUFTN0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixHQUFHLFlBQVksR0FBRztxQkFDeEUsR0FBRyxlQUFlLElBQUksQ0FBQyxJQUFJO3FCQUMzQixHQUFHLGVBQWUsSUFBSSxDQUFDLElBQUk7Q0FDL0MsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7O3dCQUVXLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDOzs7Ozs7Ozs7OztFQVdoRCxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsZUFBZSxRQUFR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SUFBSTs0QkFDZCxLQUFLLEVBQUUsY0FBYzt5QkFDdEI7d0JBQ0QsSUFBSSxFQUFFOzRCQUNKLElBQUksRUFBRSxRQUFROzRCQUNkLFFBQVEsRUFBRSxJQUFJO3lCQUNmO3FCQUNGO2lCQUNGO2FBQ0YsQ0FBQyxDQUFDLENBQUM7U0FDTDtRQUNELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFjLENBQUM7UUFFL0YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sZ0JBQWdCLENBQUMsRUFBRTtZQUMxRCxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLGdCQUFnQixDQUFDLENBQUM7U0FDdEQ7UUFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLDRCQUE0QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUscUJBQXFCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDekksSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLDRCQUE0QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUseUJBQXlCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbkosQ0FBQztDQUVGO0FBcktELDhCQXFLQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcbmltcG9ydCB7IE9uZVNjaGVtYSB9IGZyb20gJ2R5bmFtb2RiLW9uZXRhYmxlJztcbmltcG9ydCAqIGFzIHBqIGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBQQUNLQUdFX05BTUUgfSBmcm9tICcuL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFzdG9yZU9wdGlvbnMge1xuICByZWFkb25seSBtb2RlbE5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgZGVmaW5pdGlvbkZpbGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIERhdGFzdG9yZSBleHRlbmRzIHBqLkNvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoYXBwOiBwai5hd3NjZGsuQXdzQ2RrVHlwZVNjcmlwdEFwcCwgcHJvdGVjdGVkIG9wdGlvbnM6IERhdGFzdG9yZU9wdGlvbnMpIHtcbiAgICBzdXBlcihhcHApO1xuXG4gICAgYXBwLmFkZERlcHMoXG4gICAgICAnZHluYW1vZGItb25ldGFibGUnLFxuICAgICAgJ0Bhd3Mtc2RrL2NsaWVudC1keW5hbW9kYicsXG4gICAgICAnQGF3cy1zZGsvbGliLWR5bmFtb2RiJyxcbiAgICAgICd1dWlkJyxcbiAgICApO1xuICAgIGFwcC5hZGREZXZEZXBzKFxuICAgICAgJ0B0eXBlcy91dWlkJyxcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZU1vZGVsRmlsZShmaWxlTmFtZTogc3RyaW5nLCBtb2RlbDogT25lU2NoZW1hKSB7XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKGZpbGVOYW1lLCBgLyogZXNsaW50LWRpc2FibGUgKi9cbmltcG9ydCB7IE1vZGVsLCBUYWJsZSwgRW50aXR5IH0gZnJvbSAnZHluYW1vZGItb25ldGFibGUnO1xuaW1wb3J0IHsgZW52IH0gZnJvbSAncHJvY2Vzcyc7XG5pbXBvcnQgeyBEeW5hbW8gfSBmcm9tICdkeW5hbW9kYi1vbmV0YWJsZS9EeW5hbW8nO1xuaW1wb3J0IHsgRHluYW1vREJDbGllbnQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtZHluYW1vZGInO1xuXG5leHBvcnQgY29uc3QgZHluYW1vQ2xpZW50ID0gbmV3IER5bmFtbyh7IGNsaWVudDogbmV3IER5bmFtb0RCQ2xpZW50KHt9KSB9KVxuZXhwb3J0IGNvbnN0IFRBQkxFX05BTUU6IHN0cmluZyA9IGVudi5UQUJMRSE7XG5cbiR7T2JqZWN0LmVudHJpZXMobW9kZWwuaW5kZXhlcykubWFwKChbaWR4LCBkYXRhXSkgPT4gYGV4cG9ydCBjb25zdCBJbmRleF8ke2lkeH1fTmFtZSA9ICcke2lkeH0nO1xuZXhwb3J0IGNvbnN0IEluZGV4XyR7aWR4fV9IYXNoS2V5ID0gJyR7ZGF0YS5oYXNofSc7XG5leHBvcnQgY29uc3QgSW5kZXhfJHtpZHh9X1NvcnRLZXkgPSAnJHtkYXRhLnNvcnR9JztcbmApLmpvaW4oJ1xcbicpfVxuXG5leHBvcnQgY29uc3QgU2NoZW1hID0gJHt0aGlzLnN0cmluZ2lmeU1vZGVsKG1vZGVsKX07XG5cbmV4cG9ydCBjb25zdCB0YWJsZSA9IG5ldyBUYWJsZSh7XG4gIGNsaWVudDogZHluYW1vQ2xpZW50LFxuICBuYW1lOiBUQUJMRV9OQU1FLFxuICBzY2hlbWE6IFNjaGVtYSxcbiAgaXNvRGF0ZXM6IHRydWUsXG4gIC8vIGxvZ2dlcjogdHJ1ZSxcbiAgaGlkZGVuOiBmYWxzZSxcbn0pO1xuXG4ke09iamVjdC5lbnRyaWVzKG1vZGVsLm1vZGVscykubWFwKChbdHlwZU5hbWUsIF9dKSA9PiBgZXhwb3J0IHR5cGUgJHt0eXBlTmFtZX1UeXBlID0gRW50aXR5PHR5cGVvZiBTY2hlbWEubW9kZWxzLiR7dHlwZU5hbWV9PjtcbmV4cG9ydCBjb25zdCAke3R5cGVOYW1lfTogTW9kZWw8JHt0eXBlTmFtZX1UeXBlPiA9IHRhYmxlLmdldE1vZGVsPCR7dHlwZU5hbWV9VHlwZT4oJyR7dHlwZU5hbWV9Jyk7XG5gKS5qb2luKCdcXG4nKX1cblxuYCwge1xuICAgICAgZW5jb2Rpbmc6ICd1dGYtOCcsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0cmluZ2lmeU1vZGVsKG1vZGVsOiBPbmVTY2hlbWEpIHtcbiAgICAvLyBhcnJheSwgYmluYXJ5LCBib29sZWFuLCAgICAgICAgIGRhdGUsIG51bWJlciwgb2JqZWN0LCBzZXQsIHN0cmluZ1xuICAgIC8vIEFycmF5LCBCaW5hcnksIEJvb2xlYW4sIEJ1ZmZlciwgRGF0ZSwgTnVtYmVyLCBPYmplY3QsIFNldCwgU3RyaW5nXG5cbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkobW9kZWwsIG51bGwsIDIpXG4gICAgICAucmVwbGFjZSgvXCJ0eXBlXCI6IFwiYXJyYXlcIi9nLCAnXCJ0eXBlXCI6IEFycmF5JylcbiAgICAgIC5yZXBsYWNlKC9cInR5cGVcIjogXCJiaW5hcnlcIi9nLCAnXCJ0eXBlXCI6IEJpbmFyeScpXG4gICAgICAucmVwbGFjZSgvXCJ0eXBlXCI6IFwiYm9vbGVhblwiL2csICdcInR5cGVcIjogQm9vbGVhbicpXG4gICAgICAucmVwbGFjZSgvXCJ0eXBlXCI6IFwiZGF0ZVwiL2csICdcInR5cGVcIjogRGF0ZScpXG4gICAgICAucmVwbGFjZSgvXCJ0eXBlXCI6IFwibnVtYmVyXCIvZywgJ1widHlwZVwiOiBOdW1iZXInKVxuICAgICAgLnJlcGxhY2UoL1widHlwZVwiOiBcIm9iamVjdFwiL2csICdcInR5cGVcIjogT2JqZWN0JylcbiAgICAgIC5yZXBsYWNlKC9cInR5cGVcIjogXCJzZXRcIi9nLCAnXCJ0eXBlXCI6IFNldCcpXG4gICAgICAucmVwbGFjZSgvXCJ0eXBlXCI6IFwic3RyaW5nXCIvZywgJ1widHlwZVwiOiBTdHJpbmcnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVDb25zdHJ1Y3RGaWxlKGZpbGVOYW1lOiBzdHJpbmcsIG1vZGVsOiBPbmVTY2hlbWEpIHtcblxuICAgIGZzLndyaXRlRmlsZVN5bmMoZmlsZU5hbWUsIGAvKiBlc2xpbnQtZGlzYWJsZSAqL1xuaW1wb3J0IHsgQXR0cmlidXRlVHlwZSwgUHJvamVjdGlvblR5cGUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZHluYW1vZGInO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBTaW5nbGVUYWJsZURhdGFzdG9yZSwgU2luZ2xlVGFibGVEYXRhc3RvcmVQcm9wcyB9IGZyb20gJyR7UEFDS0FHRV9OQU1FfS9saWIvY29uc3RydWN0cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgJHt0aGlzLm9wdGlvbnMubW9kZWxOYW1lfURhdGFzdG9yZVByb3BzIGV4dGVuZHMgT21pdDxTaW5nbGVUYWJsZURhdGFzdG9yZVByb3BzLCAnZGVzaWduJz4ge1xuICAvL1xufVxuXG5leHBvcnQgY2xhc3MgJHt0aGlzLm9wdGlvbnMubW9kZWxOYW1lfURhdGFzdG9yZSBleHRlbmRzIFNpbmdsZVRhYmxlRGF0YXN0b3JlIHtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogJHt0aGlzLm9wdGlvbnMubW9kZWxOYW1lfURhdGFzdG9yZVByb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgZGVzaWduOiB7XG4gICAgICAgIHByaW1hcnlLZXk6IHtcbiAgICAgICAgICBwYXJ0aXRpb25LZXk6ICcke21vZGVsLmluZGV4ZXMucHJpbWFyeS5oYXNofScsXG4gICAgICAgICAgJHttb2RlbC5pbmRleGVzLnByaW1hcnkuc29ydCA/IGBzb3J0S2V5OiAnJHttb2RlbC5pbmRleGVzLnByaW1hcnkuc29ydH0nLGAgOiAnJ31cbiAgICAgICAgfSxcbiAgICAgICAgLy8gdGltZVRvTGl2ZUF0dHJpYnV0ZTogJ1RPRE8nLFxuICAgICAgICBnbG9iYWxJbmRleGVzOiBbXG4gICAgICAgICAgJHtPYmplY3QuZW50cmllcyhtb2RlbC5pbmRleGVzKS5maWx0ZXIoKFtpZHgsIGRhdGFdKSA9PiBpZHggIT09ICdwcmltYXJ5JyAmJiBkYXRhLnR5cGUgIT09ICdsb2NhbCcpLm1hcCgoW2lkeCwgZGF0YV0pID0+IGB7XG4gICAgICAgICAgICBpbmRleE5hbWU6ICcke2lkeH0nLFxuICAgICAgICAgICAgcGFydGl0aW9uS2V5OiB7XG4gICAgICAgICAgICAgIG5hbWU6ICcke2RhdGEuaGFzaH0nLFxuICAgICAgICAgICAgICB0eXBlOiBBdHRyaWJ1dGVUeXBlLlNUUklORyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAke2RhdGEuc29ydCA/IGBzb3J0S2V5OiB7XG4gICAgICAgICAgICAgIG5hbWU6ICcke2RhdGEuc29ydH0nLFxuICAgICAgICAgICAgICB0eXBlOiBBdHRyaWJ1dGVUeXBlLlNUUklORyxcbiAgICAgICAgICAgIH0sYCA6ICcnfVxuICAgICAgICAgICAgcHJvamVjdGlvblR5cGU6IFByb2plY3Rpb25UeXBlLiR7dHlwZW9mIGRhdGEucHJvamVjdCA9PT0gJ3N0cmluZycgPyBkYXRhLnByb2plY3QudG9VcHBlckNhc2UoKSA6ICdJTkNMVURFJ30sXG4gICAgICAgICAgICAke0FycmF5LmlzQXJyYXkoZGF0YS5wcm9qZWN0KSA/IGBub25LZXlBdHRyaWJ1dGVzOiBbJHtkYXRhLnByb2plY3QubWFwKGUgPT4gYCcke2V9J2ApLmpvaW4oJywnKX1dLGAgOiAnJ31cbiAgICAgICAgICB9YCkuam9pbignLFxcbicpfVxuICAgICAgICBdLFxuICAgICAgICBsb2NhbEluZGV4ZXM6IFtcbiAgICAgICAgICAke09iamVjdC5lbnRyaWVzKG1vZGVsLmluZGV4ZXMpLmZpbHRlcigoW18sIGRhdGFdKSA9PiBkYXRhLnR5cGUgPT09ICdsb2NhbCcpLm1hcCgoW2lkeCwgZGF0YV0pID0+IGB7XG4gICAgICAgICAgICBpbmRleE5hbWU6ICcke2lkeH0nLFxuICAgICAgICAgICAgc29ydEtleToge1xuICAgICAgICAgICAgICBuYW1lOiAnJHtkYXRhLnNvcnR9JyxcbiAgICAgICAgICAgICAgdHlwZTogQXR0cmlidXRlVHlwZS5TVFJJTkcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcHJvamVjdGlvblR5cGU6IFByb2plY3Rpb25UeXBlLiR7dHlwZW9mIGRhdGEucHJvamVjdCA9PT0gJ3N0cmluZycgPyBkYXRhLnByb2plY3QgOiAnSU5DTFVERSd9LFxuICAgICAgICAgICAgJHtBcnJheS5pc0FycmF5KGRhdGEucHJvamVjdCkgPyBgbm9uS2V5QXR0cmlidXRlczogWyR7ZGF0YS5wcm9qZWN0Lm1hcChlID0+IGAnJHtlfSdgKS5qb2luKCcsJyl9XSxgIDogJyd9XG4gICAgICAgICAgfWApLmpvaW4oJyxcXG4nKX1cbiAgICAgICAgXSxcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG59YCwge1xuICAgICAgZW5jb2Rpbmc6ICd1dGYtOCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc3ludGhlc2l6ZSgpIHtcbiAgICBzdXBlci5zeW50aGVzaXplKCk7XG4gICAgaWYgKCFmcy5leGlzdHNTeW5jKHRoaXMub3B0aW9ucy5kZWZpbml0aW9uRmlsZSkpIHtcbiAgICAgIGZzLndyaXRlRmlsZVN5bmModGhpcy5vcHRpb25zLmRlZmluaXRpb25GaWxlLCBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIGZvcm1hdDogJ29uZXRhYmxlOjEuMC4wJyxcbiAgICAgICAgdmVyc2lvbjogJzAuMS4wJyxcbiAgICAgICAgaW5kZXhlczoge1xuICAgICAgICAgIHByaW1hcnk6IHtcbiAgICAgICAgICAgIGhhc2g6ICdQSycsXG4gICAgICAgICAgICBzb3J0OiAnU0snLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG1vZGVsczoge1xuICAgICAgICAgIFVzZXI6IHtcbiAgICAgICAgICAgIFBLOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgdmFsdWU6ICdVc2VyIyR7bmFtZX0nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFNLOiB7XG4gICAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgdmFsdWU6ICdVc2VyIyR7bmFtZX0nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG5hbWU6IHtcbiAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSkpO1xuICAgIH1cbiAgICBjb25zdCBtb2RlbCA9IEpTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKHRoaXMub3B0aW9ucy5kZWZpbml0aW9uRmlsZSkudG9TdHJpbmcoKSkgYXMgT25lU2NoZW1hO1xuXG4gICAgaWYgKCFmcy5leGlzdHNTeW5jKGAke3RoaXMucHJvamVjdC5vdXRkaXJ9L3NyYy9nZW5lcmF0ZWRgKSkge1xuICAgICAgZnMubWtkaXJTeW5jKGAke3RoaXMucHJvamVjdC5vdXRkaXJ9L3NyYy9nZW5lcmF0ZWRgKTtcbiAgICB9XG4gICAgdGhpcy5jcmVhdGVNb2RlbEZpbGUoYCR7dGhpcy5wcm9qZWN0Lm91dGRpcn0vc3JjL2dlbmVyYXRlZC9kYXRhc3RvcmUuJHt0aGlzLm9wdGlvbnMubW9kZWxOYW1lLnRvTG93ZXJDYXNlKCl9LW1vZGVsLmdlbmVyYXRlZC50c2AsIG1vZGVsKTtcbiAgICB0aGlzLmNyZWF0ZUNvbnN0cnVjdEZpbGUoYCR7dGhpcy5wcm9qZWN0Lm91dGRpcn0vc3JjL2dlbmVyYXRlZC9kYXRhc3RvcmUuJHt0aGlzLm9wdGlvbnMubW9kZWxOYW1lLnRvTG93ZXJDYXNlKCl9LWNvbnN0cnVjdC5nZW5lcmF0ZWQudHNgLCBtb2RlbCk7XG4gIH1cblxufSJdfQ==
@@ -5,6 +5,8 @@ export interface GraphQlApiOptions {
5
5
  }
6
6
  export declare class GraphQlApi extends pj.Component {
7
7
  protected options: GraphQlApiOptions;
8
+ protected readonly codegenConfigFileName: string;
8
9
  constructor(app: pj.awscdk.AwsCdkTypeScriptApp, options: GraphQlApiOptions);
9
10
  protected createConstructFile(fileName: string): void;
11
+ synthesize(): void;
10
12
  }
@@ -33,33 +33,12 @@ class GraphQlApi extends pj.Component {
33
33
  this.options = options;
34
34
  app.addDevDeps('@graphql-codegen/cli', '@graphql-codegen/typescript', '@graphql-codegen/typescript-resolvers', '@types/aws-lambda', '@types/lambda-log');
35
35
  app.addDeps('graphql', '@aws-appsync/utils', 'esbuild', '@aws-cdk/aws-cognito-identitypool-alpha');
36
- const codegenConfigFileName = `graphql-codegen.${options.apiName.toLowerCase()}.yml`;
36
+ this.codegenConfigFileName = `graphql-codegen.${options.apiName.toLowerCase()}.yml`;
37
37
  const generateTask = app.addTask(`generate:api:${options.apiName.toLowerCase()}`, {
38
- exec: `graphql-codegen -c ${codegenConfigFileName}`,
38
+ exec: `graphql-codegen -c ${this.codegenConfigFileName}`,
39
39
  description: 'Generate Types from the GraphQL specification',
40
40
  });
41
41
  app.preCompileTask.prependSpawn(generateTask);
42
- const codegenConfig = {
43
- schema: options.definitionFile,
44
- config: {
45
- scalars: {
46
- AWSDate: 'string',
47
- AWSURL: 'string',
48
- },
49
- },
50
- generates: {
51
- [`./src/generated/graphql.${options.apiName.toLowerCase()}-model.generated.ts`]: {
52
- plugins: ['typescript', 'typescript-resolvers'],
53
- },
54
- },
55
- };
56
- new pj.YamlFile(app, codegenConfigFileName, {
57
- obj: codegenConfig,
58
- });
59
- if (!fs.existsSync('./src/generated')) {
60
- fs.mkdirSync('./src/generated');
61
- }
62
- this.createConstructFile(`./src/generated/graphql.${options.apiName.toLowerCase()}-api.generated.ts`);
63
42
  }
64
43
  createConstructFile(fileName) {
65
44
  fs.writeFileSync(fileName, `/* eslint-disable */
@@ -85,6 +64,40 @@ export class ${this.options.apiName}GraphQlApi extends GraphQlApi<Resolvers> {
85
64
  encoding: 'utf-8',
86
65
  });
87
66
  }
67
+ synthesize() {
68
+ super.synthesize();
69
+ if (!fs.existsSync(this.options.definitionFile)) {
70
+ fs.writeFileSync(this.options.definitionFile, `type Query {
71
+ users: [User]
72
+ }
73
+
74
+ type User {
75
+ id: ID!
76
+ name: String
77
+ }`);
78
+ }
79
+ const codegenConfig = {
80
+ schema: this.options.definitionFile,
81
+ config: {
82
+ scalars: {
83
+ AWSDate: 'string',
84
+ AWSURL: 'string',
85
+ },
86
+ },
87
+ generates: {
88
+ [`./src/generated/graphql.${this.options.apiName.toLowerCase()}-model.generated.ts`]: {
89
+ plugins: ['typescript', 'typescript-resolvers'],
90
+ },
91
+ },
92
+ };
93
+ new pj.YamlFile(this.project, this.codegenConfigFileName, {
94
+ obj: codegenConfig,
95
+ });
96
+ if (!fs.existsSync(`${this.project.outdir}/src/generated`)) {
97
+ fs.mkdirSync(`${this.project.outdir}/src/generated`);
98
+ }
99
+ this.createConstructFile(`${this.project.outdir}/src/generated/graphql.${this.options.apiName.toLowerCase()}-api.generated.ts`);
100
+ }
88
101
  }
89
102
  exports.GraphQlApi = GraphQlApi;
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm9qZW4vZ3JhcGhxbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF5QjtBQUN6QiwyQ0FBNkI7QUFDN0IsaUNBQXNDO0FBT3RDLE1BQWEsVUFBVyxTQUFRLEVBQUUsQ0FBQyxTQUFTO0lBRTFDLFlBQVksR0FBa0MsRUFBWSxPQUEwQjtRQUNsRixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFENkMsWUFBTyxHQUFQLE9BQU8sQ0FBbUI7UUFHbEYsR0FBRyxDQUFDLFVBQVUsQ0FDWixzQkFBc0IsRUFDdEIsNkJBQTZCLEVBQzdCLHVDQUF1QyxFQUN2QyxtQkFBbUIsRUFDbkIsbUJBQW1CLENBQ3BCLENBQUM7UUFDRixHQUFHLENBQUMsT0FBTyxDQUNULFNBQVMsRUFDVCxvQkFBb0IsRUFDcEIsU0FBUyxFQUNULHlDQUF5QyxDQUMxQyxDQUFDO1FBRUYsTUFBTSxxQkFBcUIsR0FBRyxtQkFBbUIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsTUFBTSxDQUFDO1FBQ3JGLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLEVBQUUsRUFBRTtZQUNoRixJQUFJLEVBQUUsc0JBQXNCLHFCQUFxQixFQUFFO1lBQ25ELFdBQVcsRUFBRSwrQ0FBK0M7U0FDN0QsQ0FBQyxDQUFDO1FBQ0gsR0FBRyxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFOUMsTUFBTSxhQUFhLEdBQUc7WUFDcEIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxjQUFjO1lBQzlCLE1BQU0sRUFBRTtnQkFDTixPQUFPLEVBQUU7b0JBQ1AsT0FBTyxFQUFFLFFBQVE7b0JBQ2pCLE1BQU0sRUFBRSxRQUFRO2lCQUNqQjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNULENBQUMsMkJBQTJCLE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLHFCQUFxQixDQUFDLEVBQUU7b0JBQy9FLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxzQkFBc0IsQ0FBQztpQkFDaEQ7YUFDRjtTQUNGLENBQUM7UUFFRixJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLHFCQUFxQixFQUFFO1lBQzFDLEdBQUcsRUFBRSxhQUFhO1NBQ25CLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDLEVBQUU7WUFDckMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1NBQ2pDO1FBQ0QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLDJCQUEyQixPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3hHLENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxRQUFnQjtRQUU1QyxFQUFFLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRTs7K0NBRWdCLG1CQUFZO3VDQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUU7O21CQUV0RCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU87Ozs7ZUFJeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPOztxREFFa0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPOzs7a0JBR3ZELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTzs2QkFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWM7Ozs7RUFJdEQsRUFBRTtZQUNFLFFBQVEsRUFBRSxPQUFPO1NBQ2xCLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FFRjtBQTdFRCxnQ0E2RUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwaiBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgUEFDS0FHRV9OQU1FIH0gZnJvbSAnLi9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBHcmFwaFFsQXBpT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGFwaU5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgZGVmaW5pdGlvbkZpbGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEdyYXBoUWxBcGkgZXh0ZW5kcyBwai5Db21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKGFwcDogcGouYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHAsIHByb3RlY3RlZCBvcHRpb25zOiBHcmFwaFFsQXBpT3B0aW9ucykge1xuICAgIHN1cGVyKGFwcCk7XG5cbiAgICBhcHAuYWRkRGV2RGVwcyhcbiAgICAgICdAZ3JhcGhxbC1jb2RlZ2VuL2NsaScsXG4gICAgICAnQGdyYXBocWwtY29kZWdlbi90eXBlc2NyaXB0JyxcbiAgICAgICdAZ3JhcGhxbC1jb2RlZ2VuL3R5cGVzY3JpcHQtcmVzb2x2ZXJzJyxcbiAgICAgICdAdHlwZXMvYXdzLWxhbWJkYScsXG4gICAgICAnQHR5cGVzL2xhbWJkYS1sb2cnLFxuICAgICk7XG4gICAgYXBwLmFkZERlcHMoXG4gICAgICAnZ3JhcGhxbCcsXG4gICAgICAnQGF3cy1hcHBzeW5jL3V0aWxzJyxcbiAgICAgICdlc2J1aWxkJyxcbiAgICAgICdAYXdzLWNkay9hd3MtY29nbml0by1pZGVudGl0eXBvb2wtYWxwaGEnLFxuICAgICk7XG5cbiAgICBjb25zdCBjb2RlZ2VuQ29uZmlnRmlsZU5hbWUgPSBgZ3JhcGhxbC1jb2RlZ2VuLiR7b3B0aW9ucy5hcGlOYW1lLnRvTG93ZXJDYXNlKCl9LnltbGA7XG4gICAgY29uc3QgZ2VuZXJhdGVUYXNrID0gYXBwLmFkZFRhc2soYGdlbmVyYXRlOmFwaToke29wdGlvbnMuYXBpTmFtZS50b0xvd2VyQ2FzZSgpfWAsIHtcbiAgICAgIGV4ZWM6IGBncmFwaHFsLWNvZGVnZW4gLWMgJHtjb2RlZ2VuQ29uZmlnRmlsZU5hbWV9YCxcbiAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGUgVHlwZXMgZnJvbSB0aGUgR3JhcGhRTCBzcGVjaWZpY2F0aW9uJyxcbiAgICB9KTtcbiAgICBhcHAucHJlQ29tcGlsZVRhc2sucHJlcGVuZFNwYXduKGdlbmVyYXRlVGFzayk7XG5cbiAgICBjb25zdCBjb2RlZ2VuQ29uZmlnID0ge1xuICAgICAgc2NoZW1hOiBvcHRpb25zLmRlZmluaXRpb25GaWxlLFxuICAgICAgY29uZmlnOiB7XG4gICAgICAgIHNjYWxhcnM6IHtcbiAgICAgICAgICBBV1NEYXRlOiAnc3RyaW5nJyxcbiAgICAgICAgICBBV1NVUkw6ICdzdHJpbmcnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGdlbmVyYXRlczoge1xuICAgICAgICBbYC4vc3JjL2dlbmVyYXRlZC9ncmFwaHFsLiR7b3B0aW9ucy5hcGlOYW1lLnRvTG93ZXJDYXNlKCl9LW1vZGVsLmdlbmVyYXRlZC50c2BdOiB7XG4gICAgICAgICAgcGx1Z2luczogWyd0eXBlc2NyaXB0JywgJ3R5cGVzY3JpcHQtcmVzb2x2ZXJzJ10sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICBuZXcgcGouWWFtbEZpbGUoYXBwLCBjb2RlZ2VuQ29uZmlnRmlsZU5hbWUsIHtcbiAgICAgIG9iajogY29kZWdlbkNvbmZpZyxcbiAgICB9KTtcblxuICAgIGlmICghZnMuZXhpc3RzU3luYygnLi9zcmMvZ2VuZXJhdGVkJykpIHtcbiAgICAgIGZzLm1rZGlyU3luYygnLi9zcmMvZ2VuZXJhdGVkJyk7XG4gICAgfVxuICAgIHRoaXMuY3JlYXRlQ29uc3RydWN0RmlsZShgLi9zcmMvZ2VuZXJhdGVkL2dyYXBocWwuJHtvcHRpb25zLmFwaU5hbWUudG9Mb3dlckNhc2UoKX0tYXBpLmdlbmVyYXRlZC50c2ApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUNvbnN0cnVjdEZpbGUoZmlsZU5hbWU6IHN0cmluZykge1xuXG4gICAgZnMud3JpdGVGaWxlU3luYyhmaWxlTmFtZSwgYC8qIGVzbGludC1kaXNhYmxlICovXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IEdyYXBoUWxBcGksIEdyYXBoUWxBcGlQcm9wcyB9IGZyb20gJyR7UEFDS0FHRV9OQU1FfS9saWIvY29uc3RydWN0cyc7XG5pbXBvcnQgeyBSZXNvbHZlcnMgfSBmcm9tICcuL2dyYXBocWwuJHt0aGlzLm9wdGlvbnMuYXBpTmFtZS50b0xvd2VyQ2FzZSgpfS1tb2RlbC5nZW5lcmF0ZWQnO1xuXG5leHBvcnQgaW50ZXJmYWNlICR7dGhpcy5vcHRpb25zLmFwaU5hbWV9R3JhcGhRbEFwaVByb3BzIGV4dGVuZHMgT21pdDxHcmFwaFFsQXBpUHJvcHMsICdkZWZpbml0aW9uRmlsZU5hbWUnIHwgJ2FwaU5hbWUnPiB7XG4gIC8vXG59XG5cbmV4cG9ydCBjbGFzcyAke3RoaXMub3B0aW9ucy5hcGlOYW1lfUdyYXBoUWxBcGkgZXh0ZW5kcyBHcmFwaFFsQXBpPFJlc29sdmVycz4ge1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiAke3RoaXMub3B0aW9ucy5hcGlOYW1lfUdyYXBoUWxBcGlQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBhcGlOYW1lOiAnJHt0aGlzLm9wdGlvbnMuYXBpTmFtZX0nLFxuICAgICAgZGVmaW5pdGlvbkZpbGVOYW1lOiAnJHt0aGlzLm9wdGlvbnMuZGVmaW5pdGlvbkZpbGV9JyxcbiAgICB9KTtcbiAgfVxuXG59YCwge1xuICAgICAgZW5jb2Rpbmc6ICd1dGYtOCcsXG4gICAgfSk7XG4gIH1cblxufVxuIl19
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm9qZW4vZ3JhcGhxbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF5QjtBQUN6QiwyQ0FBNkI7QUFDN0IsaUNBQXNDO0FBT3RDLE1BQWEsVUFBVyxTQUFRLEVBQUUsQ0FBQyxTQUFTO0lBSTFDLFlBQVksR0FBa0MsRUFBWSxPQUEwQjtRQUNsRixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFENkMsWUFBTyxHQUFQLE9BQU8sQ0FBbUI7UUFJbEYsR0FBRyxDQUFDLFVBQVUsQ0FDWixzQkFBc0IsRUFDdEIsNkJBQTZCLEVBQzdCLHVDQUF1QyxFQUN2QyxtQkFBbUIsRUFDbkIsbUJBQW1CLENBQ3BCLENBQUM7UUFDRixHQUFHLENBQUMsT0FBTyxDQUNULFNBQVMsRUFDVCxvQkFBb0IsRUFDcEIsU0FBUyxFQUNULHlDQUF5QyxDQUMxQyxDQUFDO1FBRUYsSUFBSSxDQUFDLHFCQUFxQixHQUFHLG1CQUFtQixPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUM7UUFDcEYsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRSxFQUFFO1lBQ2hGLElBQUksRUFBRSxzQkFBc0IsSUFBSSxDQUFDLHFCQUFxQixFQUFFO1lBQ3hELFdBQVcsRUFBRSwrQ0FBK0M7U0FDN0QsQ0FBQyxDQUFDO1FBQ0gsR0FBRyxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVTLG1CQUFtQixDQUFDLFFBQWdCO1FBRTVDLEVBQUUsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFOzsrQ0FFZ0IsbUJBQVk7dUNBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRTs7bUJBRXRELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTzs7OztlQUl4QixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU87O3FEQUVrQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU87OztrQkFHdkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPOzZCQUNULElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYzs7OztFQUl0RCxFQUFFO1lBQ0UsUUFBUSxFQUFFLE9BQU87U0FDbEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFVBQVU7UUFDZixLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUMvQyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFOzs7Ozs7O0VBT2xELENBQUMsQ0FBQztTQUNDO1FBRUQsTUFBTSxhQUFhLEdBQUc7WUFDcEIsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYztZQUNuQyxNQUFNLEVBQUU7Z0JBQ04sT0FBTyxFQUFFO29CQUNQLE9BQU8sRUFBRSxRQUFRO29CQUNqQixNQUFNLEVBQUUsUUFBUTtpQkFDakI7YUFDRjtZQUNELFNBQVMsRUFBRTtnQkFDVCxDQUFDLDJCQUEyQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUscUJBQXFCLENBQUMsRUFBRTtvQkFDcEYsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLHNCQUFzQixDQUFDO2lCQUNoRDthQUNGO1NBQ0YsQ0FBQztRQUVGLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUN4RCxHQUFHLEVBQUUsYUFBYTtTQUNuQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxnQkFBZ0IsQ0FBQyxFQUFFO1lBQzFELEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sZ0JBQWdCLENBQUMsQ0FBQztTQUN0RDtRQUNELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSwwQkFBMEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLG1CQUFtQixDQUFDLENBQUM7SUFDbEksQ0FBQztDQUVGO0FBL0ZELGdDQStGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcbmltcG9ydCAqIGFzIHBqIGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBQQUNLQUdFX05BTUUgfSBmcm9tICcuL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdyYXBoUWxBcGlPcHRpb25zIHtcbiAgcmVhZG9ubHkgYXBpTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBkZWZpbml0aW9uRmlsZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgR3JhcGhRbEFwaSBleHRlbmRzIHBqLkNvbXBvbmVudCB7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvZGVnZW5Db25maWdGaWxlTmFtZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKGFwcDogcGouYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHAsIHByb3RlY3RlZCBvcHRpb25zOiBHcmFwaFFsQXBpT3B0aW9ucykge1xuICAgIHN1cGVyKGFwcCk7XG5cblxuICAgIGFwcC5hZGREZXZEZXBzKFxuICAgICAgJ0BncmFwaHFsLWNvZGVnZW4vY2xpJyxcbiAgICAgICdAZ3JhcGhxbC1jb2RlZ2VuL3R5cGVzY3JpcHQnLFxuICAgICAgJ0BncmFwaHFsLWNvZGVnZW4vdHlwZXNjcmlwdC1yZXNvbHZlcnMnLFxuICAgICAgJ0B0eXBlcy9hd3MtbGFtYmRhJyxcbiAgICAgICdAdHlwZXMvbGFtYmRhLWxvZycsXG4gICAgKTtcbiAgICBhcHAuYWRkRGVwcyhcbiAgICAgICdncmFwaHFsJyxcbiAgICAgICdAYXdzLWFwcHN5bmMvdXRpbHMnLFxuICAgICAgJ2VzYnVpbGQnLFxuICAgICAgJ0Bhd3MtY2RrL2F3cy1jb2duaXRvLWlkZW50aXR5cG9vbC1hbHBoYScsXG4gICAgKTtcblxuICAgIHRoaXMuY29kZWdlbkNvbmZpZ0ZpbGVOYW1lID0gYGdyYXBocWwtY29kZWdlbi4ke29wdGlvbnMuYXBpTmFtZS50b0xvd2VyQ2FzZSgpfS55bWxgO1xuICAgIGNvbnN0IGdlbmVyYXRlVGFzayA9IGFwcC5hZGRUYXNrKGBnZW5lcmF0ZTphcGk6JHtvcHRpb25zLmFwaU5hbWUudG9Mb3dlckNhc2UoKX1gLCB7XG4gICAgICBleGVjOiBgZ3JhcGhxbC1jb2RlZ2VuIC1jICR7dGhpcy5jb2RlZ2VuQ29uZmlnRmlsZU5hbWV9YCxcbiAgICAgIGRlc2NyaXB0aW9uOiAnR2VuZXJhdGUgVHlwZXMgZnJvbSB0aGUgR3JhcGhRTCBzcGVjaWZpY2F0aW9uJyxcbiAgICB9KTtcbiAgICBhcHAucHJlQ29tcGlsZVRhc2sucHJlcGVuZFNwYXduKGdlbmVyYXRlVGFzayk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQ29uc3RydWN0RmlsZShmaWxlTmFtZTogc3RyaW5nKSB7XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKGZpbGVOYW1lLCBgLyogZXNsaW50LWRpc2FibGUgKi9cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgR3JhcGhRbEFwaSwgR3JhcGhRbEFwaVByb3BzIH0gZnJvbSAnJHtQQUNLQUdFX05BTUV9L2xpYi9jb25zdHJ1Y3RzJztcbmltcG9ydCB7IFJlc29sdmVycyB9IGZyb20gJy4vZ3JhcGhxbC4ke3RoaXMub3B0aW9ucy5hcGlOYW1lLnRvTG93ZXJDYXNlKCl9LW1vZGVsLmdlbmVyYXRlZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgJHt0aGlzLm9wdGlvbnMuYXBpTmFtZX1HcmFwaFFsQXBpUHJvcHMgZXh0ZW5kcyBPbWl0PEdyYXBoUWxBcGlQcm9wcywgJ2RlZmluaXRpb25GaWxlTmFtZScgfCAnYXBpTmFtZSc+IHtcbiAgLy9cbn1cblxuZXhwb3J0IGNsYXNzICR7dGhpcy5vcHRpb25zLmFwaU5hbWV9R3JhcGhRbEFwaSBleHRlbmRzIEdyYXBoUWxBcGk8UmVzb2x2ZXJzPiB7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6ICR7dGhpcy5vcHRpb25zLmFwaU5hbWV9R3JhcGhRbEFwaVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGFwaU5hbWU6ICcke3RoaXMub3B0aW9ucy5hcGlOYW1lfScsXG4gICAgICBkZWZpbml0aW9uRmlsZU5hbWU6ICcke3RoaXMub3B0aW9ucy5kZWZpbml0aW9uRmlsZX0nLFxuICAgIH0pO1xuICB9XG5cbn1gLCB7XG4gICAgICBlbmNvZGluZzogJ3V0Zi04JyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzeW50aGVzaXplKCkge1xuICAgIHN1cGVyLnN5bnRoZXNpemUoKTtcblxuICAgIGlmICghZnMuZXhpc3RzU3luYyh0aGlzLm9wdGlvbnMuZGVmaW5pdGlvbkZpbGUpKSB7XG4gICAgICBmcy53cml0ZUZpbGVTeW5jKHRoaXMub3B0aW9ucy5kZWZpbml0aW9uRmlsZSwgYHR5cGUgUXVlcnkge1xuICAgdXNlcnM6IFtVc2VyXVxufVxuXG50eXBlIFVzZXIge1xuICAgaWQ6IElEIVxuICAgbmFtZTogU3RyaW5nXG59YCk7XG4gICAgfVxuXG4gICAgY29uc3QgY29kZWdlbkNvbmZpZyA9IHtcbiAgICAgIHNjaGVtYTogdGhpcy5vcHRpb25zLmRlZmluaXRpb25GaWxlLFxuICAgICAgY29uZmlnOiB7XG4gICAgICAgIHNjYWxhcnM6IHtcbiAgICAgICAgICBBV1NEYXRlOiAnc3RyaW5nJyxcbiAgICAgICAgICBBV1NVUkw6ICdzdHJpbmcnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGdlbmVyYXRlczoge1xuICAgICAgICBbYC4vc3JjL2dlbmVyYXRlZC9ncmFwaHFsLiR7dGhpcy5vcHRpb25zLmFwaU5hbWUudG9Mb3dlckNhc2UoKX0tbW9kZWwuZ2VuZXJhdGVkLnRzYF06IHtcbiAgICAgICAgICBwbHVnaW5zOiBbJ3R5cGVzY3JpcHQnLCAndHlwZXNjcmlwdC1yZXNvbHZlcnMnXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcblxuICAgIG5ldyBwai5ZYW1sRmlsZSh0aGlzLnByb2plY3QsIHRoaXMuY29kZWdlbkNvbmZpZ0ZpbGVOYW1lLCB7XG4gICAgICBvYmo6IGNvZGVnZW5Db25maWcsXG4gICAgfSk7XG5cbiAgICBpZiAoIWZzLmV4aXN0c1N5bmMoYCR7dGhpcy5wcm9qZWN0Lm91dGRpcn0vc3JjL2dlbmVyYXRlZGApKSB7XG4gICAgICBmcy5ta2RpclN5bmMoYCR7dGhpcy5wcm9qZWN0Lm91dGRpcn0vc3JjL2dlbmVyYXRlZGApO1xuICAgIH1cbiAgICB0aGlzLmNyZWF0ZUNvbnN0cnVjdEZpbGUoYCR7dGhpcy5wcm9qZWN0Lm91dGRpcn0vc3JjL2dlbmVyYXRlZC9ncmFwaHFsLiR7dGhpcy5vcHRpb25zLmFwaU5hbWUudG9Mb3dlckNhc2UoKX0tYXBpLmdlbmVyYXRlZC50c2ApO1xuICB9XG5cbn1cbiJdfQ==
@@ -8,6 +8,8 @@ export declare class RestApi extends pj.Component {
8
8
  protected options: RestApiOptions;
9
9
  constructor(app: pj.awscdk.AwsCdkTypeScriptApp, options: RestApiOptions);
10
10
  protected createConstructFile(fileName: string): void;
11
+ protected validatePathRef(apiSpec: OpenAPI3, path: string, visited?: string[]): boolean;
11
12
  protected addRestResource(apiSpec: OpenAPI3, path: string, method: string): void;
12
13
  protected createEntryFile(entryFile: string, method: string, operationId: string): void;
14
+ synthesize(): void;
13
15
  }
@@ -39,23 +39,6 @@ class RestApi extends pj.Component {
39
39
  description: 'Generate Types from the OpenAPI specification',
40
40
  });
41
41
  app.defaultTask.spawn(generateTask);
42
- const apiSpec = yaml.load(fs.readFileSync(options.definitionFile).toString());
43
- for (const path in apiSpec.paths) {
44
- if (Object.prototype.hasOwnProperty.call(apiSpec.paths, path)) {
45
- const pathItem = apiSpec.paths[path];
46
- for (const method in pathItem) {
47
- if (Object.prototype.hasOwnProperty.call(pathItem, method) &&
48
- ['get', 'post', 'put', 'delete', 'patch', 'options', 'head'].indexOf(method) >= 0) {
49
- // Add all operations
50
- this.addRestResource(apiSpec, path, method);
51
- }
52
- }
53
- }
54
- }
55
- if (!fs.existsSync('./src/generated')) {
56
- fs.mkdirSync('./src/generated');
57
- }
58
- this.createConstructFile(`./src/generated/rest.${options.apiName.toLowerCase()}-api.generated.ts`);
59
42
  }
60
43
  createConstructFile(fileName) {
61
44
  fs.writeFileSync(fileName, `/* eslint-disable */
@@ -81,15 +64,43 @@ export class ${this.options.apiName}RestApi extends RestApi<paths, operations> {
81
64
  encoding: 'utf-8',
82
65
  });
83
66
  }
67
+ validatePathRef(apiSpec, path, visited = []) {
68
+ if (!path.startsWith('#')) {
69
+ throw new Error(`Unable to resolve ref '${path}' - Resolving references to paths from different files is currently not supported`);
70
+ }
71
+ const pathPrettySplit = path
72
+ .split('/')
73
+ .slice(1)
74
+ .map(pathPart => pathPart
75
+ .replace('~1', '/')
76
+ .replace('~0', '~'));
77
+ if (visited.includes(pathPrettySplit[1])) {
78
+ throw new Error(`Cyclical reference exists between paths: ${visited.join(', ')}`);
79
+ }
80
+ const maybePath = pathPrettySplit.reduce((acc, pathPart) => {
81
+ if (Object.keys(acc).includes(pathPart)) {
82
+ return acc[pathPart];
83
+ }
84
+ return undefined;
85
+ }, apiSpec);
86
+ if (maybePath) {
87
+ if (Object.prototype.hasOwnProperty.call(maybePath, '$ref')) {
88
+ return this.validatePathRef(apiSpec, maybePath.$ref, [...visited, pathPrettySplit[1]]);
89
+ }
90
+ // Closest thing to making sure the ref actually is a path object
91
+ return ['get', 'post', 'put', 'delete', 'patch', 'options', 'head'].some(method => Object.keys(maybePath).indexOf(method) >= 0);
92
+ }
93
+ return false;
94
+ }
84
95
  addRestResource(apiSpec, path, method) {
85
96
  const oaPath = apiSpec.paths[path];
86
97
  const operation = oaPath[method];
87
98
  const operationId = operation.operationId;
88
99
  // const description = `${method as string} ${path as string} - ${operation.summary}`;
89
- const entryFile = `./src/lambda/rest.${this.options.apiName.toLowerCase()}.${operationId}.ts`;
100
+ const entryFile = `${this.project.outdir}/src/lambda/rest.${this.options.apiName.toLowerCase()}.${operationId}.ts`;
90
101
  if (!fs.existsSync(entryFile)) {
91
- if (!fs.existsSync('./src/lambda')) {
92
- fs.mkdirSync('./src/lambda');
102
+ if (!fs.existsSync(`${this.project.outdir}/src/lambda`)) {
103
+ fs.mkdirSync(`${this.project.outdir}/src/lambda`);
93
104
  }
94
105
  this.createEntryFile(entryFile, method, operationId);
95
106
  }
@@ -124,6 +135,58 @@ export const handler = ${factoryCall}
124
135
  encoding: 'utf-8',
125
136
  });
126
137
  }
138
+ synthesize() {
139
+ super.synthesize();
140
+ if (!fs.existsSync(this.options.definitionFile)) {
141
+ fs.writeFileSync(this.options.definitionFile, yaml.dump({
142
+ openapi: '3.0.1',
143
+ paths: {
144
+ '/hello': {
145
+ get: {
146
+ operationId: 'helloWorld',
147
+ responses: {
148
+ 200: {
149
+ content: {
150
+ 'application/json': {
151
+ schema: {
152
+ type: 'string',
153
+ },
154
+ },
155
+ },
156
+ },
157
+ },
158
+ },
159
+ },
160
+ },
161
+ info: {
162
+ title: `${this.options.apiName} API definition`,
163
+ version: '1.0',
164
+ },
165
+ }));
166
+ }
167
+ const apiSpec = yaml.load(fs.readFileSync(this.options.definitionFile).toString());
168
+ for (const path in apiSpec.paths) {
169
+ if (Object.prototype.hasOwnProperty.call(apiSpec.paths, path)) {
170
+ const pathItem = apiSpec.paths[path];
171
+ if (('$ref' in pathItem)) {
172
+ if (!this.validatePathRef(apiSpec, pathItem.$ref)) {
173
+ throw new Error(`Path '${path}' references '${pathItem.$ref}', which does not exist in this API specification`);
174
+ }
175
+ }
176
+ for (const method in pathItem) {
177
+ if (Object.prototype.hasOwnProperty.call(pathItem, method) &&
178
+ ['get', 'post', 'put', 'delete', 'patch', 'options', 'head'].indexOf(method) >= 0) {
179
+ // Add all operations
180
+ this.addRestResource(apiSpec, path, method);
181
+ }
182
+ }
183
+ }
184
+ }
185
+ if (!fs.existsSync(`${this.project.outdir}/src/generated`)) {
186
+ fs.mkdirSync(`${this.project.outdir}/src/generated`);
187
+ }
188
+ this.createConstructFile(`${this.project.outdir}/src/generated/rest.${this.options.apiName.toLowerCase()}-api.generated.ts`);
189
+ }
127
190
  }
128
191
  exports.RestApi = RestApi;
129
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvamVuL3Jlc3QtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUNBQXlCO0FBQ3pCLDhDQUFnQztBQUVoQywyQ0FBNkI7QUFDN0IsaUNBQXNDO0FBT3RDLE1BQWEsT0FBUSxTQUFRLEVBQUUsQ0FBQyxTQUFTO0lBRXZDLFlBQVksR0FBa0MsRUFBWSxPQUF1QjtRQUMvRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFENkMsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFHL0UsR0FBRyxDQUFDLFVBQVUsQ0FDWixtQkFBbUIsRUFDbkIsbUJBQW1CLENBQ3BCLENBQUM7UUFDRixHQUFHLENBQUMsT0FBTyxDQUNULFNBQVMsRUFDVCxTQUFTLEVBQ1Qsb0JBQW9CLENBQ3JCLENBQUM7UUFFRixNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLGdCQUFnQixPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUU7WUFDaEYsSUFBSSxFQUFFLHNCQUFzQixPQUFPLENBQUMsY0FBYyxnQ0FBZ0MsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUscUJBQXFCO1lBQ3BJLFdBQVcsRUFBRSwrQ0FBK0M7U0FDN0QsQ0FBQyxDQUFDO1FBQ0gsR0FBRyxDQUFDLFdBQVksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFckMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBYSxDQUFDO1FBQzFGLEtBQUssTUFBTSxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRTtZQUNoQyxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFP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QUM7WUFDWjtnQkFDRSxXQUFXLEdBQUcsd0NBQXdDLFdBQVcsc0JBQXNCLENBQUM7Z0JBQ3hGLElBQUksR0FBRyxFQUFFLENBQUM7Z0JBQ1YsTUFBTTtTQUNUO1FBRUQsRUFBRSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsZ0NBQWdDLG1CQUFZO2dEQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUU7O3lCQUV6RCxXQUFXOztJQUVoQyxJQUFJOztJQUVKLEVBQUU7WUFDQSxRQUFRLEVBQUUsT0FBTztTQUNsQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBRUY7QUFqSEQsMEJBaUhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgeWFtbCBmcm9tICdqcy15YW1sJztcbmltcG9ydCB7IE9wZW5BUEkzLCBPcGVyYXRpb25PYmplY3QsIFBhdGhJdGVtT2JqZWN0IH0gZnJvbSAnb3BlbmFwaS10eXBlc2NyaXB0JztcbmltcG9ydCAqIGFzIHBqIGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBQQUNLQUdFX05BTUUgfSBmcm9tICcuL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlc3RBcGlPcHRpb25zIHtcbiAgcmVhZG9ubHkgYXBpTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBkZWZpbml0aW9uRmlsZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgUmVzdEFwaSBleHRlbmRzIHBqLkNvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoYXBwOiBwai5hd3NjZGsuQXdzQ2RrVHlwZVNjcmlwdEFwcCwgcHJvdGVjdGVkIG9wdGlvbnM6IFJlc3RBcGlPcHRpb25zKSB7XG4gICAgc3VwZXIoYXBwKTtcblxuICAgIGFwcC5hZGREZXZEZXBzKFxuICAgICAgJ0B0eXBlcy9hd3MtbGFtYmRhJyxcbiAgICAgICdAdHlwZXMvbGFtYmRhLWxvZycsXG4gICAgKTtcbiAgICBhcHAuYWRkRGVwcyhcbiAgICAgICdlc2J1aWxkJyxcbiAgICAgICdqcy15YW1sJyxcbiAgICAgICdvcGVuYXBpLXR5cGVzY3JpcHQnLFxuICAgICk7XG5cbiAgICBjb25zdCBnZW5lcmF0ZVRhc2sgPSBhcHAuYWRkVGFzayhgZ2VuZXJhdGU6YXBpOiR7b3B0aW9ucy5hcGlOYW1lLnRvTG93ZXJDYXNlKCl9YCwge1xuICAgICAgZXhlYzogYG9wZW5hcGktdHlwZXNjcmlwdCAke29wdGlvbnMuZGVmaW5pdGlvbkZpbGV9IC0tb3V0cHV0IHNyYy9nZW5lcmF0ZWQvcmVzdC4ke29wdGlvbnMuYXBpTmFtZS50b0xvd2VyQ2FzZSgpfS1tb2RlbC5nZW5lcmF0ZWQudHNgLFxuICAgICAgZGVzY3JpcHRpb246ICdHZW5lcmF0ZSBUeXBlcyBmcm9tIHRoZSBPcGVuQVBJIHNwZWNpZmljYXRpb24nLFxuICAgIH0pO1xuICAgIGFwcC5kZWZhdWx0VGFzayEuc3Bhd24oZ2VuZXJhdGVUYXNrKTtcblxuICAgIGNvbnN0IGFwaVNwZWMgPSB5YW1sLmxvYWQoZnMucmVhZEZpbGVTeW5jKG9wdGlvbnMuZGVmaW5pdGlvbkZpbGUpLnRvU3RyaW5nKCkpIGFzIE9wZW5BUEkzO1xuICAgIGZvciAoY29uc3QgcGF0aCBpbiBhcGlTcGVjLnBhdGhzKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGFwaVNwZWMucGF0aHMsIHBhdGgpKSB7XG4gICAgICAgIGNvbnN0IHBhdGhJdGVtID0gYXBpU3BlYy5wYXRoc1twYXRoXTtcbiAgICAgICAgZm9yIChjb25zdCBtZXRob2QgaW4gcGF0aEl0ZW0pIHtcbiAgICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHBhdGhJdGVtLCBtZXRob2QpICYmXG4gICAgICAgICAgICBbJ2dldCcsICdwb3N0JywgJ3B1dCcsICdkZWxldGUnLCAncGF0Y2gnLCAnb3B0aW9ucycsICdoZWFkJ10uaW5kZXhPZihtZXRob2QpID49IDApIHtcbiAgICAgICAgICAgIC8vIEFkZCBhbGwgb3BlcmF0aW9uc1xuICAgICAgICAgICAgdGhpcy5hZGRSZXN0UmVzb3VyY2UoYXBpU3BlYywgcGF0aCwgbWV0aG9kKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKCFmcy5leGlzdHNTeW5jKCcuL3NyYy9nZW5lcmF0ZWQnKSkge1xuICAgICAgZnMubWtkaXJTeW5jKCcuL3NyYy9nZW5lcmF0ZWQnKTtcbiAgICB9XG4gICAgdGhpcy5jcmVhdGVDb25zdHJ1Y3RGaWxlKGAuL3NyYy9nZW5lcmF0ZWQvcmVzdC4ke29wdGlvbnMuYXBpTmFtZS50b0xvd2VyQ2FzZSgpfS1hcGkuZ2VuZXJhdGVkLnRzYCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQ29uc3RydWN0RmlsZShmaWxlTmFtZTogc3RyaW5nKSB7XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKGZpbGVOYW1lLCBgLyogZXNsaW50LWRpc2FibGUgKi9cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgUmVzdEFwaSwgUmVzdEFwaVByb3BzIH0gZnJvbSAnJHtQQUNLQUdFX05BTUV9L2xpYi9jb25zdHJ1Y3RzJztcbmltcG9ydCB7IG9wZXJhdGlvbnMsIHBhdGhzIH0gZnJvbSAnLi9yZXN0LiR7dGhpcy5vcHRpb25zLmFwaU5hbWUudG9Mb3dlckNhc2UoKX0tbW9kZWwuZ2VuZXJhdGVkJztcblxuZXhwb3J0IGludGVyZmFjZSAke3RoaXMub3B0aW9ucy5hcGlOYW1lfVJlc3RBcGlQcm9wcyBleHRlbmRzIE9taXQ8UmVzdEFwaVByb3BzPG9wZXJhdGlvbnM+LCAnZGVmaW5pdGlvbkZpbGVOYW1lJyB8ICdhcGlOYW1lJz4ge1xuICAvL1xufVxuXG5leHBvcnQgY2xhc3MgJHt0aGlzLm9wdGlvbnMuYXBpTmFtZX1SZXN0QXBpIGV4dGVuZHMgUmVzdEFwaTxwYXRocywgb3BlcmF0aW9ucz4ge1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiAke3RoaXMub3B0aW9ucy5hcGlOYW1lfVJlc3RBcGlQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBhcGlOYW1lOiAnJHt0aGlzLm9wdGlvbnMuYXBpTmFtZX0nLFxuICAgICAgZGVmaW5pdGlvbkZpbGVOYW1lOiAnJHt0aGlzLm9wdGlvbnMuZGVmaW5pdGlvbkZpbGV9JyxcbiAgICB9KTtcbiAgfVxuXG59YCwge1xuICAgICAgZW5jb2Rpbmc6ICd1dGYtOCcsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWRkUmVzdFJlc291cmNlKGFwaVNwZWM6IE9wZW5BUEkzLCBwYXRoOiBzdHJpbmcsIG1ldGhvZDogc3RyaW5nKSB7XG4gICAgY29uc3Qgb2FQYXRoID0gYXBpU3BlYy5wYXRocyFbcGF0aF07XG4gICAgY29uc3Qgb3BlcmF0aW9uID0gb2FQYXRoW21ldGhvZCBhcyBrZXlvZiBQYXRoSXRlbU9iamVjdF0gYXMgT3BlcmF0aW9uT2JqZWN0O1xuICAgIGNvbnN0IG9wZXJhdGlvbklkID0gb3BlcmF0aW9uLm9wZXJhdGlvbklkITtcbiAgICAvLyBjb25zdCBkZXNjcmlwdGlvbiA9IGAke21ldGhvZCBhcyBzdHJpbmd9ICR7cGF0aCBhcyBzdHJpbmd9IC0gJHtvcGVyYXRpb24uc3VtbWFyeX1gO1xuXG4gICAgY29uc3QgZW50cnlGaWxlID0gYC4vc3JjL2xhbWJkYS9yZXN0LiR7dGhpcy5vcHRpb25zLmFwaU5hbWUudG9Mb3dlckNhc2UoKX0uJHtvcGVyYXRpb25JZH0udHNgO1xuICAgIGlmICghZnMuZXhpc3RzU3luYyhlbnRyeUZpbGUpKSB7XG4gICAgICBpZiAoIWZzLmV4aXN0c1N5bmMoJy4vc3JjL2xhbWJkYScpKSB7XG4gICAgICAgIGZzLm1rZGlyU3luYygnLi9zcmMvbGFtYmRhJyk7XG4gICAgICB9XG4gICAgICB0aGlzLmNyZWF0ZUVudHJ5RmlsZShlbnRyeUZpbGUsIG1ldGhvZCwgb3BlcmF0aW9uSWQpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVFbnRyeUZpbGUoZW50cnlGaWxlOiBzdHJpbmcsIG1ldGhvZDogc3RyaW5nLCBvcGVyYXRpb25JZDogc3RyaW5nKSB7XG4gICAgbGV0IGZhY3RvcnlDYWxsO1xuICAgIGxldCBsb2dzO1xuICAgIHN3aXRjaCAobWV0aG9kLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgIGNhc2UgJ3Bvc3QnOlxuICAgICAgY2FzZSAncHV0JzpcbiAgICAgIGNhc2UgJ3BhdGNoJzpcbiAgICAgICAgZmFjdG9yeUNhbGwgPSBgYXBpLmNyZWF0ZU9wZW5BcGlIYW5kbGVyV2l0aFJlcXVlc3RCb2R5PG9wZXJhdGlvbnNbJyR7b3BlcmF0aW9uSWR9J10+KGFzeW5jIChjdHgsIGRhdGEpID0+IHtgO1xuICAgICAgICBsb2dzID0gJ2N0eC5sb2dnZXIuaW5mbyhKU09OLnN0cmluZ2lmeShkYXRhKSk7JztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdvcHRpb25zJzpcbiAgICAgIGNhc2UgJ2RlbGV0ZSc6XG4gICAgICBjYXNlICdnZXQnOlxuICAgICAgY2FzZSAnaGVhZCc6XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBmYWN0b3J5Q2FsbCA9IGBhcGkuY3JlYXRlT3BlbkFwaUhhbmRsZXI8b3BlcmF0aW9uc1snJHtvcGVyYXRpb25JZH0nXT4oYXN5bmMgKGN0eCkgPT4ge2A7XG4gICAgICAgIGxvZ3MgPSAnJztcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgZnMud3JpdGVGaWxlU3luYyhlbnRyeUZpbGUsIGBpbXBvcnQgeyBhcGksIGVycm9ycyB9IGZyb20gJyR7UEFDS0FHRV9OQU1FfS9saWIvbGFtYmRhJztcbmltcG9ydCB7IG9wZXJhdGlvbnMgfSBmcm9tICcuLi9nZW5lcmF0ZWQvcmVzdC4ke3RoaXMub3B0aW9ucy5hcGlOYW1lLnRvTG93ZXJDYXNlKCl9LW1vZGVsLmdlbmVyYXRlZCc7XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVyID0gJHtmYWN0b3J5Q2FsbH1cbiAgY3R4LmxvZ2dlci5pbmZvKEpTT04uc3RyaW5naWZ5KGN0eC5ldmVudCkpO1xuICAke2xvZ3N9XG4gIHRocm93IG5ldyBlcnJvcnMuSHR0cEVycm9yKDUwMCwgJ05vdCB5ZXQgaW1wbGVtZW50ZWQnKTtcbn0pO2AsIHtcbiAgICAgIGVuY29kaW5nOiAndXRmLTgnLFxuICAgIH0pO1xuICB9XG5cbn0iXX0=
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvamVuL3Jlc3QtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUNBQXlCO0FBQ3pCLDhDQUFnQztBQUVoQywyQ0FBNkI7QUFDN0IsaUNBQXNDO0FBT3RDLE1BQWEsT0FBUSxTQUFRLEVBQUUsQ0FBQyxTQUFTO0lBRXZDLFlBQVksR0FBa0MsRUFBWSxPQUF1QjtRQUMvRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFENkMsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFHL0UsR0FBRyxDQUFDLFVBQVUsQ0FDWixtQkFBbUIsRUFDbkIsbUJBQW1CLENBQ3BCLENBQUM7UUFDRixHQUFHLENBQUMsT0FBTyxDQUNULFNBQVMsRUFDVCxTQUFTLEVBQ1Qsb0JBQW9CLENBQ3JCLENBQUM7UUFFRixNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLGdCQUFnQixPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUU7WUFDaEYsSUFBSSxFQUFFLHNCQUFzQixPQUFPLENBQUMsY0FBYyxnQ0FBZ0MsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUscUJBQXFCO1lBQ3BJLFdBQVcsRUFBRSwrQ0FBK0M7U0FDN0QsQ0FBQyxDQUFDO1FBQ0gsR0FBRyxDQUFDLFdBQVksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVTLG1CQUFtQixDQUFDLFFBQWdCO1FBRTVDLEVBQUUsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFOzt5Q0FFVSxtQkFBWTs0Q0FDVCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUU7O21CQUUzRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU87Ozs7ZUFJeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPOztxREFFa0IsSUFB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QkFDakg7aUJBQ0Y7Z0JBQ0QsS0FBSyxNQUFNLE1BQU0sSUFBSSxRQUFRLEVBQUU7b0JBQzdCLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUM7d0JBQ3hELENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRTt3QkFDbkYscUJBQXFCO3dCQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7cUJBQzdDO2lCQUNGO2FBQ0Y7U0FDRjtRQUNELElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLGdCQUFnQixDQUFDLEVBQUU7WUFDMUQsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ3REO1FBQ0QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLHVCQUF1QixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztJQUMvSCxDQUFDO0NBRUY7QUF4TEQsMEJBd0xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgeWFtbCBmcm9tICdqcy15YW1sJztcbmltcG9ydCB7IE9wZW5BUEkzLCBPcGVyYXRpb25PYmplY3QsIFBhdGhJdGVtT2JqZWN0IH0gZnJvbSAnb3BlbmFwaS10eXBlc2NyaXB0JztcbmltcG9ydCAqIGFzIHBqIGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBQQUNLQUdFX05BTUUgfSBmcm9tICcuL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlc3RBcGlPcHRpb25zIHtcbiAgcmVhZG9ubHkgYXBpTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBkZWZpbml0aW9uRmlsZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgUmVzdEFwaSBleHRlbmRzIHBqLkNvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoYXBwOiBwai5hd3NjZGsuQXdzQ2RrVHlwZVNjcmlwdEFwcCwgcHJvdGVjdGVkIG9wdGlvbnM6IFJlc3RBcGlPcHRpb25zKSB7XG4gICAgc3VwZXIoYXBwKTtcblxuICAgIGFwcC5hZGREZXZEZXBzKFxuICAgICAgJ0B0eXBlcy9hd3MtbGFtYmRhJyxcbiAgICAgICdAdHlwZXMvbGFtYmRhLWxvZycsXG4gICAgKTtcbiAgICBhcHAuYWRkRGVwcyhcbiAgICAgICdlc2J1aWxkJyxcbiAgICAgICdqcy15YW1sJyxcbiAgICAgICdvcGVuYXBpLXR5cGVzY3JpcHQnLFxuICAgICk7XG5cbiAgICBjb25zdCBnZW5lcmF0ZVRhc2sgPSBhcHAuYWRkVGFzayhgZ2VuZXJhdGU6YXBpOiR7b3B0aW9ucy5hcGlOYW1lLnRvTG93ZXJDYXNlKCl9YCwge1xuICAgICAgZXhlYzogYG9wZW5hcGktdHlwZXNjcmlwdCAke29wdGlvbnMuZGVmaW5pdGlvbkZpbGV9IC0tb3V0cHV0IHNyYy9nZW5lcmF0ZWQvcmVzdC4ke29wdGlvbnMuYXBpTmFtZS50b0xvd2VyQ2FzZSgpfS1tb2RlbC5nZW5lcmF0ZWQudHNgLFxuICAgICAgZGVzY3JpcHRpb246ICdHZW5lcmF0ZSBUeXBlcyBmcm9tIHRoZSBPcGVuQVBJIHNwZWNpZmljYXRpb24nLFxuICAgIH0pO1xuICAgIGFwcC5kZWZhdWx0VGFzayEuc3Bhd24oZ2VuZXJhdGVUYXNrKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVDb25zdHJ1Y3RGaWxlKGZpbGVOYW1lOiBzdHJpbmcpIHtcblxuICAgIGZzLndyaXRlRmlsZVN5bmMoZmlsZU5hbWUsIGAvKiBlc2xpbnQtZGlzYWJsZSAqL1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBSZXN0QXBpLCBSZXN0QXBpUHJvcHMgfSBmcm9tICcke1BBQ0tBR0VfTkFNRX0vbGliL2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgb3BlcmF0aW9ucywgcGF0aHMgfSBmcm9tICcuL3Jlc3QuJHt0aGlzLm9wdGlvbnMuYXBpTmFtZS50b0xvd2VyQ2FzZSgpfS1tb2RlbC5nZW5lcmF0ZWQnO1xuXG5leHBvcnQgaW50ZXJmYWNlICR7dGhpcy5vcHRpb25zLmFwaU5hbWV9UmVzdEFwaVByb3BzIGV4dGVuZHMgT21pdDxSZXN0QXBpUHJvcHM8b3BlcmF0aW9ucz4sICdkZWZpbml0aW9uRmlsZU5hbWUnIHwgJ2FwaU5hbWUnPiB7XG4gIC8vXG59XG5cbmV4cG9ydCBjbGFzcyAke3RoaXMub3B0aW9ucy5hcGlOYW1lfVJlc3RBcGkgZXh0ZW5kcyBSZXN0QXBpPHBhdGhzLCBvcGVyYXRpb25zPiB7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6ICR7dGhpcy5vcHRpb25zLmFwaU5hbWV9UmVzdEFwaVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGFwaU5hbWU6ICcke3RoaXMub3B0aW9ucy5hcGlOYW1lfScsXG4gICAgICBkZWZpbml0aW9uRmlsZU5hbWU6ICcke3RoaXMub3B0aW9ucy5kZWZpbml0aW9uRmlsZX0nLFxuICAgIH0pO1xuICB9XG5cbn1gLCB7XG4gICAgICBlbmNvZGluZzogJ3V0Zi04JyxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCB2YWxpZGF0ZVBhdGhSZWYoYXBpU3BlYzogT3BlbkFQSTMsIHBhdGg6IHN0cmluZywgdmlzaXRlZDogc3RyaW5nW10gPSBbXSk6IGJvb2xlYW4ge1xuICAgIGlmICghcGF0aC5zdGFydHNXaXRoKCcjJykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5hYmxlIHRvIHJlc29sdmUgcmVmICcke3BhdGh9JyAtIFJlc29sdmluZyByZWZlcmVuY2VzIHRvIHBhdGhzIGZyb20gZGlmZmVyZW50IGZpbGVzIGlzIGN1cnJlbnRseSBub3Qgc3VwcG9ydGVkYCk7XG4gICAgfVxuXG4gICAgY29uc3QgcGF0aFByZXR0eVNwbGl0ID1cbiAgICAgIHBhdGhcbiAgICAgICAgLnNwbGl0KCcvJylcbiAgICAgICAgLnNsaWNlKDEpXG4gICAgICAgIC5tYXAocGF0aFBhcnQgPT5cbiAgICAgICAgICBwYXRoUGFydFxuICAgICAgICAgICAgLnJlcGxhY2UoJ34xJywgJy8nKVxuICAgICAgICAgICAgLnJlcGxhY2UoJ34wJywgJ34nKSxcbiAgICAgICAgKTtcblxuICAgIGlmICh2aXNpdGVkLmluY2x1ZGVzKHBhdGhQcmV0dHlTcGxpdFsxXSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ3ljbGljYWwgcmVmZXJlbmNlIGV4aXN0cyBiZXR3ZWVuIHBhdGhzOiAke3Zpc2l0ZWQuam9pbignLCAnKX1gKTtcbiAgICB9XG5cblxuICAgIGNvbnN0IG1heWJlUGF0aCA9IHBhdGhQcmV0dHlTcGxpdC5yZWR1Y2UoKGFjYywgcGF0aFBhcnQpID0+IHtcbiAgICAgIGlmIChPYmplY3Qua2V5cyhhY2MpLmluY2x1ZGVzKHBhdGhQYXJ0KSkge1xuICAgICAgICByZXR1cm4gYWNjW3BhdGhQYXJ0XTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfSwgYXBpU3BlYyBhcyBhbnkpO1xuICAgIGlmIChtYXliZVBhdGgpIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobWF5YmVQYXRoLCAnJHJlZicpKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbGlkYXRlUGF0aFJlZihhcGlTcGVjLCBtYXliZVBhdGguJHJlZiwgWy4uLnZpc2l0ZWQsIHBhdGhQcmV0dHlTcGxpdFsxXV0pO1xuICAgICAgfVxuICAgICAgLy8gQ2xvc2VzdCB0aGluZyB0byBtYWtpbmcgc3VyZSB0aGUgcmVmIGFjdHVhbGx5IGlzIGEgcGF0aCBvYmplY3RcbiAgICAgIHJldHVybiBbJ2dldCcsICdwb3N0JywgJ3B1dCcsICdkZWxldGUnLCAncGF0Y2gnLCAnb3B0aW9ucycsICdoZWFkJ10uc29tZShtZXRob2QgPT4gT2JqZWN0LmtleXMobWF5YmVQYXRoKS5pbmRleE9mKG1ldGhvZCkgPj0gMCk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhZGRSZXN0UmVzb3VyY2UoYXBpU3BlYzogT3BlbkFQSTMsIHBhdGg6IHN0cmluZywgbWV0aG9kOiBzdHJpbmcpIHtcbiAgICBjb25zdCBvYVBhdGggPSBhcGlTcGVjLnBhdGhzIVtwYXRoXSBhcyBQYXRoSXRlbU9iamVjdDtcbiAgICBjb25zdCBvcGVyYXRpb24gPSBvYVBhdGhbbWV0aG9kIGFzIGtleW9mIFBhdGhJdGVtT2JqZWN0XSBhcyBPcGVyYXRpb25PYmplY3Q7XG4gICAgY29uc3Qgb3BlcmF0aW9uSWQgPSBvcGVyYXRpb24ub3BlcmF0aW9uSWQhO1xuICAgIC8vIGNvbnN0IGRlc2NyaXB0aW9uID0gYCR7bWV0aG9kIGFzIHN0cmluZ30gJHtwYXRoIGFzIHN0cmluZ30gLSAke29wZXJhdGlvbi5zdW1tYXJ5fWA7XG5cbiAgICBjb25zdCBlbnRyeUZpbGUgPSBgJHt0aGlzLnByb2plY3Qub3V0ZGlyfS9zcmMvbGFtYmRhL3Jlc3QuJHt0aGlzLm9wdGlvbnMuYXBpTmFtZS50b0xvd2VyQ2FzZSgpfS4ke29wZXJhdGlvbklkfS50c2A7XG4gICAgaWYgKCFmcy5leGlzdHNTeW5jKGVudHJ5RmlsZSkpIHtcbiAgICAgIGlmICghZnMuZXhpc3RzU3luYyhgJHt0aGlzLnByb2plY3Qub3V0ZGlyfS9zcmMvbGFtYmRhYCkpIHtcbiAgICAgICAgZnMubWtkaXJTeW5jKGAke3RoaXMucHJvamVjdC5vdXRkaXJ9L3NyYy9sYW1iZGFgKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY3JlYXRlRW50cnlGaWxlKGVudHJ5RmlsZSwgbWV0aG9kLCBvcGVyYXRpb25JZCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUVudHJ5RmlsZShlbnRyeUZpbGU6IHN0cmluZywgbWV0aG9kOiBzdHJpbmcsIG9wZXJhdGlvbklkOiBzdHJpbmcpIHtcbiAgICBsZXQgZmFjdG9yeUNhbGw7XG4gICAgbGV0IGxvZ3M7XG4gICAgc3dpdGNoIChtZXRob2QudG9Mb3dlckNhc2UoKSkge1xuICAgICAgY2FzZSAncG9zdCc6XG4gICAgICBjYXNlICdwdXQnOlxuICAgICAgY2FzZSAncGF0Y2gnOlxuICAgICAgICBmYWN0b3J5Q2FsbCA9IGBhcGkuY3JlYXRlT3BlbkFwaUhhbmRsZXJXaXRoUmVxdWVzdEJvZHk8b3BlcmF0aW9uc1snJHtvcGVyYXRpb25JZH0nXT4oYXN5bmMgKGN0eCwgZGF0YSkgPT4ge2A7XG4gICAgICAgIGxvZ3MgPSAnY3R4LmxvZ2dlci5pbmZvKEpTT04uc3RyaW5naWZ5KGRhdGEpKTsnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ29wdGlvbnMnOlxuICAgICAgY2FzZSAnZGVsZXRlJzpcbiAgICAgIGNhc2UgJ2dldCc6XG4gICAgICBjYXNlICdoZWFkJzpcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGZhY3RvcnlDYWxsID0gYGFwaS5jcmVhdGVPcGVuQXBpSGFuZGxlcjxvcGVyYXRpb25zWycke29wZXJhdGlvbklkfSddPihhc3luYyAoY3R4KSA9PiB7YDtcbiAgICAgICAgbG9ncyA9ICcnO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKGVudHJ5RmlsZSwgYGltcG9ydCB7IGFwaSwgZXJyb3JzIH0gZnJvbSAnJHtQQUNLQUdFX05BTUV9L2xpYi9sYW1iZGEnO1xuaW1wb3J0IHsgb3BlcmF0aW9ucyB9IGZyb20gJy4uL2dlbmVyYXRlZC9yZXN0LiR7dGhpcy5vcHRpb25zLmFwaU5hbWUudG9Mb3dlckNhc2UoKX0tbW9kZWwuZ2VuZXJhdGVkJztcblxuZXhwb3J0IGNvbnN0IGhhbmRsZXIgPSAke2ZhY3RvcnlDYWxsfVxuICBjdHgubG9nZ2VyLmluZm8oSlNPTi5zdHJpbmdpZnkoY3R4LmV2ZW50KSk7XG4gICR7bG9nc31cbiAgdGhyb3cgbmV3IGVycm9ycy5IdHRwRXJyb3IoNTAwLCAnTm90IHlldCBpbXBsZW1lbnRlZCcpO1xufSk7YCwge1xuICAgICAgZW5jb2Rpbmc6ICd1dGYtOCcsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc3ludGhlc2l6ZSgpIHtcbiAgICBzdXBlci5zeW50aGVzaXplKCk7XG4gICAgaWYgKCFmcy5leGlzdHNTeW5jKHRoaXMub3B0aW9ucy5kZWZpbml0aW9uRmlsZSkpIHtcbiAgICAgIGZzLndyaXRlRmlsZVN5bmModGhpcy5vcHRpb25zLmRlZmluaXRpb25GaWxlLCB5YW1sLmR1bXAoe1xuICAgICAgICBvcGVuYXBpOiAnMy4wLjEnLFxuICAgICAgICBwYXRoczoge1xuICAgICAgICAgICcvaGVsbG8nOiB7XG4gICAgICAgICAgICBnZXQ6IHtcbiAgICAgICAgICAgICAgb3BlcmF0aW9uSWQ6ICdoZWxsb1dvcmxkJyxcbiAgICAgICAgICAgICAgcmVzcG9uc2VzOiB7XG4gICAgICAgICAgICAgICAgMjAwOiB7XG4gICAgICAgICAgICAgICAgICBjb250ZW50OiB7XG4gICAgICAgICAgICAgICAgICAgICdhcHBsaWNhdGlvbi9qc29uJzoge1xuICAgICAgICAgICAgICAgICAgICAgIHNjaGVtYToge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgaW5mbzoge1xuICAgICAgICAgIHRpdGxlOiBgJHt0aGlzLm9wdGlvbnMuYXBpTmFtZX0gQVBJIGRlZmluaXRpb25gLFxuICAgICAgICAgIHZlcnNpb246ICcxLjAnLFxuICAgICAgICB9LFxuICAgICAgfSkpO1xuICAgIH1cbiAgICBjb25zdCBhcGlTcGVjID0geWFtbC5sb2FkKGZzLnJlYWRGaWxlU3luYyh0aGlzLm9wdGlvbnMuZGVmaW5pdGlvbkZpbGUpLnRvU3RyaW5nKCkpIGFzIE9wZW5BUEkzO1xuICAgIGZvciAoY29uc3QgcGF0aCBpbiBhcGlTcGVjLnBhdGhzKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGFwaVNwZWMucGF0aHMsIHBhdGgpKSB7XG4gICAgICAgIGNvbnN0IHBhdGhJdGVtID0gYXBpU3BlYy5wYXRoc1twYXRoXTtcbiAgICAgICAgaWYgKCgnJHJlZicgaW4gcGF0aEl0ZW0pKSB7XG4gICAgICAgICAgaWYgKCF0aGlzLnZhbGlkYXRlUGF0aFJlZihhcGlTcGVjLCBwYXRoSXRlbS4kcmVmKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBQYXRoICcke3BhdGh9JyByZWZlcmVuY2VzICcke3BhdGhJdGVtLiRyZWZ9Jywgd2hpY2ggZG9lcyBub3QgZXhpc3QgaW4gdGhpcyBBUEkgc3BlY2lmaWNhdGlvbmApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBmb3IgKGNvbnN0IG1ldGhvZCBpbiBwYXRoSXRlbSkge1xuICAgICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocGF0aEl0ZW0sIG1ldGhvZCkgJiZcbiAgICAgICAgICAgIFsnZ2V0JywgJ3Bvc3QnLCAncHV0JywgJ2RlbGV0ZScsICdwYXRjaCcsICdvcHRpb25zJywgJ2hlYWQnXS5pbmRleE9mKG1ldGhvZCkgPj0gMCkge1xuICAgICAgICAgICAgLy8gQWRkIGFsbCBvcGVyYXRpb25zXG4gICAgICAgICAgICB0aGlzLmFkZFJlc3RSZXNvdXJjZShhcGlTcGVjLCBwYXRoLCBtZXRob2QpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBpZiAoIWZzLmV4aXN0c1N5bmMoYCR7dGhpcy5wcm9qZWN0Lm91dGRpcn0vc3JjL2dlbmVyYXRlZGApKSB7XG4gICAgICBmcy5ta2RpclN5bmMoYCR7dGhpcy5wcm9qZWN0Lm91dGRpcn0vc3JjL2dlbmVyYXRlZGApO1xuICAgIH1cbiAgICB0aGlzLmNyZWF0ZUNvbnN0cnVjdEZpbGUoYCR7dGhpcy5wcm9qZWN0Lm91dGRpcn0vc3JjL2dlbmVyYXRlZC9yZXN0LiR7dGhpcy5vcHRpb25zLmFwaU5hbWUudG9Mb3dlckNhc2UoKX0tYXBpLmdlbmVyYXRlZC50c2ApO1xuICB9XG5cbn0iXX0=
@@ -14,5 +14,6 @@ export declare class Workflow extends pj.Component {
14
14
  protected createConstructFile(fileName: string, matchedVariables: VariableDefinition[]): void;
15
15
  protected renderStateConfigDefinition(def: VariableDefinition): string;
16
16
  protected renderDefinitionSubstitution(def: VariableDefinition): string;
17
+ synthesize(): void;
17
18
  }
18
19
  export {};
@@ -29,19 +29,8 @@ const pj = __importStar(require("projen"));
29
29
  const core_1 = require("./core");
30
30
  class Workflow extends pj.Component {
31
31
  constructor(app, options) {
32
- var _a;
33
32
  super(app);
34
33
  this.options = options;
35
- const workflowDefinition = fs.readFileSync(options.definitionFile).toString();
36
- const matches = (_a = workflowDefinition.match(/\$\{[a-zA-Z0-9#]*\}/g)) === null || _a === void 0 ? void 0 : _a.map(match => match.substring(2, match.length - 1));
37
- const variables = (matches !== null && matches !== void 0 ? matches : []).map(varName => {
38
- if (varName.indexOf('#') < 0) {
39
- return { name: varName, fullName: varName, type: 'string' };
40
- }
41
- const [name, type] = varName.split('#');
42
- return { name, type, fullName: varName };
43
- });
44
- this.createConstructFile(`./src/generated/workflow.${options.workflowName.toLowerCase()}.generated.ts`, variables);
45
34
  }
46
35
  createConstructFile(fileName, matchedVariables) {
47
36
  fs.writeFileSync(fileName, `/* eslint-disable */
@@ -94,6 +83,37 @@ export class ${this.options.workflowName}Workflow extends sls.Workflow {
94
83
  return `'${def.fullName}': props.stateConfig.${def.name},`;
95
84
  }
96
85
  }
86
+ synthesize() {
87
+ var _a;
88
+ super.synthesize();
89
+ if (!fs.existsSync(this.options.definitionFile)) {
90
+ fs.writeFileSync(this.options.definitionFile, JSON.stringify({
91
+ StartAt: 'Hello World',
92
+ States: {
93
+ 'Hello World': {
94
+ Type: 'Pass',
95
+ Result: {
96
+ Hello: '${world}',
97
+ },
98
+ End: true,
99
+ },
100
+ },
101
+ }, undefined, 2));
102
+ }
103
+ const workflowDefinition = fs.readFileSync(this.options.definitionFile).toString();
104
+ const matches = (_a = workflowDefinition.match(/\$\{[a-zA-Z0-9#]*\}/g)) === null || _a === void 0 ? void 0 : _a.map(match => match.substring(2, match.length - 1));
105
+ const variables = (matches !== null && matches !== void 0 ? matches : []).map(varName => {
106
+ if (varName.indexOf('#') < 0) {
107
+ return { name: varName, fullName: varName, type: 'string' };
108
+ }
109
+ const [name, type] = varName.split('#');
110
+ return { name, type, fullName: varName };
111
+ });
112
+ if (!fs.existsSync(`${this.project.outdir}/src/generated`)) {
113
+ fs.mkdirSync(`${this.project.outdir}/src/generated`);
114
+ }
115
+ this.createConstructFile(`${this.project.outdir}/src/generated/workflow.${this.options.workflowName.toLowerCase()}.generated.ts`, variables);
116
+ }
97
117
  }
98
118
  exports.Workflow = Workflow;
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvamVuL3dvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUNBQXlCO0FBQ3pCLDJDQUE2QjtBQUM3QixpQ0FBc0M7QUFhdEMsTUFBYSxRQUFTLFNBQVEsRUFBRSxDQUFDLFNBQVM7SUFFeEMsWUFBWSxHQUFrQyxFQUFZLE9BQXdCOztRQUNoRixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFENkMsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFHaEYsTUFBTSxrQkFBa0IsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM5RSxNQUFNLE9BQU8sR0FBRyxNQUFBLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQywwQ0FBRSxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckgsTUFBTSxTQUFTLEdBQXlCLENBQUMsT0FBTyxhQUFQLE9BQU8sY0FBUCxPQUFPLEdBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3BFLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzVCLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDO2FBQzdEO1lBQ0QsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxtQkFBbUIsQ0FBQyw0QkFBNEIsT0FBTyxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3JILENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxRQUFnQixFQUFFLGdCQUFzQztRQUNwRixFQUFFLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRTs7Ozt3QkFJUCxtQkFBWTs7bUJBRWpCLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWTs7TUFFdEMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQzs7OztlQUloRSxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVk7O2dFQUV3QixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVk7Ozs2QkFHNUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjOztVQUU5QyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDOzs7OztFQUtsRixFQUFFO1lBQ0UsUUFBUSxFQUFFLE9BQU87U0FDbEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVTLDJCQUEyQixDQUFDLEdBQXVCO1FBQzNELFFBQVEsR0FBRyxDQUFDLElBQUksRUFBRTtZQUNoQixLQUFLLGVBQWU7Z0JBQ2xCLE9BQU8sWUFBWSxHQUFHLENBQUMsSUFBSSxXQUFXLENBQUM7WUFDekMsS0FBSyxnQkFBZ0I7Z0JBQ25CLE9BQU8sWUFBWSxHQUFHLENBQUMsSUFBSSxjQUFjLENBQUM7WUFDNUMsS0FBSyxRQUFRLENBQUM7WUFDZDtnQkFDRSxPQUFPLFlBQVksR0FBRyxDQUFDLElBQUksV0FBVyxDQUFDO1NBQzFDO0lBQ0gsQ0FBQztJQUVTLDRCQUE0QixDQUFDLEdBQXVCO1FBQzVELFFBQVEsR0FBRyxDQUFDLElBQUksRUFBRTtZQUNoQixLQUFLLGVBQWU7Z0JBQ2xCLE9BQU8sSUFBSSxHQUFHLENBQUMsUUFBUSx3QkFBd0IsR0FBRyxDQUFDLElBQUksYUFBYSxDQUFDO1lBQ3ZFLEtBQUssZ0JBQWdCO2dCQUNuQixPQUFPLElBQUksR0FBRyxDQUFDLFFBQVEsd0JBQXdCLEdBQUcsQ0FBQyxJQUFJLGVBQWUsQ0FBQztZQUN6RSxLQUFLLFFBQVEsQ0FBQztZQUNkO2dCQUNFLE9BQU8sSUFBSSxHQUFHLENBQUMsUUFBUSx3QkFBd0IsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDO1NBQzlEO0lBQ0gsQ0FBQztDQUVGO0FBeEVELDRCQXdFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcbmltcG9ydCAqIGFzIHBqIGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBQQUNLQUdFX05BTUUgfSBmcm9tICcuL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFdvcmtmbG93T3B0aW9ucyB7XG4gIHJlYWRvbmx5IHdvcmtmbG93TmFtZTogc3RyaW5nO1xuICByZWFkb25seSBkZWZpbml0aW9uRmlsZTogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgVmFyaWFibGVEZWZpbml0aW9uIHtcbiAgcmVhZG9ubHkgZnVsbE5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSB0eXBlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBXb3JrZmxvdyBleHRlbmRzIHBqLkNvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoYXBwOiBwai5hd3NjZGsuQXdzQ2RrVHlwZVNjcmlwdEFwcCwgcHJvdGVjdGVkIG9wdGlvbnM6IFdvcmtmbG93T3B0aW9ucykge1xuICAgIHN1cGVyKGFwcCk7XG5cbiAgICBjb25zdCB3b3JrZmxvd0RlZmluaXRpb24gPSBmcy5yZWFkRmlsZVN5bmMob3B0aW9ucy5kZWZpbml0aW9uRmlsZSkudG9TdHJpbmcoKTtcbiAgICBjb25zdCBtYXRjaGVzID0gd29ya2Zsb3dEZWZpbml0aW9uLm1hdGNoKC9cXCRcXHtbYS16QS1aMC05I10qXFx9L2cpPy5tYXAobWF0Y2ggPT4gbWF0Y2guc3Vic3RyaW5nKDIsIG1hdGNoLmxlbmd0aCAtIDEpKTtcbiAgICBjb25zdCB2YXJpYWJsZXM6IFZhcmlhYmxlRGVmaW5pdGlvbltdID0gKG1hdGNoZXMgPz8gW10pLm1hcCh2YXJOYW1lID0+IHtcbiAgICAgIGlmICh2YXJOYW1lLmluZGV4T2YoJyMnKSA8IDApIHtcbiAgICAgICAgcmV0dXJuIHsgbmFtZTogdmFyTmFtZSwgZnVsbE5hbWU6IHZhck5hbWUsIHR5cGU6ICdzdHJpbmcnIH07XG4gICAgICB9XG4gICAgICBjb25zdCBbbmFtZSwgdHlwZV0gPSB2YXJOYW1lLnNwbGl0KCcjJyk7XG4gICAgICByZXR1cm4geyBuYW1lLCB0eXBlLCBmdWxsTmFtZTogdmFyTmFtZSB9O1xuICAgIH0pO1xuXG4gICAgdGhpcy5jcmVhdGVDb25zdHJ1Y3RGaWxlKGAuL3NyYy9nZW5lcmF0ZWQvd29ya2Zsb3cuJHtvcHRpb25zLndvcmtmbG93TmFtZS50b0xvd2VyQ2FzZSgpfS5nZW5lcmF0ZWQudHNgLCB2YXJpYWJsZXMpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUNvbnN0cnVjdEZpbGUoZmlsZU5hbWU6IHN0cmluZywgbWF0Y2hlZFZhcmlhYmxlczogVmFyaWFibGVEZWZpbml0aW9uW10pIHtcbiAgICBmcy53cml0ZUZpbGVTeW5jKGZpbGVOYW1lLCBgLyogZXNsaW50LWRpc2FibGUgKi9cbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJVGFibGUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZHluYW1vZGInO1xuaW1wb3J0IHsgSUZ1bmN0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgKiBhcyBzbHMgZnJvbSAnJHtQQUNLQUdFX05BTUV9L2xpYi9jb25zdHJ1Y3RzJztcblxuZXhwb3J0IGludGVyZmFjZSAke3RoaXMub3B0aW9ucy53b3JrZmxvd05hbWV9V29ya2Zsb3dQcm9wcyBleHRlbmRzIE9taXQ8c2xzLldvcmtmbG93UHJvcHMsICdkZWZpbml0aW9uRmlsZU5hbWUnIHwgJ2RlZmluaXRpb25TdWJzdGl0dXRpb25zJz4ge1xuICByZWFkb25seSBzdGF0ZUNvbmZpZzoge1xuICAgICR7bWF0Y2hlZFZhcmlhYmxlcy5tYXAodiA9PiB0aGlzLnJlbmRlclN0YXRlQ29uZmlnRGVmaW5pdGlvbih2KSkuam9pbignXFxuJyl9XG4gIH07XG59XG5cbmV4cG9ydCBjbGFzcyAke3RoaXMub3B0aW9ucy53b3JrZmxvd05hbWV9V29ya2Zsb3cgZXh0ZW5kcyBzbHMuV29ya2Zsb3cge1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6ICR7dGhpcy5vcHRpb25zLndvcmtmbG93TmFtZX1Xb3JrZmxvd1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGRlZmluaXRpb25GaWxlTmFtZTogJyR7dGhpcy5vcHRpb25zLmRlZmluaXRpb25GaWxlfScsXG4gICAgICBkZWZpbml0aW9uU3Vic3RpdHV0aW9uczoge1xuICAgICAgICAke21hdGNoZWRWYXJpYWJsZXMubWFwKHYgPT4gdGhpcy5yZW5kZXJEZWZpbml0aW9uU3Vic3RpdHV0aW9uKHYpKS5qb2luKCdcXG4nKX1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG59YCwge1xuICAgICAgZW5jb2Rpbmc6ICd1dGYtOCcsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVuZGVyU3RhdGVDb25maWdEZWZpbml0aW9uKGRlZjogVmFyaWFibGVEZWZpbml0aW9uKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKGRlZi50eXBlKSB7XG4gICAgICBjYXNlICdEeW5hbW9EQlRhYmxlJzpcbiAgICAgICAgcmV0dXJuIGByZWFkb25seSAke2RlZi5uYW1lfTogSVRhYmxlO2A7XG4gICAgICBjYXNlICdMYW1iZGFGdW5jdGlvbic6XG4gICAgICAgIHJldHVybiBgcmVhZG9ubHkgJHtkZWYubmFtZX06IElGdW5jdGlvbjtgO1xuICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBgcmVhZG9ubHkgJHtkZWYubmFtZX06IHN0cmluZztgO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCByZW5kZXJEZWZpbml0aW9uU3Vic3RpdHV0aW9uKGRlZjogVmFyaWFibGVEZWZpbml0aW9uKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKGRlZi50eXBlKSB7XG4gICAgICBjYXNlICdEeW5hbW9EQlRhYmxlJzpcbiAgICAgICAgcmV0dXJuIGAnJHtkZWYuZnVsbE5hbWV9JzogcHJvcHMuc3RhdGVDb25maWcuJHtkZWYubmFtZX0udGFibGVOYW1lLGA7XG4gICAgICBjYXNlICdMYW1iZGFGdW5jdGlvbic6XG4gICAgICAgIHJldHVybiBgJyR7ZGVmLmZ1bGxOYW1lfSc6IHByb3BzLnN0YXRlQ29uZmlnLiR7ZGVmLm5hbWV9LmZ1bmN0aW9uQXJuLGA7XG4gICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGAnJHtkZWYuZnVsbE5hbWV9JzogcHJvcHMuc3RhdGVDb25maWcuJHtkZWYubmFtZX0sYDtcbiAgICB9XG4gIH1cblxufSJdfQ==
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvamVuL3dvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUNBQXlCO0FBQ3pCLDJDQUE2QjtBQUM3QixpQ0FBc0M7QUFhdEMsTUFBYSxRQUFTLFNBQVEsRUFBRSxDQUFDLFNBQVM7SUFFeEMsWUFBWSxHQUFrQyxFQUFZLE9BQXdCO1FBQ2hGLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUQ2QyxZQUFPLEdBQVAsT0FBTyxDQUFpQjtJQUVsRixDQUFDO0lBRVMsbUJBQW1CLENBQUMsUUFBZ0IsRUFBRSxnQkFBc0M7UUFDcEYsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUU7Ozs7d0JBSVAsbUJBQVk7O21CQUVqQixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVk7O01BRXRDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7Ozs7ZUFJaEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZOztnRUFFd0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZOzs7NkJBRzVELElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYzs7VUFFOUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQzs7Ozs7RUFLbEYsRUFBRTtZQUNFLFFBQVEsRUFBRSxPQUFPO1NBQ2xCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUywyQkFBMkIsQ0FBQyxHQUF1QjtRQUMzRCxRQUFRLEdBQUcsQ0FBQyxJQUFJLEVBQUU7WUFDaEIsS0FBSyxlQUFlO2dCQUNsQixPQUFPLFlBQVksR0FBRyxDQUFDLElBQUksV0FBVyxDQUFDO1lBQ3pDLEtBQUssZ0JBQWdCO2dCQUNuQixPQUFPLFlBQVksR0FBRyxDQUFDLElBQUksY0FBYyxDQUFDO1lBQzVDLEtBQUssUUFBUSxDQUFDO1lBQ2Q7Z0JBQ0UsT0FBTyxZQUFZLEdBQUcsQ0FBQyxJQUFJLFdBQVcsQ0FBQztTQUMxQztJQUNILENBQUM7SUFFUyw0QkFBNEIsQ0FBQyxHQUF1QjtRQUM1RCxRQUFRLEdBQUcsQ0FBQyxJQUFJLEVBQUU7WUFDaEIsS0FBSyxlQUFlO2dCQUNsQixPQUFPLElBQUksR0FBRyxDQUFDLFFBQVEsd0JBQXdCLEdBQUcsQ0FBQyxJQUFJLGFBQWEsQ0FBQztZQUN2RSxLQUFLLGdCQUFnQjtnQkFDbkIsT0FBTyxJQUFJLEdBQUcsQ0FBQyxRQUFRLHdCQUF3QixHQUFHLENBQUMsSUFBSSxlQUFlLENBQUM7WUFDekUsS0FBSyxRQUFRLENBQUM7WUFDZDtnQkFDRSxPQUFPLElBQUksR0FBRyxDQUFDLFFBQVEsd0JBQXdCLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQztTQUM5RDtJQUNILENBQUM7SUFFTSxVQUFVOztRQUNmLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQy9DLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQkFDM0QsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLE1BQU0sRUFBRTtvQkFDTixhQUFhLEVBQUU7d0JBQ2IsSUFBSSxFQUFFLE1BQU07d0JBQ1osTUFBTSxFQUFFOzRCQUNOLEtBQUssRUFBRSxVQUFVO3lCQUNsQjt3QkFDRCxHQUFHLEVBQUUsSUFBSTtxQkFDVjtpQkFDRjthQUNGLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbkI7UUFFRCxNQUFNLGtCQUFrQixHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNuRixNQUFNLE9BQU8sR0FBRyxNQUFBLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQywwQ0FBRSxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckgsTUFBTSxTQUFTLEdBQXlCLENBQUMsT0FBTyxhQUFQLE9BQU8sY0FBUCxPQUFPLEdBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3BFLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzVCLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDO2FBQzdEO1lBQ0QsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUMzQyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLGdCQUFnQixDQUFDLEVBQUU7WUFDMUQsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ3REO1FBQ0QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLDJCQUEyQixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQy9JLENBQUM7Q0FDRjtBQTVGRCw0QkE0RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwaiBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgUEFDS0FHRV9OQU1FIH0gZnJvbSAnLi9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvd09wdGlvbnMge1xuICByZWFkb25seSB3b3JrZmxvd05hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgZGVmaW5pdGlvbkZpbGU6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFZhcmlhYmxlRGVmaW5pdGlvbiB7XG4gIHJlYWRvbmx5IGZ1bGxOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgV29ya2Zsb3cgZXh0ZW5kcyBwai5Db21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKGFwcDogcGouYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHAsIHByb3RlY3RlZCBvcHRpb25zOiBXb3JrZmxvd09wdGlvbnMpIHtcbiAgICBzdXBlcihhcHApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUNvbnN0cnVjdEZpbGUoZmlsZU5hbWU6IHN0cmluZywgbWF0Y2hlZFZhcmlhYmxlczogVmFyaWFibGVEZWZpbml0aW9uW10pIHtcbiAgICBmcy53cml0ZUZpbGVTeW5jKGZpbGVOYW1lLCBgLyogZXNsaW50LWRpc2FibGUgKi9cbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJVGFibGUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZHluYW1vZGInO1xuaW1wb3J0IHsgSUZ1bmN0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5pbXBvcnQgKiBhcyBzbHMgZnJvbSAnJHtQQUNLQUdFX05BTUV9L2xpYi9jb25zdHJ1Y3RzJztcblxuZXhwb3J0IGludGVyZmFjZSAke3RoaXMub3B0aW9ucy53b3JrZmxvd05hbWV9V29ya2Zsb3dQcm9wcyBleHRlbmRzIE9taXQ8c2xzLldvcmtmbG93UHJvcHMsICdkZWZpbml0aW9uRmlsZU5hbWUnIHwgJ2RlZmluaXRpb25TdWJzdGl0dXRpb25zJz4ge1xuICByZWFkb25seSBzdGF0ZUNvbmZpZzoge1xuICAgICR7bWF0Y2hlZFZhcmlhYmxlcy5tYXAodiA9PiB0aGlzLnJlbmRlclN0YXRlQ29uZmlnRGVmaW5pdGlvbih2KSkuam9pbignXFxuJyl9XG4gIH07XG59XG5cbmV4cG9ydCBjbGFzcyAke3RoaXMub3B0aW9ucy53b3JrZmxvd05hbWV9V29ya2Zsb3cgZXh0ZW5kcyBzbHMuV29ya2Zsb3cge1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6ICR7dGhpcy5vcHRpb25zLndvcmtmbG93TmFtZX1Xb3JrZmxvd1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGRlZmluaXRpb25GaWxlTmFtZTogJyR7dGhpcy5vcHRpb25zLmRlZmluaXRpb25GaWxlfScsXG4gICAgICBkZWZpbml0aW9uU3Vic3RpdHV0aW9uczoge1xuICAgICAgICAke21hdGNoZWRWYXJpYWJsZXMubWFwKHYgPT4gdGhpcy5yZW5kZXJEZWZpbml0aW9uU3Vic3RpdHV0aW9uKHYpKS5qb2luKCdcXG4nKX1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG59YCwge1xuICAgICAgZW5jb2Rpbmc6ICd1dGYtOCcsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVuZGVyU3RhdGVDb25maWdEZWZpbml0aW9uKGRlZjogVmFyaWFibGVEZWZpbml0aW9uKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKGRlZi50eXBlKSB7XG4gICAgICBjYXNlICdEeW5hbW9EQlRhYmxlJzpcbiAgICAgICAgcmV0dXJuIGByZWFkb25seSAke2RlZi5uYW1lfTogSVRhYmxlO2A7XG4gICAgICBjYXNlICdMYW1iZGFGdW5jdGlvbic6XG4gICAgICAgIHJldHVybiBgcmVhZG9ubHkgJHtkZWYubmFtZX06IElGdW5jdGlvbjtgO1xuICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBgcmVhZG9ubHkgJHtkZWYubmFtZX06IHN0cmluZztgO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCByZW5kZXJEZWZpbml0aW9uU3Vic3RpdHV0aW9uKGRlZjogVmFyaWFibGVEZWZpbml0aW9uKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKGRlZi50eXBlKSB7XG4gICAgICBjYXNlICdEeW5hbW9EQlRhYmxlJzpcbiAgICAgICAgcmV0dXJuIGAnJHtkZWYuZnVsbE5hbWV9JzogcHJvcHMuc3RhdGVDb25maWcuJHtkZWYubmFtZX0udGFibGVOYW1lLGA7XG4gICAgICBjYXNlICdMYW1iZGFGdW5jdGlvbic6XG4gICAgICAgIHJldHVybiBgJyR7ZGVmLmZ1bGxOYW1lfSc6IHByb3BzLnN0YXRlQ29uZmlnLiR7ZGVmLm5hbWV9LmZ1bmN0aW9uQXJuLGA7XG4gICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGAnJHtkZWYuZnVsbE5hbWV9JzogcHJvcHMuc3RhdGVDb25maWcuJHtkZWYubmFtZX0sYDtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc3ludGhlc2l6ZSgpIHtcbiAgICBzdXBlci5zeW50aGVzaXplKCk7XG4gICAgaWYgKCFmcy5leGlzdHNTeW5jKHRoaXMub3B0aW9ucy5kZWZpbml0aW9uRmlsZSkpIHtcbiAgICAgIGZzLndyaXRlRmlsZVN5bmModGhpcy5vcHRpb25zLmRlZmluaXRpb25GaWxlLCBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIFN0YXJ0QXQ6ICdIZWxsbyBXb3JsZCcsXG4gICAgICAgIFN0YXRlczoge1xuICAgICAgICAgICdIZWxsbyBXb3JsZCc6IHtcbiAgICAgICAgICAgIFR5cGU6ICdQYXNzJyxcbiAgICAgICAgICAgIFJlc3VsdDoge1xuICAgICAgICAgICAgICBIZWxsbzogJyR7d29ybGR9JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBFbmQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sIHVuZGVmaW5lZCwgMikpO1xuICAgIH1cblxuICAgIGNvbnN0IHdvcmtmbG93RGVmaW5pdGlvbiA9IGZzLnJlYWRGaWxlU3luYyh0aGlzLm9wdGlvbnMuZGVmaW5pdGlvbkZpbGUpLnRvU3RyaW5nKCk7XG4gICAgY29uc3QgbWF0Y2hlcyA9IHdvcmtmbG93RGVmaW5pdGlvbi5tYXRjaCgvXFwkXFx7W2EtekEtWjAtOSNdKlxcfS9nKT8ubWFwKG1hdGNoID0+IG1hdGNoLnN1YnN0cmluZygyLCBtYXRjaC5sZW5ndGggLSAxKSk7XG4gICAgY29uc3QgdmFyaWFibGVzOiBWYXJpYWJsZURlZmluaXRpb25bXSA9IChtYXRjaGVzID8/IFtdKS5tYXAodmFyTmFtZSA9PiB7XG4gICAgICBpZiAodmFyTmFtZS5pbmRleE9mKCcjJykgPCAwKSB7XG4gICAgICAgIHJldHVybiB7IG5hbWU6IHZhck5hbWUsIGZ1bGxOYW1lOiB2YXJOYW1lLCB0eXBlOiAnc3RyaW5nJyB9O1xuICAgICAgfVxuICAgICAgY29uc3QgW25hbWUsIHR5cGVdID0gdmFyTmFtZS5zcGxpdCgnIycpO1xuICAgICAgcmV0dXJuIHsgbmFtZSwgdHlwZSwgZnVsbE5hbWU6IHZhck5hbWUgfTtcbiAgICB9KTtcblxuICAgIGlmICghZnMuZXhpc3RzU3luYyhgJHt0aGlzLnByb2plY3Qub3V0ZGlyfS9zcmMvZ2VuZXJhdGVkYCkpIHtcbiAgICAgIGZzLm1rZGlyU3luYyhgJHt0aGlzLnByb2plY3Qub3V0ZGlyfS9zcmMvZ2VuZXJhdGVkYCk7XG4gICAgfVxuICAgIHRoaXMuY3JlYXRlQ29uc3RydWN0RmlsZShgJHt0aGlzLnByb2plY3Qub3V0ZGlyfS9zcmMvZ2VuZXJhdGVkL3dvcmtmbG93LiR7dGhpcy5vcHRpb25zLndvcmtmbG93TmFtZS50b0xvd2VyQ2FzZSgpfS5nZW5lcmF0ZWQudHNgLCB2YXJpYWJsZXMpO1xuICB9XG59Il19
package/package.json CHANGED
@@ -55,7 +55,7 @@
55
55
  "jest": "^29.6.4",
56
56
  "jest-junit": "^15",
57
57
  "npm-check-updates": "^16",
58
- "openapi-typescript": "6.2.1",
58
+ "openapi-typescript": "6.7.3",
59
59
  "projen": "^0.73.4",
60
60
  "standard-version": "^9",
61
61
  "ts-jest": "^29.1.1",
@@ -92,7 +92,7 @@
92
92
  },
93
93
  "main": "lib/index.js",
94
94
  "license": "Apache-2.0",
95
- "version": "2.7.0",
95
+ "version": "2.9.0",
96
96
  "jest": {
97
97
  "testMatch": [
98
98
  "<rootDir>/src/**/__tests__/**/*.ts?(x)",