@openmrs/ngx-formentry 3.2.1-pre.244 → 3.2.1-pre.268

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 (427) hide show
  1. package/.editorconfig +13 -0
  2. package/.eslintrc.json +45 -0
  3. package/.prettierignore +40 -0
  4. package/.prettierrc +6 -0
  5. package/.turbo/turbo-build:lib.log +25 -0
  6. package/.yarn/plugins/@yarnpkg/plugin-version.cjs +550 -0
  7. package/.yarn/versions/ac1219f3.yml +0 -0
  8. package/README.md +429 -0
  9. package/angular.json +164 -0
  10. package/{components → dist/ngx-formentry/components}/custom-component-wrapper/custom-component-wrapper..module.d.ts +2 -1
  11. package/{components → dist/ngx-formentry/components}/custom-control-wrapper/custom-control-wrapper..module.d.ts +2 -1
  12. package/{components → dist/ngx-formentry/components}/date-time-picker/date-time-picker.module.d.ts +2 -1
  13. package/{components → dist/ngx-formentry/components}/ngx-datetime-picker/ngx-datetime-picker.module.d.ts +2 -1
  14. package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/date-time-picker-intl.service.d.ts +7 -4
  15. package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/date-time.module.d.ts +2 -1
  16. package/{components → dist/ngx-formentry/components}/ngx-remote-select/ngx-remote-select.module.d.ts +2 -1
  17. package/{esm2015/components/afe-ng-select.component.js → dist/ngx-formentry/esm2020/components/afe-ng-select.component.mjs} +4 -4
  18. package/dist/ngx-formentry/esm2020/components/appointments-overview/appointments-overview.component.mjs +116 -0
  19. package/{esm2015/components/check-box/checkbox.component.js → dist/ngx-formentry/esm2020/components/check-box/checkbox.component.mjs} +6 -10
  20. package/{esm2015/components/check-box/checkbox.module.js → dist/ngx-formentry/esm2020/components/check-box/checkbox.module.mjs} +5 -5
  21. package/dist/ngx-formentry/esm2020/components/custom-component-wrapper/custom-component-wrapper..module.mjs +22 -0
  22. package/dist/ngx-formentry/esm2020/components/custom-component-wrapper/custom-component-wrapper.component.mjs +21 -0
  23. package/dist/ngx-formentry/esm2020/components/custom-control-wrapper/custom-control-wrapper..module.mjs +23 -0
  24. package/{esm2015/components/custom-control-wrapper/custom-control-wrapper.component.js → dist/ngx-formentry/esm2020/components/custom-control-wrapper/custom-control-wrapper.component.mjs} +10 -15
  25. package/dist/ngx-formentry/esm2020/components/date-time-picker/date-picker/date-picker.component.mjs +188 -0
  26. package/dist/ngx-formentry/esm2020/components/date-time-picker/date-time-picker.component.mjs +115 -0
  27. package/dist/ngx-formentry/esm2020/components/date-time-picker/date-time-picker.module.mjs +48 -0
  28. package/dist/ngx-formentry/esm2020/components/date-time-picker/picker-modal/modal.component.mjs +25 -0
  29. package/{esm2015/components/date-time-picker/pipes/moment.pipe.js → dist/ngx-formentry/esm2020/components/date-time-picker/pipes/moment.pipe.mjs} +4 -4
  30. package/dist/ngx-formentry/esm2020/components/date-time-picker/time-picker/time-picker.component.mjs +121 -0
  31. package/{esm2015/components/file-upload/file-upload.component.js → dist/ngx-formentry/esm2020/components/file-upload/file-upload.component.mjs} +8 -13
  32. package/{esm2015/components/file-upload/file-upload.module.js → dist/ngx-formentry/esm2020/components/file-upload/file-upload.module.mjs} +5 -5
  33. package/dist/ngx-formentry/esm2020/components/file-upload/secure.pipe.mjs +101 -0
  34. package/{esm2015/components/input/input.directive.js → dist/ngx-formentry/esm2020/components/input/input.directive.mjs} +4 -4
  35. package/{esm2015/components/input/input.module.js → dist/ngx-formentry/esm2020/components/input/input.module.mjs} +5 -5
  36. package/{esm2015/components/input/label.component.js → dist/ngx-formentry/esm2020/components/input/label.component.mjs} +4 -4
  37. package/{esm2015/components/input/text-area.directive.js → dist/ngx-formentry/esm2020/components/input/text-area.directive.mjs} +4 -4
  38. package/dist/ngx-formentry/esm2020/components/ngx-datetime-picker/ngx-datetime-picker.component.mjs +76 -0
  39. package/dist/ngx-formentry/esm2020/components/ngx-datetime-picker/ngx-datetime-picker.module.mjs +42 -0
  40. package/{esm2015/components/ngx-pick-datetime/lib/date-time/adapter/native-date-time-adapter.class.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/adapter/native-date-time-adapter.class.mjs} +5 -5
  41. package/{esm2015/components/ngx-pick-datetime/lib/date-time/adapter/native-date-time.module.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/adapter/native-date-time.module.mjs} +9 -9
  42. package/dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/calendar-body.component.mjs +142 -0
  43. package/{esm2015/components/ngx-pick-datetime/lib/date-time/calendar-month-view.component.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/calendar-month-view.component.mjs} +5 -11
  44. package/dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/calendar-multi-year-view.component.mjs +373 -0
  45. package/{esm2015/components/ngx-pick-datetime/lib/date-time/calendar-year-view.component.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/calendar-year-view.component.mjs} +5 -11
  46. package/dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/calendar.component.mjs +342 -0
  47. package/{esm2015/components/ngx-pick-datetime/lib/date-time/date-time-inline.component.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/date-time-inline.component.mjs} +5 -11
  48. package/dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/date-time-picker-container.component.mjs +392 -0
  49. package/{esm2015/components/ngx-pick-datetime/lib/date-time/date-time-picker-input.directive.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/date-time-picker-input.directive.mjs} +4 -4
  50. package/dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/date-time-picker-intl.service.mjs +65 -0
  51. package/{esm2015/components/ngx-pick-datetime/lib/date-time/date-time-picker-trigger.directive.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/date-time-picker-trigger.directive.mjs} +4 -4
  52. package/{esm2015/components/ngx-pick-datetime/lib/date-time/date-time-picker.component.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/date-time-picker.component.mjs} +5 -11
  53. package/{esm2015/components/ngx-pick-datetime/lib/date-time/date-time.class.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/date-time.class.mjs} +4 -4
  54. package/dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/date-time.module.mjs +99 -0
  55. package/{esm2015/components/ngx-pick-datetime/lib/date-time/numberedFixLen.pipe.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/numberedFixLen.pipe.mjs} +4 -4
  56. package/dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/timer-box.component.mjs +90 -0
  57. package/dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/timer.component.mjs +292 -0
  58. package/{esm2015/components/ngx-pick-datetime/lib/dialog/dialog-container.component.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/dialog/dialog-container.component.mjs} +6 -10
  59. package/dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/dialog/dialog.module.mjs +26 -0
  60. package/{esm2015/components/ngx-pick-datetime/lib/dialog/dialog.service.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/dialog/dialog.service.mjs} +4 -4
  61. package/dist/ngx-formentry/esm2020/components/ngx-remote-select/ngx-remote-select.component.mjs +132 -0
  62. package/dist/ngx-formentry/esm2020/components/ngx-remote-select/ngx-remote-select.module.mjs +22 -0
  63. package/dist/ngx-formentry/esm2020/components/ngx-tabset/components/ngx-tab-set.component.mjs +72 -0
  64. package/dist/ngx-formentry/esm2020/components/ngx-tabset/components/tab.component.mjs +33 -0
  65. package/{esm2015/components/ngx-tabset/directives/hover-class.directive.js → dist/ngx-formentry/esm2020/components/ngx-tabset/directives/hover-class.directive.mjs} +4 -4
  66. package/{esm2015/components/ngx-tabset/modules/ngx-tabset.module.js → dist/ngx-formentry/esm2020/components/ngx-tabset/modules/ngx-tabset.module.mjs} +5 -5
  67. package/dist/ngx-formentry/esm2020/components/number-input/number-input.component.mjs +248 -0
  68. package/{esm2015/components/number-input/number-input.module.js → dist/ngx-formentry/esm2020/components/number-input/number-input.module.mjs} +5 -5
  69. package/{esm2015/components/number-input/number.directive.js → dist/ngx-formentry/esm2020/components/number-input/number.directive.mjs} +4 -4
  70. package/dist/ngx-formentry/esm2020/components/radio-button/radio.component.mjs +96 -0
  71. package/{esm2015/components/radio-button/radio.module.js → dist/ngx-formentry/esm2020/components/radio-button/radio.module.mjs} +5 -5
  72. package/{esm2015/components/select/optgroup.directive.js → dist/ngx-formentry/esm2020/components/select/optgroup.directive.mjs} +4 -4
  73. package/{esm2015/components/select/option.directive.js → dist/ngx-formentry/esm2020/components/select/option.directive.mjs} +4 -4
  74. package/dist/ngx-formentry/esm2020/components/select/select.component.mjs +182 -0
  75. package/{esm2015/components/select/select.module.js → dist/ngx-formentry/esm2020/components/select/select.module.mjs} +5 -5
  76. package/{esm2015/form-entry/data-sources/data-sources.js → dist/ngx-formentry/esm2020/form-entry/data-sources/data-sources.mjs} +4 -4
  77. package/{esm2015/form-entry/directives/collapse.directive.js → dist/ngx-formentry/esm2020/form-entry/directives/collapse.directive.mjs} +5 -5
  78. package/{esm2015/form-entry/directives/historical-value.directive.js → dist/ngx-formentry/esm2020/form-entry/directives/historical-value.directive.mjs} +4 -4
  79. package/dist/ngx-formentry/esm2020/form-entry/error-renderer/error-renderer.component.mjs +53 -0
  80. package/{esm2015/form-entry/expression-runner/expression-runner.js → dist/ngx-formentry/esm2020/form-entry/expression-runner/expression-runner.mjs} +6 -6
  81. package/{esm2015/form-entry/form-entry.module.js → dist/ngx-formentry/esm2020/form-entry/form-entry.module.mjs} +5 -5
  82. package/{esm2015/form-entry/form-factory/control-relations.factory.js → dist/ngx-formentry/esm2020/form-entry/form-factory/control-relations.factory.mjs} +4 -4
  83. package/dist/ngx-formentry/esm2020/form-entry/form-factory/form-control.service.mjs +118 -0
  84. package/dist/ngx-formentry/esm2020/form-entry/form-factory/form-node.mjs +99 -0
  85. package/dist/ngx-formentry/esm2020/form-entry/form-factory/form.factory.mjs +144 -0
  86. package/{esm2015/form-entry/form-factory/hiders-disablers.factory.js → dist/ngx-formentry/esm2020/form-entry/form-factory/hiders-disablers.factory.mjs} +4 -4
  87. package/dist/ngx-formentry/esm2020/form-entry/form-factory/question.factory.mjs +1000 -0
  88. package/{esm2015/form-entry/form-factory/show-messages.factory.js → dist/ngx-formentry/esm2020/form-entry/form-factory/show-messages.factory.mjs} +4 -4
  89. package/dist/ngx-formentry/esm2020/form-entry/form-factory/validation.factory.mjs +169 -0
  90. package/dist/ngx-formentry/esm2020/form-entry/form-renderer/form-renderer.component.mjs +264 -0
  91. package/{esm2015/form-entry/helpers/historical-expression-helper-service.js → dist/ngx-formentry/esm2020/form-entry/helpers/historical-expression-helper-service.mjs} +4 -4
  92. package/{esm2015/form-entry/helpers/historical-field-helper-service.js → dist/ngx-formentry/esm2020/form-entry/helpers/historical-field-helper-service.mjs} +4 -4
  93. package/{esm2015/form-entry/helpers/js-expression-helper.js → dist/ngx-formentry/esm2020/form-entry/helpers/js-expression-helper.mjs} +7 -11
  94. package/dist/ngx-formentry/esm2020/form-entry/pipes/time-ago.pipe.mjs +110 -0
  95. package/{esm2015/form-entry/services/debug-mode.service.js → dist/ngx-formentry/esm2020/form-entry/services/debug-mode.service.mjs} +4 -4
  96. package/{esm2015/form-entry/services/form-errors.service.js → dist/ngx-formentry/esm2020/form-entry/services/form-errors.service.mjs} +4 -4
  97. package/{esm2015/form-entry/services/form-schema-compiler.service.js → dist/ngx-formentry/esm2020/form-entry/services/form-schema-compiler.service.mjs} +4 -4
  98. package/{esm2015/form-entry/services/historical-encounter-data.service.js → dist/ngx-formentry/esm2020/form-entry/services/historical-encounter-data.service.mjs} +4 -4
  99. package/dist/ngx-formentry/esm2020/form-entry/value-adapters/diagnosis.adapter.mjs +144 -0
  100. package/dist/ngx-formentry/esm2020/form-entry/value-adapters/encounter.adapter.mjs +186 -0
  101. package/dist/ngx-formentry/esm2020/form-entry/value-adapters/obs-adapter-helper.mjs +533 -0
  102. package/{esm2015/form-entry/value-adapters/obs.adapter.js → dist/ngx-formentry/esm2020/form-entry/value-adapters/obs.adapter.mjs} +4 -4
  103. package/{esm2015/form-entry/value-adapters/order.adapter.js → dist/ngx-formentry/esm2020/form-entry/value-adapters/order.adapter.mjs} +4 -4
  104. package/{esm2015/form-entry/value-adapters/patient-identifier.adapter.js → dist/ngx-formentry/esm2020/form-entry/value-adapters/patient-identifier.adapter.mjs} +4 -4
  105. package/{esm2015/form-entry/value-adapters/person-attribute.adapter.js → dist/ngx-formentry/esm2020/form-entry/value-adapters/person-attribute.adapter.mjs} +4 -4
  106. package/{esm2015/shared.module.js → dist/ngx-formentry/esm2020/shared.module.mjs} +5 -5
  107. package/dist/ngx-formentry/fesm2015/openmrs-ngx-formentry.mjs +14714 -0
  108. package/dist/ngx-formentry/fesm2015/openmrs-ngx-formentry.mjs.map +1 -0
  109. package/{fesm2015/openmrs-ngx-formentry.js → dist/ngx-formentry/fesm2020/openmrs-ngx-formentry.mjs} +459 -589
  110. package/dist/ngx-formentry/fesm2020/openmrs-ngx-formentry.mjs.map +1 -0
  111. package/{form-entry → dist/ngx-formentry/form-entry}/form-factory/form-node.d.ts +3 -1
  112. package/{form-entry → dist/ngx-formentry/form-entry}/form-factory/form.factory.d.ts +3 -1
  113. package/{form-entry → dist/ngx-formentry/form-entry}/form-factory/validation.factory.d.ts +3 -1
  114. package/{form-entry → dist/ngx-formentry/form-entry}/pipes/time-ago.pipe.d.ts +4 -2
  115. package/dist/ngx-formentry/package.json +48 -0
  116. package/package.json +92 -26
  117. package/proxy.conf.json +6 -0
  118. package/scripts/build.sh +2 -0
  119. package/tsconfig.json +29 -0
  120. package/turbo.json +18 -0
  121. package/bundles/openmrs-ngx-formentry.umd.js +0 -16613
  122. package/bundles/openmrs-ngx-formentry.umd.js.map +0 -1
  123. package/esm2015/components/appointments-overview/appointments-overview.component.js +0 -121
  124. package/esm2015/components/custom-component-wrapper/custom-component-wrapper..module.js +0 -21
  125. package/esm2015/components/custom-component-wrapper/custom-component-wrapper.component.js +0 -23
  126. package/esm2015/components/custom-control-wrapper/custom-control-wrapper..module.js +0 -22
  127. package/esm2015/components/date-time-picker/date-picker/date-picker.component.js +0 -192
  128. package/esm2015/components/date-time-picker/date-time-picker.component.js +0 -119
  129. package/esm2015/components/date-time-picker/date-time-picker.module.js +0 -47
  130. package/esm2015/components/date-time-picker/picker-modal/modal.component.js +0 -31
  131. package/esm2015/components/date-time-picker/time-picker/time-picker.component.js +0 -125
  132. package/esm2015/components/file-upload/secure.pipe.js +0 -101
  133. package/esm2015/components/ngx-datetime-picker/ngx-datetime-picker.component.js +0 -80
  134. package/esm2015/components/ngx-datetime-picker/ngx-datetime-picker.module.js +0 -38
  135. package/esm2015/components/ngx-pick-datetime/lib/date-time/calendar-body.component.js +0 -149
  136. package/esm2015/components/ngx-pick-datetime/lib/date-time/calendar-multi-year-view.component.js +0 -378
  137. package/esm2015/components/ngx-pick-datetime/lib/date-time/calendar.component.js +0 -348
  138. package/esm2015/components/ngx-pick-datetime/lib/date-time/date-time-picker-container.component.js +0 -399
  139. package/esm2015/components/ngx-pick-datetime/lib/date-time/date-time-picker-intl.service.js +0 -62
  140. package/esm2015/components/ngx-pick-datetime/lib/date-time/date-time.module.js +0 -83
  141. package/esm2015/components/ngx-pick-datetime/lib/date-time/timer-box.component.js +0 -96
  142. package/esm2015/components/ngx-pick-datetime/lib/date-time/timer.component.js +0 -298
  143. package/esm2015/components/ngx-pick-datetime/lib/dialog/dialog.module.js +0 -27
  144. package/esm2015/components/ngx-remote-select/ngx-remote-select.component.js +0 -135
  145. package/esm2015/components/ngx-remote-select/ngx-remote-select.module.js +0 -21
  146. package/esm2015/components/ngx-tabset/components/ngx-tab-set.component.js +0 -76
  147. package/esm2015/components/ngx-tabset/components/tab.component.js +0 -37
  148. package/esm2015/components/number-input/number-input.component.js +0 -252
  149. package/esm2015/components/radio-button/radio.component.js +0 -102
  150. package/esm2015/components/select/select.component.js +0 -187
  151. package/esm2015/form-entry/error-renderer/error-renderer.component.js +0 -56
  152. package/esm2015/form-entry/form-factory/form-control.service.js +0 -119
  153. package/esm2015/form-entry/form-factory/form-node.js +0 -96
  154. package/esm2015/form-entry/form-factory/form.factory.js +0 -141
  155. package/esm2015/form-entry/form-factory/question.factory.js +0 -1001
  156. package/esm2015/form-entry/form-factory/validation.factory.js +0 -154
  157. package/esm2015/form-entry/form-renderer/form-renderer.component.js +0 -270
  158. package/esm2015/form-entry/pipes/time-ago.pipe.js +0 -107
  159. package/esm2015/form-entry/utils/messages.js +0 -12
  160. package/esm2015/form-entry/value-adapters/diagnosis.adapter.js +0 -140
  161. package/esm2015/form-entry/value-adapters/encounter.adapter.js +0 -187
  162. package/esm2015/form-entry/value-adapters/obs-adapter-helper.js +0 -536
  163. package/fesm2015/openmrs-ngx-formentry.js.map +0 -1
  164. package/form-entry/utils/messages.d.ts +0 -11
  165. /package/{abstract-controls-extension → dist/ngx-formentry/abstract-controls-extension}/afe-control-type.d.ts +0 -0
  166. /package/{abstract-controls-extension → dist/ngx-formentry/abstract-controls-extension}/afe-form-array.d.ts +0 -0
  167. /package/{abstract-controls-extension → dist/ngx-formentry/abstract-controls-extension}/afe-form-control.d.ts +0 -0
  168. /package/{abstract-controls-extension → dist/ngx-formentry/abstract-controls-extension}/afe-form-group.d.ts +0 -0
  169. /package/{abstract-controls-extension → dist/ngx-formentry/abstract-controls-extension}/control-extensions.d.ts +0 -0
  170. /package/{abstract-controls-extension → dist/ngx-formentry/abstract-controls-extension}/index.d.ts +0 -0
  171. /package/{abstract-controls-extension → dist/ngx-formentry/abstract-controls-extension}/value-change.listener.d.ts +0 -0
  172. /package/{change-tracking → dist/ngx-formentry/change-tracking}/control-relation.d.ts +0 -0
  173. /package/{change-tracking → dist/ngx-formentry/change-tracking}/control-relations.d.ts +0 -0
  174. /package/{components → dist/ngx-formentry/components}/afe-ng-select.component.d.ts +0 -0
  175. /package/{components → dist/ngx-formentry/components}/appointments-overview/appointments-overview.component.d.ts +0 -0
  176. /package/{components → dist/ngx-formentry/components}/check-box/checkbox.component.d.ts +0 -0
  177. /package/{components → dist/ngx-formentry/components}/check-box/checkbox.module.d.ts +0 -0
  178. /package/{components → dist/ngx-formentry/components}/custom-component-wrapper/custom-component-wrapper.component.d.ts +0 -0
  179. /package/{components → dist/ngx-formentry/components}/custom-control-wrapper/custom-control-wrapper.component.d.ts +0 -0
  180. /package/{components → dist/ngx-formentry/components}/date-time-picker/date-picker/date-picker.component.d.ts +0 -0
  181. /package/{components → dist/ngx-formentry/components}/date-time-picker/date-time-picker.component.d.ts +0 -0
  182. /package/{components → dist/ngx-formentry/components}/date-time-picker/index.d.ts +0 -0
  183. /package/{components → dist/ngx-formentry/components}/date-time-picker/picker-modal/modal.component.d.ts +0 -0
  184. /package/{components → dist/ngx-formentry/components}/date-time-picker/pipes/moment.pipe.d.ts +0 -0
  185. /package/{components → dist/ngx-formentry/components}/date-time-picker/time-picker/time-picker.component.d.ts +0 -0
  186. /package/{components → dist/ngx-formentry/components}/file-upload/file-upload.component.d.ts +0 -0
  187. /package/{components → dist/ngx-formentry/components}/file-upload/file-upload.module.d.ts +0 -0
  188. /package/{components → dist/ngx-formentry/components}/file-upload/secure.pipe.d.ts +0 -0
  189. /package/{components → dist/ngx-formentry/components}/input/input.directive.d.ts +0 -0
  190. /package/{components → dist/ngx-formentry/components}/input/input.module.d.ts +0 -0
  191. /package/{components → dist/ngx-formentry/components}/input/label.component.d.ts +0 -0
  192. /package/{components → dist/ngx-formentry/components}/input/text-area.directive.d.ts +0 -0
  193. /package/{components → dist/ngx-formentry/components}/ngx-datetime-picker/ngx-datetime-picker.component.d.ts +0 -0
  194. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/adapter/date-time-adapter.class.d.ts +0 -0
  195. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/adapter/date-time-format.class.d.ts +0 -0
  196. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/adapter/native-date-time-adapter.class.d.ts +0 -0
  197. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/adapter/native-date-time-format.class.d.ts +0 -0
  198. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/adapter/native-date-time.module.d.ts +0 -0
  199. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/calendar-body.component.d.ts +0 -0
  200. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/calendar-month-view.component.d.ts +0 -0
  201. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/calendar-multi-year-view.component.d.ts +0 -0
  202. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/calendar-year-view.component.d.ts +0 -0
  203. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/calendar.component.d.ts +0 -0
  204. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/date-time-inline.component.d.ts +0 -0
  205. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/date-time-picker-container.component.d.ts +0 -0
  206. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/date-time-picker-input.directive.d.ts +0 -0
  207. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/date-time-picker-trigger.directive.d.ts +0 -0
  208. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/date-time-picker.animations.d.ts +0 -0
  209. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/date-time-picker.component.d.ts +0 -0
  210. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/date-time.class.d.ts +0 -0
  211. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/numberedFixLen.pipe.d.ts +0 -0
  212. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/timer-box.component.d.ts +0 -0
  213. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/date-time/timer.component.d.ts +0 -0
  214. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/dialog/dialog-config.class.d.ts +0 -0
  215. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/dialog/dialog-container.component.d.ts +0 -0
  216. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/dialog/dialog-ref.class.d.ts +0 -0
  217. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/dialog/dialog.module.d.ts +0 -0
  218. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/dialog/dialog.service.d.ts +0 -0
  219. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/utils/index.d.ts +0 -0
  220. /package/{components → dist/ngx-formentry/components}/ngx-pick-datetime/lib/utils/object.utils.d.ts +0 -0
  221. /package/{components → dist/ngx-formentry/components}/ngx-remote-select/ngx-remote-select.component.d.ts +0 -0
  222. /package/{components → dist/ngx-formentry/components}/ngx-tabset/components/ngx-tab-set.component.d.ts +0 -0
  223. /package/{components → dist/ngx-formentry/components}/ngx-tabset/components/tab.component.d.ts +0 -0
  224. /package/{components → dist/ngx-formentry/components}/ngx-tabset/directives/hover-class.directive.d.ts +0 -0
  225. /package/{components → dist/ngx-formentry/components}/ngx-tabset/modules/ngx-tabset.module.d.ts +0 -0
  226. /package/{components → dist/ngx-formentry/components}/number-input/number-input.component.d.ts +0 -0
  227. /package/{components → dist/ngx-formentry/components}/number-input/number-input.module.d.ts +0 -0
  228. /package/{components → dist/ngx-formentry/components}/number-input/number.directive.d.ts +0 -0
  229. /package/{components → dist/ngx-formentry/components}/radio-button/radio.component.d.ts +0 -0
  230. /package/{components → dist/ngx-formentry/components}/radio-button/radio.module.d.ts +0 -0
  231. /package/{components → dist/ngx-formentry/components}/select/optgroup.directive.d.ts +0 -0
  232. /package/{components → dist/ngx-formentry/components}/select/option.directive.d.ts +0 -0
  233. /package/{components → dist/ngx-formentry/components}/select/select.component.d.ts +0 -0
  234. /package/{components → dist/ngx-formentry/components}/select/select.module.d.ts +0 -0
  235. /package/{esm2015/abstract-controls-extension/afe-control-type.js → dist/ngx-formentry/esm2020/abstract-controls-extension/afe-control-type.mjs} +0 -0
  236. /package/{esm2015/abstract-controls-extension/afe-form-array.js → dist/ngx-formentry/esm2020/abstract-controls-extension/afe-form-array.mjs} +0 -0
  237. /package/{esm2015/abstract-controls-extension/afe-form-control.js → dist/ngx-formentry/esm2020/abstract-controls-extension/afe-form-control.mjs} +0 -0
  238. /package/{esm2015/abstract-controls-extension/afe-form-group.js → dist/ngx-formentry/esm2020/abstract-controls-extension/afe-form-group.mjs} +0 -0
  239. /package/{esm2015/abstract-controls-extension/control-extensions.js → dist/ngx-formentry/esm2020/abstract-controls-extension/control-extensions.mjs} +0 -0
  240. /package/{esm2015/abstract-controls-extension/index.js → dist/ngx-formentry/esm2020/abstract-controls-extension/index.mjs} +0 -0
  241. /package/{esm2015/abstract-controls-extension/value-change.listener.js → dist/ngx-formentry/esm2020/abstract-controls-extension/value-change.listener.mjs} +0 -0
  242. /package/{esm2015/change-tracking/control-relation.js → dist/ngx-formentry/esm2020/change-tracking/control-relation.mjs} +0 -0
  243. /package/{esm2015/change-tracking/control-relations.js → dist/ngx-formentry/esm2020/change-tracking/control-relations.mjs} +0 -0
  244. /package/{esm2015/components/date-time-picker/index.js → dist/ngx-formentry/esm2020/components/date-time-picker/index.mjs} +0 -0
  245. /package/{esm2015/components/ngx-pick-datetime/lib/date-time/adapter/date-time-adapter.class.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/adapter/date-time-adapter.class.mjs} +0 -0
  246. /package/{esm2015/components/ngx-pick-datetime/lib/date-time/adapter/date-time-format.class.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/adapter/date-time-format.class.mjs} +0 -0
  247. /package/{esm2015/components/ngx-pick-datetime/lib/date-time/adapter/native-date-time-format.class.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/adapter/native-date-time-format.class.mjs} +0 -0
  248. /package/{esm2015/components/ngx-pick-datetime/lib/date-time/date-time-picker.animations.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/date-time/date-time-picker.animations.mjs} +0 -0
  249. /package/{esm2015/components/ngx-pick-datetime/lib/dialog/dialog-config.class.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/dialog/dialog-config.class.mjs} +0 -0
  250. /package/{esm2015/components/ngx-pick-datetime/lib/dialog/dialog-ref.class.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/dialog/dialog-ref.class.mjs} +0 -0
  251. /package/{esm2015/components/ngx-pick-datetime/lib/utils/index.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/utils/index.mjs} +0 -0
  252. /package/{esm2015/components/ngx-pick-datetime/lib/utils/object.utils.js → dist/ngx-formentry/esm2020/components/ngx-pick-datetime/lib/utils/object.utils.mjs} +0 -0
  253. /package/{esm2015/form-entry/control-alerts/alert-helpers.js → dist/ngx-formentry/esm2020/form-entry/control-alerts/alert-helpers.mjs} +0 -0
  254. /package/{esm2015/form-entry/control-alerts/can-generate-alert.js → dist/ngx-formentry/esm2020/form-entry/control-alerts/can-generate-alert.mjs} +0 -0
  255. /package/{esm2015/form-entry/control-calculators/can-calculate.js → dist/ngx-formentry/esm2020/form-entry/control-calculators/can-calculate.mjs} +0 -0
  256. /package/{esm2015/form-entry/control-hiders-disablers/can-disable.js → dist/ngx-formentry/esm2020/form-entry/control-hiders-disablers/can-disable.mjs} +0 -0
  257. /package/{esm2015/form-entry/control-hiders-disablers/can-hide.js → dist/ngx-formentry/esm2020/form-entry/control-hiders-disablers/can-hide.mjs} +0 -0
  258. /package/{esm2015/form-entry/control-hiders-disablers/disabler-helper.js → dist/ngx-formentry/esm2020/form-entry/control-hiders-disablers/disabler-helper.mjs} +0 -0
  259. /package/{esm2015/form-entry/control-hiders-disablers/hider-helpers.js → dist/ngx-formentry/esm2020/form-entry/control-hiders-disablers/hider-helpers.mjs} +0 -0
  260. /package/{esm2015/form-entry/data-sources/dummy-data-source.js → dist/ngx-formentry/esm2020/form-entry/data-sources/dummy-data-source.mjs} +0 -0
  261. /package/{esm2015/form-entry/directives/collapse-animations.js → dist/ngx-formentry/esm2020/form-entry/directives/collapse-animations.mjs} +0 -0
  262. /package/{esm2015/form-entry/form-factory/form.js → dist/ngx-formentry/esm2020/form-entry/form-factory/form.mjs} +0 -0
  263. /package/{esm2015/form-entry/form-factory/index.js → dist/ngx-formentry/esm2020/form-entry/form-factory/index.mjs} +0 -0
  264. /package/{esm2015/form-entry/helpers/risk-dataset-table.js → dist/ngx-formentry/esm2020/form-entry/helpers/risk-dataset-table.mjs} +0 -0
  265. /package/{esm2015/form-entry/question-models/checkbox.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/checkbox.model.mjs} +0 -0
  266. /package/{esm2015/form-entry/question-models/conditional-validation.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/conditional-validation.model.mjs} +0 -0
  267. /package/{esm2015/form-entry/question-models/custom-control-question.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/custom-control-question.model.mjs} +0 -0
  268. /package/{esm2015/form-entry/question-models/date-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/date-question.mjs} +0 -0
  269. /package/{esm2015/form-entry/question-models/date-validation.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/date-validation.model.mjs} +0 -0
  270. /package/{esm2015/form-entry/question-models/diagnosis-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/diagnosis-question.mjs} +0 -0
  271. /package/{esm2015/form-entry/question-models/file-upload-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/file-upload-question.mjs} +0 -0
  272. /package/{esm2015/form-entry/question-models/group-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/group-question.mjs} +0 -0
  273. /package/{esm2015/form-entry/question-models/interfaces/base-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/base-options.mjs} +0 -0
  274. /package/{esm2015/form-entry/question-models/interfaces/checkbox-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/checkbox-options.mjs} +0 -0
  275. /package/{esm2015/form-entry/question-models/interfaces/data-source.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/data-source.mjs} +0 -0
  276. /package/{esm2015/form-entry/question-models/interfaces/date-question-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/date-question-options.mjs} +0 -0
  277. /package/{esm2015/form-entry/question-models/interfaces/diagnosis-question-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/diagnosis-question-options.mjs} +0 -0
  278. /package/{esm2015/form-entry/question-models/interfaces/file-upload-question-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/file-upload-question-options.mjs} +0 -0
  279. /package/{esm2015/form-entry/question-models/interfaces/group-question-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/group-question-options.mjs} +0 -0
  280. /package/{esm2015/form-entry/question-models/interfaces/multi-select-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/multi-select-options.mjs} +0 -0
  281. /package/{esm2015/form-entry/question-models/interfaces/nested-questions.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/nested-questions.mjs} +0 -0
  282. /package/{esm2015/form-entry/question-models/interfaces/radio-button-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/radio-button-options.mjs} +0 -0
  283. /package/{esm2015/form-entry/question-models/interfaces/repeating-question-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/repeating-question-options.mjs} +0 -0
  284. /package/{esm2015/form-entry/question-models/interfaces/select-option.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/select-option.mjs} +0 -0
  285. /package/{esm2015/form-entry/question-models/interfaces/select-question-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/select-question-options.mjs} +0 -0
  286. /package/{esm2015/form-entry/question-models/interfaces/test-order-question-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/test-order-question-options.mjs} +0 -0
  287. /package/{esm2015/form-entry/question-models/interfaces/text-area-question-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/text-area-question-options.mjs} +0 -0
  288. /package/{esm2015/form-entry/question-models/interfaces/text-question-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/text-question-options.mjs} +0 -0
  289. /package/{esm2015/form-entry/question-models/interfaces/ui-select-question-options.js → dist/ngx-formentry/esm2020/form-entry/question-models/interfaces/ui-select-question-options.mjs} +0 -0
  290. /package/{esm2015/form-entry/question-models/js-expression-validation.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/js-expression-validation.model.mjs} +0 -0
  291. /package/{esm2015/form-entry/question-models/max-length-validation.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/max-length-validation.model.mjs} +0 -0
  292. /package/{esm2015/form-entry/question-models/max-validation.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/max-validation.model.mjs} +0 -0
  293. /package/{esm2015/form-entry/question-models/min-length-validation.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/min-length-validation.model.mjs} +0 -0
  294. /package/{esm2015/form-entry/question-models/min-validation.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/min-validation.model.mjs} +0 -0
  295. /package/{esm2015/form-entry/question-models/models.js → dist/ngx-formentry/esm2020/form-entry/question-models/models.mjs} +0 -0
  296. /package/{esm2015/form-entry/question-models/multi-select-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/multi-select-question.mjs} +0 -0
  297. /package/{esm2015/form-entry/question-models/pair.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/pair.model.mjs} +0 -0
  298. /package/{esm2015/form-entry/question-models/question-base.js → dist/ngx-formentry/esm2020/form-entry/question-models/question-base.mjs} +0 -0
  299. /package/{esm2015/form-entry/question-models/radio-button.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/radio-button.model.mjs} +0 -0
  300. /package/{esm2015/form-entry/question-models/rendering-type.js → dist/ngx-formentry/esm2020/form-entry/question-models/rendering-type.mjs} +0 -0
  301. /package/{esm2015/form-entry/question-models/repeating-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/repeating-question.mjs} +0 -0
  302. /package/{esm2015/form-entry/question-models/select-option.js → dist/ngx-formentry/esm2020/form-entry/question-models/select-option.mjs} +0 -0
  303. /package/{esm2015/form-entry/question-models/select-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/select-question.mjs} +0 -0
  304. /package/{esm2015/form-entry/question-models/test-order-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/test-order-question.mjs} +0 -0
  305. /package/{esm2015/form-entry/question-models/text-area-input-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/text-area-input-question.mjs} +0 -0
  306. /package/{esm2015/form-entry/question-models/text-input-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/text-input-question.mjs} +0 -0
  307. /package/{esm2015/form-entry/question-models/ui-select-question.js → dist/ngx-formentry/esm2020/form-entry/question-models/ui-select-question.mjs} +0 -0
  308. /package/{esm2015/form-entry/question-models/validation.model.js → dist/ngx-formentry/esm2020/form-entry/question-models/validation.model.mjs} +0 -0
  309. /package/{esm2015/form-entry/validators/conditional-answered.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/conditional-answered.validator.mjs} +0 -0
  310. /package/{esm2015/form-entry/validators/conditional-required.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/conditional-required.validator.mjs} +0 -0
  311. /package/{esm2015/form-entry/validators/date.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/date.validator.mjs} +0 -0
  312. /package/{esm2015/form-entry/validators/future-date-restriction.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/future-date-restriction.validator.mjs} +0 -0
  313. /package/{esm2015/form-entry/validators/js-expression.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/js-expression.validator.mjs} +0 -0
  314. /package/{esm2015/form-entry/validators/max-date.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/max-date.validator.mjs} +0 -0
  315. /package/{esm2015/form-entry/validators/max-length.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/max-length.validator.mjs} +0 -0
  316. /package/{esm2015/form-entry/validators/max.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/max.validator.mjs} +0 -0
  317. /package/{esm2015/form-entry/validators/min-date.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/min-date.validator.mjs} +0 -0
  318. /package/{esm2015/form-entry/validators/min-length.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/min-length.validator.mjs} +0 -0
  319. /package/{esm2015/form-entry/validators/min.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/min.validator.mjs} +0 -0
  320. /package/{esm2015/form-entry/validators/required.validator.js → dist/ngx-formentry/esm2020/form-entry/validators/required.validator.mjs} +0 -0
  321. /package/{esm2015/form-entry/validators/validations.js → dist/ngx-formentry/esm2020/form-entry/validators/validations.mjs} +0 -0
  322. /package/{esm2015/form-entry/value-adapters/value.adapter.js → dist/ngx-formentry/esm2020/form-entry/value-adapters/value.adapter.mjs} +0 -0
  323. /package/{esm2015/lib/index.js → dist/ngx-formentry/esm2020/lib/index.mjs} +0 -0
  324. /package/{esm2015/openmrs-ngx-formentry.js → dist/ngx-formentry/esm2020/openmrs-ngx-formentry.mjs} +0 -0
  325. /package/{esm2015/public_api.js → dist/ngx-formentry/esm2020/public_api.mjs} +0 -0
  326. /package/{form-entry → dist/ngx-formentry/form-entry}/control-alerts/alert-helpers.d.ts +0 -0
  327. /package/{form-entry → dist/ngx-formentry/form-entry}/control-alerts/can-generate-alert.d.ts +0 -0
  328. /package/{form-entry → dist/ngx-formentry/form-entry}/control-calculators/can-calculate.d.ts +0 -0
  329. /package/{form-entry → dist/ngx-formentry/form-entry}/control-hiders-disablers/can-disable.d.ts +0 -0
  330. /package/{form-entry → dist/ngx-formentry/form-entry}/control-hiders-disablers/can-hide.d.ts +0 -0
  331. /package/{form-entry → dist/ngx-formentry/form-entry}/control-hiders-disablers/disabler-helper.d.ts +0 -0
  332. /package/{form-entry → dist/ngx-formentry/form-entry}/control-hiders-disablers/hider-helpers.d.ts +0 -0
  333. /package/{form-entry → dist/ngx-formentry/form-entry}/data-sources/data-sources.d.ts +0 -0
  334. /package/{form-entry → dist/ngx-formentry/form-entry}/data-sources/dummy-data-source.d.ts +0 -0
  335. /package/{form-entry → dist/ngx-formentry/form-entry}/directives/collapse-animations.d.ts +0 -0
  336. /package/{form-entry → dist/ngx-formentry/form-entry}/directives/collapse.directive.d.ts +0 -0
  337. /package/{form-entry → dist/ngx-formentry/form-entry}/directives/historical-value.directive.d.ts +0 -0
  338. /package/{form-entry → dist/ngx-formentry/form-entry}/error-renderer/error-renderer.component.d.ts +0 -0
  339. /package/{form-entry → dist/ngx-formentry/form-entry}/expression-runner/expression-runner.d.ts +0 -0
  340. /package/{form-entry → dist/ngx-formentry/form-entry}/form-entry.module.d.ts +0 -0
  341. /package/{form-entry → dist/ngx-formentry/form-entry}/form-factory/control-relations.factory.d.ts +0 -0
  342. /package/{form-entry → dist/ngx-formentry/form-entry}/form-factory/form-control.service.d.ts +0 -0
  343. /package/{form-entry → dist/ngx-formentry/form-entry}/form-factory/form.d.ts +0 -0
  344. /package/{form-entry → dist/ngx-formentry/form-entry}/form-factory/hiders-disablers.factory.d.ts +0 -0
  345. /package/{form-entry → dist/ngx-formentry/form-entry}/form-factory/index.d.ts +0 -0
  346. /package/{form-entry → dist/ngx-formentry/form-entry}/form-factory/question.factory.d.ts +0 -0
  347. /package/{form-entry → dist/ngx-formentry/form-entry}/form-factory/show-messages.factory.d.ts +0 -0
  348. /package/{form-entry → dist/ngx-formentry/form-entry}/form-renderer/form-renderer.component.d.ts +0 -0
  349. /package/{form-entry → dist/ngx-formentry/form-entry}/helpers/historical-expression-helper-service.d.ts +0 -0
  350. /package/{form-entry → dist/ngx-formentry/form-entry}/helpers/historical-field-helper-service.d.ts +0 -0
  351. /package/{form-entry → dist/ngx-formentry/form-entry}/helpers/js-expression-helper.d.ts +0 -0
  352. /package/{form-entry → dist/ngx-formentry/form-entry}/helpers/risk-dataset-table.d.ts +0 -0
  353. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/checkbox.model.d.ts +0 -0
  354. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/conditional-validation.model.d.ts +0 -0
  355. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/custom-control-question.model.d.ts +0 -0
  356. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/date-question.d.ts +0 -0
  357. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/date-validation.model.d.ts +0 -0
  358. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/diagnosis-question.d.ts +0 -0
  359. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/file-upload-question.d.ts +0 -0
  360. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/group-question.d.ts +0 -0
  361. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/base-options.d.ts +0 -0
  362. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/checkbox-options.d.ts +0 -0
  363. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/data-source.d.ts +0 -0
  364. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/date-question-options.d.ts +0 -0
  365. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/diagnosis-question-options.d.ts +0 -0
  366. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/file-upload-question-options.d.ts +0 -0
  367. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/group-question-options.d.ts +0 -0
  368. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/multi-select-options.d.ts +0 -0
  369. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/nested-questions.d.ts +0 -0
  370. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/radio-button-options.d.ts +0 -0
  371. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/repeating-question-options.d.ts +0 -0
  372. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/select-option.d.ts +0 -0
  373. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/select-question-options.d.ts +0 -0
  374. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/test-order-question-options.d.ts +0 -0
  375. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/text-area-question-options.d.ts +0 -0
  376. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/text-question-options.d.ts +0 -0
  377. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/interfaces/ui-select-question-options.d.ts +0 -0
  378. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/js-expression-validation.model.d.ts +0 -0
  379. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/max-length-validation.model.d.ts +0 -0
  380. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/max-validation.model.d.ts +0 -0
  381. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/min-length-validation.model.d.ts +0 -0
  382. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/min-validation.model.d.ts +0 -0
  383. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/models.d.ts +0 -0
  384. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/multi-select-question.d.ts +0 -0
  385. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/pair.model.d.ts +0 -0
  386. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/question-base.d.ts +0 -0
  387. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/radio-button.model.d.ts +0 -0
  388. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/rendering-type.d.ts +0 -0
  389. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/repeating-question.d.ts +0 -0
  390. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/select-option.d.ts +0 -0
  391. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/select-question.d.ts +0 -0
  392. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/test-order-question.d.ts +0 -0
  393. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/text-area-input-question.d.ts +0 -0
  394. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/text-input-question.d.ts +0 -0
  395. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/ui-select-question.d.ts +0 -0
  396. /package/{form-entry → dist/ngx-formentry/form-entry}/question-models/validation.model.d.ts +0 -0
  397. /package/{form-entry → dist/ngx-formentry/form-entry}/services/debug-mode.service.d.ts +0 -0
  398. /package/{form-entry → dist/ngx-formentry/form-entry}/services/form-errors.service.d.ts +0 -0
  399. /package/{form-entry → dist/ngx-formentry/form-entry}/services/form-schema-compiler.service.d.ts +0 -0
  400. /package/{form-entry → dist/ngx-formentry/form-entry}/services/historical-encounter-data.service.d.ts +0 -0
  401. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/conditional-answered.validator.d.ts +0 -0
  402. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/conditional-required.validator.d.ts +0 -0
  403. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/date.validator.d.ts +0 -0
  404. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/future-date-restriction.validator.d.ts +0 -0
  405. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/js-expression.validator.d.ts +0 -0
  406. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/max-date.validator.d.ts +0 -0
  407. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/max-length.validator.d.ts +0 -0
  408. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/max.validator.d.ts +0 -0
  409. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/min-date.validator.d.ts +0 -0
  410. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/min-length.validator.d.ts +0 -0
  411. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/min.validator.d.ts +0 -0
  412. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/required.validator.d.ts +0 -0
  413. /package/{form-entry → dist/ngx-formentry/form-entry}/validators/validations.d.ts +0 -0
  414. /package/{form-entry → dist/ngx-formentry/form-entry}/value-adapters/diagnosis.adapter.d.ts +0 -0
  415. /package/{form-entry → dist/ngx-formentry/form-entry}/value-adapters/encounter.adapter.d.ts +0 -0
  416. /package/{form-entry → dist/ngx-formentry/form-entry}/value-adapters/obs-adapter-helper.d.ts +0 -0
  417. /package/{form-entry → dist/ngx-formentry/form-entry}/value-adapters/obs.adapter.d.ts +0 -0
  418. /package/{form-entry → dist/ngx-formentry/form-entry}/value-adapters/order.adapter.d.ts +0 -0
  419. /package/{form-entry → dist/ngx-formentry/form-entry}/value-adapters/patient-identifier.adapter.d.ts +0 -0
  420. /package/{form-entry → dist/ngx-formentry/form-entry}/value-adapters/person-attribute.adapter.d.ts +0 -0
  421. /package/{form-entry → dist/ngx-formentry/form-entry}/value-adapters/value.adapter.d.ts +0 -0
  422. /package/{lib → dist/ngx-formentry/lib}/index.d.ts +0 -0
  423. /package/{openmrs-ngx-formentry.d.ts → dist/ngx-formentry/openmrs-ngx-formentry.d.ts} +0 -0
  424. /package/{public_api.d.ts → dist/ngx-formentry/public_api.d.ts} +0 -0
  425. /package/{shared.module.d.ts → dist/ngx-formentry/shared.module.d.ts} +0 -0
  426. /package/{styles → dist/ngx-formentry/styles}/ngx-formentry.css +0 -0
  427. /package/{styles → dist/ngx-formentry/styles}/picker.min.css +0 -0
@@ -1,154 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as _ from 'lodash';
3
- import { ConditionalRequiredValidator } from '../validators/conditional-required.validator';
4
- import { ConditionalAnsweredValidator } from '../validators/conditional-answered.validator';
5
- import { RequiredValidator } from '../validators/required.validator';
6
- import { DateValidator } from '../validators/date.validator';
7
- import { MinValidator } from '../validators/min.validator';
8
- import { MaxValidator } from '../validators/max.validator';
9
- import { MinDateValidator } from '../validators/min-date.validator';
10
- import { MaxDateValidator } from '../validators/max-date.validator';
11
- import { FutureDateRestrictionValidator } from '../validators/future-date-restriction.validator';
12
- import { JsExpressionValidator } from '../validators/js-expression.validator';
13
- import { Messages } from '../utils/messages';
14
- import { MaxLengthValidator } from '../validators/max-length.validator';
15
- import { MinLengthValidator } from '../validators/min-length.validator';
16
- import * as i0 from "@angular/core";
17
- export class ValidationFactory {
18
- constructor() { }
19
- getValidators(question, form) {
20
- const list = [];
21
- if (question.validators) {
22
- _.forEach(question.validators, (validator) => {
23
- switch (validator.type) {
24
- case 'date':
25
- list.push(this.dateValidator);
26
- const allowFutureDates = validator
27
- .allowFutureDates;
28
- if (!allowFutureDates) {
29
- list.push(this.futureDateRestrictionValidator);
30
- }
31
- break;
32
- case 'js_expression':
33
- list.push(this.jsExpressionValidator.validate(validator, form));
34
- break;
35
- case 'max':
36
- list.push(this.getMaxValueValidator(validator.max));
37
- break;
38
- case 'maxlength':
39
- list.push(this.maxLengthValidator(validator.maxlength));
40
- break;
41
- case 'min':
42
- list.push(this.getMinValueValidator(validator.min));
43
- break;
44
- case 'minlength':
45
- list.push(this.minLengthValidator(validator.minlength));
46
- break;
47
- case 'conditionalRequired':
48
- list.push(this.conditionalRequiredValidator.validate(validator));
49
- break;
50
- case 'conditionalAnswered':
51
- list.push(this.conditionalAnsweredValidator.validate(validator));
52
- break;
53
- }
54
- });
55
- }
56
- if (question.required &&
57
- typeof question.required === 'string' &&
58
- question.required === 'true') {
59
- list.push(this.requiredValidator);
60
- }
61
- else {
62
- // TODO - handle custom required validator
63
- }
64
- return list;
65
- }
66
- get conditionalRequiredValidator() {
67
- return new ConditionalRequiredValidator();
68
- }
69
- get conditionalAnsweredValidator() {
70
- return new ConditionalAnsweredValidator();
71
- }
72
- get requiredValidator() {
73
- return new RequiredValidator().validate;
74
- }
75
- get dateValidator() {
76
- return new DateValidator().validate;
77
- }
78
- get futureDateRestrictionValidator() {
79
- return new FutureDateRestrictionValidator().validate;
80
- }
81
- get maxDateValidator() {
82
- return new MaxDateValidator().validate;
83
- }
84
- get minDateValidator() {
85
- return new MinDateValidator().validate;
86
- }
87
- minLengthValidator(minLength) {
88
- return new MinLengthValidator().validate(minLength);
89
- }
90
- maxLengthValidator(maxLength) {
91
- return new MaxLengthValidator().validate(maxLength);
92
- }
93
- getMinValueValidator(min) {
94
- return new MinValidator().validate(min);
95
- }
96
- getMaxValueValidator(max) {
97
- return new MaxValidator().validate(max);
98
- }
99
- get jsExpressionValidator() {
100
- return new JsExpressionValidator();
101
- }
102
- errors(errors, question) {
103
- const messages = [];
104
- for (const property in errors) {
105
- if (errors.hasOwnProperty(property)) {
106
- switch (property) {
107
- case 'required':
108
- messages.push(Messages.REQUIRED_FIELD_MSG);
109
- break;
110
- case 'date':
111
- messages.push(Messages.INVALID_DATE_MSG);
112
- break;
113
- case 'futureDateRestriction':
114
- messages.push(Messages.FUTURE_DATE_RESTRICTION_MSG);
115
- break;
116
- case 'minlength':
117
- messages.push(Messages.MIN_LENGTH_MSG.replace('{minLength}', errors.minlength.requiredLength));
118
- break;
119
- case 'maxlength':
120
- messages.push(Messages.MAX_LENGTH_MSG.replace('{maxLength}', errors.maxlength.requiredLength));
121
- break;
122
- case 'maxdate':
123
- messages.push(Messages.MAX_DATE_MSG.replace('{maxDate}', errors.maxdate.requiredDate));
124
- break;
125
- case 'mindate':
126
- messages.push(Messages.MIN_DATE_MSG.replace('{minDate}', errors.mindate.requiredDate));
127
- break;
128
- case 'max':
129
- messages.push(Messages.MAX_MSG.replace('{max}', errors.max.requiredValue));
130
- break;
131
- case 'min':
132
- messages.push(Messages.MIN_MSG.replace('{min}', errors.min.requiredValue));
133
- break;
134
- case 'js_expression':
135
- messages.push(errors['js_expression'].message);
136
- break;
137
- case 'conditional_required':
138
- messages.push(errors['conditional_required'].message);
139
- break;
140
- case 'conditional_answered':
141
- messages.push(errors['conditional_answered'].message);
142
- break;
143
- }
144
- }
145
- }
146
- return messages;
147
- }
148
- }
149
- ValidationFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ValidationFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
150
- ValidationFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ValidationFactory });
151
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ValidationFactory, decorators: [{
152
- type: Injectable
153
- }], ctorParameters: function () { return []; } });
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi5mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWZvcm1lbnRyeS9zcmMvZm9ybS1lbnRyeS9mb3JtLWZhY3RvcnkvdmFsaWRhdGlvbi5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFFNUIsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDNUYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDakcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFOUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBTzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBR3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOztBQUd4RSxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLGdCQUFlLENBQUM7SUFFaEIsYUFBYSxDQUFDLFFBQXNC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QU07b0JBQ1IsS0FBSyxzQkFBc0I7d0JBQ3pCLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7d0JBQ3RELE1BQU07b0JBQ1IsS0FBSyxzQkFBc0I7d0JBQ3pCLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7d0JBQ3RELE1BQU07aUJBQ1Q7YUFDRjtTQUNGO1FBRUQsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQzs7K0dBeE1VLGlCQUFpQjttSEFBakIsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuXG5pbXBvcnQgeyBDb25kaXRpb25hbFJlcXVpcmVkVmFsaWRhdG9yIH0gZnJvbSAnLi4vdmFsaWRhdG9ycy9jb25kaXRpb25hbC1yZXF1aXJlZC52YWxpZGF0b3InO1xuaW1wb3J0IHsgQ29uZGl0aW9uYWxBbnN3ZXJlZFZhbGlkYXRvciB9IGZyb20gJy4uL3ZhbGlkYXRvcnMvY29uZGl0aW9uYWwtYW5zd2VyZWQudmFsaWRhdG9yJztcbmltcG9ydCB7IFJlcXVpcmVkVmFsaWRhdG9yIH0gZnJvbSAnLi4vdmFsaWRhdG9ycy9yZXF1aXJlZC52YWxpZGF0b3InO1xuaW1wb3J0IHsgRGF0ZVZhbGlkYXRvciB9IGZyb20gJy4uL3ZhbGlkYXRvcnMvZGF0ZS52YWxpZGF0b3InO1xuaW1wb3J0IHsgTWluVmFsaWRhdG9yIH0gZnJvbSAnLi4vdmFsaWRhdG9ycy9taW4udmFsaWRhdG9yJztcbmltcG9ydCB7IE1heFZhbGlkYXRvciB9IGZyb20gJy4uL3ZhbGlkYXRvcnMvbWF4LnZhbGlkYXRvcic7XG5pbXBvcnQgeyBNaW5EYXRlVmFsaWRhdG9yIH0gZnJvbSAnLi4vdmFsaWRhdG9ycy9taW4tZGF0ZS52YWxpZGF0b3InO1xuaW1wb3J0IHsgTWF4RGF0ZVZhbGlkYXRvciB9IGZyb20gJy4uL3ZhbGlkYXRvcnMvbWF4LWRhdGUudmFsaWRhdG9yJztcbmltcG9ydCB7IEZ1dHVyZURhdGVSZXN0cmljdGlvblZhbGlkYXRvciB9IGZyb20gJy4uL3ZhbGlkYXRvcnMvZnV0dXJlLWRhdGUtcmVzdHJpY3Rpb24udmFsaWRhdG9yJztcbmltcG9ydCB7IEpzRXhwcmVzc2lvblZhbGlkYXRvciB9IGZyb20gJy4uL3ZhbGlkYXRvcnMvanMtZXhwcmVzc2lvbi52YWxpZGF0b3InO1xuaW1wb3J0IHsgUXVlc3Rpb25CYXNlIH0gZnJvbSAnLi4vcXVlc3Rpb24tbW9kZWxzL3F1ZXN0aW9uLWJhc2UnO1xuaW1wb3J0IHsgTWVzc2FnZXMgfSBmcm9tICcuLi91dGlscy9tZXNzYWdlcyc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uTW9kZWwgfSBmcm9tICcuLi9xdWVzdGlvbi1tb2RlbHMvdmFsaWRhdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBEYXRlVmFsaWRhdGlvbk1vZGVsIH0gZnJvbSAnLi4vcXVlc3Rpb24tbW9kZWxzL2RhdGUtdmFsaWRhdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBNYXhWYWxpZGF0aW9uTW9kZWwgfSBmcm9tICcuLi9xdWVzdGlvbi1tb2RlbHMvbWF4LXZhbGlkYXRpb24ubW9kZWwnO1xuaW1wb3J0IHsgTWluVmFsaWRhdGlvbk1vZGVsIH0gZnJvbSAnLi4vcXVlc3Rpb24tbW9kZWxzL21pbi12YWxpZGF0aW9uLm1vZGVsJztcbmltcG9ydCB7IEpzRXhwcmVzc2lvblZhbGlkYXRpb25Nb2RlbCB9IGZyb20gJy4uL3F1ZXN0aW9uLW1vZGVscy9qcy1leHByZXNzaW9uLXZhbGlkYXRpb24ubW9kZWwnO1xuaW1wb3J0IHsgQ29uZGl0aW9uYWxWYWxpZGF0aW9uTW9kZWwgfSBmcm9tICcuLi9xdWVzdGlvbi1tb2RlbHMvY29uZGl0aW9uYWwtdmFsaWRhdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBNYXhMZW5ndGhWYWxpZGF0b3IgfSBmcm9tICcuLi92YWxpZGF0b3JzL21heC1sZW5ndGgudmFsaWRhdG9yJztcbmltcG9ydCB7IE1heExlbmd0aFZhbGlkYXRpb25Nb2RlbCB9IGZyb20gJy4uL3F1ZXN0aW9uLW1vZGVscy9tYXgtbGVuZ3RoLXZhbGlkYXRpb24ubW9kZWwnO1xuaW1wb3J0IHsgTWluTGVuZ3RoVmFsaWRhdGlvbk1vZGVsIH0gZnJvbSAnLi4vcXVlc3Rpb24tbW9kZWxzL21pbi1sZW5ndGgtdmFsaWRhdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBNaW5MZW5ndGhWYWxpZGF0b3IgfSBmcm9tICcuLi92YWxpZGF0b3JzL21pbi1sZW5ndGgudmFsaWRhdG9yJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFZhbGlkYXRpb25GYWN0b3J5IHtcbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIGdldFZhbGlkYXRvcnMocXVlc3Rpb246IFF1ZXN0aW9uQmFzZSwgZm9ybT86IGFueSkge1xuICAgIGNvbnN0IGxpc3Q6IEFycmF5PGFueT4gPSBbXTtcblxuICAgIGlmIChxdWVzdGlvbi52YWxpZGF0b3JzKSB7XG4gICAgICBfLmZvckVhY2gocXVlc3Rpb24udmFsaWRhdG9ycywgKHZhbGlkYXRvcjogVmFsaWRhdGlvbk1vZGVsKSA9PiB7XG4gICAgICAgIHN3aXRjaCAodmFsaWRhdG9yLnR5cGUpIHtcbiAgICAgICAgICBjYXNlICdkYXRlJzpcbiAgICAgICAgICAgIGxpc3QucHVzaCh0aGlzLmRhdGVWYWxpZGF0b3IpO1xuICAgICAgICAgICAgY29uc3QgYWxsb3dGdXR1cmVEYXRlczogYm9vbGVhbiA9ICg8RGF0ZVZhbGlkYXRpb25Nb2RlbD52YWxpZGF0b3IpXG4gICAgICAgICAgICAgIC5hbGxvd0Z1dHVyZURhdGVzO1xuXG4gICAgICAgICAgICBpZiAoIWFsbG93RnV0dXJlRGF0ZXMpIHtcbiAgICAgICAgICAgICAgbGlzdC5wdXNoKHRoaXMuZnV0dXJlRGF0ZVJlc3RyaWN0aW9uVmFsaWRhdG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2pzX2V4cHJlc3Npb24nOlxuICAgICAgICAgICAgbGlzdC5wdXNoKFxuICAgICAgICAgICAgICB0aGlzLmpzRXhwcmVzc2lvblZhbGlkYXRvci52YWxpZGF0ZShcbiAgICAgICAgICAgICAgICA8SnNFeHByZXNzaW9uVmFsaWRhdGlvbk1vZGVsPnZhbGlkYXRvcixcbiAgICAgICAgICAgICAgICBmb3JtXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdtYXgnOlxuICAgICAgICAgICAgbGlzdC5wdXNoKFxuICAgICAgICAgICAgICB0aGlzLmdldE1heFZhbHVlVmFsaWRhdG9yKCg8TWF4VmFsaWRhdGlvbk1vZGVsPnZhbGlkYXRvcikubWF4KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ21heGxlbmd0aCc6XG4gICAgICAgICAgICBsaXN0LnB1c2goXG4gICAgICAgICAgICAgIHRoaXMubWF4TGVuZ3RoVmFsaWRhdG9yKFxuICAgICAgICAgICAgICAgICg8TWF4TGVuZ3RoVmFsaWRhdGlvbk1vZGVsPnZhbGlkYXRvcikubWF4bGVuZ3RoXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdtaW4nOlxuICAgICAgICAgICAgbGlzdC5wdXNoKFxuICAgICAgICAgICAgICB0aGlzLmdldE1pblZhbHVlVmFsaWRhdG9yKCg8TWluVmFsaWRhdGlvbk1vZGVsPnZhbGlkYXRvcikubWluKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ21pbmxlbmd0aCc6XG4gICAgICAgICAgICBsaXN0LnB1c2goXG4gICAgICAgICAgICAgIHRoaXMubWluTGVuZ3RoVmFsaWRhdG9yKFxuICAgICAgICAgICAgICAgICg8TWluTGVuZ3RoVmFsaWRhdGlvbk1vZGVsPnZhbGlkYXRvcikubWlubGVuZ3RoXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdjb25kaXRpb25hbFJlcXVpcmVkJzpcbiAgICAgICAgICAgIGxpc3QucHVzaChcbiAgICAgICAgICAgICAgdGhpcy5jb25kaXRpb25hbFJlcXVpcmVkVmFsaWRhdG9yLnZhbGlkYXRlKFxuICAgICAgICAgICAgICAgIDxDb25kaXRpb25hbFZhbGlkYXRpb25Nb2RlbD52YWxpZGF0b3JcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2NvbmRpdGlvbmFsQW5zd2VyZWQnOlxuICAgICAgICAgICAgbGlzdC5wdXNoKFxuICAgICAgICAgICAgICB0aGlzLmNvbmRpdGlvbmFsQW5zd2VyZWRWYWxpZGF0b3IudmFsaWRhdGUoXG4gICAgICAgICAgICAgICAgPENvbmRpdGlvbmFsVmFsaWRhdGlvbk1vZGVsPnZhbGlkYXRvclxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHF1ZXN0aW9uLnJlcXVpcmVkICYmXG4gICAgICB0eXBlb2YgcXVlc3Rpb24ucmVxdWlyZWQgPT09ICdzdHJpbmcnICYmXG4gICAgICBxdWVzdGlvbi5yZXF1aXJlZCA9PT0gJ3RydWUnXG4gICAgKSB7XG4gICAgICBsaXN0LnB1c2godGhpcy5yZXF1aXJlZFZhbGlkYXRvcik7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFRPRE8gLSBoYW5kbGUgY3VzdG9tIHJlcXVpcmVkIHZhbGlkYXRvclxuICAgIH1cblxuICAgIHJldHVybiBsaXN0O1xuICB9XG5cbiAgZ2V0IGNvbmRpdGlvbmFsUmVxdWlyZWRWYWxpZGF0b3IoKTogQ29uZGl0aW9uYWxSZXF1aXJlZFZhbGlkYXRvciB7XG4gICAgcmV0dXJuIG5ldyBDb25kaXRpb25hbFJlcXVpcmVkVmFsaWRhdG9yKCk7XG4gIH1cblxuICBnZXQgY29uZGl0aW9uYWxBbnN3ZXJlZFZhbGlkYXRvcigpOiBDb25kaXRpb25hbEFuc3dlcmVkVmFsaWRhdG9yIHtcbiAgICByZXR1cm4gbmV3IENvbmRpdGlvbmFsQW5zd2VyZWRWYWxpZGF0b3IoKTtcbiAgfVxuXG4gIGdldCByZXF1aXJlZFZhbGlkYXRvcigpOiBhbnkge1xuICAgIHJldHVybiBuZXcgUmVxdWlyZWRWYWxpZGF0b3IoKS52YWxpZGF0ZTtcbiAgfVxuXG4gIGdldCBkYXRlVmFsaWRhdG9yKCk6IGFueSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlVmFsaWRhdG9yKCkudmFsaWRhdGU7XG4gIH1cblxuICBnZXQgZnV0dXJlRGF0ZVJlc3RyaWN0aW9uVmFsaWRhdG9yKCk6IGFueSB7XG4gICAgcmV0dXJuIG5ldyBGdXR1cmVEYXRlUmVzdHJpY3Rpb25WYWxpZGF0b3IoKS52YWxpZGF0ZTtcbiAgfVxuXG4gIGdldCBtYXhEYXRlVmFsaWRhdG9yKCk6IGFueSB7XG4gICAgcmV0dXJuIG5ldyBNYXhEYXRlVmFsaWRhdG9yKCkudmFsaWRhdGU7XG4gIH1cblxuICBnZXQgbWluRGF0ZVZhbGlkYXRvcigpOiBhbnkge1xuICAgIHJldHVybiBuZXcgTWluRGF0ZVZhbGlkYXRvcigpLnZhbGlkYXRlO1xuICB9XG5cbiAgcHVibGljIG1pbkxlbmd0aFZhbGlkYXRvcihtaW5MZW5ndGg6IG51bWJlcikge1xuICAgIHJldHVybiBuZXcgTWluTGVuZ3RoVmFsaWRhdG9yKCkudmFsaWRhdGUobWluTGVuZ3RoKTtcbiAgfVxuXG4gIHB1YmxpYyBtYXhMZW5ndGhWYWxpZGF0b3IobWF4TGVuZ3RoOiBudW1iZXIpIHtcbiAgICByZXR1cm4gbmV3IE1heExlbmd0aFZhbGlkYXRvcigpLnZhbGlkYXRlKG1heExlbmd0aCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TWluVmFsdWVWYWxpZGF0b3IobWluOiBudW1iZXIpOiBhbnkge1xuICAgIHJldHVybiBuZXcgTWluVmFsaWRhdG9yKCkudmFsaWRhdGUobWluKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRNYXhWYWx1ZVZhbGlkYXRvcihtYXg6IG51bWJlcik6IGFueSB7XG4gICAgcmV0dXJuIG5ldyBNYXhWYWxpZGF0b3IoKS52YWxpZGF0ZShtYXgpO1xuICB9XG5cbiAgZ2V0IGpzRXhwcmVzc2lvblZhbGlkYXRvcigpIHtcbiAgICByZXR1cm4gbmV3IEpzRXhwcmVzc2lvblZhbGlkYXRvcigpO1xuICB9XG5cbiAgcHVibGljIGVycm9ycyhlcnJvcnM6IGFueSwgcXVlc3Rpb246IFF1ZXN0aW9uQmFzZSk6IEFycmF5PHN0cmluZz4ge1xuICAgIGNvbnN0IG1lc3NhZ2VzOiBBcnJheTxzdHJpbmc+ID0gW107XG5cbiAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGVycm9ycykge1xuICAgICAgaWYgKGVycm9ycy5oYXNPd25Qcm9wZXJ0eShwcm9wZXJ0eSkpIHtcbiAgICAgICAgc3dpdGNoIChwcm9wZXJ0eSkge1xuICAgICAgICAgIGNhc2UgJ3JlcXVpcmVkJzpcbiAgICAgICAgICAgIG1lc3NhZ2VzLnB1c2goTWVzc2FnZXMuUkVRVUlSRURfRklFTERfTVNHKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2RhdGUnOlxuICAgICAgICAgICAgbWVzc2FnZXMucHVzaChNZXNzYWdlcy5JTlZBTElEX0RBVEVfTVNHKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2Z1dHVyZURhdGVSZXN0cmljdGlvbic6XG4gICAgICAgICAgICBtZXNzYWdlcy5wdXNoKE1lc3NhZ2VzLkZVVFVSRV9EQVRFX1JFU1RSSUNUSU9OX01TRyk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdtaW5sZW5ndGgnOlxuICAgICAgICAgICAgbWVzc2FnZXMucHVzaChcbiAgICAgICAgICAgICAgTWVzc2FnZXMuTUlOX0xFTkdUSF9NU0cucmVwbGFjZShcbiAgICAgICAgICAgICAgICAne21pbkxlbmd0aH0nLFxuICAgICAgICAgICAgICAgIGVycm9ycy5taW5sZW5ndGgucmVxdWlyZWRMZW5ndGhcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ21heGxlbmd0aCc6XG4gICAgICAgICAgICBtZXNzYWdlcy5wdXNoKFxuICAgICAgICAgICAgICBNZXNzYWdlcy5NQVhfTEVOR1RIX01TRy5yZXBsYWNlKFxuICAgICAgICAgICAgICAgICd7bWF4TGVuZ3RofScsXG4gICAgICAgICAgICAgICAgZXJyb3JzLm1heGxlbmd0aC5yZXF1aXJlZExlbmd0aFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnbWF4ZGF0ZSc6XG4gICAgICAgICAgICBtZXNzYWdlcy5wdXNoKFxuICAgICAgICAgICAgICBNZXNzYWdlcy5NQVhfREFURV9NU0cucmVwbGFjZShcbiAgICAgICAgICAgICAgICAne21heERhdGV9JyxcbiAgICAgICAgICAgICAgICBlcnJvcnMubWF4ZGF0ZS5yZXF1aXJlZERhdGVcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ21pbmRhdGUnOlxuICAgICAgICAgICAgbWVzc2FnZXMucHVzaChcbiAgICAgICAgICAgICAgTWVzc2FnZXMuTUlOX0RBVEVfTVNHLnJlcGxhY2UoXG4gICAgICAgICAgICAgICAgJ3ttaW5EYXRlfScsXG4gICAgICAgICAgICAgICAgZXJyb3JzLm1pbmRhdGUucmVxdWlyZWREYXRlXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdtYXgnOlxuICAgICAgICAgICAgbWVzc2FnZXMucHVzaChcbiAgICAgICAgICAgICAgTWVzc2FnZXMuTUFYX01TRy5yZXBsYWNlKCd7bWF4fScsIGVycm9ycy5tYXgucmVxdWlyZWRWYWx1ZSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdtaW4nOlxuICAgICAgICAgICAgbWVzc2FnZXMucHVzaChcbiAgICAgICAgICAgICAgTWVzc2FnZXMuTUlOX01TRy5yZXBsYWNlKCd7bWlufScsIGVycm9ycy5taW4ucmVxdWlyZWRWYWx1ZSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdqc19leHByZXNzaW9uJzpcbiAgICAgICAgICAgIG1lc3NhZ2VzLnB1c2goZXJyb3JzWydqc19leHByZXNzaW9uJ10ubWVzc2FnZSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdjb25kaXRpb25hbF9yZXF1aXJlZCc6XG4gICAgICAgICAgICBtZXNzYWdlcy5wdXNoKGVycm9yc1snY29uZGl0aW9uYWxfcmVxdWlyZWQnXS5tZXNzYWdlKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ2NvbmRpdGlvbmFsX2Fuc3dlcmVkJzpcbiAgICAgICAgICAgIG1lc3NhZ2VzLnB1c2goZXJyb3JzWydjb25kaXRpb25hbF9hbnN3ZXJlZCddLm1lc3NhZ2UpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbWVzc2FnZXM7XG4gIH1cbn1cbiJdfQ==