@vertigis/workflow 5.31.1 → 5.32.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. package/amd/Errors.js +1 -1
  2. package/amd/Validation.js +1 -1
  3. package/amd/activities/arcgis/AddFeatureLayer.js +1 -1
  4. package/amd/activities/arcgis/AddFeatures.js +1 -1
  5. package/amd/activities/arcgis/AddGraphics.js +1 -1
  6. package/amd/activities/arcgis/DeleteFeatures.js +1 -1
  7. package/amd/activities/arcgis/GetViewExtent.js +1 -1
  8. package/amd/activities/arcgis/MapProvider.js +1 -1
  9. package/amd/activities/arcgis/RemoveFeatureSetFields.js +1 -1
  10. package/amd/activities/arcgis/RemoveGraphics.js +1 -1
  11. package/amd/activities/arcgis/RunPrint.js +1 -1
  12. package/amd/activities/arcgis/RunReport.d.ts +1 -0
  13. package/amd/activities/arcgis/RunReport.js +1 -1
  14. package/amd/activities/arcgis/RunWorkflow.js +1 -1
  15. package/amd/activities/arcgis/SetLayerDefinitionExpression.js +1 -1
  16. package/amd/activities/arcgis/SetViewpoint.js +1 -1
  17. package/amd/activities/arcgis/ShowResults.js +1 -1
  18. package/amd/activities/arcgis/UpdateFeatures.js +1 -1
  19. package/amd/activities/arcgis/runUtils.js +1 -1
  20. package/amd/activities/arcgis/shared.js +1 -1
  21. package/amd/activities/core/ForEach.js +1 -1
  22. package/amd/activities/core/ParseUrl.js +1 -1
  23. package/amd/activities/forms/FormRenderer.d.ts +0 -1
  24. package/amd/activities/forms/FormRenderer.js +1 -1
  25. package/amd/amdpile.js +1 -1
  26. package/amd/amdpile.js.LICENSE.txt +12 -3
  27. package/amd/app/AppActivity.d.ts +47 -3
  28. package/amd/app/AppActivity.js +1 -1
  29. package/amd/app/RegisterCustomFormElementBase.d.ts +11 -1
  30. package/amd/bundle.js +1 -1
  31. package/amd/deps/react/index.min.js +2 -0
  32. package/amd/deps/react/index.min.js.LICENSE.txt +14 -0
  33. package/amd/execution/ProgramRunner.js +1 -1
  34. package/amd/forms/FormComponent.d.ts +2 -2
  35. package/amd/forms/FormComponent.js +1 -1
  36. package/amd/forms/FormDefinition.d.ts +1 -1
  37. package/amd/forms/FormElementOuter.d.ts +3 -2
  38. package/amd/forms/FormElementOuter.js +1 -1
  39. package/amd/forms/FormHost.js +1 -1
  40. package/amd/forms/assets/arrow.js +1 -1
  41. package/amd/forms/assets/chevron.js +1 -1
  42. package/amd/forms/assets/cross.js +1 -1
  43. package/amd/forms/assets/datetime.js +1 -1
  44. package/amd/forms/assets/remove.js +1 -1
  45. package/amd/forms/assets/scan.js +1 -1
  46. package/amd/forms/common.js +1 -1
  47. package/amd/forms/components/DatePicker.d.ts +1 -1
  48. package/amd/forms/components/DatePicker.js +1 -1
  49. package/amd/forms/components/DateRangePicker.d.ts +1 -1
  50. package/amd/forms/components/DateRangePicker.js +1 -1
  51. package/amd/forms/components/DateTimePicker.js +1 -1
  52. package/amd/forms/components/Navigator.js +1 -1
  53. package/amd/forms/components/NumberRangeSlider.d.ts +1 -1
  54. package/amd/forms/components/NumberRangeSlider.js +1 -1
  55. package/amd/forms/components/NumberSlider.d.ts +1 -1
  56. package/amd/forms/components/NumberSlider.js +1 -1
  57. package/amd/forms/components/SyntheticButton.js +1 -1
  58. package/amd/forms/components/TimePickerInput.d.ts +1 -1
  59. package/amd/forms/components/TimePickerInput.js +1 -1
  60. package/amd/forms/dateUtilities.js +1 -1
  61. package/amd/forms/datetime.js +1 -1
  62. package/amd/forms/files.js +1 -1
  63. package/amd/forms/geometry.js +1 -1
  64. package/amd/forms/number.d.ts +1 -1
  65. package/amd/forms/number.js +1 -1
  66. package/amd/forms/numberSliderUtilities.js +1 -1
  67. package/amd/forms/presenter.js +1 -1
  68. package/amd/forms/renderers.js +1 -1
  69. package/amd/forms/scanner.js +1 -1
  70. package/amd/forms/selectors.js +1 -1
  71. package/amd/forms/text.js +1 -1
  72. package/amd/forms/utils.js +1 -1
  73. package/amd/libs/version.d.ts +1 -1
  74. package/amd/libs/version.js +1 -1
  75. package/amd/licensing/LicenseChecker.js +1 -1
  76. package/amd/licensing/Watermark.js +1 -1
  77. package/esm/Errors.js +1 -1
  78. package/esm/Validation.js +1 -1
  79. package/esm/activities/arcgis/AddFeatureLayer.js +1 -1
  80. package/esm/activities/arcgis/AddFeatures.js +1 -1
  81. package/esm/activities/arcgis/AddGraphics.js +1 -1
  82. package/esm/activities/arcgis/CreateFeatureSet.js +1 -1
  83. package/esm/activities/arcgis/DeleteFeatures.js +1 -1
  84. package/esm/activities/arcgis/Geoprocessing.js +1 -1
  85. package/esm/activities/arcgis/GeoprocessingAsync.js +1 -1
  86. package/esm/activities/arcgis/GetCodedValueDomain.js +1 -1
  87. package/esm/activities/arcgis/GetViewExtent.js +1 -1
  88. package/esm/activities/arcgis/MapProvider.js +1 -1
  89. package/esm/activities/arcgis/RemoveFeatureSetFields.js +1 -1
  90. package/esm/activities/arcgis/RemoveGraphics.js +1 -1
  91. package/esm/activities/arcgis/RunPrint.js +1 -1
  92. package/esm/activities/arcgis/RunReport.d.ts +1 -0
  93. package/esm/activities/arcgis/RunReport.js +1 -1
  94. package/esm/activities/arcgis/RunWorkflow.js +1 -1
  95. package/esm/activities/arcgis/SetViewpoint.js +1 -1
  96. package/esm/activities/arcgis/ShowResults.js +1 -1
  97. package/esm/activities/arcgis/UpdateFeatures.js +1 -1
  98. package/esm/activities/arcgis/runUtils.js +1 -1
  99. package/esm/activities/arcgis/shared.js +1 -1
  100. package/esm/activities/core/ForEach.js +1 -1
  101. package/esm/activities/core/ParseUrl.js +1 -1
  102. package/esm/activities/core/Subworkflow.js +1 -1
  103. package/esm/activities/forms/FormRenderer.d.ts +0 -1
  104. package/esm/activities/forms/FormRenderer.js +1 -1
  105. package/esm/app/ActivityPackUtils.js +1 -1
  106. package/esm/app/AppActivity.d.ts +47 -3
  107. package/esm/app/AppActivity.js +1 -1
  108. package/esm/app/RegisterCustomFormElementBase.d.ts +11 -1
  109. package/esm/app/RegisterCustomFormElementBase.js +1 -1
  110. package/esm/deps/react/index.min.js +2 -0
  111. package/esm/deps/react/index.min.js.LICENSE.txt +14 -0
  112. package/esm/execution/ProgramRunner.js +1 -1
  113. package/esm/forms/FormComponent.d.ts +2 -2
  114. package/esm/forms/FormComponent.js +1 -1
  115. package/esm/forms/FormDefinition.d.ts +1 -1
  116. package/esm/forms/FormElementOuter.d.ts +3 -2
  117. package/esm/forms/FormElementOuter.js +1 -1
  118. package/esm/forms/FormHost.js +1 -1
  119. package/esm/forms/assets/arrow.js +1 -1
  120. package/esm/forms/assets/chevron.js +1 -1
  121. package/esm/forms/assets/cross.js +1 -1
  122. package/esm/forms/assets/datetime.js +1 -1
  123. package/esm/forms/assets/remove.js +1 -1
  124. package/esm/forms/assets/scan.js +1 -1
  125. package/esm/forms/common.js +1 -1
  126. package/esm/forms/components/DatePicker.d.ts +1 -1
  127. package/esm/forms/components/DatePicker.js +1 -1
  128. package/esm/forms/components/DateRangePicker.d.ts +1 -1
  129. package/esm/forms/components/DateRangePicker.js +1 -1
  130. package/esm/forms/components/DateTimePicker.js +1 -1
  131. package/esm/forms/components/Navigator.js +1 -1
  132. package/esm/forms/components/NumberRangeSlider.d.ts +1 -1
  133. package/esm/forms/components/NumberRangeSlider.js +1 -1
  134. package/esm/forms/components/NumberSlider.d.ts +1 -1
  135. package/esm/forms/components/NumberSlider.js +1 -1
  136. package/esm/forms/components/SyntheticButton.js +1 -1
  137. package/esm/forms/components/TimePickerInput.d.ts +1 -1
  138. package/esm/forms/components/TimePickerInput.js +1 -1
  139. package/esm/forms/dateUtilities.js +1 -1
  140. package/esm/forms/datetime.js +1 -1
  141. package/esm/forms/files.js +1 -1
  142. package/esm/forms/geometry.js +1 -1
  143. package/esm/forms/number.d.ts +1 -1
  144. package/esm/forms/number.js +1 -1
  145. package/esm/forms/numberFormatter.js +1 -1
  146. package/esm/forms/numberSliderUtilities.js +1 -1
  147. package/esm/forms/presenter.js +1 -1
  148. package/esm/forms/renderers.js +1 -1
  149. package/esm/forms/scanner.js +1 -1
  150. package/esm/forms/selectors.js +1 -1
  151. package/esm/forms/text.js +1 -1
  152. package/esm/forms/utils.js +1 -1
  153. package/esm/libs/version.d.ts +1 -1
  154. package/esm/libs/version.js +1 -1
  155. package/esm/licensing/LicenseChecker.js +1 -1
  156. package/esm/licensing/Watermark.js +1 -1
  157. package/package.json +13 -8
  158. package/runtime/Errors.js +1 -1
  159. package/runtime/Validation.js +1 -1
  160. package/runtime/activities/arcgis/AddFeatureLayer.js +1 -1
  161. package/runtime/activities/arcgis/AddFeatures.js +1 -1
  162. package/runtime/activities/arcgis/AddGraphics.js +1 -1
  163. package/runtime/activities/arcgis/DeleteFeatures.js +1 -1
  164. package/runtime/activities/arcgis/GetViewExtent.js +1 -1
  165. package/runtime/activities/arcgis/MapProvider.js +1 -1
  166. package/runtime/activities/arcgis/RemoveFeatureSetFields.js +1 -1
  167. package/runtime/activities/arcgis/RemoveGraphics.js +1 -1
  168. package/runtime/activities/arcgis/RunPrint.js +1 -1
  169. package/runtime/activities/arcgis/RunReport.d.ts +1 -0
  170. package/runtime/activities/arcgis/RunReport.js +1 -1
  171. package/runtime/activities/arcgis/RunWorkflow.js +1 -1
  172. package/runtime/activities/arcgis/SetLayerDefinitionExpression.js +1 -1
  173. package/runtime/activities/arcgis/SetViewpoint.js +1 -1
  174. package/runtime/activities/arcgis/ShowResults.js +1 -1
  175. package/runtime/activities/arcgis/UpdateFeatures.js +1 -1
  176. package/runtime/activities/arcgis/runUtils.js +1 -1
  177. package/runtime/activities/arcgis/shared.js +1 -1
  178. package/runtime/activities/core/ForEach.js +1 -1
  179. package/runtime/activities/core/ParseUrl.js +1 -1
  180. package/runtime/activities/forms/FormRenderer.d.ts +0 -1
  181. package/runtime/activities/forms/FormRenderer.js +1 -1
  182. package/runtime/amdpile.js +1 -1
  183. package/runtime/amdpile.js.LICENSE.txt +12 -3
  184. package/runtime/app/AppActivity.d.ts +47 -3
  185. package/runtime/app/AppActivity.js +1 -1
  186. package/runtime/app/RegisterCustomFormElementBase.d.ts +11 -1
  187. package/runtime/bundle.js +1 -1
  188. package/runtime/deps/react/index.min.js +2 -0
  189. package/runtime/deps/react/index.min.js.LICENSE.txt +14 -0
  190. package/runtime/execution/ProgramRunner.js +1 -1
  191. package/runtime/forms/FormComponent.d.ts +2 -2
  192. package/runtime/forms/FormComponent.js +1 -1
  193. package/runtime/forms/FormDefinition.d.ts +1 -1
  194. package/runtime/forms/FormElementOuter.d.ts +3 -2
  195. package/runtime/forms/FormElementOuter.js +1 -1
  196. package/runtime/forms/FormHost.js +1 -1
  197. package/runtime/forms/assets/arrow.js +1 -1
  198. package/runtime/forms/assets/chevron.js +1 -1
  199. package/runtime/forms/assets/cross.js +1 -1
  200. package/runtime/forms/assets/datetime.js +1 -1
  201. package/runtime/forms/assets/remove.js +1 -1
  202. package/runtime/forms/assets/scan.js +1 -1
  203. package/runtime/forms/common.js +1 -1
  204. package/runtime/forms/components/DatePicker.d.ts +1 -1
  205. package/runtime/forms/components/DatePicker.js +1 -1
  206. package/runtime/forms/components/DateRangePicker.d.ts +1 -1
  207. package/runtime/forms/components/DateRangePicker.js +1 -1
  208. package/runtime/forms/components/DateTimePicker.js +1 -1
  209. package/runtime/forms/components/Navigator.js +1 -1
  210. package/runtime/forms/components/NumberRangeSlider.d.ts +1 -1
  211. package/runtime/forms/components/NumberRangeSlider.js +1 -1
  212. package/runtime/forms/components/NumberSlider.d.ts +1 -1
  213. package/runtime/forms/components/NumberSlider.js +1 -1
  214. package/runtime/forms/components/SyntheticButton.js +1 -1
  215. package/runtime/forms/components/TimePickerInput.d.ts +1 -1
  216. package/runtime/forms/components/TimePickerInput.js +1 -1
  217. package/runtime/forms/dateUtilities.js +1 -1
  218. package/runtime/forms/datetime.js +1 -1
  219. package/runtime/forms/files.js +1 -1
  220. package/runtime/forms/geometry.js +1 -1
  221. package/runtime/forms/number.d.ts +1 -1
  222. package/runtime/forms/number.js +1 -1
  223. package/runtime/forms/numberSliderUtilities.js +1 -1
  224. package/runtime/forms/presenter.js +1 -1
  225. package/runtime/forms/renderers.js +1 -1
  226. package/runtime/forms/scanner.js +1 -1
  227. package/runtime/forms/selectors.js +1 -1
  228. package/runtime/forms/text.js +1 -1
  229. package/runtime/forms/utils.js +1 -1
  230. package/runtime/libs/version.d.ts +1 -1
  231. package/runtime/libs/version.js +1 -1
  232. package/runtime/licensing/LicenseChecker.js +1 -1
  233. package/runtime/licensing/Watermark.js +1 -1
@@ -1 +1 @@
1
- import{__decorate}from"tslib";import{activate}from"../../Hooks.js";import{MapProvider}from"./MapProvider.js";import{inline}from"./tools.js";let GetViewExtent=class{execute(e,t,i){const r=i.create();return inline(r.load(),function(){r.getExtent();return{extent:r.getExtent(),center:r.getCenter(),scale:r.getScale()}})}};GetViewExtent.action="gcx:wf:arcgis::GetViewExtent",GetViewExtent.suite="gcx:wf:builtin",GetViewExtent=__decorate([activate(MapProvider)],GetViewExtent);export{GetViewExtent};
1
+ import{__decorate}from"tslib";import{activate}from"../../Hooks.js";import{MapProvider}from"./MapProvider.js";import{inline}from"./tools.js";let GetViewExtent=class{execute(e,t,i){const r=i.create();return inline(r.load(),function(){return{extent:r.getExtent(),center:r.getCenter(),scale:r.getScale()}})}};GetViewExtent.action="gcx:wf:arcgis::GetViewExtent",GetViewExtent.suite="gcx:wf:builtin",GetViewExtent=__decorate([activate(MapProvider)],GetViewExtent);export{GetViewExtent};
@@ -1 +1 @@
1
- import PopupTemplate from"@arcgis/core/PopupTemplate";import SpatialReference from"@arcgis/core/geometry/SpatialReference";import GraphicsLayer from"@arcgis/core/layers/GraphicsLayer";import*as TypeChecking from"./TypeChecking.js";import{extentOf}from"./tools.js";class MapProvider{constructor(e,i,r){null!=i&&(this.map=i.map,this.view=i),this.mapName=r,this.type=e}static getOutSR(e){if("number"==typeof e){const i=new SpatialReference;return i.wkid=e,i}if("string"!=typeof e)return e;{const r=new SpatialReference;return r.wkt=e,r}}static create(){return new this(this)}static register(e){e.factories.push(e=>this.type===e?this:void 0)}loadMap(){}loadView(){const e=this.view;if(void 0!==e&&null!==e){if(e.isFulfilled())return Promise.resolve();return e.when(()=>{})}}loadLayer(){const e=this.layer||void 0;if(void 0!==e){if(e.loaded)return Promise.resolve();var i=e.loadError||void 0;return void 0!==i?Promise.reject(i):e.load().then(e=>{})}}load(){return this.loadLayer()||this.loadView()||this.loadMap()||Promise.resolve()}getExtent(){var e=this.view;if(null!=e){var i=e.extent;if(null!=i)return i}i=this.map;if(null!=i){i=i.extent;if(null!=i)return i}}getCenter(){var e=this.view;if(null!=e){var i=e.center;if(null!=i)return i}i=this.map||void 0;if(void 0!==i){const r=i.extent;if(void 0!==r&&null!==r)return r.getCenter()}}getScale(){var e=this.view;if(null!=e){e=e.scale;if("number"==typeof e)return e}}getSpatialReference(){var e=this.view;if(null!=e)return e.spatialReference}getViewpoint(){var e=this.view;if(null!=e)return e.viewpoint}setExtent(e,i){let r=void 0;const t=extentOf(e)||void 0;void 0!==t&&(r=t.center||t.getCenter());const o=this.view||void 0;if(void 0!==o){if(void 0!==r&&"number"==typeof i)return o.goTo({center:r,scale:i});if(void 0!==t)return o.goTo(t);if(void 0!==r)return o.goTo(r)}return Promise.resolve()}setViewpoint(e,i){let r=void 0;const t=extentOf(e)||void 0;void 0!==t&&(r=t.center||t.getCenter());const o=this.view;if(void 0!==o&&null!==o){if(void 0!==r&&null!=i)return o.goTo(i).then(e=>o.goTo(r));if(void 0!==t)return o.goTo(t);if(void 0!==r)return o.goTo(r)}return Promise.resolve()}findLayer(i,e){if(null==e){const t=this.map;if(void 0!==t&&null!==t){let e=t.findLayerById(i.toString())||void 0;if(void 0===e&&(e=t.layers.find(e=>e.title===i.toString())||void 0),void 0!==e){const o=this.clone();return o.layer=e,o.sublayer=void 0,o}}}else{var r=new Number(i).valueOf();if(TypeChecking.isLayerWithSublayers(e)){r=e.findSublayerById(r);if(r){const n=this.clone();return n.layer=e,n.sublayer=r,n}}}}findTable(e,i){if(e){const r=this.map;if(r){const t=e.toLowerCase();e=r.allTables.find(e=>void 0!==e.id&&null!==e.id&&e.id.toLowerCase()===t);if(e){const o=this.clone();return o.layer=e,o.sublayer=void 0,o}}}}formatSubLayerId(e){return e}getVisible(){var e=this.layer||void 0;if(void 0===e)return!1;var i=this.sublayer||void 0;return(void 0!==i?i:e).visible}setVisible(e){const i=this.layer||void 0;if(void 0===i)return!1;{const r=this.sublayer||void 0;return void 0!==r?(r.visible=!0===e,r.visible===(!0===e)):(i.visible=!0===e,i.visible===(!0===e))}}getProperty(e){var i=this.layer;if(null!=i)return i[e]}setProperty(e,i){const r=this.layer||void 0;return void 0!==r&&(r.set(e,i),r.get(e)===i)}getDefinitionExpression(){var e=this.layer||void 0;if(void 0!==e){var i=this.sublayer||void 0;if(void 0!==i){if(TypeChecking.isSublayerWithDefinitionExpression(i)){i=i.definitionExpression;return"string"==typeof i?i:void 0}return}if(TypeChecking.isLayerWithDefinitionExpression(e))return e.definitionExpression}}setDefinitionExpression(e){const i=this.layer||void 0;if(void 0!==i){const r=this.sublayer||void 0;if(void 0!==r)return TypeChecking.isSublayerWithDefinitionExpression(r)?(r.definitionExpression=e,r.definitionExpression===e):void 0;if(TypeChecking.isLayerWithDefinitionExpression(i))return i.definitionExpression=e,i.definitionExpression===e}}clearFeatures(){const e=this.layer;return!(void 0===e||null===e||!TypeChecking.isGraphicsLayer(e))&&(e.removeAll(),!0)}removeFeatures(e){const i=this.layer;if(void 0!==i&&null!==i&&TypeChecking.isGraphicsLayer(i))return i.removeMany(e),!0}getFeatures(){const e=this.layer||void 0;if(void 0!==e&&TypeChecking.isGraphicsLayer(e))return e.graphics.toArray()}addFeatures(e,i){const r=this.map||void 0;if(void 0===r)return[];let t=this.layer||void 0;return void 0===t&&(t=new GraphicsLayer,t.id=i.toString(),r.add(t)),TypeChecking.isGraphicsLayer(t)&&t.addMany(e),TypeChecking.isGraphicsLayer(t)?t.graphics.toArray():[]}removeLayer(){const e=this.map||void 0;if(void 0===e)return!1;var i=this.layer||void 0;return void 0!==i&&(e.remove(i),!0)}redraw(){const e=this.layer||void 0;void 0!==e&&TypeChecking.isLayerWithRedraw(e)&&e.redraw()}clone(){const e=new this.type(this.type,this.view||this.map,this.mapName);return e.layer=this.layer,e.sublayer=this.sublayer,e}static setPopup(e,i){if(i&&e){var r=new PopupTemplate(e);for(const t of i)t.popupTemplate=r}}setPopup(e){const i=this.layer;i&&e&&(e=new PopupTemplate(e),TypeChecking.isLayerWithPopupTemplate(i)&&(i.popupTemplate=e))}showPopup(e){if(e&&e.length){var i=e.filter(e=>e.geometry)[0],i=i?extentOf([i.geometry]):this.map.extent;const r=this.view&&this.view.popup;r&&r.open({features:e,location:i.center})}}}MapProvider.type="5B3643D6-5FF4-4B30-B439-39C70AD68DE3:MapProvider";export{MapProvider};
1
+ import PopupTemplate from"@arcgis/core/PopupTemplate";import SpatialReference from"@arcgis/core/geometry/SpatialReference";import GraphicsLayer from"@arcgis/core/layers/GraphicsLayer";import*as TypeChecking from"./TypeChecking.js";import{extentOf}from"./tools.js";class MapProvider{constructor(e,i,r){null!=i&&(this.map=i.map,this.view=i),this.mapName=r,this.type=e}static getOutSR(e){if("number"==typeof e){const i=new SpatialReference;return i.wkid=e,i}if("string"!=typeof e)return e;{const r=new SpatialReference;return r.wkt=e,r}}static create(){return new this(this)}static register(e){e.factories.push(e=>this.type===e?this:void 0)}loadMap(){}loadView(){const e=this.view;if(void 0!==e&&null!==e){if(e.isFulfilled())return Promise.resolve();return e.when(()=>{})}}loadLayer(){const e=this.layer||void 0;if(void 0!==e){if(e.loaded)return Promise.resolve();var i=e.loadError||void 0;return void 0!==i?Promise.reject(i):e.load().then(e=>{})}}load(){return this.loadLayer()||this.loadView()||this.loadMap()||Promise.resolve()}getExtent(){var e=this.view;if(null!=e){var i=e.extent;if(null!=i)return i}i=this.map;if(null!=i){i=i.extent;if(null!=i)return i}}getCenter(){var e=this.view;if(null!=e){var i=e.center;if(null!=i)return i}i=this.map||void 0;if(void 0!==i){const r=i.extent;if(void 0!==r&&null!==r)return r.getCenter()}}getScale(){var e=this.view;if(null!=e){e=e.scale;if("number"==typeof e)return e}}getSpatialReference(){var e=this.view;if(null!=e)return e.spatialReference}getViewpoint(){var e=this.view;if(null!=e)return e.viewpoint}setExtent(e,i){let r=void 0;const t=extentOf(e)||void 0;void 0!==t&&(r=t.center||t.getCenter());const o=this.view||void 0;if(void 0!==o){if(void 0!==r&&"number"==typeof i)return o.goTo({center:r,scale:i});if(void 0!==t)return o.goTo(t);if(void 0!==r)return o.goTo(r)}return Promise.resolve()}setViewpoint(e,i){let r=void 0;const t=extentOf(e)||void 0;void 0!==t&&(r=t.center||t.getCenter());const o=this.view;if(void 0!==o&&null!==o){if(void 0!==r&&null!=i)return o.goTo(i).then(e=>o.goTo(r));if(void 0!==t)return o.goTo(t);if(void 0!==r)return o.goTo(r)}return Promise.resolve()}findLayer(i,e){if(null==e){const t=this.map;if(void 0!==t&&null!==t){let e=t.findLayerById(i.toString())||void 0;if(void 0===e&&(e=t.layers.find(e=>e.title===i.toString())||void 0),void 0!==e){const o=this.clone();return o.layer=e,o.sublayer=void 0,o}}}else{var r=new Number(i).valueOf();if(TypeChecking.isLayerWithSublayers(e)){r=e.findSublayerById(r);if(r){const n=this.clone();return n.layer=e,n.sublayer=r,n}}}}findTable(e,i){if(e){const r=this.map;if(r){const t=e.toLowerCase();e=r.allTables.find(e=>void 0!==e.id&&null!==e.id&&e.id.toLowerCase()===t);if(e){const o=this.clone();return o.layer=e,o.sublayer=void 0,o}}}}formatSubLayerId(e){return e}getVisible(){var e=this.layer||void 0;if(void 0===e)return!1;var i=this.sublayer||void 0;return(void 0!==i?i:e).visible}setVisible(e){const i=this.layer||void 0;if(void 0===i)return!1;{const r=this.sublayer||void 0;return void 0!==r?(r.visible=!0===e,r.visible===(!0===e)):(i.visible=!0===e,i.visible===(!0===e))}}getProperty(e){var i=this.layer;if(null!=i)return i[e]}setProperty(e,i){const r=this.layer||void 0;return void 0!==r&&(r.set(e,i),r.get(e)===i)}getDefinitionExpression(){var e=this.layer||void 0;if(void 0!==e){var i=this.sublayer||void 0;if(void 0!==i){if(TypeChecking.isSublayerWithDefinitionExpression(i)){i=i.definitionExpression;return"string"==typeof i?i:void 0}return}if(TypeChecking.isLayerWithDefinitionExpression(e))return e.definitionExpression}}setDefinitionExpression(e){const i=this.layer||void 0;if(void 0!==i){const r=this.sublayer||void 0;if(void 0!==r)return TypeChecking.isSublayerWithDefinitionExpression(r)?(r.definitionExpression=e,r.definitionExpression===e):void 0;if(TypeChecking.isLayerWithDefinitionExpression(i))return i.definitionExpression=e,i.definitionExpression===e}}clearFeatures(){const e=this.layer;return!(void 0===e||null===e||!TypeChecking.isGraphicsLayer(e))&&(e.removeAll(),!0)}removeFeatures(e){const i=this.layer;if(void 0!==i&&null!==i&&TypeChecking.isGraphicsLayer(i))return i.removeMany(e),!0}getFeatures(){const e=this.layer||void 0;if(void 0!==e&&TypeChecking.isGraphicsLayer(e))return e.graphics.toArray()}addFeatures(e,i){const r=this.map||void 0;if(void 0===r)return[];let t=this.layer||void 0;return void 0===t&&(t=new GraphicsLayer,t.id=i.toString(),r.add(t)),TypeChecking.isGraphicsLayer(t)&&t.addMany(e),TypeChecking.isGraphicsLayer(t)?t.graphics.toArray():[]}removeLayer(){const e=this.map||void 0;if(void 0===e)return!1;var i=this.layer||void 0;return void 0!==i&&(e.remove(i),!0)}redraw(){const e=this.layer||void 0;void 0!==e&&TypeChecking.isLayerWithRedraw(e)&&e.redraw()}clone(){const e=new this.type(this.type,this.view||this.map,this.mapName);return e.layer=this.layer,e.sublayer=this.sublayer,e}static setPopup(e,i){if(i&&e){var r=new PopupTemplate(e);for(const t of i)t.popupTemplate=r}}setPopup(e){const i=this.layer;i&&e&&(e=new PopupTemplate(e),TypeChecking.isLayerWithPopupTemplate(i)&&(i.popupTemplate=e))}showPopup(e){if(e&&e.length){var i=e.filter(e=>e.geometry)[0],i=i?extentOf([i.geometry]):this.map.extent;const r=this.view?.popup;r&&r.open({features:e,location:i.center})}}}MapProvider.type="5B3643D6-5FF4-4B30-B439-39C70AD68DE3:MapProvider";export{MapProvider};
@@ -1 +1 @@
1
- import{validation}from"../../Validation.js";import{getFieldName}from"./shared.js";import{featuresToArray,isFeatureSet}from"./tools.js";function removeAttributes(e,t){const i=e.attributes;for(const s of t)delete i[s];e.attributes=i}class RemoveFeatureSetFields{execute(e){const t=featuresToArray(validation.exists("features",e.features)),i=validation.array("fields",e.fields,[]);var s,r=validation.boolean("removeEmptyFields",e.removeEmptyFields,!1);const o=0<t.length?t[0].attributes:{},a=i.map(e=>{var t=getFieldName(e,o);return t||e}),l={};for(const n of t){const o=n.attributes;if(void 0!==o&&null!==o&&(removeAttributes(n,a),r))for(const u in o)u in l||(l[u]=!1),l[u]||null!=(s=o[u])&&""!==s&&(l[u]=!0)}let f=[];if(r&&(f=Object.keys(l).filter(e=>!l[e]&&!a.includes(e)),0<f.length))for(const d of t){const o=d.attributes;void 0!==o&&null!==o&&removeAttributes(d,f)}if(isFeatureSet(e.features)){const c=e.features,m=[...a,...f];if(c.fields&&(c.fields=c.fields.filter(e=>!m.includes(e.name))),c.fieldAliases){const v=c.fieldAliases;for(const F of m)delete v[F];c.fieldAliases=v}}e=t.slice(0);return{feature:e[0],features:e}}}RemoveFeatureSetFields.action="gcx:wf:arcgis::RemoveFeatureSetFields",RemoveFeatureSetFields.suite="gcx:wf:builtin";export{RemoveFeatureSetFields};
1
+ import{validation}from"../../Validation.js";import{getFieldName}from"./shared.js";import{featuresToArray,isFeatureSet}from"./tools.js";function removeAttributes(e,t){const i=e.attributes;for(const s of t)delete i[s];e.attributes=i}class RemoveFeatureSetFields{execute(e){const t=featuresToArray(validation.exists("features",e.features)),i=validation.array("fields",e.fields,[]);var s,r=validation.boolean("removeEmptyFields",e.removeEmptyFields,!1);const o=0<t.length?t[0].attributes:{},a=i.map(e=>{return getFieldName(e,o)||e}),l={};for(const n of t){const o=n.attributes;if(void 0!==o&&null!==o&&(removeAttributes(n,a),r))for(const u in o)u in l||(l[u]=!1),l[u]||null!=(s=o[u])&&""!==s&&(l[u]=!0)}let f=[];if(r&&(f=Object.keys(l).filter(e=>!l[e]&&!a.includes(e)),0<f.length))for(const d of t){const o=d.attributes;void 0!==o&&null!==o&&removeAttributes(d,f)}if(isFeatureSet(e.features)){const c=e.features,m=[...a,...f];if(c.fields&&(c.fields=c.fields.filter(e=>!m.includes(e.name))),c.fieldAliases){const v=c.fieldAliases;for(const F of m)delete v[F];c.fieldAliases=v}}e=t.slice(0);return{feature:e[0],features:e}}}RemoveFeatureSetFields.action="gcx:wf:arcgis::RemoveFeatureSetFields",RemoveFeatureSetFields.suite="gcx:wf:builtin";export{RemoveFeatureSetFields};
@@ -1 +1 @@
1
- import{__decorate}from"tslib";import{activate}from"../../Hooks.js";import{validation}from"../../Validation.js";import{MapProvider}from"./MapProvider.js";import{inline,featuresToArray}from"./tools.js";let RemoveGraphics=class{execute(e,r,i){const o=validation.id("layerId",e.layerId,void 0),a=i.create(),t=featuresToArray(validation.exists("features",e.features));return inline(a.load(),function(){if(o){const e=a.findLayer(o);return inline(e&&e.load(),function(){return e.removeFeatures(t),{}})}a.view.graphics.removeMany(t)})}};RemoveGraphics.action="gcx:wf:arcgis::RemoveGraphics",RemoveGraphics.suite="gcx:wf:builtin",RemoveGraphics=__decorate([activate(MapProvider)],RemoveGraphics);export{RemoveGraphics};
1
+ import{__decorate}from"tslib";import{activate}from"../../Hooks.js";import{validation}from"../../Validation.js";import{MapProvider}from"./MapProvider.js";import{inline,featuresToArray}from"./tools.js";let RemoveGraphics=class{execute(e,r,i){const o=validation.id("layerId",e.layerId,void 0),a=i.create(),t=featuresToArray(validation.exists("features",e.features));return inline(a.load(),function(){if(o){const e=a.findLayer(o);return inline(e?.load(),function(){return e.removeFeatures(t),{}})}a.view.graphics.removeMany(t)})}};RemoveGraphics.action="gcx:wf:arcgis::RemoveGraphics",RemoveGraphics.suite="gcx:wf:builtin",RemoveGraphics=__decorate([activate(MapProvider)],RemoveGraphics);export{RemoveGraphics};
@@ -1 +1 @@
1
- var RunPrint_1;import{__decorate}from"tslib";import{ActivityInputError,ActivityNotImplementedError,GenericActivityError}from"../../Errors.js";import{activateTwo}from"../../Hooks.js";import{validation}from"../../Validation.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{MapProvider}from"./MapProvider.js";import{checkResult,getMapControlNames,getServiceToken,runJob,getServiceUrl}from"./runUtils.js";import{getAuthenticationToken,getPortalDataUrl,getPortalItem,parsePortalItemUrl}from"./shared.js";let RunPrint=RunPrint_1=class{async execute(e,t,r,a){var n=validation.string("url",e.url,validation.never),i=validation.number("scale",e.scale,void 0),o=validation.string("resultFileName",e.resultFileName,"Print");if(i<=0)throw new ActivityInputError("scale","Scale must be greater than zero.");var l=parsePortalItemUrl(n);let s,c;if(l&&(c=this.getAuthenticationToken(l.portalUrl),s=getPortalDataUrl(l,c)),!l||!l.itemId)throw Error(`Unable to get item ID for print template '${n}.`);if(!s)throw Error(`Unable to get item URL for print template '${n}.`);const m=t.cancellationToken;n=await getPortalItem(s,r,m);const p=r.create();m.finally(function(){p.cancel()});r=getServiceUrl(n.url,"printing");let u;c&&"public"!==n.access&&(u=await getServiceToken(r,l.portalUrl,c,p));const v=[];if(e.parameters)for(const P of Object.keys(e.parameters)){var g,d=e.parameters[P];d&&(g=d instanceof Array,v.push({name:P,containsMultipleValues:g,value:g?void 0:d,values:g?d:void 0}))}n=await getMapControlNames(l,r,u,p,m);if(n&&n.length){n[0];t=await this.getWebmapParameters(a,n[0],i,e.extent,t.ambient.trivia);if(t&&t.length)for(const w of t)v.push(w)}o={template:{itemId:l.itemId,portalUrl:l.portalUrl,title:o},parameters:v},o=(await runJob(r,u,o,p)).response.ticket;return{href:await checkResult(r,u,o,1e3,p,m)}}getAuthenticationToken(e){return getAuthenticationToken(e)}async getWebmapParameters(e,t,r,a,n){const i=e.create();if(await i.load(),!i.map)throw new GenericActivityError("No map available. Unable to generate webmap parameters.");e=r||i.getScale(),a=a||i.getExtent(),n=await this.getWebmap(i,e,n),a=await this.getWgs84Extent(a);return this.prepareWebmapParameters(t,n,r||0,a)}async getWebmap(e,t,r){throw console.warn("getWebmap needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunPrint_1.action)}async getWgs84Extent(e){throw console.warn("getWgs84Extent needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunPrint_1.action)}prepareWebmapParameters(e,t,r,a){throw console.warn("prepareWebmapParameters needs to be overriden by a client implementation."),new ActivityNotImplementedError(RunPrint_1.action)}};RunPrint.action="gcx:wf:geocortex::RunPrint",RunPrint.suite="gcx:wf:builtin",RunPrint=RunPrint_1=__decorate([activateTwo(ChannelProvider,MapProvider)],RunPrint);export{RunPrint};
1
+ var RunPrint_1;import{__decorate}from"tslib";import{ActivityInputError,ActivityNotImplementedError,GenericActivityError}from"../../Errors.js";import{activateTwo}from"../../Hooks.js";import{validation}from"../../Validation.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{MapProvider}from"./MapProvider.js";import{checkResult,getMapControlNames,getServiceToken,runJob,getServiceUrl}from"./runUtils.js";import{getAuthenticationToken,getPortalDataUrl,getPortalItem,parsePortalItemUrl}from"./shared.js";let RunPrint=RunPrint_1=class{async execute(e,t,r,a){var n=validation.string("url",e.url,validation.never),i=validation.number("scale",e.scale,void 0),o=validation.string("resultFileName",e.resultFileName,"Print");if(i<=0)throw new ActivityInputError("scale","Scale must be greater than zero.");var l=parsePortalItemUrl(n);let s,c;if(l&&(c=this.getAuthenticationToken(l.portalUrl),s=getPortalDataUrl(l,c)),!l||!l.itemId)throw Error(`Unable to get item ID for print template '${n}.`);if(!s)throw Error(`Unable to get item URL for print template '${n}.`);const m=t.cancellationToken;n=await getPortalItem(s,r,m);const p=r.create();m.finally(function(){p.cancel()});r=getServiceUrl(n.url,"printing");let u;c&&"public"!==n.access&&(u=await getServiceToken(r,l.portalUrl,c,p));const v=[];if(e.parameters)for(const P of Object.keys(e.parameters)){var g,d=e.parameters[P];d&&(g=d instanceof Array,v.push({name:P,containsMultipleValues:g,value:g?void 0:d,values:g?d:void 0}))}n=await getMapControlNames(l,r,u,p,m);if(n?.length){n=n[0],t=await this.getWebmapParameters(a,n,i,e.extent,t.ambient.trivia);if(t?.length)for(const w of t)v.push(w)}o={template:{itemId:l.itemId,portalUrl:l.portalUrl,title:o},parameters:v},o=(await runJob(r,u,o,p)).response.ticket;return{href:await checkResult(r,u,o,1e3,p,m)}}getAuthenticationToken(e){return getAuthenticationToken(e)}async getWebmapParameters(e,t,r,a,n){const i=e.create();if(await i.load(),!i.map)throw new GenericActivityError("No map available. Unable to generate webmap parameters.");e=r||i.getScale(),a=a||i.getExtent(),n=await this.getWebmap(i,e,n),a=await this.getWgs84Extent(a);return this.prepareWebmapParameters(t,n,r||0,a)}async getWebmap(e,t,r){throw console.warn("getWebmap needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunPrint_1.action)}async getWgs84Extent(e){throw console.warn("getWgs84Extent needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunPrint_1.action)}prepareWebmapParameters(e,t,r,a){throw console.warn("prepareWebmapParameters needs to be overriden by a client implementation."),new ActivityNotImplementedError(RunPrint_1.action)}};RunPrint.action="gcx:wf:geocortex::RunPrint",RunPrint.suite="gcx:wf:builtin",RunPrint=RunPrint_1=__decorate([activateTwo(ChannelProvider,MapProvider)],RunPrint);export{RunPrint};
@@ -13,6 +13,7 @@ export interface RunReportInputs {
13
13
  resultFileName?: string;
14
14
  dataSources?: DataSource | DataSource[];
15
15
  language?: string;
16
+ format?: "docx" | "pdf" | "rtf" | "xlsx" | string;
16
17
  }
17
18
  /** Defines outputs for the RunReport activity. */
18
19
  export interface RunReportOutputs {
@@ -1 +1 @@
1
- var RunReport_1;import{__decorate}from"tslib";import{ActivityNotImplementedError}from"../../Errors.js";import{activateTwo}from"../../Hooks.js";import{validation}from"../../Validation.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{MapProvider}from"./MapProvider.js";import{checkResult,getMapControlNames,getServiceToken,runJob,getServiceUrl}from"./runUtils.js";import{getAuthenticationToken,getPortalDataUrl,getPortalItem,parsePortalItemUrl}from"./shared.js";let RunReport=RunReport_1=class{async execute(e,t,r,a){var o=validation.string("url",e.url,validation.never),n=validation.boolean("includeMap",e.includeMap,!1),i=parsePortalItemUrl(o),l=validation.array("webmapParameters",e.webmapParameters,[]),s=validation.string("resultFileName",e.resultFileName,"Report"),p=validation.array("dataSources",e.dataSources,void 0),m=validation.string("language",e.language);let c,u;if(i&&(u=this.getAuthenticationToken(i.portalUrl),c=getPortalDataUrl(i,u)),!i||!i.itemId)throw Error(`Unable to get item ID for report '${o}.`);if(!c)throw Error(`Unable to get item URL for report '${o}.`);const d=t.cancellationToken;o=await getPortalItem(c,r,d);const v=r.create();d.finally(function(){v.cancel()});r=getServiceUrl(o.url,"reporting");let g;u&&"public"!==o.access&&(g=await getServiceToken(r,i.portalUrl,u,v));const b=[{name:"FeatureIds",containsMultipleValues:!0,value:void 0,values:e.featureIds||[]}];if(e.parameters)for(const h of Object.keys(e.parameters)){var f,R=e.parameters[h];R&&(f=R instanceof Array,b.push({name:h,containsMultipleValues:f,value:f?void 0:R,values:f?R:void 0}))}if(l.length)for(const w of l)for(const P of this.prepareWebmapParameters(w.mapName,w.webmap,w.scale,w.extent))b.push(P);else if(n){n=await getMapControlNames(i,r,g,v,d);if(n&&n.length){n=await this.getWebmapParameters(a,n[0],t.ambient.trivia);if(n&&n.length)for(const y of n)b.push(y)}}t={template:{itemId:i.itemId,portalUrl:i.portalUrl,title:s},parameters:b,data:p,culture:m||t.ambient.locale},t=(await runJob(r,g,t,v)).response.ticket;return{href:await checkResult(r,g,t,1e3,v,d)}}getAuthenticationToken(e){return getAuthenticationToken(e)}async getWebmap(e,t,r){throw console.warn("getWebmap needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunReport_1.action)}async getWebmapExtent(e){throw console.warn("getWebmapExtent needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunReport_1.action)}async getWebmapParameters(e,t,r){const a=e.create();await a.load();e=await this.getWebmap(a,a.getScale(),r),r=await this.getWebmapExtent(a);return this.prepareWebmapParameters(t,e,0,r)}prepareWebmapParameters(e,t,r,a){throw console.warn("prepareWebmapParameters needs to be overriden by a client implementation."),new ActivityNotImplementedError(RunReport_1.action)}};RunReport.action="gcx:wf:geocortex::RunReport",RunReport.suite="gcx:wf:builtin",RunReport=RunReport_1=__decorate([activateTwo(ChannelProvider,MapProvider)],RunReport);export{RunReport};
1
+ var RunReport_1;import{__decorate}from"tslib";import{ActivityNotImplementedError}from"../../Errors.js";import{activateTwo}from"../../Hooks.js";import{validation}from"../../Validation.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{MapProvider}from"./MapProvider.js";import{checkResult,getMapControlNames,getServiceToken,runJob,getServiceUrl}from"./runUtils.js";import{getAuthenticationToken,getPortalDataUrl,getPortalItem,parsePortalItemUrl}from"./shared.js";let RunReport=RunReport_1=class{async execute(e,t,r,a){var o=validation.string("url",e.url,validation.never),n=validation.boolean("includeMap",e.includeMap,!1),i=parsePortalItemUrl(o),l=validation.array("webmapParameters",e.webmapParameters,[]),s=validation.string("resultFileName",e.resultFileName,"Report"),p=validation.array("dataSources",e.dataSources,void 0),m=validation.string("language",e.language),c=validation.string("format",e.format);let u,d;if(i&&(d=this.getAuthenticationToken(i.portalUrl),u=getPortalDataUrl(i,d)),!i||!i.itemId)throw Error(`Unable to get item ID for report '${o}.`);if(!u)throw Error(`Unable to get item URL for report '${o}.`);const v=t.cancellationToken;o=await getPortalItem(u,r,v);const g=r.create();v.finally(function(){g.cancel()});r=getServiceUrl(o.url,"reporting");let f;d&&"public"!==o.access&&(f=await getServiceToken(r,i.portalUrl,d,g));const b=[{name:"FeatureIds",containsMultipleValues:!0,value:void 0,values:e.featureIds||[]}];if(e.parameters)for(const w of Object.keys(e.parameters)){var R,h=e.parameters[w];h&&(R=h instanceof Array,b.push({name:w,containsMultipleValues:R,value:R?void 0:h,values:R?h:void 0}))}if(l.length)for(const P of l)for(const y of this.prepareWebmapParameters(P.mapName,P.webmap,P.scale,P.extent))b.push(y);else if(n){n=await getMapControlNames(i,r,f,g,v);if(n?.length){n=await this.getWebmapParameters(a,n[0],t.ambient.trivia);if(n?.length)for(const I of n)b.push(I)}}c={template:{itemId:i.itemId,portalUrl:i.portalUrl,title:s},parameters:b,data:p,culture:m||t.ambient.locale,format:c},c=(await runJob(r,f,c,g)).response.ticket;return{href:await checkResult(r,f,c,1e3,g,v)}}getAuthenticationToken(e){return getAuthenticationToken(e)}async getWebmap(e,t,r){throw console.warn("getWebmap needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunReport_1.action)}async getWebmapExtent(e){throw console.warn("getWebmapExtent needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunReport_1.action)}async getWebmapParameters(e,t,r){const a=e.create();await a.load();e=await this.getWebmap(a,a.getScale(),r),r=await this.getWebmapExtent(a);return this.prepareWebmapParameters(t,e,0,r)}prepareWebmapParameters(e,t,r,a){throw console.warn("prepareWebmapParameters needs to be overriden by a client implementation."),new ActivityNotImplementedError(RunReport_1.action)}};RunReport.action="gcx:wf:geocortex::RunReport",RunReport.suite="gcx:wf:builtin",RunReport=RunReport_1=__decorate([activateTwo(ChannelProvider,MapProvider)],RunReport);export{RunReport};
@@ -1 +1 @@
1
- import{__decorate}from"tslib";import{ActivityCancellationError}from"../../Errors.js";import{activate}from"../../Hooks.js";import{validation}from"../../Validation.js";import{oldDefaultServerVirtualPath,defaultServerVirtualPath}from"../constants.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{runJob,getServiceToken}from"./runUtils.js";import{getAuthenticationToken,parsePortalItemUrl,getPortalItem,getPortalDataUrl}from"./shared.js";let RunWorkflow=class{async execute(r,t,e){var o=validation.string("url",r.url,validation.never),a=parsePortalItemUrl(o);if(a){var i=this.getAuthenticationToken(a.portalUrl),l=getPortalDataUrl(a,i);const n=t.cancellationToken;l=await getPortalItem(l,e,n);const s=e.create();if(n.finally(function(){s.cancel()}),this.isServerWorkflow(l))return this.runServerWorkflow(l,r.arguments,s,n,a.portalUrl,i)}return this.runClientWorkflow(o,r.arguments,t)}getAuthenticationToken(r){return getAuthenticationToken(r)}isServerWorkflow(r){if(null==r)return!1;var t=r.properties;if(null==t)return!1;r=t.isServerWorkflow,t=t.serverUrl;return!(!0!==r||!t)}async runServerWorkflow(r,t,e,o,a,i){let l=r.properties.serverUrl;l=l.replace(/\/+$/,"");let n;if(i&&"public"!==r.access)try{n=await getServiceToken(l,a,i,e)}catch(r){if(!oldDefaultServerVirtualPath.test(l))throw r;l=l.replace(oldDefaultServerVirtualPath,defaultServerVirtualPath),n=await getServiceToken(l,a,i,e)}t={workflow:{id:r.id},inputs:t};let s;try{s=await runJob(l,n,t,e)}catch(r){if(!oldDefaultServerVirtualPath.test(l))throw r;l=l.replace(oldDefaultServerVirtualPath,defaultServerVirtualPath),s=await runJob(l,n,t,e)}t=s.ticket;return{result:await this.checkResult(l,n,t,1e3,e,o)}}async delay(t){return new Promise(r=>setTimeout(r,t))}async checkResult(r,t,e,o,a,i){var l=await this.checkJobStatus(r,t,e,a,i);return l||(await this.delay(o),this.checkResult(r,t,e,1.1*o,a,i))}async checkJobStatus(r,t,e,o,a){if(o=o.new(),a.finally(function(){o.cancel()}),o.request.url=`${r}/job/artifacts?ticket=${e}`,t&&(o.request.headers.Authorization=`Bearer ${t}`),!await o.send())throw console.error("Unable to check workflow status.",o.response.message),new Error("Unable to check workflow status.");const i=JSON.parse(o.response.content);if(console.debug(i),i.results&&i.results.some(r=>"JobQuit"===r.$type)){t=i.results.filter(r=>"JobResult"===r.$type)[0];if(t)return t.outputs;throw console.error("Server workflow failed.",`${r}/job/logs?ticket=${e}&`),new Error("Server workflow failed.")}return null}async runClientWorkflow(r,t,e){const o=e.ambient.trivia;var a=e.ambient.activityContexts,a=a?a.$$form:void 0;try{var i=a?{$$form:a}:{};return{result:await o.runWorkflow(r,t,i,o.isDescendantOf)}}catch(r){if(!(r instanceof ActivityCancellationError))throw r;e.ambient.reject(r)}}};RunWorkflow.action="gcx:wf:core::RunWorkflow",RunWorkflow.suite="gcx:wf:builtin",RunWorkflow=__decorate([activate(ChannelProvider)],RunWorkflow);export{RunWorkflow};
1
+ import{__decorate}from"tslib";import{ActivityCancellationError}from"../../Errors.js";import{activate}from"../../Hooks.js";import{validation}from"../../Validation.js";import{oldDefaultServerVirtualPath,defaultServerVirtualPath}from"../constants.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{runJob,getServiceToken}from"./runUtils.js";import{getAuthenticationToken,parsePortalItemUrl,getPortalItem,getPortalDataUrl}from"./shared.js";let RunWorkflow=class{async execute(r,t,e){var o=validation.string("url",r.url,validation.never),a=parsePortalItemUrl(o);if(a){var i=this.getAuthenticationToken(a.portalUrl),l=getPortalDataUrl(a,i);const n=t.cancellationToken;l=await getPortalItem(l,e,n);const s=e.create();if(n.finally(function(){s.cancel()}),this.isServerWorkflow(l))return this.runServerWorkflow(l,r.arguments,s,n,a.portalUrl,i)}return this.runClientWorkflow(o,r.arguments,t)}getAuthenticationToken(r){return getAuthenticationToken(r)}isServerWorkflow(r){if(null==r)return!1;var t=r.properties;if(null==t)return!1;r=t.isServerWorkflow,t=t.serverUrl;return!(!0!==r||!t)}async runServerWorkflow(r,t,e,o,a,i){let l=r.properties.serverUrl;l=l.replace(/\/+$/,"");let n;if(i&&"public"!==r.access)try{n=await getServiceToken(l,a,i,e)}catch(r){if(!oldDefaultServerVirtualPath.test(l))throw r;l=l.replace(oldDefaultServerVirtualPath,defaultServerVirtualPath),n=await getServiceToken(l,a,i,e)}t={workflow:{id:r.id},inputs:t};let s;try{s=await runJob(l,n,t,e)}catch(r){if(!oldDefaultServerVirtualPath.test(l))throw r;l=l.replace(oldDefaultServerVirtualPath,defaultServerVirtualPath),s=await runJob(l,n,t,e)}t=s.ticket;return{result:await this.checkResult(l,n,t,1e3,e,o)}}async delay(t){return new Promise(r=>setTimeout(r,t))}async checkResult(r,t,e,o,a,i){var l=await this.checkJobStatus(r,t,e,a,i);return l||(await this.delay(o),this.checkResult(r,t,e,1.1*o,a,i))}async checkJobStatus(r,t,e,o,a){if(o=o.new(),a.finally(function(){o.cancel()}),o.request.url=`${r}/job/artifacts?ticket=${e}`,t&&(o.request.headers.Authorization=`Bearer ${t}`),!await o.send())throw console.error("Unable to check workflow status.",o.response.message),new Error("Unable to check workflow status.");const i=JSON.parse(o.response.content);if(console.debug(i),i.results?.some(r=>"JobQuit"===r.$type)){t=i.results.filter(r=>"JobResult"===r.$type)[0];if(t)return t.outputs;throw console.error("Server workflow failed.",`${r}/job/logs?ticket=${e}&`),new Error("Server workflow failed.")}return null}async runClientWorkflow(r,t,e){const o=e.ambient.trivia;var a=e.ambient.activityContexts,a=a?a.$$form:void 0;try{var i=a?{$$form:a}:{};return{result:await o.runWorkflow(r,t,i,o.isDescendantOf)}}catch(r){if(!(r instanceof ActivityCancellationError))throw r;e.ambient.reject(r)}}};RunWorkflow.action="gcx:wf:core::RunWorkflow",RunWorkflow.suite="gcx:wf:builtin",RunWorkflow=__decorate([activate(ChannelProvider)],RunWorkflow);export{RunWorkflow};
@@ -1 +1 @@
1
- import{__decorate}from"tslib";import{activate}from"../../Hooks.js";import{validation}from"../../Validation.js";import{MapProvider}from"./MapProvider.js";import{inline,featuresToArray}from"./tools.js";let SetViewpoint=class{execute(e,t,i){let o=validation.array("geometry",e.geometry,[]);const r=featuresToArray(e.features);o=[...o,...r.map(t=>t.geometry)];const n=i.create();return inline(n.load(),function(){const t=n.getViewpoint();n.getScale();return n.setViewpoint(o,e.viewpoint).then(function(){return{oldViewpoint:t,newViewpoint:n.getViewpoint()}})})}};SetViewpoint.action="gcx:wf:arcgis::SetViewpoint",SetViewpoint.suite="gcx:wf:builtin",SetViewpoint=__decorate([activate(MapProvider)],SetViewpoint);export{SetViewpoint};
1
+ import{__decorate}from"tslib";import{activate}from"../../Hooks.js";import{validation}from"../../Validation.js";import{MapProvider}from"./MapProvider.js";import{inline,featuresToArray}from"./tools.js";let SetViewpoint=class{execute(e,t,i){let o=validation.array("geometry",e.geometry,[]);const r=featuresToArray(e.features);o=[...o,...r.map(t=>t.geometry)];const n=i.create();return inline(n.load(),function(){const t=n.getViewpoint();return n.setViewpoint(o,e.viewpoint).then(function(){return{oldViewpoint:t,newViewpoint:n.getViewpoint()}})})}};SetViewpoint.action="gcx:wf:arcgis::SetViewpoint",SetViewpoint.suite="gcx:wf:builtin",SetViewpoint=__decorate([activate(MapProvider)],SetViewpoint);export{SetViewpoint};
@@ -1 +1 @@
1
- import{ActivityNotImplementedError}from"../../Errors.js";var CombineMode;function getCombineMode(e){switch(e&&e.toString().toLowerCase()){case"1":case"replace":return CombineMode.Replace;case"2":case"intersect":return CombineMode.Intersect;case"3":case"subtract":return CombineMode.Subtract;default:return CombineMode.Union}}!function(e){e[e.Union=0]="Union",e[e.Replace=1]="Replace",e[e.Intersect=2]="Intersect",e[e.Subtract=3]="Subtract"}(CombineMode=CombineMode||{});class ShowResults{execute(e,t){throw new ActivityNotImplementedError(ShowResults.action)}}ShowResults.action="gcx:wf:arcgis::SelectFeatures",ShowResults.suite="gcx:wf:builtin";export{CombineMode,getCombineMode,ShowResults};
1
+ import{ActivityNotImplementedError}from"../../Errors.js";var CombineMode;function getCombineMode(e){switch(e?.toString().toLowerCase()){case"1":case"replace":return CombineMode.Replace;case"2":case"intersect":return CombineMode.Intersect;case"3":case"subtract":return CombineMode.Subtract;default:return CombineMode.Union}}!function(e){e[e.Union=0]="Union",e[e.Replace=1]="Replace",e[e.Intersect=2]="Intersect",e[e.Subtract=3]="Subtract"}(CombineMode=CombineMode||{});class ShowResults{execute(e,t){throw new ActivityNotImplementedError(ShowResults.action)}}ShowResults.action="gcx:wf:arcgis::SelectFeatures",ShowResults.suite="gcx:wf:builtin";export{CombineMode,getCombineMode,ShowResults};
@@ -1 +1 @@
1
- import{validation}from"../../Validation.js";import{inline,schedulePromiseCancellation,addToPath,post}from"./tools.js";class UpdateFeatures{execute(e,t){var a=validation.urlOrLayer(e),a=addToPath(a,"applyEdits"),s=validation.string("gdbVersion",e.gdbVersion),i=validation.number("timeout",e.timeout),s={updates:validation.array("features",e.features,validation.never),gdbVersion:s},i=post(a,s,i,t.cancellationToken.signal);schedulePromiseCancellation(t,i);const o=this;return inline(i,function(e){o.onApplyEditsComplete(e);var t=e.updateResults&&e.updateResults.every(e=>e.success);return{results:e.updateResults,success:t}})}onApplyEditsComplete(e){}}UpdateFeatures.action="gcx:wf:arcgis::UpdateFeatures",UpdateFeatures.suite="gcx:wf:builtin";export{UpdateFeatures};
1
+ import{validation}from"../../Validation.js";import{inline,schedulePromiseCancellation,addToPath,post}from"./tools.js";class UpdateFeatures{execute(e,t){var a=validation.urlOrLayer(e),a=addToPath(a,"applyEdits"),s=validation.string("gdbVersion",e.gdbVersion),i=validation.number("timeout",e.timeout),s={updates:validation.array("features",e.features,validation.never),gdbVersion:s},i=post(a,s,i,t.cancellationToken.signal);schedulePromiseCancellation(t,i);const o=this;return inline(i,function(e){o.onApplyEditsComplete(e);var t=!!e.updateResults?.every(e=>e.success);return{results:e.updateResults,success:t}})}onApplyEditsComplete(e){}}UpdateFeatures.action="gcx:wf:arcgis::UpdateFeatures",UpdateFeatures.suite="gcx:wf:builtin";export{UpdateFeatures};
@@ -1 +1 @@
1
- const DEV_SERVICE_URL="http://localhost:3000/";async function checkJobStatus(e,t,r,o,n){const s=o.new();if(n.finally(function(){s.cancel()}),s.request.url=`${e}/job/artifacts?ticket=${r}`,t&&(s.request.headers.Authorization=`Bearer ${t}`),!await s.send())throw console.error("Unable to check job status.",s.response.message),new Error("Unable to check job status.");const a=JSON.parse(s.response.content);if(console.debug(a),a.results&&a.results.some(e=>"JobQuit"===e.$type)){t=a.results.filter(e=>"JobResult"===e.$type)[0];if(t)return`${e}/job/result?ticket=${r}&tag=${t.tag}`;console.error("Job failed.");throw new Error("Job failed.")}return null}async function checkResult(e,t,r,o,n,s){var a=await checkJobStatus(e,t,r,n,s);return a||(await delay(o),checkResult(e,t,r,1.1*o,n,s))}async function delay(t){return new Promise(e=>setTimeout(e,t))}async function getMapControlNames(e,t,r,o,n){const s=[];n=await getTemplateMetadata(e,t,r,o,n);if(n&&n.response&&n.response.controls)for(const a of n.response.controls)if("Map"===a.controlType){const c=a.purpose;s.push(c.substring(0,c.indexOf(".")))}return s}async function getServiceToken(e,t,r,o){const n=o.new();if(n.request.url=`${e}/auth/token/run`,n.request.method="POST",n.request.headers={"Content-Type":"application/json"},n.request.json={accessToken:r,portalUrl:t},!await n.send())throw console.error("Unable to generate run token.",n.response.message),Error("Unable to generate run token");t=JSON.parse(n.response.content);return(t.response||t).token}async function getTemplateMetadata(e,t,r,o,n){const s=o.new();if(n.finally(function(){s.cancel()}),s.request.url=`${t}/job/metadata`,s.request.method="POST",s.request.json={template:{itemId:e.itemId,portalUrl:e.portalUrl}},s.request.headers["Content-Type"]="application/json",r&&(s.request.headers.Authorization=`Bearer ${r}`),!await s.send())throw console.error("Unable to retrieve template metadata.",s.response.message),new Error("Unable to retrieve template metadata.");r=JSON.parse(s.response.content);return console.debug(r),r}async function runJob(e,t,r,o){const n=o.new();if(n.request.url=`${e}/job/run`,n.request.method="POST",n.request.headers={"Content-Type":"application/json"},t&&(n.request.headers.Authorization=`Bearer ${t}`),n.request.json=r,!await n.send())throw console.error("Unable to run job.",n.response.message),Error("Unable to run job");r=JSON.parse(n.response.content);return console.debug("job/run",r),r}function getServiceUrl(e,t){let r=e;return r?0===r.toLowerCase().indexOf(DEV_SERVICE_URL)?r="http://localhost:43222/":-1!==(e=r.indexOf("#"))&&(r=r.substring(0,e)):r=`https://apps.vertigisstudio.com/${t}/`,r+="/"===r.slice(-1)?"service":"/service",r}export{checkJobStatus,checkResult,getMapControlNames,getServiceToken,runJob,getServiceUrl};
1
+ const DEV_SERVICE_URL="http://localhost:3000/";async function checkJobStatus(e,t,r,o,n){const s=o.new();if(n.finally(function(){s.cancel()}),s.request.url=`${e}/job/artifacts?ticket=${r}`,t&&(s.request.headers.Authorization=`Bearer ${t}`),!await s.send())throw console.error("Unable to check job status.",s.response.message),new Error("Unable to check job status.");const a=JSON.parse(s.response.content);if(console.debug(a),a.results?.some(e=>"JobQuit"===e.$type)){t=a.results.filter(e=>"JobResult"===e.$type)[0];if(t)return`${e}/job/result?ticket=${r}&tag=${t.tag}`;throw console.error("Job failed."),new Error("Job failed.")}return null}async function checkResult(e,t,r,o,n,s){var a=await checkJobStatus(e,t,r,n,s);return a||(await delay(o),checkResult(e,t,r,1.1*o,n,s))}async function delay(t){return new Promise(e=>setTimeout(e,t))}async function getMapControlNames(e,t,r,o,n){const s=[];n=await getTemplateMetadata(e,t,r,o,n);if(n?.response&&n.response.controls)for(const a of n.response.controls)if("Map"===a.controlType){const c=a.purpose;s.push(c.substring(0,c.indexOf(".")))}return s}async function getServiceToken(e,t,r,o){const n=o.new();if(n.request.url=`${e}/auth/token/run`,n.request.method="POST",n.request.headers={"Content-Type":"application/json"},n.request.json={accessToken:r,portalUrl:t},!await n.send())throw console.error("Unable to generate run token.",n.response.message),Error("Unable to generate run token");t=JSON.parse(n.response.content);return(t.response||t).token}async function getTemplateMetadata(e,t,r,o,n){const s=o.new();if(n.finally(function(){s.cancel()}),s.request.url=`${t}/job/metadata`,s.request.method="POST",s.request.json={template:{itemId:e.itemId,portalUrl:e.portalUrl}},s.request.headers["Content-Type"]="application/json",r&&(s.request.headers.Authorization=`Bearer ${r}`),!await s.send())throw console.error("Unable to retrieve template metadata.",s.response.message),new Error("Unable to retrieve template metadata.");r=JSON.parse(s.response.content);return console.debug(r),r}async function runJob(e,t,r,o){const n=o.new();if(n.request.url=`${e}/job/run`,n.request.method="POST",n.request.headers={"Content-Type":"application/json"},t&&(n.request.headers.Authorization=`Bearer ${t}`),n.request.json=r,!await n.send())throw console.error("Unable to run job.",n.response.message),Error("Unable to run job");r=JSON.parse(n.response.content);return console.debug("job/run",r),r}function getServiceUrl(e,t){let r=e;return r?0===r.toLowerCase().indexOf(DEV_SERVICE_URL)?r="http://localhost:43222/":-1!==(e=r.indexOf("#"))&&(r=r.substring(0,e)):r=`https://apps.vertigisstudio.com/${t}/`,r+="/"===r.slice(-1)?"service":"/service",r}export{checkJobStatus,checkResult,getMapControlNames,getServiceToken,runJob,getServiceUrl};
@@ -1 +1 @@
1
- import{id}from"@arcgis/core/kernel";function getAuthenticationToken(e){e=id.findCredential(e);return e&&e.token||""}function parsePortalItemUrl(e){e=e.match(/^(.*?)\/home\/item\.html\?id=(.*?)(\#.*)?$/);if(e)return{portalUrl:e[1],itemId:e[2]}}function getPortalDataUrl(e,t){return`${e.portalUrl}/sharing/rest/content/items/${e.itemId}?f=json&token=${t}`}async function getPortalItem(e,t,n){const o=t.create(void 0,"arcgis");if(n.finally(function(){o.cancel()}),o.request.url=e,!await o.send())throw console.error("Unable to get portal item.",o.response.message),Error("Unable to get portal item.");return o.getResponseData(o.response.payload)}function formatGlobalId(e){return"}"!=(e="{"!=e[0]?"{"+e:e)[e.length-1]&&(e+="}"),e}function combineGlobalIds(e){return`[${e.map(e=>`"${formatGlobalId(e)}"`).join(",")}]`}function equalsIgnoreCase(e,t){return e===t||null!=e&&(null!=t&&e.toLowerCase()===t.toLowerCase())}function getFieldName(t,e){return Object.keys(e).find(e=>equalsIgnoreCase(t,e))}function containsIgnoreCase(e,t){return e.some(e=>equalsIgnoreCase(e,t))}export{getAuthenticationToken,parsePortalItemUrl,getPortalDataUrl,getPortalItem,formatGlobalId,combineGlobalIds,equalsIgnoreCase,getFieldName,containsIgnoreCase};
1
+ import{id}from"@arcgis/core/kernel";function getAuthenticationToken(e){return id.findCredential(e)?.token||""}function parsePortalItemUrl(e){e=e.match(/^(.*?)\/home\/item\.html\?id=(.*?)(\#.*)?$/);if(e)return{portalUrl:e[1],itemId:e[2]}}function getPortalDataUrl(e,t){return`${e.portalUrl}/sharing/rest/content/items/${e.itemId}?f=json&token=${t}`}async function getPortalItem(e,t,n){const o=t.create(void 0,"arcgis");if(n.finally(function(){o.cancel()}),o.request.url=e,!await o.send())throw console.error("Unable to get portal item.",o.response.message),Error("Unable to get portal item.");return o.getResponseData(o.response.payload)}function formatGlobalId(e){return"}"!=(e="{"!=e[0]?"{"+e:e)[e.length-1]&&(e+="}"),e}function combineGlobalIds(e){return`[${e.map(e=>`"${formatGlobalId(e)}"`).join(",")}]`}function equalsIgnoreCase(e,t){return e===t||null!=e&&(null!=t&&e.toLowerCase()===t.toLowerCase())}function getFieldName(t,e){return Object.keys(e).find(e=>equalsIgnoreCase(t,e))}function containsIgnoreCase(e,t){return e.some(e=>equalsIgnoreCase(e,t))}export{getAuthenticationToken,parsePortalItemUrl,getPortalDataUrl,getPortalItem,formatGlobalId,combineGlobalIds,equalsIgnoreCase,getFieldName,containsIgnoreCase};
@@ -1 +1 @@
1
- class ForEach{execute(o,e){var t=o.exit;let i=e.state;if(!1!==t&&null!=t)return{looping:!1,count:i&&i.length||0};if(void 0===i){e.persist(i=[]);const r=o.items;if(void 0!==r&&null!==r){let o=0;if(Array.isArray(r))for(const s of r)i.push({looping:!0,pass:o++,item:s});else if(isIterable(r)){const l=r[Symbol.iterator]();for(;;){var n=l.next();if(n.done)break;i.push({looping:!0,pass:o++,item:n.value})}}else for(const a in r)i.push({looping:!0,key:a,pass:o++,item:r[a]})}}if(e.passes<i.length){e.call("loop");const c=i[e.passes];return c.count=i.length,c}return{looping:!1,count:i.length}}}function isIterable(o){return!(!o||!Symbol||"function"!=typeof o[Symbol.iterator])}ForEach.action="gcx:wf:core:loop:ForEach",ForEach.suite="gcx:wf:builtin";export{ForEach};
1
+ class ForEach{execute(o,e){var t=o.exit;let i=e.state;if(!1!==t&&null!=t)return{looping:!1,count:i?.length||0};if(void 0===i){e.persist(i=[]);const r=o.items;if(void 0!==r&&null!==r){let o=0;if(Array.isArray(r))for(const s of r)i.push({looping:!0,pass:o++,item:s});else if(isIterable(r)){const l=r[Symbol.iterator]();for(;;){var n=l.next();if(n.done)break;i.push({looping:!0,pass:o++,item:n.value})}}else for(const a in r)i.push({looping:!0,key:a,pass:o++,item:r[a]})}}if(e.passes<i.length){e.call("loop");const c=i[e.passes];return c.count=i.length,c}return{looping:!1,count:i.length}}}function isIterable(o){return!(!o||!Symbol||"function"!=typeof o[Symbol.iterator])}ForEach.action="gcx:wf:core:loop:ForEach",ForEach.suite="gcx:wf:builtin";export{ForEach};
@@ -1 +1 @@
1
- class ParseUrl{execute(e){let r=e.url;if("string"!=typeof r){if("undefined"==typeof location||null===location)return{};r=location.href}const t={};var n=r.match(/^([^\?\#]+?)?(\?.*?)?(\#.*)?$/),e=n[1];const o=n[2];n=n[3];if(o){var l,c,s=/(.*?)\=(.*)/;for(const a of o.substring(1).split("&")){const i=a.match(s);i&&0<i.length&&(l=i[1],c=decodeURIComponent(i[2].replace(/\+/g," ")),t[l]=c)}}return{url:r,query:t,request:e,queryString:o,fragment:n}}}ParseUrl.action="gcx:wf:core::ParseUrl",ParseUrl.suite="gcx:wf:builtin";export{ParseUrl};
1
+ class ParseUrl{execute(e){let r=e.url;if("string"!=typeof r){if("undefined"==typeof location||null===location)return{};r=location.href}const t={};var n=r.match(/^([^\?\#]+?)?(\?.*?)?(\#.*)?$/),e=n[1];const o=n[2];n=n[3];if(o){var l,c,s=/(.*?)\=(.*)/;for(const a of o.substring(1).split("&")){const i=a.match(s);0<i?.length&&(l=i[1],c=decodeURIComponent(i[2].replace(/\+/g," ")),t[l]=c)}}return{url:r,query:t,request:e,queryString:o,fragment:n}}}ParseUrl.action="gcx:wf:core::ParseUrl",ParseUrl.suite="gcx:wf:builtin";export{ParseUrl};
@@ -1 +1 @@
1
- class Subworkflow{execute(o,u){0===u.passes&&u.call("content");const e=o["subworkflow"];return{arguments:null===e||void 0===e?void 0:e.arguments,setResult:o=>{e&&(e.result=o)}}}}Subworkflow.action="gcx:wf:core::Subworkflow",Subworkflow.suite="gcx:wf:builtin";export{Subworkflow};
1
+ class Subworkflow{execute(o,e){0===e.passes&&e.call("content");const t=o["subworkflow"];return{arguments:t?.arguments,setResult:o=>{t&&(t.result=o)}}}}Subworkflow.action="gcx:wf:core::Subworkflow",Subworkflow.suite="gcx:wf:builtin";export{Subworkflow};
@@ -125,7 +125,6 @@ export declare class FormRenderer extends FormHost implements FormActor {
125
125
  renderText(content: defs.Text): string;
126
126
  /** Filters the items of an element based on heuristics. */
127
127
  filterItems(elementName: string, input: string): boolean;
128
- private isStatus;
129
128
  protected getText(content: defs.Text): defs.Text;
130
129
  renderCustom(component: {}, element: defs.Element): JSX.Element;
131
130
  addElement(elementName: string, type: string, element: defs.Element): defs.Element;
@@ -1 +1 @@
1
- import{ActivityCancellationError}from"../../Errors.js";import{FormComponent}from"../../forms/FormComponent.js";import{FormHost,defs}from"../../forms/FormHost.js";import{element as elementRenderers}from"../../forms/renderers.js";import{text}from"../../forms/utils.js";import{FormElementNotFoundError,NoFormElementAvailableError}from"./Errors.js";function sanitizeValue(e,t,r){if("string"!=typeof t)return t;if(!0!==r)return t;switch(e){case"description":case"error":case"label":case"prompt":case"title":case"tooltip":case"itemLabel":break;default:return t}return{markdown:t}}const guid="F889738A-EBE2-4D52-8B46-3E24CC6E30F6:";class FormRenderer extends FormHost{static create(){return new this}static createCustom(){const e=new this;return e.custom=!0,e}static register(e){e.factories.push(e=>e===this.type?this:void 0)}spinNoBlock(){return this.spin()}hideElement(e){e.visible=!1,this.invalidate()}showElement(e){e.visible=!0,this.invalidate()}setCurrentItem(e,t,r){const n=this.getElement(e);if(!n||!n.items)return!1;let s;switch(r){case"index":s=(e,t,r)=>{var s=Object.keys(n.items);"number"==typeof r||parseInt(r);return 0<s.length&&e===s[r]};break;case"item":s=(e,t,r)=>r===t;break;case"key":s=(e,t,r)=>r===e;break;case"label":s=(e,t,r)=>r===t.label;break;case"value":s=(e,t,r)=>r===t.value;break;default:throw new Error("Unsupported value for itemMatchType: "+r)}for(const i in n.items)if(s(i,n.items[i],t))return n.current=i,this.invalidate(e),this.cascade(e),!0;return!1}setElementError(e,t,r){this.errors[e]=sanitizeValue("error",t,r)}assignElementProperty(t,r,s,e){s=sanitizeValue(r,s,e);const n=this.getElement(t);if(n[r]!==s){const i={},o=this.getElementRegistration(n);if(null!==o&&void 0!==o&&o.onPropertyChange)try{const a=(e,t)=>{i[e]!==t&&(i[e]=t,o.onPropertyChange({properties:{...n,...i},property:e,setProperty:a}))};a(r,s)}catch(e){throw console.error(`Error setting element property.\nElement: "${t}"\nProperty: "${r}"\nValue: ${s}\n`,e),e}else i[r]=s;for(const l of Object.keys(i))n[l]=i[l];if(o&&"value"in i&&this.post("changed",{name:t,value:i.value}),n.customType)this.refresh();else switch(r){case"autoActivate":case"collapsed":case"visible":this.invalidate();break;default:this.invalidate(t)}}}assignItemsToElement(e,t,r){const s=this.getElement(e);let n=s.items||{};!1!==r&&(n={});for(const i in t)n[i]=t[i];s.items=n,"GeometryPicker"!==s.type&&"ItemPicker"!==s.type||delete s.state,this.invalidate(e)}assignElementItemProperty(e,t,r,s,n){const i=this.getElement(e);i.items[t][r]=sanitizeValue(r,s,n),this.refresh(e)}deriveLocale(){var e;return(null===(e=this.state)||void 0===e?void 0:e.locale)||super.deriveLocale()}dispose(){if(super.dispose()){const e=this.state;return void 0!==e&&null!==e&&e.completion.isPending()&&e.reject(new ActivityCancellationError),!0}return!1}load(e,t){var r,t=super.load(e,t);if(t&&null!==(r=this.form)&&void 0!==r&&r.elements)for(const n in this.form.elements){var s=this.form.elements[n];const i=this.getElementRegistration(s);i&&i.getInitialProperties&&(s={...s,...i.getInitialProperties()},this.form.elements[n]=s)}return t}isRelated(e){return this.state&&this.state.trivia&&this.state.trivia.isDescendantOf&&this.state.trivia.isDescendantOf(e.state)}getElement(e,t){let r;if(e){if("string"!=typeof e)return e;r=e}else t&&t.name&&(r=t.name);if(r){t=this.form.elements[r];if(!t)throw new FormElementNotFoundError(r);return t}throw new NoFormElementAvailableError}getElementName(e,t){if(e){if("string"==typeof e)return e;for(const r in this.form.elements)if(this.form.elements[r]===e)return r;throw new FormElementNotFoundError(e)}if(t&&t.name)return t.name;throw new NoFormElementAvailableError}getElementRegistration(e){var t,r;return null===(t=null===(r=null===(t=this.state)||void 0===t?void 0:t.trivia)||void 0===r?void 0:r.getFormElementRegistration)||void 0===t?void 0:t.call(r,null!==(r=e.customType)&&void 0!==r?r:e.type)}renderHtml(e,t){return super.renderHtml(this.getText(e),t)}renderText(e){return super.renderText(this.getText(e))}filterItems(e,t){const r=this.find(e);if(void 0===r||null===r)return!1;var s=r.items;if(null==s)return!1;if("string"!=typeof t)return t;let n=!1;const i={};var o=t.toLowerCase().split(/\s+/);for(const m in s){var a=s[m];const f=this.renderText(a.label);var l=f.toLowerCase().split(/\s+/);for(const u of o)if(0<u.length)for(const c of l)0<c.length&&(0!==u.indexOf(c)&&0!==c.indexOf(u)||(n=!0,i[m]=a))}return r.items=i,this.invalidate(e),n}isStatus(e){return null!=e&&"string"==typeof e.status}getText(e){if(void 0!==this.state){const r=this.state.environment.getText;if("function"==typeof r){if(text.isMarkdown(e))return{markdown:r(e.markdown)};if(text.isStatus(e))return{markdown:r(`@form-element-status-${e.status}`)};if(e&&"@"===e[0]){var t=r(e);if(t)return t}}}return e}renderCustom(e,t){if(e instanceof FormComponent)return elementRenderers.renderCustom(e,t)}addElement(e,t,r){if(this.form.elements.hasOwnProperty(e))throw new Error(`Element already present: ${e}`);const s={};if("object"==typeof r)for(const n in r)s[n]=r[n];s.type=t;t=s.section;if(t){let e;if("object"==typeof t?e=t.name:"string"==typeof t&&(e=t),"header"===e||"footer"===e)throw new Error("Elements cannot be added to the header or footer.")}return this.form.elements[e]=s,this.invalidate(),s}}FormRenderer.type=guid+"FormRenderer";export{defs,FormRenderer};
1
+ import{ActivityCancellationError}from"../../Errors.js";import{FormComponent}from"../../forms/FormComponent.js";import{FormHost,defs}from"../../forms/FormHost.js";import{element as elementRenderers}from"../../forms/renderers.js";import{text}from"../../forms/utils.js";import{FormElementNotFoundError,NoFormElementAvailableError}from"./Errors.js";function sanitizeValue(e,t,r){if("string"!=typeof t)return t;if(!0!==r)return t;switch(e){case"description":case"error":case"label":case"prompt":case"title":case"tooltip":case"itemLabel":break;default:return t}return{markdown:t}}const guid="F889738A-EBE2-4D52-8B46-3E24CC6E30F6:";class FormRenderer extends FormHost{static create(){return new this}static createCustom(){const e=new this;return e.custom=!0,e}static register(e){e.factories.push(e=>e===this.type?this:void 0)}spinNoBlock(){return this.spin()}hideElement(e){e.visible=!1,this.invalidate()}showElement(e){e.visible=!0,this.invalidate()}setCurrentItem(e,t,r){const n=this.getElement(e);if(!n||!n.items)return!1;let s;switch(r){case"index":s=(e,t,r)=>{var s=Object.keys(n.items);return 0<s.length&&e===s[r]};break;case"item":s=(e,t,r)=>r===t;break;case"key":s=(e,t,r)=>r===e;break;case"label":s=(e,t,r)=>r===t.label;break;case"value":s=(e,t,r)=>r===t.value;break;default:throw new Error("Unsupported value for itemMatchType: "+r)}for(const i in n.items)if(s(i,n.items[i],t))return n.current=i,this.invalidate(e),this.cascade(e),!0;return!1}setElementError(e,t,r){this.errors[e]=sanitizeValue("error",t,r)}assignElementProperty(t,r,s,e){s=sanitizeValue(r,s,e);const n=this.getElement(t);if(n[r]!==s){const i={},o=this.getElementRegistration(n);if(o?.onPropertyChange)try{const a=(e,t)=>{i[e]!==t&&(i[e]=t,o.onPropertyChange({properties:{...n,...i},property:e,setProperty:a}))};a(r,s)}catch(e){throw console.error(`Error setting element property.\nElement: "${t}"\nProperty: "${r}"\nValue: ${s}\n`,e),e}else i[r]=s;for(const l of Object.keys(i))n[l]=i[l];if(o&&"value"in i&&this.post("changed",{name:t,value:i.value}),n.customType)this.refresh();else switch(r){case"autoActivate":case"collapsed":case"visible":this.invalidate();break;default:this.invalidate(t)}}}assignItemsToElement(e,t,r){const s=this.getElement(e);let n=s.items||{};!1!==r&&(n={});for(const i in t)n[i]=t[i];s.items=n,"GeometryPicker"!==s.type&&"ItemPicker"!==s.type||delete s.state,this.invalidate(e)}assignElementItemProperty(e,t,r,s,n){const i=this.getElement(e);i.items[t][r]=sanitizeValue(r,s,n),this.refresh(e)}deriveLocale(){return this.state?.locale||super.deriveLocale()}dispose(){if(super.dispose()){const e=this.state;return void 0!==e&&null!==e&&e.completion.isPending()&&e.reject(new ActivityCancellationError),!0}return!1}load(e,t){t=super.load(e,t);if(t&&this.form?.elements)for(const s in this.form.elements){var r=this.form.elements[s];const n=this.getElementRegistration(r);n&&n.getInitialProperties&&(r={...r,...n.getInitialProperties()},this.form.elements[s]=r)}return t}isRelated(e){return this.state&&this.state.trivia&&this.state.trivia.isDescendantOf&&this.state.trivia.isDescendantOf(e.state)}getElement(e,t){let r;if(e){if("string"!=typeof e)return e;r=e}else t?.name&&(r=t.name);if(r){t=this.form.elements[r];if(!t)throw new FormElementNotFoundError(r);return t}throw new NoFormElementAvailableError}getElementName(e,t){if(e){if("string"==typeof e)return e;for(const r in this.form.elements)if(this.form.elements[r]===e)return r;throw new FormElementNotFoundError(e)}if(t?.name)return t.name;throw new NoFormElementAvailableError}getElementRegistration(e){return this.state?.trivia?.getFormElementRegistration?.(e.customType??e.type)}renderHtml(e,t){return super.renderHtml(this.getText(e),t)}renderText(e){return super.renderText(this.getText(e))}filterItems(e,t){const r=this.find(e);if(void 0===r||null===r)return!1;var s=r.items;if(null==s)return!1;if("string"!=typeof t)return t;let n=!1;const i={};var o=t.toLowerCase().split(/\s+/);for(const m in s){var a=s[m];const f=this.renderText(a.label);var l=f.toLowerCase().split(/\s+/);for(const c of o)if(0<c.length)for(const u of l)0<u.length&&(0!==c.indexOf(u)&&0!==u.indexOf(c)||(n=!0,i[m]=a))}return r.items=i,this.invalidate(e),n}getText(e){if(void 0!==this.state){const r=this.state.environment.getText;if("function"==typeof r){if(text.isMarkdown(e))return{markdown:r(e.markdown)};if(text.isStatus(e))return{markdown:r(`@form-element-status-${e.status}`)};if(e&&"@"===e[0]){var t=r(e);if(t)return t}}}return e}renderCustom(e,t){if(e instanceof FormComponent)return elementRenderers.renderCustom(e,t)}addElement(e,t,r){if(this.form.elements.hasOwnProperty(e))throw new Error(`Element already present: ${e}`);const s={};if("object"==typeof r)for(const n in r)s[n]=r[n];s.type=t;t=s.section;if(t){let e;if("object"==typeof t?e=t.name:"string"==typeof t&&(e=t),"header"===e||"footer"===e)throw new Error("Elements cannot be added to the header or footer.")}return this.form.elements[e]=s,this.invalidate(),s}}FormRenderer.type=guid+"FormRenderer";export{defs,FormRenderer};
@@ -1 +1 @@
1
- import{global}from"../execution/ModuleLoader.js";function mapDependencies(r,e,n){let t=e;"/"===t[t.length-1]&&(t=t.substring(0,t.length-1));var i=t;n&&(t=`${t}/${n}`);let o=global.require.map[t];if(!o){o={};var s=global.require.map["@vertigis/workflow"];for(const a in s)o[a]=s[a]}for(const g in r){let e=r[g];"string"==typeof e&&("./"===e.substring(0,2)?e=`${i}${e.substring(1)}`:"/"===e.substring(0,1)?e=`${i}${e}`:"@"!==e.substring(0,1)&&(e=`${i}/${e}`),o[g]=e)}const l={map:{}};l.map[t]=o;global.require(l)}export{mapDependencies};
1
+ import{global}from"../execution/ModuleLoader.js";function mapDependencies(r,e,n){let t=e;"/"===t[t.length-1]&&(t=t.substring(0,t.length-1));var i=t;n&&(t=`${t}/${n}`);let o=global.require.map[t];if(!o){o={};var s=global.require.map["@vertigis/workflow"];for(const a in s)o[a]=s[a]}for(const g in r){let e=r[g];"string"==typeof e&&("./"===e.substring(0,2)?e=`${i}${e.substring(1)}`:"/"===e.substring(0,1)?e=`${i}${e}`:"@"!==e.substring(0,1)&&(e=`${i}/${e}`),o[g]=e)}const l={map:{}};l.map[t]=o,global.require(l)}export{mapDependencies};
@@ -1,5 +1,6 @@
1
- import React from "react";
2
- export { React };
1
+ /// <reference types="react" />
2
+ import { Application, Map, Site, Widget } from "@vertigis/workflow/runtime/app";
3
+ import { FormRenderer } from "../activities/forms/FormRenderer";
3
4
  /** Properties that control how an activity user interface is hosted by the host application. */
4
5
  export interface ShowProps {
5
6
  /** The name of the container that will host the activity user interface. */
@@ -26,8 +27,51 @@ export interface RenderResolve<T> {
26
27
  /** Returns a rejection to the activity. */
27
28
  reject(reason: any): any;
28
29
  }
30
+ export interface IAppActivity {
31
+ /**
32
+ * The host application. For example:
33
+ * - Geocortex Viewer for HTML5: https://docs.vertigisstudio.com/essentials/gvh/latest/api-help/classes/_mapping_infrastructure_amd_d_._geocortex_infrastructure_viewer_.viewerapplication.html
34
+ * - Web AppBuilder: https://developers.arcgis.com/web-appbuilder/api-reference
35
+ */
36
+ app: Application;
37
+ /**
38
+ * The map of the host application. For example:
39
+ * - ArcGIS API for JavaScript v3: https://developers.arcgis.com/javascript/3/jsapi/map-amd.html
40
+ * - ArcGIS API for JavaScript v4: https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html
41
+ */
42
+ map: Map;
43
+ /**
44
+ * The Geocortex Essentials site of the host application. This is available in Geocortex Viewer for HTML5 applications only.
45
+ * See https://docs.vertigisstudio.com/essentials/gvh/latest/api-help/classes/_essentials_amd_d_._geocortex_essentials_site_.site.html
46
+ */
47
+ site: Site;
48
+ /**
49
+ * The Web AppBuilder widget running the workflow. This is available in Web AppBuilder applications only.
50
+ */
51
+ widget: Widget;
52
+ createRenderer(): FormRenderer;
53
+ /** Performs the activity execution logic. */
54
+ execute(...args: any[]): any;
55
+ /** Renders the activity user interface. */
56
+ render<T, TState>(method: RenderMethod<T, this, TState>, state: TState): Promise<T>;
57
+ /** Renders the activity user interface. */
58
+ render<T>(method: RenderMethod<T, this, any>): Promise<T>;
59
+ /** Renders the activity user interface. */
60
+ render(visual: JSX.Element): Promise<React.Component<any, any> | Element>;
61
+ /** Renders the activity user interface. */
62
+ render(visual: any): Promise<any>;
63
+ /** Renders the activity user interface. */
64
+ render(): Promise<HTMLElement>;
65
+ /** Renders the activity user interface. */
66
+ render(visual?: any, state?: any): Promise<any>;
67
+ }
68
+ export interface AppActivityConstructor {
69
+ new (): IAppActivity;
70
+ }
29
71
  /**
30
72
  * A base activity implementation that provides access to application level resources and
31
73
  * facilitates rendering of custom user interfaces.
74
+ * @deprecated Decorate your activity's class with `@activate(<ClassName>)` to use `<ClassName>` in your activity instead.
75
+ * e.g. If you add `@activate(MapProvider)` before your class, you can add `mapProvider: typeof MapProvider` as an extra parameter to its `execute()` method.
32
76
  */
33
- export declare function AppActivity(): void;
77
+ export declare const AppActivity: AppActivityConstructor;
@@ -1 +1 @@
1
- import React from"react";import ReactDOM from"react-dom";import{Task}from"../Task.js";function update(e,t){let r=!1;if(null!=t)for(const i in t)e[i]!==t[i]&&(e[i]=t[i],r=!0);return r}function AppActivity(){const i=this.execute;this.execute=function(e,r){var t=r.ambient.trivia;return this.app=t.app,this.map=t.map,this.site=t.site,this.widget=t.widget,this.FormRenderer=t.FormRenderer,this.completion=r.ambient.completion,this.execute=i,this.createRenderer=()=>{let e=this.renderer;var t;return void 0===e&&(e=this.renderer=this.FormRenderer.createCustom(),e.state=r.ambient,t=()=>e.dispose(),this.completion.then(t,t)),this.renderer||(this.renderer=this.FormRenderer.createCustom())},i.apply(this,arguments)}}AppActivity.prototype.createRenderer=function(){return null},AppActivity.prototype.applyProps=function(e){const t=this.createRenderer();if(update(this.showProps||(this.showProps={}),e)){const e=this.showProps;t.form={defaults:{container:e.container},elements:{header:{type:"Header",section:"header",title:{markdown:e.title},value:e.icon}}},t.invalidate()}},AppActivity.prototype.show=function(e){return this.applyProps(e),this.createRenderer().show()},AppActivity.prototype.spin=function(e){return this.applyProps(e),this.createRenderer().spin()},AppActivity.prototype.spinNoBlock=function(e){return this.applyProps(e),this.createRenderer().spinNoBlock()},AppActivity.prototype.hide=function(){return this.createRenderer().hide()},AppActivity.prototype.render=async function(t,i){const n=this.createRenderer().container;if("function"!=typeof t)return React.isValidElement(t)?new Task(function(e){ReactDOM.render(t,n,e)}):n;{const o=this,s=t;return new Task(async function(e,t){const r=e.bind(void 0);r.reject=t.bind(void 0),ReactDOM.render(await s.call(o,r,i),n)})}};export{React,AppActivity};
1
+ import{isValidElement}from"react";import{render}from"react-dom";import{Task}from"../Task.js";function update(e,t){let r=!1;if(null!=t)for(const i in t)e[i]!==t[i]&&(e[i]=t[i],r=!0);return r}const AppActivity=function(){const i=this.execute;this.execute=function(e,r){var t=r.ambient.trivia;return this.app=t.app,this.map=t.map,this.site=t.site,this.widget=t.widget,this.FormRenderer=t.FormRenderer,this.completion=r.ambient.completion,this.execute=i,this.createRenderer=()=>{let e=this.renderer;var t;return void 0===e&&(e=this.renderer=this.FormRenderer.createCustom(),e.state=r.ambient,t=()=>e.dispose(),this.completion.then(t,t)),this.renderer||(this.renderer=this.FormRenderer.createCustom())},i.apply(this,arguments)}};AppActivity.prototype.createRenderer=function(){return null},AppActivity.prototype.applyProps=function(e){const t=this.createRenderer();if(update(this.showProps||(this.showProps={}),e)){const e=this.showProps;t.form={defaults:{container:e.container},elements:{header:{type:"Header",section:"header",title:{markdown:e.title},value:e.icon}}},t.invalidate()}},AppActivity.prototype.show=function(e){return this.applyProps(e),this.createRenderer().show()},AppActivity.prototype.spin=function(e){return this.applyProps(e),this.createRenderer().spin()},AppActivity.prototype.spinNoBlock=function(e){return this.applyProps(e),this.createRenderer().spinNoBlock()},AppActivity.prototype.hide=function(){return this.createRenderer().hide()},AppActivity.prototype.render=async function(t,i){const n=this.createRenderer().container;if("function"!=typeof t)return isValidElement(t)?new Task(function(e){render(t,n,e)}):n;{const o=this,s=t;return new Task(async function(e,t){const r=e.bind(void 0);r.reject=t.bind(void 0),render(await s.call(o,r,i),n)})}};export{AppActivity};
@@ -1,3 +1,5 @@
1
+ /// <reference types="react" />
2
+ import { IActivityHandler, IActivityContext, Deferrable } from "../IActivityHandler";
1
3
  import { Element } from "../forms/FormDefinition";
2
4
  /**
3
5
  * The props of a custom form element.
@@ -16,9 +18,17 @@ export interface CustomFormElementProps {
16
18
  */
17
19
  raiseEvent: (eventName: "changed" | "clicked" | "custom", eventValue: any) => void;
18
20
  }
21
+ export interface IRegisterCustomFormElementBase extends IActivityHandler {
22
+ /** Executes the logic for an activity. */
23
+ execute(inputs: {}, context: IActivityContext, ...args: any[]): Deferrable<{}>;
24
+ register: (name: string, component: React.ComponentClass<CustomFormElementProps> | React.FunctionComponent<CustomFormElementProps>) => void;
25
+ }
26
+ export interface RegisterCustomFormElementBaseConstructor {
27
+ new (): IRegisterCustomFormElementBase;
28
+ }
19
29
  /**
20
30
  * A base activity implementation that provides a convenient way to register
21
31
  * custom form elements to be used in Display Form activities.
22
32
  * @deprecated Use `FormElementRegistration` instead.
23
33
  */
24
- export declare function RegisterCustomFormElementBase(): void;
34
+ export declare const RegisterCustomFormElementBase: RegisterCustomFormElementBaseConstructor;
@@ -1 +1 @@
1
- function RegisterCustomFormElementBase(){const t=this.execute;this.execute=function(e,r){return this.register=(e,t)=>{const i=r.ambient.trivia;i.getFormElementRegistration(e)&&console.warn(`A custom form element with custom type name '${e}' is already registered. The existing registration will be replaced.`),i.registerFormElement({component:t,id:e})},this.execute=t,t.apply(this,arguments)}}export{RegisterCustomFormElementBase};
1
+ const RegisterCustomFormElementBase=function(){const t=this.execute;this.execute=function(e,s){return this.register=(e,t)=>{const i=s.ambient.trivia;i.getFormElementRegistration(e)&&console.warn(`A custom form element with custom type name '${e}' is already registered. The existing registration will be replaced.`),i.registerFormElement({component:t,id:e})},this.execute=t,t.apply(this,arguments)}};export{RegisterCustomFormElementBase};
@@ -0,0 +1,2 @@
1
+ /*! For license information please see index.min.js.LICENSE.txt */
2
+ (()=>{"use strict";var r={418:r=>{var e=Object.getOwnPropertySymbols,t=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function o(r){if(null==r)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(r)}r.exports=function(){try{if(!Object.assign)return!1;var r=new String("abc");if(r[5]="de","5"===Object.getOwnPropertyNames(r)[0])return!1;for(var e={},t=0;t<10;t++)e["_"+String.fromCharCode(t)]=t;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(r){return e[r]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(r){n[r]=r})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(r){return!1}}()?Object.assign:function(r,a){for(var c,f,i=o(r),s=1;s<arguments.length;s++){for(var p in c=Object(arguments[s]))t.call(c,p)&&(i[p]=c[p]);if(e){f=e(c);for(var u=0;u<f.length;u++)n.call(c,f[u])&&(i[f[u]]=c[f[u]])}}return i}},251:(r,e,t)=>{t(418);var n=t(556),o=60103;if(e.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var a=Symbol.for;o=a("react.element"),e.Fragment=a("react.fragment")}var c=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,f=Object.prototype.hasOwnProperty,i={key:!0,ref:!0,__self:!0,__source:!0};function s(r,e,t){var n,a={},s=null,p=null;for(n in void 0!==t&&(s=""+t),void 0!==e.key&&(s=""+e.key),void 0!==e.ref&&(p=e.ref),e)f.call(e,n)&&!i.hasOwnProperty(n)&&(a[n]=e[n]);if(r&&r.defaultProps)for(n in e=r.defaultProps)void 0===a[n]&&(a[n]=e[n]);return{$$typeof:o,type:r,key:s,ref:p,props:a,_owner:c.current}}e.jsx=s,e.jsxs=s},893:(r,e,t)=>{r.exports=t(251)},556:r=>{r.exports=require("react")}},e={},t=function t(n){var o=e[n];if(void 0!==o)return o.exports;var a=e[n]={exports:{}};return r[n](a,a.exports,t),a.exports}(893);module.exports=t})();
@@ -0,0 +1,14 @@
1
+ /*
2
+ object-assign
3
+ (c) Sindre Sorhus
4
+ @license MIT
5
+ */
6
+
7
+ /** @license React v17.0.2
8
+ * react-jsx-runtime.production.min.js
9
+ *
10
+ * Copyright (c) Facebook, Inc. and its affiliates.
11
+ *
12
+ * This source code is licensed under the MIT license found in the
13
+ * LICENSE file in the root directory of this source tree.
14
+ */
@@ -1 +1 @@
1
- import{ActivityActivationError,ActivityBindingError,ActivityCancellationError,ActivityError,AggregateActivityError,EngineRuntimeError,ExpressionAccessorError,ExpressionEvaluationError,ExpressionSyntaxError,GenericActivityError,ProgramStartError}from"../Errors.js";import{query}from"../Hooks.js";import{Task}from"../Task.js";import Bluebird from"../deps/bluebird_fork.js";function isExpression(t){var e=t.type;return null==e&&"string"==typeof t.code}function createLinkedCancellationToken(t,e){const r=Task.race([new Task(e),t]),i=new AbortController;return r.signal=i.signal,r.finally(()=>i.abort()),r}function isInvalidHandler(t){return null==t||"function"!=typeof t.execute}function isLiteral(t){switch(typeof t){case"boolean":case"number":case"string":return!0}return!1}let evaluators={};function clearExpressionCache(){evaluators={}}const reservedIdentifiers=["resources","values","Date","Math","Object","parseInt","parseFloat","decodeURIComponent","encodeURIComponent"];function isAccessor(e){return!("string"!=typeof e||e.length<1)&&(!(0<=e.indexOf("."))&&!reservedIdentifiers.some(t=>t===e))}function compileExpression(t,e){var r=t.code;let i=evaluators[r];if(void 0===i){const s=[],o={};s.push('"use strict"; ');var n=t.accessors;if(Array.isArray(n))for(const a of n)isAccessor(a)&&!o[a]&&(s.push(`var ${a} = this.${a};`),o[a]=!0);s.push("return "),s.push(r),s.push(";"),i=evaluators[r]=new Function("resources","values",s.join(""))}return function(){return i.call(this,e,t.values)}}function echo(t){return t}const echoHandler={execute:echo};function combine(t,e){return{...t||{},...e||{}}}function isError(t){return void 0!==t}function filterErrors(t){return t.filter(isError)}function reduceErrors(t){return t.isPending()?t.then(filterErrors):t.isFulfilled()?Bluebird.resolve(filterErrors(t.value())):t}let nextSymbol,nextSymbolPrefix;function newSymbol(){return void 0!==nextSymbol&&1073741824<=nextSymbol&&(nextSymbol=void 0),void 0===nextSymbol&&(nextSymbol=0,nextSymbolPrefix=(new Date).valueOf()+":"),nextSymbolPrefix+nextSymbol++}const immediate=Bluebird.resolve(void 0);let guard=!0;class Proxy{constructor(t){Object.defineProperty(this,"target",{get(){if(!1===guard)return guard=!0,t}})}}class AmbientStateProxy extends Proxy{get outputs(){return guard=!1,this.target.outputs}set outputs(t){guard=!1,this.target.outputs=t}get error(){return guard=!1,this.target.error}set error(t){guard=!1,this.target.error=t}get completion(){return guard=!1,this.target.completion}complete(t){return guard=!1,this.target.complete(t)}reject(t){return guard=!1,this.target.reject(t)}get environment(){return guard=!1,this.target.environment}get inputs(){return guard=!1,this.target.inputs}get activityContexts(){return guard=!1,this.target.activityContexts}get locale(){return guard=!1,this.target.locale}get resources(){return guard=!1,this.target.resources}get trivia(){return guard=!1,this.target.trivia}}class ActivityContextProxy extends Proxy{get luid(){return guard=!1,this.target.luid}get ambient(){return guard=!1,this.target.ambient.proxy}get action(){return guard=!1,this.target.action}get branch(){return guard=!1,this.target.branch}get cancellationToken(){return guard=!1,this.target.cancellationToken}get passes(){return guard=!1,this.target.passes}get caught(){return guard=!1,this.target.caught}call(t){return guard=!1,this.target.call(t)}fork(t){return guard=!1,this.target.fork(t)}jump(t){return guard=!1,this.target.jump(t)}hasBranch(t){return guard=!1,this.target.hasBranch(t)}get state(){return guard=!1,this.target.state}registerForErrors(){return guard=!1,this.target.registerForErrors()}persist(t){return guard=!1,this.target.persist(t)}goto(){return guard=!1,this.target.goto()}}class AmbientState{constructor(){this.frame=new MonikerFrame,this.stack=[],this.handlers={}}get activityContexts(){const t={};for(const e of[...this.stack,this.frame])for(const r in e.state)"$$"===r.substring(0,2)&&(t[r]=e.state[r]);return t}break(){this.halted=!0}continue(){this.halted=!1,void 0!==this.scheduler&&!this.scheduler.isFulfilled()||(this.scheduler=immediate.then(t=>{this.execute()}))}execute(t){if(this.inline)return!1;this.inline=!0;try{void 0!==t&&t();const e=this.completion;for(;e.isPending();){if(this.halted)return!1;const r=this.frame.current.execute();if(r.isPending())break;r.isRejected()&&this.fail(r.reason())}}catch(t){this.fail(t)}finally{this.inline=!1}return!0}complete(t){this.completion.isPending()&&(this.cancellationResolve(),this.resolveCompletion(t||this.outputs))}reject(t){this.completion.isPending()&&(this.cancellationResolve(),this.rejectCompletion(t||this.error))}fail(t){this.completion.isPending()&&(this.cancellationResolve(),this.rejectCompletion(new EngineRuntimeError(t)))}cancel(){this.completion.isPending()&&(this.cancellationResolve(),this.rejectCompletion(new ActivityCancellationError))}push(){const t=this.stack;t.push(this.frame);const e=this.frame=new MonikerFrame;return e.index=t.length,e}pop(t){const e=this.frame;if(void 0!==e){e.current=void 0;const i=e.cancellationResolve;void 0!==i&&i()}var r=this.frame=this.stack.pop();return void 0===r&&(void 0!==t?this.reject(t):this.complete()),r}call(){var t=this.frame;const e=this.push();e.cancellationToken=t.cancellationToken,e.state=t.state}fork(){const e=this.push();e.cancellationToken=createLinkedCancellationToken(this.cancellationToken,t=>e.cancellationResolve=t),e.state={}}bubble(t){let e=this.pop(t);for(;void 0!==e&&!e.current.registeredForErrors;)e=this.pop(t);var r;void 0!==e&&(r=e.current,this.start(r.activity,r,t))}next(){var t=this.queue.pop();void 0!==t?this.attempt(t):void 0!==(t=this.pop())&&(t=t.current,this.start(t.activity,t))}prepare(e,t,r){const i=e.frame=this.frame;if((i.current=e).luid=this.id+":"+e.activity.id,e.action=e.activity.action,e.ambient=this,e.id=newSymbol(),e.caught=r,e.cancellationToken=createLinkedCancellationToken(i.cancellationToken,t=>e.cancellationResolve=t),e.proxy=new ActivityContextProxy(e),void 0!==t){const n=e.recent=t.recent||(t.recent={});t=n.context||t;(n.context=e).passes=t.passes+1,e.stateToPersist=e.state=t.stateToPersist}else e.passes=0}attempt(t){const e=new TransitionContext;e.activity=t,e.branch=t.branch,this.prepare(e)}start(t,e,r){const i=new(t.async?AsyncContext:StepContext);i.activity=t,i.monikers.push("$"),this.prepare(i,e,r)}enqueue(t,e){const r=this.inspector;this.queue=r.relate(t,e).list(),this.next()}goto(t){for(var e=this.stack,r=t.index;e[r]===t;)this.pop();return t===this.frame}}class MonikerFrame{}class PromiseWrapper{}class ActivityContext{constructor(){this.inputs={},this.extras=[],this.monikers=[]}registerForErrors(){this.registeredForErrors=!0}persist(t){this.stateToPersist=t}call(t){this.callBranch=!0,this.forkBranch=!1,this.jumpBranch=t}fork(t){this.callBranch=!1,this.forkBranch=!0,this.jumpBranch=t}jump(t){this.callBranch=!1,this.forkBranch=!1,this.jumpBranch=t}hasBranch(t){var e=this.activity;const r=this.ambient.inspector;return r.isStep(e)&&void 0!==r.relate(e,t).peek()}emitExpressionEvaluationError(t,e){var r=this.activity.id,i=this.activity.inputs[t];return new ExpressionEvaluationError(r,t,i.source||i.code,e)}emitExpressionSyntaxError(t,e){var r=this.activity.id,i=this.activity.inputs[t];return new ExpressionSyntaxError(r,t,i.source||i.code,e)}emitExpressionAccessorError(t,e,r){return new ExpressionAccessorError(this.activity.id,t,e,r)}emitActivityBindingError(t){var e=this.activity;return new ActivityBindingError(e.id,e.action,t)}emitActivityActivationError(t,e){return new ActivityActivationError(this.activity.id,t,e)}emitActivityError(t){if(t instanceof ActivityError)return t;var e=this.activity;const r=new GenericActivityError(void 0,t&&t.message);return r.activityId=e.id,r.error=t,r}executeHandlerInline(e){if(0<e.length||this.cancellationToken.isFulfilled())return e;const r=this.extras;for(let t=0;t<r.length;t++)r[t]=Bluebird.resolve(r[t]).value();const i=this.inputs;for(const o in i){let t=Bluebird.resolve(i[o]).value();t instanceof PromiseWrapper&&(t=t.result),i[o]=t}const t=this.proxy,n=this.handler.value(),s=Bluebird.attempt(function(){return n.execute(i,t,...r)});return s.isPending()?s.then(t=>(this.outputs=t,e),t=>[this.emitActivityError(t)]):s.isRejected()?[this.emitActivityError(s.reason())]:(this.outputs=s.value(),e)}resolveExtrasInline(){for(const e of query(this.handler.value())){const t=this.ambient.engine.activator,r=t.activate(e);if(this.extras.push(r),r.isPending())return r.then(t=>{},t=>this.emitActivityActivationError(e.type,t));if(r.isRejected())return this.emitActivityActivationError(e.type,r.reason())}}resolveInputsInline(t){if(0<t.length||this.cancellationToken.isFulfilled())return t;const e=[];e.push(this.resolveExtrasInline());const r=this.evaluators;if(void 0!==r){const i=this.scope;for(const s in i)i[s]=Bluebird.resolve(i[s]).value();const n=this.inputs;this.ambient.resources;for(const o in r){const a=n[o]=Bluebird.attempt(function(){var t=r[o].call(i);if(t&&"function"==typeof t.then){const e=new PromiseWrapper;return e.result=t,e}return t});a.isPending()&&e.push(a.then(t=>{},t=>this.emitExpressionEvaluationError(o,t))),a.isRejected()&&e.push(this.emitExpressionEvaluationError(o,a.reason()))}}return reduceErrors(Bluebird.all(e))}resolveHandlerInline(){const e=this.activity.action;if("string"==typeof e){var r=this.ambient;const i=r.handlers;let t=this.handler=i[e];if(void 0===t){const n=r.engine,s=r.inspector;t=this.handler=i[e]=Bluebird.attempt(function(){return n.createHandler(e,s)})}return t.isPending()?t.then(t=>isInvalidHandler(t)?this.emitActivityBindingError():void 0,t=>this.emitActivityBindingError(t)):t.isRejected()?this.emitActivityBindingError(t.reason()):isInvalidHandler(t.value())?this.emitActivityBindingError():void 0}this.handler=Bluebird.resolve(echoHandler)}findContext(t){var e=this.ambient,r=e.stack;let i=e.frame;for(;void 0!==i;){var n=i.state[t];if(void 0!==n)return n;i=r[i.index-1]}}resolveOutputsInline(){const t=this.promise;if(t.isPending())return t.then(t=>void 0!==t&&0<t.length?Bluebird.reject(t):this.outputs,t=>{});if(t.isRejected())return immediate;var e=t.value();return void 0!==e&&0<e.length?Bluebird.reject(e):Bluebird.resolve(this.outputs)}resolveAccessorInline(e){const t=this.findContext(e);this.scope;if(void 0!==t){const r=this.scope[e]=t.resolveOutputsInline();return r.isPending()?r.then(t=>{},t=>this.emitExpressionAccessorError(e,void 0,t)):r.isRejected()?this.emitExpressionAccessorError(e,void 0,r.reason()):void 0}const r=this.scope[e]=Bluebird.resolve(this.ambient.environment[e]);return r.isPending()?r.then(t=>{},t=>this.emitExpressionAccessorError(e,t)):r.isRejected()?this.emitExpressionAccessorError(e,r.reason()):void 0}resolveAssetsInline(){const r=[];r.push(this.resolveHandlerInline());var i=this.activity.inputs;if(null!=i){let t,e;const s=this.ambient;this.inputs;for(const o in i){const a=i[o];if(void 0!==a&&null!==a)if(isLiteral(a))this.inputs[o]=Bluebird.resolve(a);else if(isExpression(a)){void 0===t&&(this.scope=t={}),void 0===e&&(this.evaluators=e={});var n=a.accessors;if(Array.isArray(n))for(const l of n)"string"==typeof l&&void 0===t[l]&&r.push(this.resolveAccessorInline(l));const c=Bluebird.attempt(function(){return compileExpression(a,s.resources)});c.isFulfilled()?e[o]=c.value():r.push(this.emitExpressionSyntaxError(o,c.reason()))}else r.push(this.emitExpressionSyntaxError(o))}}return reduceErrors(Bluebird.all(r))}concludeInline(t){return this.cancellationResolve(),t}generateMonikers(){const t=this.monikers;var e=this.activity;this.ambient.inspector;t.push("$"+e.id),"string"==typeof e.name&&t.push("$"+e.name);const r=e.action;"string"!=typeof r||1<(e=r.split(":")).length&&(0<(e=e[e.length-2]).length&&t.push("$$"+e))}marshalError(){var t=this.promise.value();return 1<t.length?new AggregateActivityError(this.activity.id,t):0<t.length?t[0]:void 0}execute(){let t=this.promise;const e=this.ambient;if(void 0!==t)return e.debug(e),e.halted||this.transferInline(),t;{if(t=this.resolveAssetsInline(),t.isRejected())return t;if(t=t.isPending()?t.then(t=>this.resolveInputsInline(t)):Bluebird.resolve(this.resolveInputsInline(t.value())),t.isRejected())return t;if(t=t.isPending()?t.then(t=>this.executeHandlerInline(t)):Bluebird.resolve(this.executeHandlerInline(t.value())),t.isRejected())return t;if(t=t.isPending()?t.then(t=>this.concludeInline(t)):Bluebird.resolve(this.concludeInline(t.value())),t.isRejected())return t;t.isPending()&&(t=t.catch(t=>e.fail(t)),t.then(t=>e.execute())),this.generateMonikers();const r=e.frame.state;for(const i of this.monikers)r[i]=this;return this.promise=t,immediate}}goto(){}}class StepContext extends ActivityContext{transferInline(){const t=this.promise;if(t.isFulfilled()){const r=this.ambient;var e=this.marshalError();void 0!==e?r.bubble(e):this.repeat?r.start(this.activity,this):(this.callBranch&&r.call(),this.forkBranch&&r.fork(),r.enqueue(this.activity,this.jumpBranch))}}goto(){const t=this.frame,e=this.ambient;if(e.goto(t)){var r=this.recent;const i=void 0!==r?r.context:this;t.current=i,i.repeat=!0,e.halted=!1,e.execute()}}}class TransitionContext extends ActivityContext{test(){let t=void 0,e=void 0;var r=this.outputs;for(const i in r){if(void 0!==t&&void 0!==e)return!1;if(e=r[i],!isLiteral(e))return!1;if(void 0===t)t=e,e=void 0;else if(t!==e)return!1}return void 0===t||(void 0!==e||("boolean"==typeof t?t:"number"==typeof t?0<t:"string"==typeof t&&0<t.length))}transferInline(){const t=this.promise;if(t.isFulfilled()){t.value();const r=this.ambient;var e=this.marshalError();void 0!==e?r.bubble(e):this.test()?r.start(this.activity.target):r.next()}}}class AsyncContext extends ActivityContext{transferInline(){this.ambient.enqueue(this.activity)}execute(){return super.execute(),immediate}}function run(n,s,o,a){const c=t=>{var e=s.findStep(t);if(!e)throw new GenericActivityError(`The workflow does not contain a step with the id ${t}.`);return e},l=(t,e,r,i)=>{t=c(t);const n=c(e);if(!n.transitions.some(t=>"content"===t.branch||"try"===t.branch))throw new GenericActivityError(`The ${e} step is not a Container, Subworkflow, or Try Catch activity.`);r=`${i}$${r}`;h(t,n,r)},u=t=>{var e=d.frame.current.activity,r=c(t);if("gcx:wf:core::Subworkflow"!==r.action)throw new GenericActivityError(`The target step ${t} is not a Subworkflow activity.`);h(e,r,"default")},h=(t,e,r)=>{var i=s.relate(t,r).peek();void 0!==i&&s.remove(i);const n=s.addTransition(t,e);n.branch=r},d=new AmbientState;return d.completion=new Bluebird((t,e)=>{d.resolveCompletion=t,d.rejectCompletion=e}),d.cancellationToken=new Task(t=>d.cancellationResolve=t),d.execute(function(){if(s.isStep(a)){o=o||{},d.engine=n,d.inspector=s,d.id=newSymbol(),d.debug=o.debug||(()=>{}),d.environment=combine(n.environment,o.environment),d.inputs=o.inputs||{},d.locale=o.locale,d.resources={forms:s.cacheForms()},d.outputs={},d.trivia=combine(n.trivia,o.trivia),d.trivia.setFormElementEvent=l,d.trivia.setSubworkflowTransition=u,d.proxy=new AmbientStateProxy(d);const e=d.trivia.isDescendantOf;e?d.trivia.isDescendantOf=t=>t===d.proxy||e(t):d.trivia.isDescendantOf=t=>t===d.proxy;const r=d.frame;r.index=0,r.cancellationToken=d.cancellationToken,r.state=o.state||{};var t=o.cancellationToken;if(null!=t){const i=Task.race([t,d.cancellationToken]);i.isPending()?(t=()=>d.cancel(),i.then(t,t)):d.cancel()}d.start(a)}else d.reject(new ProgramStartError)}),d.completion}export{clearExpressionCache,run};
1
+ import{ActivityActivationError,ActivityBindingError,ActivityCancellationError,ActivityError,AggregateActivityError,EngineRuntimeError,ExpressionAccessorError,ExpressionEvaluationError,ExpressionSyntaxError,GenericActivityError,ProgramStartError}from"../Errors.js";import{query}from"../Hooks.js";import{Task}from"../Task.js";import Bluebird from"../deps/bluebird_fork.js";function isExpression(t){var e=t.type;return null==e&&"string"==typeof t.code}function createLinkedCancellationToken(t,e){const r=Task.race([new Task(e),t]),i=new AbortController;return r.signal=i.signal,r.finally(()=>i.abort()),r}function isInvalidHandler(t){return null==t||"function"!=typeof t.execute}function isLiteral(t){switch(typeof t){case"boolean":case"number":case"string":return!0}return!1}let evaluators={};function clearExpressionCache(){evaluators={}}const reservedIdentifiers=["resources","values","Date","Math","Object","parseInt","parseFloat","decodeURIComponent","encodeURIComponent"];function isAccessor(e){return!("string"!=typeof e||e.length<1)&&(!(0<=e.indexOf("."))&&!reservedIdentifiers.some(t=>t===e))}function compileExpression(t,e){var r=t.code;let i=evaluators[r];if(void 0===i){const s=[],o={};s.push('"use strict"; ');var n=t.accessors;if(Array.isArray(n))for(const a of n)isAccessor(a)&&!o[a]&&(s.push(`var ${a} = this.${a};`),o[a]=!0);s.push("return "),s.push(r),s.push(";"),i=evaluators[r]=new Function("resources","values",s.join(""))}return function(){return i.call(this,e,t.values)}}function echo(t){return t}const echoHandler={execute:echo};function combine(t,e){return{...t||{},...e||{}}}function isError(t){return void 0!==t}function filterErrors(t){return t.filter(isError)}function reduceErrors(t){return t.isPending()?t.then(filterErrors):t.isFulfilled()?Bluebird.resolve(filterErrors(t.value())):t}let nextSymbol,nextSymbolPrefix;function newSymbol(){return void 0!==nextSymbol&&1073741824<=nextSymbol&&(nextSymbol=void 0),void 0===nextSymbol&&(nextSymbol=0,nextSymbolPrefix=(new Date).valueOf()+":"),nextSymbolPrefix+nextSymbol++}const immediate=Bluebird.resolve(void 0);let guard=!0;class Proxy{constructor(t){Object.defineProperty(this,"target",{get(){if(!1===guard)return guard=!0,t}})}}class AmbientStateProxy extends Proxy{get outputs(){return guard=!1,this.target.outputs}set outputs(t){guard=!1,this.target.outputs=t}get error(){return guard=!1,this.target.error}set error(t){guard=!1,this.target.error=t}get completion(){return guard=!1,this.target.completion}complete(t){return guard=!1,this.target.complete(t)}reject(t){return guard=!1,this.target.reject(t)}get environment(){return guard=!1,this.target.environment}get inputs(){return guard=!1,this.target.inputs}get activityContexts(){return guard=!1,this.target.activityContexts}get locale(){return guard=!1,this.target.locale}get resources(){return guard=!1,this.target.resources}get trivia(){return guard=!1,this.target.trivia}}class ActivityContextProxy extends Proxy{get luid(){return guard=!1,this.target.luid}get ambient(){return guard=!1,this.target.ambient.proxy}get action(){return guard=!1,this.target.action}get branch(){return guard=!1,this.target.branch}get cancellationToken(){return guard=!1,this.target.cancellationToken}get passes(){return guard=!1,this.target.passes}get caught(){return guard=!1,this.target.caught}call(t){return guard=!1,this.target.call(t)}fork(t){return guard=!1,this.target.fork(t)}jump(t){return guard=!1,this.target.jump(t)}hasBranch(t){return guard=!1,this.target.hasBranch(t)}get state(){return guard=!1,this.target.state}registerForErrors(){return guard=!1,this.target.registerForErrors()}persist(t){return guard=!1,this.target.persist(t)}goto(){return guard=!1,this.target.goto()}}class AmbientState{constructor(){this.frame=new MonikerFrame,this.stack=[],this.handlers={}}get activityContexts(){const t={};for(const e of[...this.stack,this.frame])for(const r in e.state)"$$"===r.substring(0,2)&&(t[r]=e.state[r]);return t}break(){this.halted=!0}continue(){this.halted=!1,void 0!==this.scheduler&&!this.scheduler.isFulfilled()||(this.scheduler=immediate.then(t=>{this.execute()}))}execute(t){if(this.inline)return!1;this.inline=!0;try{void 0!==t&&t();const e=this.completion;for(;e.isPending();){if(this.halted)return!1;const r=this.frame.current.execute();if(r.isPending())break;r.isRejected()&&this.fail(r.reason())}}catch(t){this.fail(t)}finally{this.inline=!1}return!0}complete(t){this.completion.isPending()&&(this.cancellationResolve(),this.resolveCompletion(t||this.outputs))}reject(t){this.completion.isPending()&&(this.cancellationResolve(),this.rejectCompletion(t||this.error))}fail(t){this.completion.isPending()&&(this.cancellationResolve(),this.rejectCompletion(new EngineRuntimeError(t)))}cancel(){this.completion.isPending()&&(this.cancellationResolve(),this.rejectCompletion(new ActivityCancellationError))}push(){const t=this.stack;t.push(this.frame);const e=this.frame=new MonikerFrame;return e.index=t.length,e}pop(t){const e=this.frame;if(void 0!==e){e.current=void 0;const i=e.cancellationResolve;void 0!==i&&i()}var r=this.frame=this.stack.pop();return void 0===r&&(void 0!==t?this.reject(t):this.complete()),r}call(){var t=this.frame;const e=this.push();e.cancellationToken=t.cancellationToken,e.state=t.state}fork(){const e=this.push();e.cancellationToken=createLinkedCancellationToken(this.cancellationToken,t=>e.cancellationResolve=t),e.state={}}bubble(t){let e=this.pop(t);for(;void 0!==e&&!e.current.registeredForErrors;)e=this.pop(t);var r;void 0!==e&&(r=e.current,this.start(r.activity,r,t))}next(){var t=this.queue.pop();void 0!==t?this.attempt(t):void 0!==(t=this.pop())&&(t=t.current,this.start(t.activity,t))}prepare(e,t,r){const i=e.frame=this.frame;if((i.current=e).luid=this.id+":"+e.activity.id,e.action=e.activity.action,e.ambient=this,e.id=newSymbol(),e.caught=r,e.cancellationToken=createLinkedCancellationToken(i.cancellationToken,t=>e.cancellationResolve=t),e.proxy=new ActivityContextProxy(e),void 0!==t){const n=e.recent=t.recent||(t.recent={});t=n.context||t;(n.context=e).passes=t.passes+1,e.stateToPersist=e.state=t.stateToPersist}else e.passes=0}attempt(t){const e=new TransitionContext;e.activity=t,e.branch=t.branch,this.prepare(e)}start(t,e,r){const i=new(t.async?AsyncContext:StepContext);i.activity=t,i.monikers.push("$"),this.prepare(i,e,r)}enqueue(t,e){const r=this.inspector;this.queue=r.relate(t,e).list(),this.next()}goto(t){for(var e=this.stack,r=t.index;e[r]===t;)this.pop();return t===this.frame}}class MonikerFrame{}class PromiseWrapper{}class ActivityContext{constructor(){this.inputs={},this.extras=[],this.monikers=[]}registerForErrors(){this.registeredForErrors=!0}persist(t){this.stateToPersist=t}call(t){this.callBranch=!0,this.forkBranch=!1,this.jumpBranch=t}fork(t){this.callBranch=!1,this.forkBranch=!0,this.jumpBranch=t}jump(t){this.callBranch=!1,this.forkBranch=!1,this.jumpBranch=t}hasBranch(t){var e=this.activity;const r=this.ambient.inspector;return r.isStep(e)&&void 0!==r.relate(e,t).peek()}emitExpressionEvaluationError(t,e){var r=this.activity.id,i=this.activity.inputs[t];return new ExpressionEvaluationError(r,t,i.source||i.code,e)}emitExpressionSyntaxError(t,e){var r=this.activity.id,i=this.activity.inputs[t];return new ExpressionSyntaxError(r,t,i.source||i.code,e)}emitExpressionAccessorError(t,e,r){return new ExpressionAccessorError(this.activity.id,t,e,r)}emitActivityBindingError(t){var e=this.activity;return new ActivityBindingError(e.id,e.action,t)}emitActivityActivationError(t,e){return new ActivityActivationError(this.activity.id,t,e)}emitActivityError(t){if(t instanceof ActivityError)return t;var e=this.activity;const r=new GenericActivityError(void 0,t?.message);return r.activityId=e.id,r.error=t,r}executeHandlerInline(e){if(0<e.length||this.cancellationToken.isFulfilled())return e;const r=this.extras;for(let t=0;t<r.length;t++)r[t]=Bluebird.resolve(r[t]).value();const i=this.inputs;for(const o in i){let t=Bluebird.resolve(i[o]).value();t instanceof PromiseWrapper&&(t=t.result),i[o]=t}const t=this.proxy,n=this.handler.value(),s=Bluebird.attempt(function(){return n.execute(i,t,...r)});return s.isPending()?s.then(t=>(this.outputs=t,e),t=>[this.emitActivityError(t)]):s.isRejected()?[this.emitActivityError(s.reason())]:(this.outputs=s.value(),e)}resolveExtrasInline(){for(const e of query(this.handler.value())){const t=this.ambient.engine.activator,r=t.activate(e);if(this.extras.push(r),r.isPending())return r.then(t=>{},t=>this.emitActivityActivationError(e.type,t));if(r.isRejected())return this.emitActivityActivationError(e.type,r.reason())}}resolveInputsInline(t){if(0<t.length||this.cancellationToken.isFulfilled())return t;const e=[];e.push(this.resolveExtrasInline());const r=this.evaluators;if(void 0!==r){const i=this.scope;for(const s in i)i[s]=Bluebird.resolve(i[s]).value();const n=this.inputs;for(const o in r){const a=n[o]=Bluebird.attempt(function(){var t=r[o].call(i);if(t&&"function"==typeof t.then){const e=new PromiseWrapper;return e.result=t,e}return t});a.isPending()&&e.push(a.then(t=>{},t=>this.emitExpressionEvaluationError(o,t))),a.isRejected()&&e.push(this.emitExpressionEvaluationError(o,a.reason()))}}return reduceErrors(Bluebird.all(e))}resolveHandlerInline(){const e=this.activity.action;if("string"==typeof e){var r=this.ambient;const i=r.handlers;let t=this.handler=i[e];if(void 0===t){const n=r.engine,s=r.inspector;t=this.handler=i[e]=Bluebird.attempt(function(){return n.createHandler(e,s)})}return t.isPending()?t.then(t=>isInvalidHandler(t)?this.emitActivityBindingError():void 0,t=>this.emitActivityBindingError(t)):t.isRejected()?this.emitActivityBindingError(t.reason()):isInvalidHandler(t.value())?this.emitActivityBindingError():void 0}this.handler=Bluebird.resolve(echoHandler)}findContext(t){var e=this.ambient,r=e.stack;let i=e.frame;for(;void 0!==i;){var n=i.state[t];if(void 0!==n)return n;i=r[i.index-1]}}resolveOutputsInline(){const t=this.promise;if(t.isPending())return t.then(t=>void 0!==t&&0<t.length?Bluebird.reject(t):this.outputs,t=>{});if(t.isRejected())return immediate;var e=t.value();return void 0!==e&&0<e.length?Bluebird.reject(e):Bluebird.resolve(this.outputs)}resolveAccessorInline(e){const t=this.findContext(e);if(void 0!==t){const r=this.scope[e]=t.resolveOutputsInline();return r.isPending()?r.then(t=>{},t=>this.emitExpressionAccessorError(e,void 0,t)):r.isRejected()?this.emitExpressionAccessorError(e,void 0,r.reason()):void 0}const r=this.scope[e]=Bluebird.resolve(this.ambient.environment[e]);return r.isPending()?r.then(t=>{},t=>this.emitExpressionAccessorError(e,t)):r.isRejected()?this.emitExpressionAccessorError(e,r.reason()):void 0}resolveAssetsInline(){const r=[];r.push(this.resolveHandlerInline());var i=this.activity.inputs;if(null!=i){let t,e;const s=this.ambient;for(const o in i){const a=i[o];if(void 0!==a&&null!==a)if(isLiteral(a))this.inputs[o]=Bluebird.resolve(a);else if(isExpression(a)){void 0===t&&(this.scope=t={}),void 0===e&&(this.evaluators=e={});var n=a.accessors;if(Array.isArray(n))for(const l of n)"string"==typeof l&&void 0===t[l]&&r.push(this.resolveAccessorInline(l));const c=Bluebird.attempt(function(){return compileExpression(a,s.resources)});c.isFulfilled()?e[o]=c.value():r.push(this.emitExpressionSyntaxError(o,c.reason()))}else r.push(this.emitExpressionSyntaxError(o))}}return reduceErrors(Bluebird.all(r))}concludeInline(t){return this.cancellationResolve(),t}generateMonikers(){const t=this.monikers;var e=this.activity;t.push("$"+e.id),"string"==typeof e.name&&t.push("$"+e.name);const r=e.action;"string"!=typeof r||1<(e=r.split(":")).length&&(0<(e=e[e.length-2]).length&&t.push("$$"+e))}marshalError(){var t=this.promise.value();return 1<t.length?new AggregateActivityError(this.activity.id,t):0<t.length?t[0]:void 0}execute(){let t=this.promise;const e=this.ambient;if(void 0!==t)return e.debug(e),e.halted||this.transferInline(),t;{if(t=this.resolveAssetsInline(),t.isRejected())return t;if(t=t.isPending()?t.then(t=>this.resolveInputsInline(t)):Bluebird.resolve(this.resolveInputsInline(t.value())),t.isRejected())return t;if(t=t.isPending()?t.then(t=>this.executeHandlerInline(t)):Bluebird.resolve(this.executeHandlerInline(t.value())),t.isRejected())return t;if(t=t.isPending()?t.then(t=>this.concludeInline(t)):Bluebird.resolve(this.concludeInline(t.value())),t.isRejected())return t;t.isPending()&&(t=t.catch(t=>e.fail(t)),t.then(t=>e.execute())),this.generateMonikers();const r=e.frame.state;for(const i of this.monikers)r[i]=this;return this.promise=t,immediate}}goto(){}}class StepContext extends ActivityContext{transferInline(){const t=this.promise;if(t.isFulfilled()){const r=this.ambient;var e=this.marshalError();void 0!==e?r.bubble(e):this.repeat?r.start(this.activity,this):(this.callBranch&&r.call(),this.forkBranch&&r.fork(),r.enqueue(this.activity,this.jumpBranch))}}goto(){const t=this.frame,e=this.ambient;if(e.goto(t)){var r=this.recent;const i=void 0!==r?r.context:this;t.current=i,i.repeat=!0,e.halted=!1,e.execute()}}}class TransitionContext extends ActivityContext{test(){let t=void 0,e=void 0;var r=this.outputs;for(const i in r){if(void 0!==t&&void 0!==e)return!1;if(e=r[i],!isLiteral(e))return!1;if(void 0===t)t=e,e=void 0;else if(t!==e)return!1}return void 0===t||(void 0!==e||("boolean"==typeof t?t:"number"==typeof t?0<t:"string"==typeof t&&0<t.length))}transferInline(){const t=this.promise;if(t.isFulfilled()){const r=this.ambient;var e=this.marshalError();void 0!==e?r.bubble(e):this.test()?r.start(this.activity.target):r.next()}}}class AsyncContext extends ActivityContext{transferInline(){this.ambient.enqueue(this.activity)}execute(){return super.execute(),immediate}}function run(n,s,o,a){const c=t=>{var e=s.findStep(t);if(!e)throw new GenericActivityError(`The workflow does not contain a step with the id ${t}.`);return e},l=(t,e,r,i)=>{t=c(t);const n=c(e);if(!n.transitions.some(t=>"content"===t.branch||"try"===t.branch))throw new GenericActivityError(`The ${e} step is not a Container, Subworkflow, or Try Catch activity.`);r=`${i}$${r}`;h(t,n,r)},u=t=>{var e=d.frame.current.activity,r=c(t);if("gcx:wf:core::Subworkflow"!==r.action)throw new GenericActivityError(`The target step ${t} is not a Subworkflow activity.`);h(e,r,"default")},h=(t,e,r)=>{var i=s.relate(t,r).peek();void 0!==i&&s.remove(i);const n=s.addTransition(t,e);n.branch=r},d=new AmbientState;return d.completion=new Bluebird((t,e)=>{d.resolveCompletion=t,d.rejectCompletion=e}),d.cancellationToken=new Task(t=>d.cancellationResolve=t),d.execute(function(){if(s.isStep(a)){o=o||{},d.engine=n,d.inspector=s,d.id=newSymbol(),d.debug=o.debug||(()=>{}),d.environment=combine(n.environment,o.environment),d.inputs=o.inputs||{},d.locale=o.locale,d.resources={forms:s.cacheForms()},d.outputs={},d.trivia=combine(n.trivia,o.trivia),d.trivia.setFormElementEvent=l,d.trivia.setSubworkflowTransition=u,d.proxy=new AmbientStateProxy(d);const e=d.trivia.isDescendantOf;e?d.trivia.isDescendantOf=t=>t===d.proxy||e(t):d.trivia.isDescendantOf=t=>t===d.proxy;const r=d.frame;r.index=0,r.cancellationToken=d.cancellationToken,r.state=o.state||{};var t=o.cancellationToken;if(null!=t){const i=Task.race([t,d.cancellationToken]);i.isPending()?(t=()=>d.cancel(),i.then(t,t)):d.cancel()}d.start(a)}else d.reject(new ProgramStartError)}),d.completion}export{clearExpressionCache,run};
@@ -1,4 +1,4 @@
1
- import React from "react";
1
+ import { Component } from "react";
2
2
  import * as defs from "./FormDefinition";
3
3
  import { FormPresenterHost } from "./FormPresenterHost";
4
4
  import type { FormElementProps, FormElementRegistration } from "..";
@@ -9,7 +9,7 @@ export interface FormComponentProps {
9
9
  name?: string;
10
10
  children?: JSX.Element[];
11
11
  }
12
- export declare class FormComponent extends React.Component<FormComponentProps, {}> {
12
+ export declare class FormComponent extends Component<FormComponentProps, {}> {
13
13
  id: string;
14
14
  autoInput: boolean;
15
15
  enabled: boolean;
@@ -1 +1 @@
1
- import React from"react";import{makeId}from"./utils.js";class FormComponent extends React.Component{constructor(){super(...arguments),this.raiseEvent=(e,t)=>{var s;return null===(s=this.props.host)||void 0===s?void 0:s.post(e,{name:this.props.name,value:t})},this.setProperty=(e,t)=>{const s=this.props.host;var n=this.props.name;s.assignElementProperty(n,e,t)},this.setValue=e=>this.setProperty("value",e)}get elementRegistration(){const e=this.props["host"];if(isFormRenderer(e))return e.getElementRegistration(this.element)}get element(){const{host:e,name:t}=this.props;if(t)return e.find(t)}prepare(){var e;void 0===this.id&&(this.id=makeId()),this.enabled=!0;const t=this.props.host;return!1===t.enabled&&(this.enabled=!1),void 0!==this.element&&(void 0!==(e=t.find(this.element.section))&&!1===e.enabled&&(this.enabled=!1),!1===this.element.enabled&&(this.enabled=!1)),this.element}render(){return this.props.host.renderVisual(this)}}class FormElement extends FormComponent{componentDidMount(){const e=this.props;e.host.refs[e.name]=this}componentDidUpdate(){const e=this.props;e.host.refs[e.name]=this}componentWillUnmount(){const e=this.props;e.host.refs[e.name]=void 0}}function isFormRenderer(e){return!!e&&"function"==typeof e.getElementRegistration}export{FormComponent,FormElement};
1
+ import{Component}from"react";import{makeId}from"./utils.js";class FormComponent extends Component{constructor(){super(...arguments),this.raiseEvent=(e,t)=>this.props.host?.post(e,{name:this.props.name,value:t}),this.setProperty=(e,t)=>{const s=this.props.host;var n=this.props.name;s.assignElementProperty(n,e,t)},this.setValue=e=>this.setProperty("value",e)}get elementRegistration(){const e=this.props["host"];if(isFormRenderer(e))return e.getElementRegistration(this.element)}get element(){const{host:e,name:t}=this.props;if(t)return e.find(t)}prepare(){var e;void 0===this.id&&(this.id=makeId()),this.enabled=!0;const t=this.props.host;return!1===t.enabled&&(this.enabled=!1),void 0!==this.element&&(void 0!==(e=t.find(this.element.section))&&!1===e.enabled&&(this.enabled=!1),!1===this.element.enabled&&(this.enabled=!1)),this.element}render(){return this.props.host.renderVisual(this)}}class FormElement extends FormComponent{componentDidMount(){const e=this.props;e.host.refs[e.name]=this}componentDidUpdate(){const e=this.props;e.host.refs[e.name]=this}componentWillUnmount(){const e=this.props;e.host.refs[e.name]=void 0}}function isFormRenderer(e){return!!e&&"function"==typeof e.getElementRegistration}export{FormComponent,FormElement};
@@ -196,7 +196,7 @@ export interface Element {
196
196
  fileTypes?: string;
197
197
  /** Indicates the format of the value. */
198
198
  format?: FormatRef;
199
- /** Indicates that the element is hoisted or not. */
199
+ /** Indicates whether the element is hoisted or not. */
200
200
  hoisted?: boolean;
201
201
  /**
202
202
  * The order of this element in a single-dimensional column.
@@ -1,4 +1,5 @@
1
- import React from "react";
1
+ import { ReactNode } from "react";
2
+ import * as React from "react";
2
3
  import { FormComponent } from "./FormComponent";
3
4
  import { defs } from "./FormHost";
4
5
  interface FormElementOuterProps {
@@ -32,6 +33,6 @@ interface FormElementOuterProps {
32
33
  onTouchStart?: (event: React.TouchEvent<HTMLElement>) => void;
33
34
  }
34
35
  declare const _default: React.ForwardRefExoticComponent<FormElementOuterProps & {
35
- children?: React.ReactNode;
36
+ children?: ReactNode;
36
37
  } & React.RefAttributes<HTMLDivElement | HTMLLabelElement>>;
37
38
  export default _default;
@@ -1 +1 @@
1
- import React from"react";import{renderTitle,renderDescription,renderError}from"./common.js";import{TitleLocation}from"./constants.js";import{makeSafeClassName,makeUniqueId}from"./utils.js";export default React.forwardRef((e,r)=>{const{children:t,className:o,component:a,element:i,errorClassName:s,htmlElementType:n,...l}=e;var m=a.props.host;const p=[];var c=makeUniqueId(a.props.name),d=renderTitle(i,m,c),u=renderDescription(i,m,c),h=renderError(i,m),m=null===(e=null==d?void 0:d.props)||void 0===e?void 0:e.id,e=null===(e=null==u?void 0:u.props)||void 0===e?void 0:e.id;const f=[];o&&f.push(...o.split(" ")),i.titleLocation===TitleLocation.BESIDE&&f.push("inline-title"),i.styleName&&f.push(makeSafeClassName(i.styleName)),h&&s&&f.push(s);r={"aria-labelledby":m,"aria-describedby":e,className:f.join(" "),id:c,ref:r,...l};return p.push(d),i.titleLocation===TitleLocation.BESIDE?p.push(React.createElement("div",{className:"form-element-content"},u,h,t)):(p.push(u),p.push(h),p.push(t)),React.createElement(n||"div",r,...p)});
1
+ import{forwardRef,createElement}from"react";import*as React from"react";import{renderTitle,renderDescription,renderError}from"./common.js";import{TitleLocation}from"./constants.js";import{makeSafeClassName,makeUniqueId}from"./utils.js";export default forwardRef((e,r)=>{const{children:t,className:a,component:o,element:s,errorClassName:i,htmlElementType:n,...m}=e;var l=o.props.host;const p=[];var c=makeUniqueId(o.props.name),d=renderTitle(s,l,c),f=renderDescription(s,l,c),u=renderError(s,l),e=d?.props?.id,l=f?.props?.id;const h=[];a&&h.push(...a.split(" ")),s.titleLocation===TitleLocation.BESIDE&&h.push("inline-title"),s.styleName&&h.push(makeSafeClassName(s.styleName)),u&&i&&h.push(i);r={"aria-labelledby":e,"aria-describedby":l,className:h.join(" "),id:c,ref:r,...m};return p.push(d),s.titleLocation===TitleLocation.BESIDE?p.push(React.createElement("div",{className:"form-element-content"},f,u,t)):(p.push(f),p.push(u),p.push(t)),createElement(n||"div",r,...p)});
@@ -1 +1 @@
1
- import moment from"moment-timezone";import{Task}from"../Task.js";import{DEFAULT_LOCALE}from"../constants.js";import Bluebird from"../deps/bluebird_fork.js";import{Calendar}from"./Calendar.js";import{FormComponent}from"./FormComponent.js";import*as defs from"./FormDefinition.js";import NumberParser from"./NumberParser.js";import{format}from"./numberFormatter.js";import*as presenter from"./presenter.js";import*as renderers from"./renderers.js";import{CSS}from"./styles/stock.js";import{addStyleToDocument,sort,text}from"./utils.js";const guid="C0166F74-982A-464E-9FB6-9605CB7649C1:",eventName=guid+"FormEvent";function createEvent(e,t){return new CustomEvent(e,{bubbles:!1,cancelable:!1,detail:t})}function ensureTimeZone(){let e=moment.tz.names[0];return void 0===e&&moment.tz.setDefault(e=moment.tz.guess()),e}function overlay(i,s){switch(typeof i){case"boolean":case"number":case"string":return i;case"object":break;default:return s}if(null===i)return s;if(i instanceof Array){let e=s;void 0!==e&&null!==e||(e=[]);let t=0;for(const n of i){var r=overlay(n,e[t]);void 0!==r&&(t<i.length?e[t]=r:e.push(r),++t)}return e}let e=s;void 0===e&&(e={});for(const t in i)e[t]=overlay(i[t],e[t]);return e}function createSubscription(e){function t(){return void 0!==e&&(t.active=!1,e(),!0)}return t.active=!0,t}let staticStyle=void 0;class FormHost{constructor(){this.form={defaults:{},elements:{}},this.errors={},this.refs={},this.enabled=!1,this.visible=!1,this.dismiss=!1,this.custom=!1,this.container=document.createElement("div"),this.eventIndex=0,this.eventQueue=[],this.mutuallyExclusiveSections={},this.nextFocus=!1,this.nextRefresh=!1,this.style=void 0}deriveLocale(){return DEFAULT_LOCALE}mount(){var e=this.container,t=e.parentNode;null==t&&document.body.appendChild(e),this.update()}unmount(){var e=this.container;const t=e.parentNode;void 0!==t&&null!==t&&t.removeChild(e)}observeFocus(e){this.enabled&&e instanceof HTMLElement&&(this.lastFocus&&this.lastFocus.target===e||this.setLastFocus(e))}focus(e){!0===(e=null==e?!1:e)&&(this.lastFocus=void 0),!1===e&&!1===(e=this.nextFocus)&&(e=!0),this.nextFocus=e,this.invalidate(!0!==e?e:void 0)}show(){const e=this.container;if(void 0===e)return!1;this.custom||void 0!==this.focusObserver||e.addEventListener("focus",this.focusObserver=e=>this.observeFocus(e.target),!0),this.enabled||(this.nextRefresh=!0,this.focus());const t=[];var i,s=this.errors;for(const r in s){const n=this.form.elements[r];void 0!==n&&null!==n&&(n.error=s[r],this.invalidate(r),!1!==n.visible&&(i=this.getParentSection(n),this.isSectionCollapsed(i)&&t.push(i)))}return 0<t.length&&(t.forEach(e=>{var t;this.isAccordionSection(e)?(t=this.findName(e))&&this.updateAccordionSections(t):e.collapsed=!1}),this.invalidate()),this.errors={},this.idle(),!1!==this.nextRefresh&&(this.enabled=!0,this.visible=!0,this.mount()),this.enabled}spin(){return void 0!==this.container&&(this.idle(),this.visible&&!this.enabled||(this.nextRefresh=!0,this.enabled=!1,this.visible=!0,this.mount()),this.visible)}hide(){return void 0!==this.container&&(this.idle(),this.visible&&(this.enabled=!1,this.visible=!1,this.unmount()),!0)}dispose(){if(this.dismiss)return!1;{this.dismiss=!0;const t=this.container;t.dispatchEvent(createEvent(eventName));var e=this.focusObserver;return void 0!==e&&t.removeEventListener("focus",e,!0),this.idle(),this.unmount(),this.refs={},presenter.releaseForm(this.container),this.container=void 0,this.lastFocus=void 0,!(this.eventTask=void 0)}}renderFocus(e,t){var i,s=this.nextFocus;if(this.enabled&&e instanceof HTMLElement)if(!1!==s)if(void 0!==t){if(t===s||!0===s&&void 0===this.lastFocus)return this.nextFocus=!1,this.setLastFocus(e,t),e.focus(),!0}else{const r=null===(i=this.lastFocus)||void 0===i?void 0:i.target;if(!0===s&&r instanceof HTMLElement&&e.contains(r))return this.nextFocus=!1,r.focus(),!0}else if(!1===s&&t&&t!==(null===(s=this.lastFocus)||void 0===s?void 0:s.name)&&this.isElementPositionBeforeLastFocused(t))return this.setLastFocus(e,t),e.focus(),!0;return!1}renderHtml(e,t){return"string"==typeof e?text.textToHtml(e):text.isMarkdown(e)?text.markdownToHtml(e.markdown,t):""}renderText(e){return"string"==typeof e?e:text.isMarkdown(e)?text.markdownToText(e.markdown):""}renderStyle(e){return"string"==typeof e?addStyleToDocument(e):staticStyle=staticStyle||addStyleToDocument(CSS)}renderVisual(e){return presenter.render(e)||presenter.renderNone(e)}qualifyDefault(e){var t=sort(this.form.elements);for(const n in t){var i=t[n];if(null!=i&&!1!==i.visible&&i.enabled){if(i.default)return e.value=i.value,n;var s=sort(i.items);if(null!=s)for(const o in s){var r=s[o];if(null!=r&&r.visible&&r.enabled&&r.default)return e.item=o,e.value=r.value,n}}}}qualify(e,t){var i;return null==t&&(t={}),"clicked"===e&&void 0===t.name&&(t.name=this.qualifyDefault(t)),t.type=e,void 0===t.routingKey&&(i=t.name,t.routingKey=void 0!==i?e+"$"+i:e),t}post(e,t){t=this.publish(e,t);const i=this.container;void 0!==i&&i.dispatchEvent(createEvent(eventName,t))}subscribe(i){const e=this.container;if(void 0===e)return createSubscription();const s=function(){i=void 0,e.removeEventListener(eventName,t)},t=function(e){const t=e.detail;void 0!==t?Bluebird.resolve().then(function(){"function"==typeof i&&i(t)}):s()};return e.addEventListener(eventName,t),createSubscription(s)}refresh(e){this.custom||("string"==typeof e?(e=this.refs[e],presenter.refresh(e)):(void 0===this.style&&(this.style=this.renderStyle()),this.refs={},presenter.refreshForm(this,this.container)))}invalidate(e){const t=this.nextRefresh;"string"==typeof e&&!0!==t&&(!1===t?this.nextRefresh={[e]:!0}:t[e]=!0),void 0!==e&&!0!==e||(this.nextRefresh=!0),!1===e&&!1===t&&(this.nextRefresh={})}update(){var e=this.nextRefresh;if(!0===e&&(this.nextRefresh=!1,this.refresh()),"object"==typeof e){this.nextRefresh=!1;for(const t in e)!0===e[t]&&this.refresh(t)}}idle(){const e=this.timerHandle;void 0!==e&&(this.timerHandle=void 0,e())}busy(){if(void 0===this.timerHandle&&void 0!==this.container){let e=setTimeout(()=>this.spin());this.timerHandle=function(){void 0!==e&&(clearTimeout(e),e=void 0)}}}publish(e,t){return this.enabled?(t=this.enqueue(e,t),0<this.eventQueue.length&&this.spin(),t):this.qualify(e,t)}enqueue(e,t){return t=this.qualify(e,t),void 0!==this.eventTask?(this.resolveEvent(t),this.eventTask=void 0):this.eventQueue.push(t),t}dequeue(){const e=this.eventQueue;if(0<e.length){var t=this.eventIndex,i=e[t++];return t>=e.length?e.length=this.eventIndex=0:this.eventIndex=t,i}}observe(){const t=this;return Bluebird.attempt(function(){if(void 0!==t.eventTask)return t.eventTask;var e=t.dequeue();return void 0!==e?e:t.show()?(t.eventTask=new Task(e=>{t.resolveEvent=e}),t.eventTask):void 0})}load(e,t){if(void 0===this.container)return!1;if(this.eventQueue.length=this.eventIndex=0,this.eventTask=void 0,this.errors={},this.lastFocus=void 0,this.nextFocus=!0,this.nextRefresh=!0,this.enqueue("load"),this.enqueue("prepare"),null!=e){e=overlay(e,e={defaults:{},elements:{}});this.form=overlay(t,e);for(const i in this.form.elements){let e=this.form.elements[i];if(e=overlay(e,{showFilter:!1,checked:!1,enabled:!0,hoisted:!1,visible:!0,overlay:!1,default:!1,validates:!1,readOnly:!1,require:!1,autoActivate:!1}),e.items)for(const s in e.items)e.items[s]=overlay(e.items[s],{enabled:!0,checked:!1,visible:!0,default:!1,validates:!1});this.form.elements[i]=e}}return!0}route(e){switch(e.type){case"changed":return this.cascade(e.name);case"prepare":return this.hydrate(e);case"suggest":return this.suggest(e);case"clicked":return this.click(e);case"validate":return this.verify(e);case"verify":return this.submit(e);case"checked":return this.changed(e)}return!1}changed(e){return this.enqueue("changed",{name:e.name,item:e.item,value:e.value}),!0}isElementValid(e,t=!0,i={status:void 0}){return null!=e&&(i.status=void 0,text.isStatus(e.error)&&"invalid"===e.error.status?!(i.status="invalid"):!0!==e.require||(this.isElementEffectivelyVisible(e)?!!this.isElementValueDefined(e)||!(i.status="missing"):t))}isElementEffectivelyVisible(e){if(null==e)return!1;var t=this.getParentSection(e);return(!t||!1!==t.visible)&&!1!==e.visible}isElementValueDefined(e){if(null==e)return!1;if("CheckBox"===e.type)return!0;var t=e.current;if(null!=t)return!0;t=e.value;if(null!=t&&""!==t)return!0;t=e.label;if(null!=t&&""!==t)return!0;var i=e.items;if(null!=i)for(const r in i){var s=i[r];if(null!=s&&!0===s.checked)return!0}return!1}trap(e){switch(e.type){case"populate":case"load":break;default:return!1}var t=e.name;const i=this.find(t);if(void 0===i||null===i)return!1;e=i.dependsOn;if("string"!=typeof e)return!1;e=this.find(e);return i.enabled=this.isElementEffectivelyVisible(e)&&this.isElementValueDefined(e),this.invalidate(t),!i.enabled}cascade(e){var t=this.find(e);if(null==t||!1===t.dependsOn)return!1;const i={[e]:!0};var s=sort(this.form.elements);for(const n in s){const o=s[n];var r=o.dependsOn;if("string"==typeof r){const a=this.find(r);void 0!==a&&"string"!=typeof a.dependsOn&&(a.dependsOn=!0),!0===i[r]&&(i[n]=!0,o.checked=!1,o.current=void 0,o.label=void 0,o.items=void 0,o.value=void 0,this.invalidate(n),this.enqueue("populate",{name:n}))}else o.dependsOn=!1}return!0}click(e){var t=this.form.elements[e.name];return null!=t&&"ButtonBar"==t.type&&this.validate(e)}hydrate(e){for(const t in sort(this.form.elements))this.enqueue("populate",{name:t}),this.enqueue("load",{name:t});return!0}shouldTriggerValidation(e){var t=this.find(e.name);if(null!=t&&"string"==typeof e.value){e=e.item;if("string"!=typeof e)return!0===t.validates;t=t.items;if(null!=t){e=t[e];if(null!=e)return!0===e.validates}}}validate(e){var t=this.shouldTriggerValidation(e);if(!0!==t)return!1===t&&(this.enqueue("end",{name:e.name,item:e.item,value:e.value,routingKey:"end"}),!0);{const r=this.errors={};var i=sort(this.form.elements);for(const n in i){var s=i[n];null!=s&&(r[n]=void 0,this.enqueue("validate",{name:n}))}return this.enqueue("verify",{name:e.name,item:e.item,value:e.value,routingKey:"verify"}),!0}}verify(e){var t=e.name,i=this.form.elements[t],e={status:void 0};return!this.isElementValid(i,!0,e)&&(e.status&&(this.errors[t]={status:e.status}),!1===this.nextFocus&&this.focus(t),!0)}suggest(e){const t=this.form.elements[e.name];return void 0!==t&&null!==t&&(t.items={message:{label:{status:"trivial"},enabled:!1}},this.invalidate(e.name),!0)}submit(e){return!this.hasErrors()&&(this.enqueue("submit",{name:e.name,item:e.item,value:e.value}),!0)}hasErrors(){var e=this.errors;for(const i in e){var t=e[i];if(null!=t)return!0}return!1}find(e){if(null!=e)return"string"==typeof(e="object"==typeof e?e.name:e)?this.form.elements[e]:void 0}findName(e){for(const t in this.form.elements)if(this.form.elements[t]===e)return t}coerceNumber(e){var t=this.deriveLocale();return new NumberParser(t).parse(e)}formatNumber(e,t){return null!=t&&t.locale||((t=t||{}).locale=this.deriveLocale()),format(t,e)}renderCustom(e,t){if(e instanceof FormComponent)return renderers.element.renderCustom(e,t)}renderState(e,t,i){return!1}deriveCalendar(e){return Calendar.useNative()}deriveTimeZone(){return ensureTimeZone()}getParentSection(e){e=e.section;if(e){e="string"==typeof e?e:e.name;return this.form.elements[e]}}isSectionCollapsed(e){return!(!e||"Section"!==e.type||"collapsible-section"!==e.format&&"accordion-section"!==e.format)&&!0===e.collapsed}isElementPositionBeforeLastFocused(e){var t,i=this.lastFocus;if(e&&i&&void 0!==i.rowNumber&&void 0!==i.rowIndex){e=null===(t=this.form.elements)||void 0===t?void 0:t[e];if(e)return void 0!==e.rowNumber&&void 0!==e.rowIndex?e.rowNumber<i.rowNumber||e.rowNumber===i.rowNumber&&e.rowIndex<i.rowIndex:e.index<i.rowNumber||e.index===i.rowNumber&&0<i.rowIndex}return!1}setLastFocus(e,t){this.lastFocus={target:e},t&&(this.lastFocus.name=t,(t=null===(e=this.form.elements)||void 0===e?void 0:e[t])&&(void 0!==t.rowNumber&&void 0!==t.rowIndex?(this.lastFocus.rowNumber=t.rowNumber,this.lastFocus.rowIndex=t.rowIndex):(this.lastFocus.rowNumber=t.index,this.lastFocus.rowIndex=0)))}isSection(e){return"Section"===(null==e?void 0:e.type)}isAccordionSection(e){return this.isSection(e)&&"accordion-section"===e.format}getAllSectionElements(){const e={};for(const i in this.form.elements){var t=this.form.elements[i];this.isSection(t)&&(e[i]=t)}return e}getMutuallyExclusiveSectionElements(t){let i=this.mutuallyExclusiveSections[t];if(!i){var e=this.find(t);if(!this.isAccordionSection(e))return{};i={[t]:e};e=this.getAllSectionElements();const n=Object.keys(sort(e,e=>e.rowNumber));t=n.indexOf(t);for(let e=t-1;0<=e;e--){const o=n[e];var s=this.find(o);if(!this.isAccordionSection(s))break;i[o]=s}for(let e=t+1;e<n.length;e++){const o=n[e];var r=this.find(o);if(!this.isAccordionSection(r))break;i[o]=r}Object.keys(i).forEach(e=>{this.mutuallyExclusiveSections[e]=i})}return i}updateAccordionSections(t){const i=this.getMutuallyExclusiveSectionElements(t);Object.keys(i).forEach(e=>{i[e].collapsed=e!==t}),presenter.refreshForm(this,this.container)}}export{defs,FormHost};
1
+ import moment from"moment-timezone";import{Task}from"../Task.js";import{DEFAULT_LOCALE}from"../constants.js";import Bluebird from"../deps/bluebird_fork.js";import{Calendar}from"./Calendar.js";import{FormComponent}from"./FormComponent.js";import*as defs from"./FormDefinition.js";import NumberParser from"./NumberParser.js";import{format}from"./numberFormatter.js";import*as presenter from"./presenter.js";import*as renderers from"./renderers.js";import{CSS}from"./styles/stock.js";import{addStyleToDocument,sort,text}from"./utils.js";const guid="C0166F74-982A-464E-9FB6-9605CB7649C1:",eventName=guid+"FormEvent";function createEvent(e,t){return new CustomEvent(e,{bubbles:!1,cancelable:!1,detail:t})}function ensureTimeZone(){let e=moment.tz.names[0];return void 0===e&&moment.tz.setDefault(e=moment.tz.guess()),e}function overlay(i,s){switch(typeof i){case"boolean":case"number":case"string":return i;case"object":break;default:return s}if(null===i)return s;if(i instanceof Array){let e=s;void 0!==e&&null!==e||(e=[]);let t=0;for(const n of i){var r=overlay(n,e[t]);void 0!==r&&(t<i.length?e[t]=r:e.push(r),++t)}return e}let e=s;void 0===e&&(e={});for(const t in i)e[t]=overlay(i[t],e[t]);return e}function createSubscription(e){function t(){return void 0!==e&&(t.active=!1,e(),!0)}return t.active=!0,t}let staticStyle=void 0;class FormHost{constructor(){this.form={defaults:{},elements:{}},this.errors={},this.refs={},this.enabled=!1,this.visible=!1,this.dismiss=!1,this.custom=!1,this.container=document.createElement("div"),this.eventIndex=0,this.eventQueue=[],this.mutuallyExclusiveSections={},this.nextFocus=!1,this.nextRefresh=!1,this.style=void 0}deriveLocale(){return DEFAULT_LOCALE}mount(){var e=this.container,t=e.parentNode;null==t&&document.body.appendChild(e),this.update()}unmount(){var e=this.container;const t=e.parentNode;void 0!==t&&null!==t&&t.removeChild(e)}observeFocus(e){this.enabled&&e instanceof HTMLElement&&(this.lastFocus&&this.lastFocus.target===e||this.setLastFocus(e))}focus(e){!0===(e=null==e?!1:e)&&(this.lastFocus=void 0),!1===e&&!1===(e=this.nextFocus)&&(e=!0),this.nextFocus=e,this.invalidate(!0!==e?e:void 0)}show(){const e=this.container;if(void 0===e)return!1;this.custom||void 0!==this.focusObserver||e.addEventListener("focus",this.focusObserver=e=>this.observeFocus(e.target),!0),this.enabled||(this.nextRefresh=!0,this.focus());const t=[];var i,s=this.errors;for(const r in s){const n=this.form.elements[r];void 0!==n&&null!==n&&(n.error=s[r],this.invalidate(r),!1!==n.visible&&(i=this.getParentSection(n),this.isSectionCollapsed(i)&&t.push(i)))}return 0<t.length&&(t.forEach(e=>{var t;this.isAccordionSection(e)?(t=this.findName(e))&&this.updateAccordionSections(t):e.collapsed=!1}),this.invalidate()),this.errors={},this.idle(),!1!==this.nextRefresh&&(this.enabled=!0,this.visible=!0,this.mount()),this.enabled}spin(){return void 0!==this.container&&(this.idle(),this.visible&&!this.enabled||(this.nextRefresh=!0,this.enabled=!1,this.visible=!0,this.mount()),this.visible)}hide(){return void 0!==this.container&&(this.idle(),this.visible&&(this.enabled=!1,this.visible=!1,this.unmount()),!0)}dispose(){if(this.dismiss)return!1;{this.dismiss=!0;const t=this.container;t.dispatchEvent(createEvent(eventName));var e=this.focusObserver;return void 0!==e&&t.removeEventListener("focus",e,!0),this.idle(),this.unmount(),this.refs={},presenter.releaseForm(this.container),this.container=void 0,this.lastFocus=void 0,!(this.eventTask=void 0)}}renderFocus(e,t){var i=this.nextFocus;if(this.enabled&&e instanceof HTMLElement)if(!1!==i)if(void 0!==t){if(t===i||!0===i&&void 0===this.lastFocus)return this.nextFocus=!1,this.setLastFocus(e,t),e.focus(),!0}else{const s=this.lastFocus?.target;if(!0===i&&s instanceof HTMLElement&&e.contains(s))return this.nextFocus=!1,s.focus(),!0}else if(!1===i&&t&&t!==this.lastFocus?.name&&this.isElementPositionBeforeLastFocused(t))return this.setLastFocus(e,t),e.focus(),!0;return!1}renderHtml(e,t){return"string"==typeof e?text.textToHtml(e):text.isMarkdown(e)?text.markdownToHtml(e.markdown,t):""}renderText(e){return"string"==typeof e?e:text.isMarkdown(e)?text.markdownToText(e.markdown):""}renderStyle(e){return"string"==typeof e?addStyleToDocument(e):staticStyle=staticStyle||addStyleToDocument(CSS)}renderVisual(e){return presenter.render(e)||presenter.renderNone(e)}qualifyDefault(e){var t=sort(this.form.elements);for(const n in t){var i=t[n];if(null!=i&&!1!==i.visible&&i.enabled){if(i.default)return e.value=i.value,n;var s=sort(i.items);if(null!=s)for(const o in s){var r=s[o];if(null!=r&&r.visible&&r.enabled&&r.default)return e.item=o,e.value=r.value,n}}}}qualify(e,t){var i;return null==t&&(t={}),"clicked"===e&&void 0===t.name&&(t.name=this.qualifyDefault(t)),t.type=e,void 0===t.routingKey&&(i=t.name,t.routingKey=void 0!==i?e+"$"+i:e),t}post(e,t){t=this.publish(e,t);const i=this.container;void 0!==i&&i.dispatchEvent(createEvent(eventName,t))}subscribe(i){const e=this.container;if(void 0===e)return createSubscription();const s=function(){i=void 0,e.removeEventListener(eventName,t)},t=function(e){const t=e.detail;void 0!==t?Bluebird.resolve().then(function(){"function"==typeof i&&i(t)}):s()};return e.addEventListener(eventName,t),createSubscription(s)}refresh(e){this.custom||("string"==typeof e?(e=this.refs[e],presenter.refresh(e)):(void 0===this.style&&(this.style=this.renderStyle()),this.refs={},presenter.refreshForm(this,this.container)))}invalidate(e){const t=this.nextRefresh;"string"==typeof e&&!0!==t&&(!1===t?this.nextRefresh={[e]:!0}:t[e]=!0),void 0!==e&&!0!==e||(this.nextRefresh=!0),!1===e&&!1===t&&(this.nextRefresh={})}update(){var e=this.nextRefresh;if(!0===e&&(this.nextRefresh=!1,this.refresh()),"object"==typeof e){this.nextRefresh=!1;for(const t in e)!0===e[t]&&this.refresh(t)}}idle(){const e=this.timerHandle;void 0!==e&&(this.timerHandle=void 0,e())}busy(){if(void 0===this.timerHandle&&void 0!==this.container){let e=setTimeout(()=>this.spin());this.timerHandle=function(){void 0!==e&&(clearTimeout(e),e=void 0)}}}publish(e,t){return this.enabled?(t=this.enqueue(e,t),0<this.eventQueue.length&&this.spin(),t):this.qualify(e,t)}enqueue(e,t){return t=this.qualify(e,t),void 0!==this.eventTask?(this.resolveEvent(t),this.eventTask=void 0):this.eventQueue.push(t),t}dequeue(){const e=this.eventQueue;if(0<e.length){var t=this.eventIndex,i=e[t++];return t>=e.length?e.length=this.eventIndex=0:this.eventIndex=t,i}}observe(){const t=this;return Bluebird.attempt(function(){if(void 0!==t.eventTask)return t.eventTask;var e=t.dequeue();return void 0!==e?e:t.show()?(t.eventTask=new Task(e=>{t.resolveEvent=e}),t.eventTask):void 0})}load(e,t){if(void 0===this.container)return!1;if(this.eventQueue.length=this.eventIndex=0,this.eventTask=void 0,this.errors={},this.lastFocus=void 0,this.nextFocus=!0,this.nextRefresh=!0,this.enqueue("load"),this.enqueue("prepare"),null!=e){e=overlay(e,e={defaults:{},elements:{}});this.form=overlay(t,e);for(const i in this.form.elements){let e=this.form.elements[i];if(e=overlay(e,{showFilter:!1,checked:!1,enabled:!0,hoisted:!1,visible:!0,overlay:!1,default:!1,validates:!1,readOnly:!1,require:!1,autoActivate:!1}),e.items)for(const s in e.items)e.items[s]=overlay(e.items[s],{enabled:!0,checked:!1,visible:!0,default:!1,validates:!1});this.form.elements[i]=e}}return!0}route(e){switch(e.type){case"changed":return this.cascade(e.name);case"prepare":return this.hydrate(e);case"suggest":return this.suggest(e);case"clicked":return this.click(e);case"validate":return this.verify(e);case"verify":return this.submit(e);case"checked":return this.changed(e)}return!1}changed(e){return this.enqueue("changed",{name:e.name,item:e.item,value:e.value}),!0}isElementValid(e,t=!0,i={status:void 0}){return null!=e&&(i.status=void 0,text.isStatus(e.error)&&"invalid"===e.error.status?!(i.status="invalid"):!0!==e.require||(this.isElementEffectivelyVisible(e)?!!this.isElementValueDefined(e)||!(i.status="missing"):t))}isElementEffectivelyVisible(e){return null!=e&&(!1!==this.getParentSection(e)?.visible&&!1!==e.visible)}isElementValueDefined(e){if(null==e)return!1;if("CheckBox"===e.type)return!0;var t=e.current;if(null!=t)return!0;t=e.value;if(null!=t&&""!==t)return!0;t=e.label;if(null!=t&&""!==t)return!0;var i=e.items;if(null!=i)for(const r in i){var s=i[r];if(null!=s&&!0===s.checked)return!0}return!1}trap(e){switch(e.type){case"populate":case"load":break;default:return!1}var t=e.name;const i=this.find(t);if(void 0===i||null===i)return!1;e=i.dependsOn;if("string"!=typeof e)return!1;e=this.find(e);return i.enabled=this.isElementEffectivelyVisible(e)&&this.isElementValueDefined(e),this.invalidate(t),!i.enabled}cascade(e){var t=this.find(e);if(null==t||!1===t.dependsOn)return!1;const i={[e]:!0};var s=sort(this.form.elements);for(const n in s){const o=s[n];var r=o.dependsOn;if("string"==typeof r){const a=this.find(r);void 0!==a&&"string"!=typeof a.dependsOn&&(a.dependsOn=!0),!0===i[r]&&(i[n]=!0,o.checked=!1,o.current=void 0,o.label=void 0,o.items=void 0,o.value=void 0,this.invalidate(n),this.enqueue("populate",{name:n}))}else o.dependsOn=!1}return!0}click(e){var t=this.form.elements[e.name];return null!=t&&"ButtonBar"==t.type&&this.validate(e)}hydrate(e){for(const t in sort(this.form.elements))this.enqueue("populate",{name:t}),this.enqueue("load",{name:t});return!0}shouldTriggerValidation(e){var t=this.find(e.name);if(null!=t&&"string"==typeof e.value){e=e.item;if("string"!=typeof e)return!0===t.validates;t=t.items;if(null!=t){e=t[e];if(null!=e)return!0===e.validates}}}validate(e){var t=this.shouldTriggerValidation(e);if(!0!==t)return!1===t&&(this.enqueue("end",{name:e.name,item:e.item,value:e.value,routingKey:"end"}),!0);{const r=this.errors={};var i=sort(this.form.elements);for(const n in i){var s=i[n];null!=s&&(r[n]=void 0,this.enqueue("validate",{name:n}))}return this.enqueue("verify",{name:e.name,item:e.item,value:e.value,routingKey:"verify"}),!0}}verify(e){var t=e.name,i=this.form.elements[t],e={status:void 0};return!this.isElementValid(i,!0,e)&&(e.status&&(this.errors[t]={status:e.status}),!1===this.nextFocus&&this.focus(t),!0)}suggest(e){const t=this.form.elements[e.name];return void 0!==t&&null!==t&&(t.items={message:{label:{status:"trivial"},enabled:!1}},this.invalidate(e.name),!0)}submit(e){return!this.hasErrors()&&(this.enqueue("submit",{name:e.name,item:e.item,value:e.value}),!0)}hasErrors(){var e=this.errors;for(const i in e){var t=e[i];if(null!=t)return!0}return!1}find(e){if(null!=e)return"string"==typeof(e="object"==typeof e?e.name:e)?this.form.elements[e]:void 0}findName(e){for(const t in this.form.elements)if(this.form.elements[t]===e)return t}coerceNumber(e){var t=this.deriveLocale();return new NumberParser(t).parse(e)}formatNumber(e,t){return t?.locale||((t=t||{}).locale=this.deriveLocale()),format(t,e)}renderCustom(e,t){if(e instanceof FormComponent)return renderers.element.renderCustom(e,t)}renderState(e,t,i){return!1}deriveCalendar(e){return Calendar.useNative()}deriveTimeZone(){return ensureTimeZone()}getParentSection(e){e=e.section;if(e){e="string"==typeof e?e:e.name;return this.form.elements[e]}}isSectionCollapsed(e){return!(!e||"Section"!==e.type||"collapsible-section"!==e.format&&"accordion-section"!==e.format)&&!0===e.collapsed}isElementPositionBeforeLastFocused(e){var t=this.lastFocus;if(e&&void 0!==t?.rowNumber&&void 0!==t.rowIndex){e=this.form.elements?.[e];if(e)return void 0!==e.rowNumber&&void 0!==e.rowIndex?e.rowNumber<t.rowNumber||e.rowNumber===t.rowNumber&&e.rowIndex<t.rowIndex:e.index<t.rowNumber||e.index===t.rowNumber&&0<t.rowIndex}return!1}setLastFocus(e,t){this.lastFocus={target:e},t&&(this.lastFocus.name=t,(t=this.form.elements?.[t])&&(void 0!==t.rowNumber&&void 0!==t.rowIndex?(this.lastFocus.rowNumber=t.rowNumber,this.lastFocus.rowIndex=t.rowIndex):(this.lastFocus.rowNumber=t.index,this.lastFocus.rowIndex=0)))}isSection(e){return"Section"===e?.type}isAccordionSection(e){return this.isSection(e)&&"accordion-section"===e.format}getAllSectionElements(){const e={};for(const i in this.form.elements){var t=this.form.elements[i];this.isSection(t)&&(e[i]=t)}return e}getMutuallyExclusiveSectionElements(t){let i=this.mutuallyExclusiveSections[t];if(!i){var e=this.find(t);if(!this.isAccordionSection(e))return{};i={[t]:e};e=this.getAllSectionElements();const n=Object.keys(sort(e,e=>e.rowNumber));t=n.indexOf(t);for(let e=t-1;0<=e;e--){const o=n[e];var s=this.find(o);if(!this.isAccordionSection(s))break;i[o]=s}for(let e=t+1;e<n.length;e++){const o=n[e];var r=this.find(o);if(!this.isAccordionSection(r))break;i[o]=r}Object.keys(i).forEach(e=>{this.mutuallyExclusiveSections[e]=i})}return i}updateAccordionSections(t){const i=this.getMutuallyExclusiveSectionElements(t);Object.keys(i).forEach(e=>{i[e].collapsed=e!==t}),presenter.refreshForm(this,this.container)}}export{defs,FormHost};
@@ -1 +1 @@
1
- import React from"react";function renderArrowHead(){return React.createElement("svg",{className:"arrowHead",viewBox:"0 0 200 200",preserveAspectRatio:"none"},React.createElement("path",{d:"M 0 0 V 200 L 200 100 Z"}))}function renderArrowRight(){return React.createElement("svg",{className:"arrowRight",viewBox:"0 0 24 24",preserveAspectRatio:"none"},React.createElement("path",{d:"M20 12l-8-8-1.4 1.4 5.6 5.6H4v2h12.2l-5.6 5.6L12 20l8-8z"}))}function renderArrowRollup(){return React.createElement("svg",{className:"arrowRollup",viewBox:"0 0 200 200",preserveAspectRatio:"none"},React.createElement("circle",{cx:"100",cy:"100",r:"100"}),React.createElement("polyline",{points:"50 100 100 50 150 100"}),React.createElement("polyline",{points:"50 150 100 100 150 150"}))}export{renderArrowHead,renderArrowRight,renderArrowRollup};
1
+ import*as React from"react";function renderArrowHead(){return React.createElement("svg",{className:"arrowHead",viewBox:"0 0 200 200",preserveAspectRatio:"none"},React.createElement("path",{d:"M 0 0 V 200 L 200 100 Z"}))}function renderArrowRight(){return React.createElement("svg",{className:"arrowRight",viewBox:"0 0 24 24",preserveAspectRatio:"none"},React.createElement("path",{d:"M20 12l-8-8-1.4 1.4 5.6 5.6H4v2h12.2l-5.6 5.6L12 20l8-8z"}))}function renderArrowRollup(){return React.createElement("svg",{className:"arrowRollup",viewBox:"0 0 200 200",preserveAspectRatio:"none"},React.createElement("circle",{cx:"100",cy:"100",r:"100"}),React.createElement("polyline",{points:"50 100 100 50 150 100"}),React.createElement("polyline",{points:"50 150 100 100 150 150"}))}export{renderArrowHead,renderArrowRight,renderArrowRollup};