kwikid-forms 0.6.42 → 0.6.44

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 (60) hide show
  1. package/bundles/kwikid-forms.umd.js +1446 -957
  2. package/bundles/kwikid-forms.umd.js.map +1 -1
  3. package/esm2015/lib/builder/builder-form-editor/builder-form-editor.component.js +22 -32
  4. package/esm2015/lib/builder/builder-form-editor/builder-form-editor.definitions.js +2 -1
  5. package/esm2015/lib/builder/builder-form-editor/builder-form-editor.helper.js +2 -4
  6. package/esm2015/lib/builder/builder-form-editor/builder.form-editor.constants.js +5 -5
  7. package/esm2015/lib/builder/builder-form-editor/builder.form-editor.service.js +6 -5
  8. package/esm2015/lib/builder/builder-form-list/builder-forms-list.component.js +4 -6
  9. package/esm2015/lib/builder/builder.component.js +43 -53
  10. package/esm2015/lib/builder/builder.helper.js +11 -13
  11. package/esm2015/lib/renderer/config-converter/config-converter.constants.js +22 -7
  12. package/esm2015/lib/renderer/config-converter/config-converter.helper.js +9 -10
  13. package/esm2015/lib/renderer/config-converter/config-converter.js +90 -68
  14. package/esm2015/lib/renderer/form-view/definitions/form-view.actions.definition.js +3 -1
  15. package/esm2015/lib/renderer/form-view/definitions/form-view.apis.definition.js +1 -1
  16. package/esm2015/lib/renderer/form-view/definitions/form-view.commons.definition.js +2 -1
  17. package/esm2015/lib/renderer/form-view/definitions/form-view.fields.definition.js +2 -1
  18. package/esm2015/lib/renderer/form-view/definitions/form-view.logs.definition.js +2 -1
  19. package/esm2015/lib/renderer/form-view/form-view.api.service.js +25 -24
  20. package/esm2015/lib/renderer/form-view/form-view.component.js +527 -270
  21. package/esm2015/lib/renderer/form-view/form-view.constants.js +17 -0
  22. package/esm2015/lib/renderer/form-view/form-view.module.js +15 -3
  23. package/esm2015/lib/renderer/form-view/form-view.service.js +6 -7
  24. package/esm2015/lib/renderer/form-view/helpers/form-view.apis.helper.js +46 -60
  25. package/esm2015/lib/renderer/form-view/helpers/form-view.camera.helper.js +16 -20
  26. package/esm2015/lib/renderer/form-view/helpers/form-view.defaults.helper.js +65 -85
  27. package/esm2015/lib/renderer/form-view/helpers/form-view.fields.helper.js +101 -93
  28. package/esm2015/lib/renderer/form-view/helpers/form-view.form-validations.helper.js +23 -22
  29. package/esm2015/lib/renderer/form-view/helpers/form-view.tasks.helper.js +5 -5
  30. package/esm2015/lib/renderer/form-view/pipes/filter-image-url-or-base64-from-object.pipe.js +34 -0
  31. package/esm2015/lib/renderer/form-view/pipes/filter-video-url-or-base64-from-object.pipe.js +30 -0
  32. package/esm2015/lib/renderer/forms-list/forms-list.component.js +31 -39
  33. package/esm2015/lib/renderer/forms-list/forms-list.definitions.js +2 -1
  34. package/esm2015/lib/renderer/renderer.actions.definitions.js +1 -1
  35. package/esm2015/lib/renderer/renderer.component.js +88 -114
  36. package/esm2015/lib/renderer/renderer.definitions.js +2 -1
  37. package/esm2015/lib/renderer/renderer.helper.js +2 -4
  38. package/fesm2015/kwikid-forms.js +1213 -933
  39. package/fesm2015/kwikid-forms.js.map +1 -1
  40. package/lib/builder/builder-form-editor/builder-form-editor.component.d.ts +4 -5
  41. package/lib/builder/builder-form-editor/builder.form-editor.service.d.ts +0 -1
  42. package/lib/builder/builder-form-list/builder-forms-list.component.d.ts +3 -5
  43. package/lib/renderer/config-converter/config-converter.constants.d.ts +21 -6
  44. package/lib/renderer/config-converter/config-converter.helper.d.ts +1 -0
  45. package/lib/renderer/form-view/definitions/form-view.actions.definition.d.ts +2 -0
  46. package/lib/renderer/form-view/definitions/form-view.fields.definition.d.ts +52 -28
  47. package/lib/renderer/form-view/form-view.api.service.d.ts +0 -1
  48. package/lib/renderer/form-view/form-view.component.d.ts +23 -18
  49. package/lib/renderer/form-view/form-view.constants.d.ts +16 -0
  50. package/lib/renderer/form-view/form-view.module.d.ts +10 -8
  51. package/lib/renderer/form-view/form-view.service.d.ts +1 -2
  52. package/lib/renderer/form-view/helpers/form-view.camera.helper.d.ts +5 -7
  53. package/lib/renderer/form-view/helpers/form-view.defaults.helper.d.ts +4 -6
  54. package/lib/renderer/form-view/helpers/form-view.fields.helper.d.ts +1 -1
  55. package/lib/renderer/form-view/helpers/form-view.form-validations.helper.d.ts +1 -2
  56. package/lib/renderer/form-view/helpers/form-view.tasks.helper.d.ts +1 -1
  57. package/lib/renderer/form-view/pipes/filter-image-url-or-base64-from-object.pipe.d.ts +7 -0
  58. package/lib/renderer/form-view/pipes/filter-video-url-or-base64-from-object.pipe.d.ts +7 -0
  59. package/lib/renderer/forms-list/forms-list.component.d.ts +1 -2
  60. package/package.json +1 -1
@@ -1,3 +1,4 @@
1
+ /* eslint-disable no-unused-vars */
1
2
  export var EFormType;
2
3
  (function (EFormType) {
3
4
  EFormType["FORM"] = "FORM";
@@ -12,4 +13,4 @@ export var ELogEventType;
12
13
  ELogEventType["FORM__SUBMIT_FORM_BUTTON_CLICK_INVALID"] = "FORM__SUBMIT_FORM_BUTTON_CLICK_INVALID";
13
14
  ELogEventType["FORM__STEP_CONFIG_LOAD_SUCCESS"] = "FORM__STEP_CONFIG_LOAD_SUCCESS";
14
15
  })(ELogEventType || (ELogEventType = {}));
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyZXIuZGVmaW5pdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtZm9ybXMvc3JjL2xpYi9yZW5kZXJlci9yZW5kZXJlci5kZWZpbml0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxTQUdYO0FBSEQsV0FBWSxTQUFTO0lBQ25CLDBCQUFhLENBQUE7SUFDYiwwQkFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUhXLFNBQVMsS0FBVCxTQUFTLFFBR3BCO0FBSUQsTUFBTSxDQUFOLElBQVksYUFPWDtBQVBELFdBQVksYUFBYTtJQUN2Qiw4REFBNkMsQ0FBQTtJQUM3Qyw4REFBNkMsQ0FBQTtJQUM3Qyw4RUFBNkQsQ0FBQTtJQUM3RCxrRkFBaUUsQ0FBQTtJQUNqRSxrR0FBaUYsQ0FBQTtJQUNqRixrRkFBaUUsQ0FBQTtBQUNuRSxDQUFDLEVBUFcsYUFBYSxLQUFiLGFBQWEsUUFPeEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBFRm9ybVR5cGUge1xuICBGT1JNID0gXCJGT1JNXCIsXG4gIEhUTUwgPSBcIkhUTUxcIlxufVxuXG5leHBvcnQgdHlwZSBUQWN0aW9uS2V5ID0gRUZvcm1UeXBlLkZPUk0gfCBFRm9ybVR5cGUuSFRNTDtcblxuZXhwb3J0IGVudW0gRUxvZ0V2ZW50VHlwZSB7XG4gIEZPUk1fX0FDVElPTl9FWEVDVVRFID0gXCJGT1JNX19BQ1RJT05fRVhFQ1VURVwiLFxuICBGT1JNX19GT1JNX09QRU5fQVVUTyA9IFwiRk9STV9fRk9STV9PUEVOX0FVVE9cIixcbiAgRk9STV9fRk9STV9PUEVOX0JVVFRPTl9DTElDSyA9IFwiRk9STV9fRk9STV9PUEVOX0JVVFRPTl9DTElDS1wiLFxuICBGT1JNX19TVUJNSVRfRk9STV9CVVRUT05fQ0xJQ0sgPSBcIkZPUk1fX1NVQk1JVF9GT1JNX0JVVFRPTl9DTElDS1wiLFxuICBGT1JNX19TVUJNSVRfRk9STV9CVVRUT05fQ0xJQ0tfSU5WQUxJRCA9IFwiRk9STV9fU1VCTUlUX0ZPUk1fQlVUVE9OX0NMSUNLX0lOVkFMSURcIixcbiAgRk9STV9fU1RFUF9DT05GSUdfTE9BRF9TVUNDRVNTID0gXCJGT1JNX19TVEVQX0NPTkZJR19MT0FEX1NVQ0NFU1NcIlxufVxuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyZXIuZGVmaW5pdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rd2lraWQtZm9ybXMvc3JjL2xpYi9yZW5kZXJlci9yZW5kZXJlci5kZWZpbml0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxtQ0FBbUM7QUFDbkMsTUFBTSxDQUFOLElBQVksU0FHWDtBQUhELFdBQVksU0FBUztJQUNuQiwwQkFBYSxDQUFBO0lBQ2IsMEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyxTQUFTLEtBQVQsU0FBUyxRQUdwQjtBQUlELE1BQU0sQ0FBTixJQUFZLGFBT1g7QUFQRCxXQUFZLGFBQWE7SUFDdkIsOERBQTZDLENBQUE7SUFDN0MsOERBQTZDLENBQUE7SUFDN0MsOEVBQTZELENBQUE7SUFDN0Qsa0ZBQWlFLENBQUE7SUFDakUsa0dBQWlGLENBQUE7SUFDakYsa0ZBQWlFLENBQUE7QUFDbkUsQ0FBQyxFQVBXLGFBQWEsS0FBYixhQUFhLFFBT3hCIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tdW51c2VkLXZhcnMgKi9cbmV4cG9ydCBlbnVtIEVGb3JtVHlwZSB7XG4gIEZPUk0gPSBcIkZPUk1cIixcbiAgSFRNTCA9IFwiSFRNTFwiXG59XG5cbmV4cG9ydCB0eXBlIFRBY3Rpb25LZXkgPSBFRm9ybVR5cGUuRk9STSB8IEVGb3JtVHlwZS5IVE1MO1xuXG5leHBvcnQgZW51bSBFTG9nRXZlbnRUeXBlIHtcbiAgRk9STV9fQUNUSU9OX0VYRUNVVEUgPSBcIkZPUk1fX0FDVElPTl9FWEVDVVRFXCIsXG4gIEZPUk1fX0ZPUk1fT1BFTl9BVVRPID0gXCJGT1JNX19GT1JNX09QRU5fQVVUT1wiLFxuICBGT1JNX19GT1JNX09QRU5fQlVUVE9OX0NMSUNLID0gXCJGT1JNX19GT1JNX09QRU5fQlVUVE9OX0NMSUNLXCIsXG4gIEZPUk1fX1NVQk1JVF9GT1JNX0JVVFRPTl9DTElDSyA9IFwiRk9STV9fU1VCTUlUX0ZPUk1fQlVUVE9OX0NMSUNLXCIsXG4gIEZPUk1fX1NVQk1JVF9GT1JNX0JVVFRPTl9DTElDS19JTlZBTElEID0gXCJGT1JNX19TVUJNSVRfRk9STV9CVVRUT05fQ0xJQ0tfSU5WQUxJRFwiLFxuICBGT1JNX19TVEVQX0NPTkZJR19MT0FEX1NVQ0NFU1MgPSBcIkZPUk1fX1NURVBfQ09ORklHX0xPQURfU1VDQ0VTU1wiXG59XG4iXX0=
@@ -1,9 +1,7 @@
1
1
  import { isNotEmptyValue } from "kwikid-toolkit";
2
2
  export const getFormConfigByKey = (forms, key) => {
3
3
  const form = forms.find((form) => {
4
- if (form.key === key) {
5
- return form;
6
- }
4
+ return form.key === key;
7
5
  });
8
6
  return form;
9
7
  };
@@ -24,4 +22,4 @@ export function formatEventLogs(eventType, stepConfig, extras) {
24
22
  data: Object.assign({ step_key: stepConfig === null || stepConfig === void 0 ? void 0 : stepConfig.key, step_title: (_g = (_f = stepConfig === null || stepConfig === void 0 ? void 0 : stepConfig.props) === null || _f === void 0 ? void 0 : _f.title) !== null && _g !== void 0 ? _g : stepConfig === null || stepConfig === void 0 ? void 0 : stepConfig.title }, extras)
25
23
  };
26
24
  }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyZXIuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWZvcm1zL3NyYy9saWIvcmVuZGVyZXIvcmVuZGVyZXIuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLEtBQVksRUFBRSxHQUFXLEVBQUUsRUFBRTtJQUM5RCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDL0IsSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLEdBQUcsRUFBRTtZQUNwQixPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxlQUFlLENBQzdCLFNBQXdCLEVBQ3hCLFVBQWUsRUFDZixNQUFXOztJQUVYLE1BQU0sUUFBUSxHQUFHO1FBQ2YsU0FBUztRQUNULE1BQUEsTUFBQSxNQUFBLFVBQVUsYUFBVixVQUFVLHVCQUFWLFVBQVUsQ0FBRSxJQUFJLDBDQUFFLEdBQUcsbUNBQUksVUFBVSxhQUFWLFVBQVUsdUJBQVYsVUFBVSxDQUFFLEdBQUcsbUNBQUksR0FBRztRQUMvQyxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxRQUFRLG1DQUFJLEdBQUc7UUFDdkIsTUFBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsU0FBUyxtQ0FBSSxHQUFHO0tBQ3pCO1NBQ0UsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRWYsT0FBTztRQUNMLElBQUksRUFBRSxTQUFTO1FBQ2YsS0FBSyxFQUFFLEdBQUcsUUFBUSxFQUFFO1FBQ3BCLFNBQVMsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRTtRQUMvQixJQUFJLGtCQUNGLFFBQVEsRUFBRSxVQUFVLGFBQVYsVUFBVSx1QkFBVixVQUFVLENBQUUsR0FBRyxFQUN6QixVQUFVLEVBQUUsTUFBQSxNQUFBLFVBQVUsYUFBVixVQUFVLHVCQUFWLFVBQVUsQ0FBRSxLQUFLLDBDQUFFLEtBQUssbUNBQUksVUFBVSxhQUFWLFVBQVUsdUJBQVYsVUFBVSxDQUFFLEtBQUssSUFDdEQsTUFBTSxDQUNWO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc05vdEVtcHR5VmFsdWUgfSBmcm9tIFwia3dpa2lkLXRvb2xraXRcIjtcbmltcG9ydCB7IEVMb2dFdmVudFR5cGUgfSBmcm9tIFwiLi9yZW5kZXJlci5kZWZpbml0aW9uc1wiO1xuXG5leHBvcnQgY29uc3QgZ2V0Rm9ybUNvbmZpZ0J5S2V5ID0gKGZvcm1zOiBhbnlbXSwga2V5OiBzdHJpbmcpID0+IHtcbiAgY29uc3QgZm9ybSA9IGZvcm1zLmZpbmQoKGZvcm0pID0+IHtcbiAgICBpZiAoZm9ybS5rZXkgPT09IGtleSkge1xuICAgICAgcmV0dXJuIGZvcm07XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gZm9ybTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRFdmVudExvZ3MoXG4gIGV2ZW50VHlwZTogRUxvZ0V2ZW50VHlwZSxcbiAgc3RlcENvbmZpZzogYW55LFxuICBleHRyYXM6IGFueVxuKSB7XG4gIGNvbnN0IGxvZ0xhYmVsID0gW1xuICAgIGV2ZW50VHlwZSxcbiAgICBzdGVwQ29uZmlnPy5mb3JtPy5rZXkgPz8gc3RlcENvbmZpZz8ua2V5ID8/IFwiX1wiLFxuICAgIGV4dHJhcz8uZm9ybV9rZXkgPz8gXCJfXCIsXG4gICAgZXh0cmFzPy5maWVsZF9rZXkgPz8gXCJfXCJcbiAgXVxuICAgIC5maWx0ZXIoKGl0ZW0pID0+IGlzTm90RW1wdHlWYWx1ZShpdGVtKSlcbiAgICAuam9pbihcIiB8IFwiKTtcblxuICByZXR1cm4ge1xuICAgIHR5cGU6IGV2ZW50VHlwZSxcbiAgICBsYWJlbDogYCR7bG9nTGFiZWx9YCxcbiAgICB0aW1lc3RhbXA6IG5ldyBEYXRlKCkuZ2V0VGltZSgpLFxuICAgIGRhdGE6IHtcbiAgICAgIHN0ZXBfa2V5OiBzdGVwQ29uZmlnPy5rZXksXG4gICAgICBzdGVwX3RpdGxlOiBzdGVwQ29uZmlnPy5wcm9wcz8udGl0bGUgPz8gc3RlcENvbmZpZz8udGl0bGUsXG4gICAgICAuLi5leHRyYXNcbiAgICB9XG4gIH07XG59XG4iXX0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyZXIuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa2lkLWZvcm1zL3NyYy9saWIvcmVuZGVyZXIvcmVuZGVyZXIuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLEtBQVksRUFBRSxHQUFXLEVBQUUsRUFBRTtJQUM5RCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDL0IsT0FBTyxJQUFJLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQztJQUMxQixDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyxDQUFDO0FBRUYsTUFBTSxVQUFVLGVBQWUsQ0FDN0IsU0FBd0IsRUFDeEIsVUFBZSxFQUNmLE1BQVc7O0lBRVgsTUFBTSxRQUFRLEdBQUc7UUFDZixTQUFTO1FBQ1QsTUFBQSxNQUFBLE1BQUEsVUFBVSxhQUFWLFVBQVUsdUJBQVYsVUFBVSxDQUFFLElBQUksMENBQUUsR0FBRyxtQ0FBSSxVQUFVLGFBQVYsVUFBVSx1QkFBVixVQUFVLENBQUUsR0FBRyxtQ0FBSSxHQUFHO1FBQy9DLE1BQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFFBQVEsbUNBQUksR0FBRztRQUN2QixNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxTQUFTLG1DQUFJLEdBQUc7S0FDekI7U0FDRSxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN2QyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFZixPQUFPO1FBQ0wsSUFBSSxFQUFFLFNBQVM7UUFDZixLQUFLLEVBQUUsR0FBRyxRQUFRLEVBQUU7UUFDcEIsU0FBUyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFO1FBQy9CLElBQUksa0JBQ0YsUUFBUSxFQUFFLFVBQVUsYUFBVixVQUFVLHVCQUFWLFVBQVUsQ0FBRSxHQUFHLEVBQ3pCLFVBQVUsRUFBRSxNQUFBLE1BQUEsVUFBVSxhQUFWLFVBQVUsdUJBQVYsVUFBVSxDQUFFLEtBQUssMENBQUUsS0FBSyxtQ0FBSSxVQUFVLGFBQVYsVUFBVSx1QkFBVixVQUFVLENBQUUsS0FBSyxJQUN0RCxNQUFNLENBQ1Y7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzTm90RW1wdHlWYWx1ZSB9IGZyb20gXCJrd2lraWQtdG9vbGtpdFwiO1xuaW1wb3J0IHsgRUxvZ0V2ZW50VHlwZSB9IGZyb20gXCIuL3JlbmRlcmVyLmRlZmluaXRpb25zXCI7XG5cbmV4cG9ydCBjb25zdCBnZXRGb3JtQ29uZmlnQnlLZXkgPSAoZm9ybXM6IGFueVtdLCBrZXk6IHN0cmluZykgPT4ge1xuICBjb25zdCBmb3JtID0gZm9ybXMuZmluZCgoZm9ybSkgPT4ge1xuICAgIHJldHVybiBmb3JtLmtleSA9PT0ga2V5O1xuICB9KTtcblxuICByZXR1cm4gZm9ybTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRFdmVudExvZ3MoXG4gIGV2ZW50VHlwZTogRUxvZ0V2ZW50VHlwZSxcbiAgc3RlcENvbmZpZzogYW55LFxuICBleHRyYXM6IGFueVxuKSB7XG4gIGNvbnN0IGxvZ0xhYmVsID0gW1xuICAgIGV2ZW50VHlwZSxcbiAgICBzdGVwQ29uZmlnPy5mb3JtPy5rZXkgPz8gc3RlcENvbmZpZz8ua2V5ID8/IFwiX1wiLFxuICAgIGV4dHJhcz8uZm9ybV9rZXkgPz8gXCJfXCIsXG4gICAgZXh0cmFzPy5maWVsZF9rZXkgPz8gXCJfXCJcbiAgXVxuICAgIC5maWx0ZXIoKGl0ZW0pID0+IGlzTm90RW1wdHlWYWx1ZShpdGVtKSlcbiAgICAuam9pbihcIiB8IFwiKTtcblxuICByZXR1cm4ge1xuICAgIHR5cGU6IGV2ZW50VHlwZSxcbiAgICBsYWJlbDogYCR7bG9nTGFiZWx9YCxcbiAgICB0aW1lc3RhbXA6IG5ldyBEYXRlKCkuZ2V0VGltZSgpLFxuICAgIGRhdGE6IHtcbiAgICAgIHN0ZXBfa2V5OiBzdGVwQ29uZmlnPy5rZXksXG4gICAgICBzdGVwX3RpdGxlOiBzdGVwQ29uZmlnPy5wcm9wcz8udGl0bGUgPz8gc3RlcENvbmZpZz8udGl0bGUsXG4gICAgICAuLi5leHRyYXNcbiAgICB9XG4gIH07XG59XG4iXX0=