vcomply-workflow-engine 6.0.84 → 6.0.85

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 (97) hide show
  1. package/esm2022/lib/constants/api.constants.mjs +1 -6
  2. package/esm2022/lib/constants/policy.constant.mjs +6 -0
  3. package/esm2022/lib/interfaces/policy.interface.mjs +2 -0
  4. package/esm2022/lib/interfaces/responsibilty.interface.mjs +1 -1
  5. package/esm2022/lib/more-option/more-option.component.mjs +183 -17
  6. package/esm2022/lib/report-a-case/services/report-a-case.service.mjs +2 -3
  7. package/esm2022/lib/report-a-case/workflow-case/workflow-case.component.mjs +7 -4
  8. package/esm2022/lib/services/common.service.mjs +1 -40
  9. package/esm2022/lib/services/iframe.service.mjs +1 -14
  10. package/esm2022/lib/sharedComponents/format-and-evidence/format-and-evidence.component.mjs +21 -10
  11. package/esm2022/lib/sharedComponents/frequency/frequency-annual/frequency-annual.component.mjs +1 -5
  12. package/esm2022/lib/sharedComponents/frequency/frequency-biannual/frequency-biannual.component.mjs +1 -5
  13. package/esm2022/lib/sharedComponents/frequency/frequency-container/frequency-container.component.mjs +5 -5
  14. package/esm2022/lib/sharedComponents/frequency/frequency-daily/frequency-daily.component.mjs +1 -2
  15. package/esm2022/lib/sharedComponents/frequency/frequency-monthly/frequency-monthly.component.mjs +2 -6
  16. package/esm2022/lib/sharedComponents/frequency/frequency-one-time/frequency-one-time.component.mjs +2 -3
  17. package/esm2022/lib/sharedComponents/frequency/frequency-ongoing/frequency-ongoing.component.mjs +1 -3
  18. package/esm2022/lib/sharedComponents/frequency/frequency-quarterly/frequency-quarterly.component.mjs +1 -5
  19. package/esm2022/lib/sharedComponents/frequency/frequency-random/frequency-random.component.mjs +2 -9
  20. package/esm2022/lib/sharedComponents/frequency/frequency-weekly/frequency-weekly.component.mjs +2 -4
  21. package/esm2022/lib/sharedComponents/frequency/frequency.service.mjs +5 -267
  22. package/esm2022/lib/sharedComponents/link-responsibility/link-responsibility.component.mjs +16 -48
  23. package/esm2022/lib/sharedComponents/link-responsibility/link-responsibility.module.mjs +4 -8
  24. package/esm2022/lib/workflow/grc-object/grc-object-container/grc-object-container.component.mjs +17 -45
  25. package/esm2022/lib/workflow/shared/components/grc-category-listing/grc-category-listing.component.mjs +10 -13
  26. package/esm2022/lib/workflow/shared/components/program-responsibility-listing/program-responsibility-listing.component.mjs +35 -62
  27. package/esm2022/lib/workflow/shared/services/grc.service.mjs +2 -15
  28. package/esm2022/lib/workflow/shared/workflow-pipes/workflow-pipes.module.mjs +3 -8
  29. package/esm2022/lib/workflow-compliance/workflow-compliance.component.mjs +411 -283
  30. package/esm2022/lib/workflow-engine-container/api-constants.mjs +2 -3
  31. package/esm2022/lib/workflow-engine-container/workflow-engine-container.component.mjs +53 -32
  32. package/esm2022/lib/workflow-engine.module.mjs +6 -13
  33. package/esm2022/lib/workflow-policy/workflow-policy.component.mjs +29 -46
  34. package/esm2022/lib/workflow-program/constants.mjs +3 -3
  35. package/esm2022/lib/workflow-program/workflow-program.component.mjs +338 -123
  36. package/esm2022/lib/workflow-services/policy.service.mjs +9 -8
  37. package/esm2022/lib/workflow-services/programs.service.mjs +113 -26
  38. package/esm2022/lib/workflow-services/responsibility.service.mjs +56 -60
  39. package/fesm2022/vcomply-workflow-engine.mjs +14612 -14860
  40. package/fesm2022/vcomply-workflow-engine.mjs.map +1 -1
  41. package/lib/constants/api.constants.d.ts +0 -5
  42. package/lib/constants/policy.constant.d.ts +2 -0
  43. package/lib/interfaces/policy.interface.d.ts +5 -0
  44. package/lib/interfaces/responsibilty.interface.d.ts +13 -13
  45. package/lib/services/common.service.d.ts +0 -28
  46. package/lib/services/iframe.service.d.ts +0 -6
  47. package/lib/sharedComponents/format-and-evidence/format-and-evidence.component.d.ts +4 -1
  48. package/lib/sharedComponents/frequency/frequency-random/frequency-random.component.d.ts +0 -1
  49. package/lib/sharedComponents/frequency/frequency.service.d.ts +2 -92
  50. package/lib/sharedComponents/link-responsibility/link-responsibility.component.d.ts +1 -2
  51. package/lib/sharedComponents/link-responsibility/link-responsibility.module.d.ts +1 -2
  52. package/lib/workflow/grc-object/grc-object-container/grc-object-container.component.d.ts +1 -5
  53. package/lib/workflow/shared/components/grc-category-listing/grc-category-listing.component.d.ts +1 -3
  54. package/lib/workflow/shared/components/program-responsibility-listing/program-responsibility-listing.component.d.ts +2 -6
  55. package/lib/workflow/shared/services/grc.service.d.ts +0 -1
  56. package/lib/workflow/shared/workflow-pipes/workflow-pipes.module.d.ts +2 -3
  57. package/lib/workflow-compliance/workflow-compliance.component.d.ts +6 -32
  58. package/lib/workflow-engine-container/api-constants.d.ts +0 -1
  59. package/lib/workflow-engine-container/workflow-engine-container.component.d.ts +2 -5
  60. package/lib/workflow-engine.module.d.ts +40 -42
  61. package/lib/workflow-policy/workflow-policy.component.d.ts +0 -9
  62. package/lib/workflow-program/workflow-program.component.d.ts +4 -8
  63. package/lib/workflow-risk/workflow-risk.component.d.ts +1 -1
  64. package/lib/workflow-services/policy.service.d.ts +1 -1
  65. package/lib/workflow-services/programs.service.d.ts +53 -13
  66. package/lib/workflow-services/responsibility.service.d.ts +4 -17
  67. package/package.json +1 -1
  68. package/esm2022/lib/constants/mock.mjs +0 -152
  69. package/esm2022/lib/interfaces/frequency.interface.mjs +0 -2
  70. package/esm2022/lib/interfaces/iframe-type.mjs +0 -7
  71. package/esm2022/lib/sharedComponents/list-container/list-container.component.mjs +0 -52
  72. package/esm2022/lib/sharedComponents/program-list/constant.mjs +0 -16
  73. package/esm2022/lib/sharedComponents/program-list/interfaces/data-source.interface.mjs +0 -2
  74. package/esm2022/lib/sharedComponents/program-list/interfaces/list-item.interface.mjs +0 -2
  75. package/esm2022/lib/sharedComponents/program-list/pipes/check-selected-items.pipes.mjs +0 -23
  76. package/esm2022/lib/sharedComponents/program-list/program-list/program-list.component.mjs +0 -182
  77. package/esm2022/lib/sharedComponents/program-list/program-list.module.mjs +0 -47
  78. package/esm2022/lib/sharedComponents/program-list/services/list-utils.service.mjs +0 -27
  79. package/esm2022/lib/sharedComponents/program-list/services/program-list-api.service.mjs +0 -32
  80. package/esm2022/lib/ui-kit/loaders/loaders.module.mjs +0 -24
  81. package/esm2022/lib/ui-kit/loaders/table-loader/table-loader.component.mjs +0 -19
  82. package/esm2022/lib/workflow/shared/workflow-pipes/get-user-details.pipe.mjs +0 -26
  83. package/lib/constants/mock.d.ts +0 -15
  84. package/lib/interfaces/frequency.interface.d.ts +0 -37
  85. package/lib/interfaces/iframe-type.d.ts +0 -5
  86. package/lib/sharedComponents/list-container/list-container.component.d.ts +0 -9
  87. package/lib/sharedComponents/program-list/constant.d.ts +0 -9
  88. package/lib/sharedComponents/program-list/interfaces/data-source.interface.d.ts +0 -4
  89. package/lib/sharedComponents/program-list/interfaces/list-item.interface.d.ts +0 -5
  90. package/lib/sharedComponents/program-list/pipes/check-selected-items.pipes.d.ts +0 -7
  91. package/lib/sharedComponents/program-list/program-list/program-list.component.d.ts +0 -45
  92. package/lib/sharedComponents/program-list/program-list.module.d.ts +0 -14
  93. package/lib/sharedComponents/program-list/services/list-utils.service.d.ts +0 -7
  94. package/lib/sharedComponents/program-list/services/program-list-api.service.d.ts +0 -14
  95. package/lib/ui-kit/loaders/loaders.module.d.ts +0 -8
  96. package/lib/ui-kit/loaders/table-loader/table-loader.component.d.ts +0 -9
  97. package/lib/workflow/shared/workflow-pipes/get-user-details.pipe.d.ts +0 -7
@@ -91,50 +91,48 @@ import * as i87 from "./sharedComponents/approval-workflow/approval-create-form/
91
91
  import * as i88 from "./sharedComponents/link-program/link-program/link-program.component";
92
92
  import * as i89 from "./sharedComponents/link-program/tooltip-validation.pipe";
93
93
  import * as i90 from "./link-related-policies/link-related-policies.component";
94
- import * as i91 from "./sharedComponents/list-container/list-container.component";
95
- import * as i92 from "@angular/forms";
96
- import * as i93 from "./sharedComponents/assessment-editor/create-assessment.module";
97
- import * as i94 from "@vcomply/editor";
98
- import * as i95 from "@angular/common";
99
- import * as i96 from "./formgroup/formgroup.module";
100
- import * as i97 from "./ui-kit/tooltip/tooltip.module";
101
- import * as i98 from "./ui-kit/popover/popover.module";
102
- import * as i99 from "./ui-kit/line-loader/line-loader.module";
103
- import * as i100 from "./formgroup/select/select.module";
104
- import * as i101 from "ngx-material-timepicker";
105
- import * as i102 from "ng2-date-picker";
106
- import * as i103 from "./sharedComponents/no-data/no-data.module";
107
- import * as i104 from "./sharedComponents/v-loader/v-loader.module";
108
- import * as i105 from "./ui-kit/smiley-dialog/smiley-dialog.module";
109
- import * as i106 from "./ui-kit/snack-bar/snack-bar.module";
110
- import * as i107 from "@angular/common/http";
111
- import * as i108 from "./ui-kit/smiley-dialog-inline/smiley-dialog-inline.module";
112
- import * as i109 from "./ui-kit/click-outside/click-outside.module";
113
- import * as i110 from "./ui-kit/popover-hover/popover-hover.module";
114
- import * as i111 from "./ui-kit/pagination/pagination.module";
115
- import * as i112 from "./ui-kit/action-dialog/action-dialog.module";
116
- import * as i113 from "./sharedComponents/assessment-preview/assessment-preview.module";
117
- import * as i114 from "./workflow-program/create-program-ui/create-program-ui.module";
118
- import * as i115 from "./ui-kit/directive/directive.module";
119
- import * as i116 from "./workflow/grc-object/grc-object.module";
120
- import * as i117 from "./sharedComponents/responsibility-centers-list/rc-list.module";
121
- import * as i118 from "./pipes/pipes.module";
122
- import * as i119 from "./sharedComponents/floating-bar/floating-bar.module";
123
- import * as i120 from "./sharedComponents/group-users-list/group-users-list.component";
124
- import * as i121 from "./sharedComponents/list-loader/list-loader.module";
125
- import * as i122 from "./workflow/shared/components/grc-object-list/grc-object-list.component";
126
- import * as i123 from "./ui-kit/time-picker/time-picker.module";
127
- import * as i124 from "./ui-kit/multi-select/multi-select.module";
128
- import * as i125 from "./sharedComponents/policy-template/policy-template.module";
129
- import * as i126 from "./report-a-case/report-case.module";
130
- import * as i127 from "./sharedComponents/format-and-evidence/format-and-evidence.module";
131
- import * as i128 from "./sharedComponents/checkbox-list/checkbox-list.module";
132
- import * as i129 from "./sharedComponents/radio-list-with-pagination/radio-list-with-pagination.module";
133
- import * as i130 from "./sharedComponents/link-responsibility/link-responsibility.module";
134
- import * as i131 from "./sharedComponents/program-list/program-list.module";
94
+ import * as i91 from "@angular/forms";
95
+ import * as i92 from "./sharedComponents/assessment-editor/create-assessment.module";
96
+ import * as i93 from "@vcomply/editor";
97
+ import * as i94 from "@angular/common";
98
+ import * as i95 from "./formgroup/formgroup.module";
99
+ import * as i96 from "./ui-kit/tooltip/tooltip.module";
100
+ import * as i97 from "./ui-kit/popover/popover.module";
101
+ import * as i98 from "./ui-kit/line-loader/line-loader.module";
102
+ import * as i99 from "./formgroup/select/select.module";
103
+ import * as i100 from "ngx-material-timepicker";
104
+ import * as i101 from "ng2-date-picker";
105
+ import * as i102 from "./sharedComponents/no-data/no-data.module";
106
+ import * as i103 from "./sharedComponents/v-loader/v-loader.module";
107
+ import * as i104 from "./ui-kit/smiley-dialog/smiley-dialog.module";
108
+ import * as i105 from "./ui-kit/snack-bar/snack-bar.module";
109
+ import * as i106 from "@angular/common/http";
110
+ import * as i107 from "./ui-kit/smiley-dialog-inline/smiley-dialog-inline.module";
111
+ import * as i108 from "./ui-kit/click-outside/click-outside.module";
112
+ import * as i109 from "./ui-kit/popover-hover/popover-hover.module";
113
+ import * as i110 from "./ui-kit/pagination/pagination.module";
114
+ import * as i111 from "./ui-kit/action-dialog/action-dialog.module";
115
+ import * as i112 from "./sharedComponents/assessment-preview/assessment-preview.module";
116
+ import * as i113 from "./workflow-program/create-program-ui/create-program-ui.module";
117
+ import * as i114 from "./ui-kit/directive/directive.module";
118
+ import * as i115 from "./workflow/grc-object/grc-object.module";
119
+ import * as i116 from "./sharedComponents/responsibility-centers-list/rc-list.module";
120
+ import * as i117 from "./pipes/pipes.module";
121
+ import * as i118 from "./sharedComponents/floating-bar/floating-bar.module";
122
+ import * as i119 from "./sharedComponents/group-users-list/group-users-list.component";
123
+ import * as i120 from "./sharedComponents/list-loader/list-loader.module";
124
+ import * as i121 from "./workflow/shared/components/grc-object-list/grc-object-list.component";
125
+ import * as i122 from "./ui-kit/time-picker/time-picker.module";
126
+ import * as i123 from "./ui-kit/multi-select/multi-select.module";
127
+ import * as i124 from "./sharedComponents/policy-template/policy-template.module";
128
+ import * as i125 from "./report-a-case/report-case.module";
129
+ import * as i126 from "./sharedComponents/format-and-evidence/format-and-evidence.module";
130
+ import * as i127 from "./sharedComponents/checkbox-list/checkbox-list.module";
131
+ import * as i128 from "./sharedComponents/radio-list-with-pagination/radio-list-with-pagination.module";
132
+ import * as i129 from "./sharedComponents/link-responsibility/link-responsibility.module";
135
133
  export declare class VComplyWorkflowEngineModule {
136
134
  static forRoot(environmentConfig: Configurations): ModuleWithProviders<VComplyWorkflowEngineModule>;
137
135
  static ɵfac: i0.ɵɵFactoryDeclaration<VComplyWorkflowEngineModule, never>;
138
- static ɵmod: i0.ɵɵNgModuleDeclaration<VComplyWorkflowEngineModule, [typeof i1.WorkflowEngineContainerComponent, typeof i2.WorkflowRiskComponent, typeof i3.WorkflowComplianceComponent, typeof i4.WorkflowPolicyComponent, typeof i5.MoreOptionComponent, typeof i6.OwnerListComponent, typeof i7.UserRadioListComponent, typeof i8.CategoryListComponent, typeof i9.CategoryMultiSelectComponent, typeof i10.WorkflowPaginationComponent, typeof i11.AddMultipleRiskComponent, typeof i12.BulkViewComponent, typeof i13.CheckpointsComponent, typeof i14.ConfirmationAlertComponent, typeof i15.CheckpointsQuestionsComponent, typeof i16.CheckpointsListComponent, typeof i17.ReviewFrequencyComponent, typeof i18.FrequencyContainerComponent, typeof i19.FrequencyDailyComponent, typeof i20.FrequencyWeeklyComponent, typeof i21.FrequencyMonthlyComponent, typeof i22.FrequencyQuarterlyComponent, typeof i23.FrequencyBiannualComponent, typeof i24.FrequencyAnnualComponent, typeof i25.FrequencyOneTimeComponent, typeof i26.FrequencyRandomComponent, typeof i27.FrequencyOnCompletionOfComponent, typeof i28.FrequencyOngoingComponent, typeof i29.FrequencyTopComponent, typeof i30.FrequencyLifecycleComponent, typeof i31.FrequencyDueDateComponent, typeof i32.FrequencyCheckboxListComponent, typeof i33.FrequencyRadioListComponent, typeof i34.AddMultipleResponsibilityComponent, typeof i35.BulkResponsibilityViewComponent, typeof i36.CheckpointsPolicyContainerComponent, typeof i37.CheckpointsPolicyListComponent, typeof i38.CheckpointsPolicyQuestionsComponent, typeof i39.WorkflowSurveyFormComponent, typeof i40.LogAnIssueComponent, typeof i41.FilterPipe, typeof i42.RadioListComponent, typeof i43.CreateDocumentsComponent, typeof i44.FrameworkListComponent, typeof i45.ParentTableComponent, typeof i46.CheckpointFloatingBarComponent, typeof i47.RiskClassificationComponent, typeof i48.ShortMergePipe, typeof i49.FormatHtmlPipe, typeof i50.WithinDataPipe, typeof i51.rcTreeToolTipPipe, typeof i52.ResponsibilityRiskSelectorComponent, typeof i53.ArrayFilterPipe, typeof i54.AuditCategoryListComponent, typeof i55.DocumentSectionComponent, typeof i55.DocumentSectionComponent, typeof i56.WorkflowAssessmentComponent, typeof i57.ImportAnAssessmentComponent, typeof i58.AssessmentListComponent, typeof i59.AssessmentListLoaderComponent, typeof i60.AssessmentListSubLoaderComponent, typeof i61.ProgramListingComponent, typeof i62.WorkflowProgramComponent, typeof i63.RolesListComponent, typeof i64.FrameworkListTableComponent, typeof i65.FrameworkResponsibilityTableComponent, typeof i66.FrameworkTableLoaderComponent, typeof i67.ArrayConcatPipe, typeof i68.SpaceTrimPipe, typeof i69.FrequencyDialogContainerComponent, typeof i70.FrequencyDialogWeeklyComponent, typeof i71.FrequencyDialogTopComponent, typeof i72.FrequencyDialogDueDateComponent, typeof i73.FrequencyDialogCheckboxListComponent, typeof i74.FrequencyDialogMonthlyComponent, typeof i75.FrequencyDialogQuarterlyComponent, typeof i76.FrequencyDialogRadioListComponent, typeof i77.FrequencyDialogBiannualComponent, typeof i78.FrequencyDialogAnnualComponent, typeof i79.FrequencyDialogOneTimeComponent, typeof i80.AddMultipleResponsibilityContainerComponent, typeof i81.AddMultipleResponsibilityWithTabComponent, typeof i82.FrequencyResponsibilityListComponent, typeof i83.ApprovalWorkflowComponent, typeof i84.SelectApproversComponent, typeof i85.PolicyAccessComponent, typeof i86.ApprovalWorkflowListComponent, typeof i87.ApprovalCreateFormComponent, typeof i88.LinkProgramComponent, typeof i89.TooltipValidationPipe, typeof i90.LinkRelatedPoliciesComponent, typeof i91.ListContainerComponent], [typeof i92.ReactiveFormsModule, typeof i93.CreateAssessmentModule, typeof i94.VcomplyEditorModule, typeof i95.CommonModule, typeof i96.FormgroupModule, typeof i97.TooltipModule, typeof i98.PopoverModule, typeof i99.LineLoaderModule, typeof i92.FormsModule, typeof i100.SelectModule, typeof i101.NgxMaterialTimepickerModule, typeof i102.DpDatePickerModule, typeof i103.NoDataModule, typeof i104.VLoaderModule, typeof i105.SmileyDialogModule, typeof i106.SnackBarModule, typeof i107.HttpClientModule, typeof i108.SmileyDialogInlineModule, typeof i109.ClickOutsideModule, typeof i110.PopoverHoverModule, typeof i111.PaginationModule, typeof i93.CreateAssessmentModule, typeof i112.ActionDialogModule, typeof i113.AssessmentPreviewModule, typeof i114.CreateProgramUiModule, typeof i115.DirectiveModule, typeof i116.GrcObjectModule, typeof i117.RcListModule, typeof i118.PipesModule, typeof i119.FloatingBarModule, typeof i120.GroupUsersListComponent, typeof i121.ListLoaderModule, typeof i122.GrcObjectListComponent, typeof i123.TimePickerModule, typeof i124.MultiSelectModule, typeof i125.PolicyTemplateModule, typeof i126.ReportCaseModule, typeof i127.FormatAndEvidenceModule, typeof i128.CheckboxListModule, typeof i129.RadioListWithPaginationModule, typeof i130.LinkResponsibilityModule, typeof i131.ProgramListModule], [typeof i1.WorkflowEngineContainerComponent]>;
136
+ static ɵmod: i0.ɵɵNgModuleDeclaration<VComplyWorkflowEngineModule, [typeof i1.WorkflowEngineContainerComponent, typeof i2.WorkflowRiskComponent, typeof i3.WorkflowComplianceComponent, typeof i4.WorkflowPolicyComponent, typeof i5.MoreOptionComponent, typeof i6.OwnerListComponent, typeof i7.UserRadioListComponent, typeof i8.CategoryListComponent, typeof i9.CategoryMultiSelectComponent, typeof i10.WorkflowPaginationComponent, typeof i11.AddMultipleRiskComponent, typeof i12.BulkViewComponent, typeof i13.CheckpointsComponent, typeof i14.ConfirmationAlertComponent, typeof i15.CheckpointsQuestionsComponent, typeof i16.CheckpointsListComponent, typeof i17.ReviewFrequencyComponent, typeof i18.FrequencyContainerComponent, typeof i19.FrequencyDailyComponent, typeof i20.FrequencyWeeklyComponent, typeof i21.FrequencyMonthlyComponent, typeof i22.FrequencyQuarterlyComponent, typeof i23.FrequencyBiannualComponent, typeof i24.FrequencyAnnualComponent, typeof i25.FrequencyOneTimeComponent, typeof i26.FrequencyRandomComponent, typeof i27.FrequencyOnCompletionOfComponent, typeof i28.FrequencyOngoingComponent, typeof i29.FrequencyTopComponent, typeof i30.FrequencyLifecycleComponent, typeof i31.FrequencyDueDateComponent, typeof i32.FrequencyCheckboxListComponent, typeof i33.FrequencyRadioListComponent, typeof i34.AddMultipleResponsibilityComponent, typeof i35.BulkResponsibilityViewComponent, typeof i36.CheckpointsPolicyContainerComponent, typeof i37.CheckpointsPolicyListComponent, typeof i38.CheckpointsPolicyQuestionsComponent, typeof i39.WorkflowSurveyFormComponent, typeof i40.LogAnIssueComponent, typeof i41.FilterPipe, typeof i42.RadioListComponent, typeof i43.CreateDocumentsComponent, typeof i44.FrameworkListComponent, typeof i45.ParentTableComponent, typeof i46.CheckpointFloatingBarComponent, typeof i47.RiskClassificationComponent, typeof i48.ShortMergePipe, typeof i49.FormatHtmlPipe, typeof i50.WithinDataPipe, typeof i51.rcTreeToolTipPipe, typeof i52.ResponsibilityRiskSelectorComponent, typeof i53.ArrayFilterPipe, typeof i54.AuditCategoryListComponent, typeof i55.DocumentSectionComponent, typeof i55.DocumentSectionComponent, typeof i56.WorkflowAssessmentComponent, typeof i57.ImportAnAssessmentComponent, typeof i58.AssessmentListComponent, typeof i59.AssessmentListLoaderComponent, typeof i60.AssessmentListSubLoaderComponent, typeof i61.ProgramListingComponent, typeof i62.WorkflowProgramComponent, typeof i63.RolesListComponent, typeof i64.FrameworkListTableComponent, typeof i65.FrameworkResponsibilityTableComponent, typeof i66.FrameworkTableLoaderComponent, typeof i67.ArrayConcatPipe, typeof i68.SpaceTrimPipe, typeof i69.FrequencyDialogContainerComponent, typeof i70.FrequencyDialogWeeklyComponent, typeof i71.FrequencyDialogTopComponent, typeof i72.FrequencyDialogDueDateComponent, typeof i73.FrequencyDialogCheckboxListComponent, typeof i74.FrequencyDialogMonthlyComponent, typeof i75.FrequencyDialogQuarterlyComponent, typeof i76.FrequencyDialogRadioListComponent, typeof i77.FrequencyDialogBiannualComponent, typeof i78.FrequencyDialogAnnualComponent, typeof i79.FrequencyDialogOneTimeComponent, typeof i80.AddMultipleResponsibilityContainerComponent, typeof i81.AddMultipleResponsibilityWithTabComponent, typeof i82.FrequencyResponsibilityListComponent, typeof i83.ApprovalWorkflowComponent, typeof i84.SelectApproversComponent, typeof i85.PolicyAccessComponent, typeof i86.ApprovalWorkflowListComponent, typeof i87.ApprovalCreateFormComponent, typeof i88.LinkProgramComponent, typeof i89.TooltipValidationPipe, typeof i90.LinkRelatedPoliciesComponent], [typeof i91.ReactiveFormsModule, typeof i92.CreateAssessmentModule, typeof i93.VcomplyEditorModule, typeof i94.CommonModule, typeof i95.FormgroupModule, typeof i96.TooltipModule, typeof i97.PopoverModule, typeof i98.LineLoaderModule, typeof i91.FormsModule, typeof i99.SelectModule, typeof i100.NgxMaterialTimepickerModule, typeof i101.DpDatePickerModule, typeof i102.NoDataModule, typeof i103.VLoaderModule, typeof i104.SmileyDialogModule, typeof i105.SnackBarModule, typeof i106.HttpClientModule, typeof i107.SmileyDialogInlineModule, typeof i108.ClickOutsideModule, typeof i109.PopoverHoverModule, typeof i110.PaginationModule, typeof i92.CreateAssessmentModule, typeof i111.ActionDialogModule, typeof i112.AssessmentPreviewModule, typeof i113.CreateProgramUiModule, typeof i114.DirectiveModule, typeof i115.GrcObjectModule, typeof i116.RcListModule, typeof i117.PipesModule, typeof i118.FloatingBarModule, typeof i119.GroupUsersListComponent, typeof i120.ListLoaderModule, typeof i121.GrcObjectListComponent, typeof i122.TimePickerModule, typeof i123.MultiSelectModule, typeof i124.PolicyTemplateModule, typeof i125.ReportCaseModule, typeof i126.FormatAndEvidenceModule, typeof i127.CheckboxListModule, typeof i128.RadioListWithPaginationModule, typeof i129.LinkResponsibilityModule], [typeof i1.WorkflowEngineContainerComponent]>;
139
137
  static ɵinj: i0.ɵɵInjectorDeclaration<VComplyWorkflowEngineModule>;
140
138
  }
@@ -17,7 +17,6 @@ import { OrganizationUserService } from '../workflow-services/organization-user.
17
17
  import { OrganizationCommonService } from '../workflow-services/common-workflow-services/organization-common.service';
18
18
  import { ComplianceCommonService } from '../workflow-services/common-workflow-services/compliance-common.service';
19
19
  import { IframeService } from '../services/iframe.service';
20
- import { ListItem } from '../sharedComponents/program-list/interfaces/list-item.interface';
21
20
  import * as i0 from "@angular/core";
22
21
  export declare class WorkflowPolicyComponent implements OnInit {
23
22
  private policyService;
@@ -226,10 +225,6 @@ export declare class WorkflowPolicyComponent implements OnInit {
226
225
  templateView: boolean;
227
226
  templateUrl: string;
228
227
  isTemplateClosed: boolean;
229
- programListUrl: any;
230
- selectedPrograms: any;
231
- allProgamSelected: ListItem[];
232
- linkProgram: any;
233
228
  constructor(policyService: PolicyService, snackBar: SnackBarService, uiKitService: UiKitService, authService: AuthService, responsibilityService: ResponsibilityService, router: Router, route: ActivatedRoute, frequencyService: FrequencyService, platformLocation: PlatformLocation, changeRef: ChangeDetectorRef, restApiService: RestApiService, commonService: CommonService, organizationUserService: OrganizationUserService, organizationCommonService: OrganizationCommonService, complianceCommonService: ComplianceCommonService, iframeService: IframeService);
234
229
  policyForm: PolicyForm;
235
230
  ngOnInit(): void;
@@ -416,10 +411,6 @@ export declare class WorkflowPolicyComponent implements OnInit {
416
411
  onTemplateSelect(event: any, isPreselected?: boolean): void;
417
412
  setNavigationUrl(): void;
418
413
  navigateToTemplate(): void;
419
- onItemsSelectedChange(items: ListItem[]): void;
420
- selectCategory(): void;
421
- removeProgram(program: any): void;
422
- getLinkProgram(policyId: string): void;
423
414
  static ɵfac: i0.ɵɵFactoryDeclaration<WorkflowPolicyComponent, never>;
424
415
  static ɵcmp: i0.ɵɵComponentDeclaration<WorkflowPolicyComponent, "app-workflow-policy", never, { "mode": { "alias": "mode"; "required": false; }; "policyId": { "alias": "policyId"; "required": false; }; "feature": { "alias": "feature"; "required": false; }; "convertFileData": { "alias": "convertFileData"; "required": false; }; "selectedCategory": { "alias": "selectedCategory"; "required": false; }; "isSendForAttestation": { "alias": "isSendForAttestation"; "required": false; }; "templateId": { "alias": "templateId"; "required": false; }; }, { "pickerChanged": "pickerChanged"; "showConfirmationAlert": "showConfirmationAlert"; "populateOption": "populateOption"; "disconnectRefresh": "disconnectRefresh"; "shiftToEditMode": "shiftToEditMode"; }, never, never, false, never>;
425
416
  }
@@ -11,8 +11,8 @@ export declare class WorkflowProgramComponent implements OnInit {
11
11
  private programService;
12
12
  private authService;
13
13
  private uiKitService;
14
- private changeRef;
15
14
  private iframeService;
15
+ private changeRef;
16
16
  ASSETS: {
17
17
  responsibility_center: string;
18
18
  case_type: string;
@@ -139,7 +139,6 @@ export declare class WorkflowProgramComponent implements OnInit {
139
139
  allowedFeature: any;
140
140
  addToProgramDetails: any;
141
141
  orgDetails: any;
142
- programDetails: any;
143
142
  panelTitleDefaultReviewer: string;
144
143
  panelTitleOwner: string;
145
144
  panelTitleReviewer: string;
@@ -158,7 +157,7 @@ export declare class WorkflowProgramComponent implements OnInit {
158
157
  assignorId: number[];
159
158
  disableReviewerIds: any[];
160
159
  disableOverseerIds: any[];
161
- constructor(fb: UntypedFormBuilder, programService: ProgramsService, authService: AuthService, uiKitService: UiKitService, changeRef: ChangeDetectorRef, iframeService: IframeService);
160
+ constructor(fb: UntypedFormBuilder, programService: ProgramsService, authService: AuthService, uiKitService: UiKitService, iframeService: IframeService, changeRef: ChangeDetectorRef);
162
161
  noWhitespaceValidator(control: UntypedFormControl): {
163
162
  whitespace: boolean;
164
163
  } | null;
@@ -219,6 +218,7 @@ export declare class WorkflowProgramComponent implements OnInit {
219
218
  returnIds(list: any[], key: string): any[];
220
219
  refreshList(): void;
221
220
  removeRole(evt: any): void;
221
+ setDefaultAssignee(evt: any): void;
222
222
  setDefaultAssigneeOnRemove(evt: any, type: any): void;
223
223
  setDefaultReviewer(evt: any): void;
224
224
  setDefaultOverseer(evt: any): void;
@@ -253,7 +253,6 @@ export declare class WorkflowProgramComponent implements OnInit {
253
253
  uniqueByProp(array: any, key: string): unknown[];
254
254
  setList(list: any[], ids: any[], key: string): any;
255
255
  saveProgram(): void;
256
- postIframeMessage(event: string, data: any): void;
257
256
  action(event: string): void;
258
257
  viewPrograms(): void;
259
258
  resetForm(): void;
@@ -262,14 +261,11 @@ export declare class WorkflowProgramComponent implements OnInit {
262
261
  * Get program details when user is trying to edit program
263
262
  */
264
263
  getProgramDetails(): void;
265
- populateProgramDetails(res: any): void;
266
264
  populateMembers(res: any): void;
267
265
  populateGroups(res: any): void;
268
- populateGroupsByGID(programDetails: any, type: string): void;
269
266
  resetAdditionalOption(): void;
270
267
  checkProgramOptionField(): any;
271
268
  enablefeature(): void;
272
- handleDataPopulation(): void;
273
269
  static ɵfac: i0.ɵɵFactoryDeclaration<WorkflowProgramComponent, never>;
274
- static ɵcmp: i0.ɵɵComponentDeclaration<WorkflowProgramComponent, "app-workflow-program", never, { "canFrameworkChange": { "alias": "canFrameworkChange"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "programId": { "alias": "programId"; "required": false; }; "programType": { "alias": "programType"; "required": false; }; "allowedFeature": { "alias": "allowedFeature"; "required": false; }; "addToProgramDetails": { "alias": "addToProgramDetails"; "required": false; }; "orgDetails": { "alias": "orgDetails"; "required": false; }; "programDetails": { "alias": "programDetails"; "required": false; }; }, { "pickerChanged": "pickerChanged"; "populateOption": "populateOption"; "closeWorkflow": "closeWorkflow"; "showConfirmationAlert": "showConfirmationAlert"; "disconnectRefresh": "disconnectRefresh"; "refreshForm": "refreshForm"; "hideElementsFromMoreOptions": "hideElementsFromMoreOptions"; "onRemovingRole": "onRemovingRole"; "disableElementsFromMoreOptions": "disableElementsFromMoreOptions"; }, never, never, false, never>;
270
+ static ɵcmp: i0.ɵɵComponentDeclaration<WorkflowProgramComponent, "app-workflow-program", never, { "canFrameworkChange": { "alias": "canFrameworkChange"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "programId": { "alias": "programId"; "required": false; }; "programType": { "alias": "programType"; "required": false; }; "allowedFeature": { "alias": "allowedFeature"; "required": false; }; "addToProgramDetails": { "alias": "addToProgramDetails"; "required": false; }; "orgDetails": { "alias": "orgDetails"; "required": false; }; }, { "pickerChanged": "pickerChanged"; "populateOption": "populateOption"; "closeWorkflow": "closeWorkflow"; "showConfirmationAlert": "showConfirmationAlert"; "disconnectRefresh": "disconnectRefresh"; "refreshForm": "refreshForm"; "hideElementsFromMoreOptions": "hideElementsFromMoreOptions"; "onRemovingRole": "onRemovingRole"; "disableElementsFromMoreOptions": "disableElementsFromMoreOptions"; }, never, never, false, never>;
275
271
  }
@@ -167,7 +167,7 @@ export declare class WorkflowRiskComponent implements OnInit {
167
167
  setPopupButtons(): void;
168
168
  getRiskDetails(riskId: any): void;
169
169
  populateOptionalFields(): void;
170
- setCategoryType(type: any): "strategic" | "compliance" | "others" | "operational";
170
+ setCategoryType(type: any): "compliance" | "strategic" | "operational" | "others";
171
171
  getRCList(): void;
172
172
  getCategoryList(): void;
173
173
  getOwnersList(): void;
@@ -24,13 +24,13 @@ export declare class PolicyService {
24
24
  uploadFile(data: any, id: string, path: string): import("rxjs").Observable<Object>;
25
25
  uploadDocxFile(data: any, id: string, path: string): import("rxjs").Observable<Object>;
26
26
  savePolicyDetails(uname: any, uid: any, id: any, name: any, html: any, isSendForApprove: any): import("rxjs").Observable<Object>;
27
+ fileSizeLimit(file: File): boolean;
27
28
  editPolicy(id: any): import("rxjs").Observable<any[]>;
28
29
  updatePolicy(payload: any, policyId: any): import("rxjs").Observable<any>;
29
30
  extractFile(extension: any, path: any, id: any): import("rxjs").Observable<Object>;
30
31
  createApprovalWorkflow(payload: any): import("rxjs").Observable<any>;
31
32
  editApprovalWorkflow(payload: any, id: string): import("rxjs").Observable<any>;
32
33
  LinkedPoliciesList(policyId: string): import("rxjs").Observable<Object>;
33
- getLinkedPrograms(policyId: string): import("rxjs").Observable<Object>;
34
34
  static ɵfac: i0.ɵɵFactoryDeclaration<PolicyService, [null, null, { optional: true; }]>;
35
35
  static ɵprov: i0.ɵɵInjectableDeclaration<PolicyService>;
36
36
  }
@@ -29,20 +29,61 @@ export declare class ProgramsService {
29
29
  };
30
30
  saveProgram(payload: any): import("rxjs").Observable<any[]>;
31
31
  buildPayload(formData: any, instance: any): {
32
+ mode: string;
32
33
  name: any;
33
- type: string;
34
- description: any;
35
- owners: {
36
- admins: {
37
- users: any;
38
- userGroups: any;
39
- };
40
- managers: {
41
- users: any;
42
- userGroups: any;
43
- };
34
+ description: {
35
+ text: any;
36
+ attachments: any;
44
37
  };
45
- customFields: any;
38
+ program_objective: {
39
+ text: any;
40
+ attachments: any;
41
+ };
42
+ roles: any;
43
+ owners: any;
44
+ owners_group: any;
45
+ all_user_in_role: any;
46
+ programType: any;
47
+ state: any;
48
+ approvers: any;
49
+ calculate_past_upcoming_event: any;
50
+ program_frequency: number;
51
+ lock_scope: number;
52
+ rc_ids: any;
53
+ assignee_ids: any;
54
+ assignee_group_ids: any;
55
+ default_assignee_ids: any;
56
+ default_assignee_group_ids: any;
57
+ default_assignee_type: any;
58
+ reviewers: any;
59
+ reviewer_group_ids: any;
60
+ default_reviewers: any;
61
+ default_reviewer_group_ids: any;
62
+ default_reviewers_type: any;
63
+ overseers: {
64
+ cc_email: any;
65
+ cc_email_groups: any;
66
+ failure_cc_email: never[];
67
+ failure_cc_email_groups: never[];
68
+ };
69
+ default_overseers: {
70
+ cc_email: any;
71
+ cc_email_groups: any;
72
+ failure_cc_email: any;
73
+ failure_cc_email_groups: any;
74
+ };
75
+ assessment: any;
76
+ evidence_upload_flag: number;
77
+ is_key_evidence: any;
78
+ custom_fields: any;
79
+ framework: {
80
+ _id: any;
81
+ framework_name: any;
82
+ type: any;
83
+ in_scope: any;
84
+ out_scope: any;
85
+ }[];
86
+ _id: any;
46
87
  };
47
88
  generateAssessment(assessment: any): any;
48
89
  getFramework(input: any): {
@@ -67,7 +108,6 @@ export declare class ProgramsService {
67
108
  */
68
109
  updateProgram(payload: any, id: string): import("rxjs").Observable<any[]>;
69
110
  getMemeberByIds(ids: any): import("rxjs").Observable<any[]>;
70
- getMemeberByUIds(ids: any): import("rxjs").Observable<any[]>;
71
111
  getMemberByGroups(ids: any): import("rxjs").Observable<any[]>;
72
112
  static ɵfac: i0.ɵɵFactoryDeclaration<ProgramsService, [null, null, { optional: true; }]>;
73
113
  static ɵprov: i0.ɵɵInjectableDeclaration<ProgramsService>;
@@ -4,15 +4,12 @@ import { AuthService } from './auth.service';
4
4
  import { AssessmentList } from '../sharedComponents/assessment-list/service/assessment.interface';
5
5
  import { BehaviorSubject, Observable } from 'rxjs';
6
6
  import { Responsibility } from '../interfaces/responsibilty.interface';
7
- import { GrcService } from '../workflow/shared/services/grc.service';
8
7
  import * as i0 from "@angular/core";
9
8
  export declare class ResponsibilityService {
10
9
  private http;
11
10
  private authService;
12
- private grcService;
13
11
  env: any;
14
12
  dataPerPage: number;
15
- responsibilityPageNumber: number;
16
13
  grcOwners$: BehaviorSubject<any>;
17
14
  RCList: BehaviorSubject<any>;
18
15
  AssignorList: BehaviorSubject<any>;
@@ -21,7 +18,7 @@ export declare class ResponsibilityService {
21
18
  AssuranceCategoryList: BehaviorSubject<any>;
22
19
  private overseerList;
23
20
  private policyGroups;
24
- constructor(http: HttpClient, authService: AuthService, grcService: GrcService, config?: Configurations);
21
+ constructor(http: HttpClient, authService: AuthService, config?: Configurations);
25
22
  getResponsibilityCenterList(params?: HttpParams): Observable<any>;
26
23
  getOrganizationGroups(params?: HttpParams): Observable<any>;
27
24
  getOrganizationPolicyGroups(params?: HttpParams): Observable<any>;
@@ -34,6 +31,7 @@ export declare class ResponsibilityService {
34
31
  getProgramsListCount(params: HttpParams, ids?: any): Observable<any[]>;
35
32
  getCategoriesUnderProgram(params: HttpParams): Observable<any[]>;
36
33
  getAssurance(): Observable<any>;
34
+ getAssuranceForRequiresAudit(): Observable<any>;
37
35
  getRCDetailsOfFramework(rc_id: any, category_id: any): Observable<Object>;
38
36
  submitEntrust(entrust_body: any): Observable<Object>;
39
37
  updateEntrust(entrust_body: any, object_id: any, isDelegate: any): Observable<Object>;
@@ -58,18 +56,7 @@ export declare class ResponsibilityService {
58
56
  addGRCObject(payload: any): Observable<any[]>;
59
57
  updateGRCObject(payload: any, _id: string): Observable<any[]>;
60
58
  buildResponsibilityPayload(event: any): Responsibility | null;
61
- getOverseer(event: any): {
62
- success: {
63
- userId: any;
64
- userGroupId: any;
65
- };
66
- fail: {
67
- userId: any;
68
- userGroupId: any;
69
- };
70
- } | undefined;
71
- transformData(input: any): any;
72
- getAllResponsibilities(): Observable<any[]>;
73
- static ɵfac: i0.ɵɵFactoryDeclaration<ResponsibilityService, [null, null, null, { optional: true; }]>;
59
+ getRiskClass(riskClass: 0 | 1 | 2 | 3): 'low' | 'low-medium' | 'medium-high' | 'high';
60
+ static ɵfac: i0.ɵɵFactoryDeclaration<ResponsibilityService, [null, null, { optional: true; }]>;
74
61
  static ɵprov: i0.ɵɵInjectableDeclaration<ResponsibilityService>;
75
62
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vcomply-workflow-engine",
3
- "version": "6.0.84",
3
+ "version": "6.0.85",
4
4
  "peerDependencies": {
5
5
  "@angular/common": " 12.x || 13.x || 14.x || 15.x || 16.x || 17.x || 18.x || 19.x ",
6
6
  "@angular/core": " 12.x || 13.x || 14.x || 15.x || 16.x || 17.x || 18.x || 19.x "
@@ -1,152 +0,0 @@
1
- export const MOCK_PROGRAMS = [
2
- {
3
- "id": "A2B4C6",
4
- "name": "P1",
5
- "type": "regulations",
6
- },
7
- {
8
- "id": "X7Y9Z8",
9
- "name": "Standard A",
10
- "type": "standards",
11
- },
12
- {
13
- "id": "G7H2J9",
14
- "name": "Internal Control B",
15
- "type": "internal_controls",
16
- },
17
- {
18
- "id": "K4L6M1",
19
- "name": "Other Document C",
20
- "type": "others",
21
- },
22
- {
23
- "id": "N8P5Q7",
24
- "name": "Regulation X",
25
- "type": "regulations",
26
- },
27
- {
28
- "id": "R3S9T4",
29
- "name": "Standard Y",
30
- "type": "standards",
31
- },
32
- {
33
- "id": "U6V2W8",
34
- "name": "Internal Control Z",
35
- "type": "internal_controls",
36
- },
37
- {
38
- "id": "B9C4D7",
39
- "name": "Other Document D",
40
- "type": "others",
41
- },
42
- {
43
- "id": "E5F8H2",
44
- "name": "Regulation AA",
45
- "type": "regulations",
46
- },
47
- {
48
- "id": "J3K7L4",
49
- "name": "Standard BB",
50
- "type": "standards",
51
- },
52
- {
53
- "id": "M6N9P5",
54
- "name": "Internal Control CC",
55
- "type": "internal_controls",
56
- },
57
- {
58
- "id": "Q2R8S3",
59
- "name": "Other Document E",
60
- "type": "others",
61
- },
62
- {
63
- "id": "T7U4V1",
64
- "name": "Regulation BB",
65
- "type": "regulations",
66
- },
67
- {
68
- "id": "W5X8Y6",
69
- "name": "Standard CC",
70
- "type": "standards",
71
- },
72
- {
73
- "id": "Z2A6B9",
74
- "name": "Internal Control DD",
75
- "type": "internal_controls",
76
- },
77
- {
78
- "id": "C4D7E2",
79
- "name": "Other Document F",
80
- "type": "others",
81
- },
82
- ];
83
- export const MOCK_CATEGORIES = [
84
- { id: "A2B4C6", name: "P1", description: "Primary regulation document", level: 1, parent: null },
85
- { id: "D5E8F3", name: "Standard A", description: "Industry standard document", level: 1, parent: "A2B4C6" },
86
- { id: "G7H2J9", name: "Internal Control B", description: "Internal guidelines", level: 1, parent: "A2B4C6" },
87
- { id: "K4L6M1", name: "Other Document C", description: "Miscellaneous document", level: 1, parent: "A2B4C6" },
88
- { id: "N8P5Q7", name: "Regulation X", description: "Legal framework", level: 2, parent: "A2B4C6" },
89
- { id: "R3S9T4", name: "Standard Y", description: "Updated standard", level: 2, parent: "D5E8F3" },
90
- { id: "U6V2W8", name: "Internal Control Z", description: "Control procedures", level: 2, parent: "G7H2J9" },
91
- { id: "B9C4D7", name: "Other Document D", description: "General information", level: 2, parent: "K4L6M1" },
92
- { id: "E5F8H2", name: "Regulation AA", description: "Supplementary regulation", level: 3, parent: "N8P5Q7" },
93
- { id: "J3K7L4", name: "Standard BB", description: "New compliance standard", level: 3, parent: "R3S9T4" },
94
- { id: "M6N9P5", name: "Internal Control CC", description: "Advanced controls", level: 3, parent: "U6V2W8" },
95
- { id: "Q2R8S3", name: "Other Document E", description: "Additional reference", level: 3, parent: "B9C4D7" },
96
- { id: "T7U4V1", name: "Regulation BB", description: "Regulatory expansion", level: 4, parent: "E5F8H2" },
97
- { id: "W5X8Y6", name: "Standard CC", description: "Industry benchmark", level: 4, parent: "J3K7L4" },
98
- { id: "Z2A6B9", name: "Internal Control DD", description: "Internal audit policies", level: 4, parent: "M6N9P5" },
99
- { id: "C4D7E2", name: "Other Document F", description: "Extra documentation", level: 4, parent: "Q2R8S3" },
100
- { id: "F8H3J6", name: "Regulation CC", description: "Additional compliance rules", level: 5, parent: "T7U4V1" },
101
- { id: "K5L9M4", name: "Standard DD", description: "Revised guidelines", level: 5, parent: "W5X8Y6" },
102
- { id: "N2P6Q8", name: "Internal Control EE", description: "Operational security measures", level: 5, parent: "Z2A6B9" },
103
- { id: "R7S3T5", name: "Other Document G", description: "Supplementary notes", level: 5, parent: "C4D7E2" }
104
- ];
105
- function addParentTreeToCategories(categories) {
106
- // Create a map for quick lookup of categories by ID
107
- const categoryMap = new Map(categories.map(category => [category.id, category]));
108
- function getParentTree(category) {
109
- const parentTree = [];
110
- let currentParent = category.parent;
111
- while (currentParent) {
112
- const parentCategory = categoryMap.get(currentParent);
113
- if (parentCategory) {
114
- parentTree.push(parentCategory.name);
115
- currentParent = parentCategory.parent;
116
- }
117
- else {
118
- break;
119
- }
120
- }
121
- return parentTree;
122
- }
123
- // First, add parentTree to all categories
124
- const categoriesWithParentTree = categories.map(category => ({
125
- ...category,
126
- parentTree: getParentTree(category)
127
- }));
128
- // Sort categories to group children with parents
129
- return categoriesWithParentTree.sort((a, b) => {
130
- // Compare parent trees first
131
- const minLength = Math.min(a.parentTree.length, b.parentTree.length);
132
- for (let i = 0; i < minLength; i++) {
133
- if (a.parentTree[i] !== b.parentTree[i]) {
134
- return a.parentTree[i].localeCompare(b.parentTree[i]);
135
- }
136
- }
137
- // If one is a parent of the other, parent should come first
138
- if (a.id === b.parent)
139
- return -1;
140
- if (b.id === a.parent)
141
- return 1;
142
- // If they share the same parent, sort by name
143
- if (a.parent === b.parent) {
144
- return a.name.localeCompare(b.name);
145
- }
146
- // If they're at the same level, sort by name
147
- return a.name.localeCompare(b.name);
148
- });
149
- }
150
- // Example usage:
151
- const categoriesWithParentTree = addParentTreeToCategories(MOCK_CATEGORIES);
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9jay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL2NvbnN0YW50cy9tb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBZTtJQUN2QztRQUNFLElBQUksRUFBRSxRQUFRO1FBQ2QsTUFBTSxFQUFFLElBQUk7UUFDWixNQUFNLEVBQUUsYUFBYTtLQUN0QjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUsWUFBWTtRQUNwQixNQUFNLEVBQUUsV0FBVztLQUVwQjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUsb0JBQW9CO1FBQzVCLE1BQU0sRUFBRSxtQkFBbUI7S0FHNUI7SUFDRDtRQUNFLElBQUksRUFBRSxRQUFRO1FBQ2QsTUFBTSxFQUFFLGtCQUFrQjtRQUMxQixNQUFNLEVBQUUsUUFBUTtLQUdqQjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUsY0FBYztRQUN0QixNQUFNLEVBQUUsYUFBYTtLQUd0QjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUsWUFBWTtRQUNwQixNQUFNLEVBQUUsV0FBVztLQUdwQjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUsb0JBQW9CO1FBQzVCLE1BQU0sRUFBRSxtQkFBbUI7S0FDNUI7SUFDRDtRQUNFLElBQUksRUFBRSxRQUFRO1FBQ2QsTUFBTSxFQUFFLGtCQUFrQjtRQUMxQixNQUFNLEVBQUUsUUFBUTtLQUNqQjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUsZUFBZTtRQUN2QixNQUFNLEVBQUUsYUFBYTtLQUN0QjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUsYUFBYTtRQUNyQixNQUFNLEVBQUUsV0FBVztLQUdwQjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUscUJBQXFCO1FBQzdCLE1BQU0sRUFBRSxtQkFBbUI7S0FHNUI7SUFDRDtRQUNFLElBQUksRUFBRSxRQUFRO1FBQ2QsTUFBTSxFQUFFLGtCQUFrQjtRQUMxQixNQUFNLEVBQUUsUUFBUTtLQUdqQjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUsZUFBZTtRQUN2QixNQUFNLEVBQUUsYUFBYTtLQUd0QjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUsYUFBYTtRQUNyQixNQUFNLEVBQUUsV0FBVztLQUdwQjtJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxNQUFNLEVBQUUscUJBQXFCO1FBQzdCLE1BQU0sRUFBRSxtQkFBbUI7S0FHNUI7SUFDRDtRQUNFLElBQUksRUFBRSxRQUFRO1FBQ2QsTUFBTSxFQUFFLGtCQUFrQjtRQUMxQixNQUFNLEVBQUUsUUFBUTtLQUdqQjtDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUc7SUFDN0IsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLDZCQUE2QixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtJQUNoRyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsNEJBQTRCLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFO0lBQzNHLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLHFCQUFxQixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRTtJQUM1RyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLFdBQVcsRUFBRSx3QkFBd0IsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUU7SUFDN0csRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRTtJQUNsRyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFO0lBQ2pHLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRTtJQUMzRyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUU7SUFDMUcsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLDBCQUEwQixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRTtJQUM1RyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUseUJBQXlCLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFO0lBQ3pHLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUscUJBQXFCLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRTtJQUMzRyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLFdBQVcsRUFBRSxzQkFBc0IsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUU7SUFDM0csRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRTtJQUN4RyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFO0lBQ3BHLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUscUJBQXFCLEVBQUUsV0FBVyxFQUFFLHlCQUF5QixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRTtJQUNqSCxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUU7SUFDMUcsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLDZCQUE2QixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRTtJQUMvRyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFO0lBQ3BHLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUscUJBQXFCLEVBQUUsV0FBVyxFQUFFLCtCQUErQixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRTtJQUN2SCxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUU7Q0FFM0csQ0FBQTtBQWNELFNBQVMseUJBQXlCLENBQUMsVUFBc0I7SUFDdkQsb0RBQW9EO0lBQ3BELE1BQU0sV0FBVyxHQUFHLElBQUksR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWpGLFNBQVMsYUFBYSxDQUFDLFFBQWtCO1FBQ3ZDLE1BQU0sVUFBVSxHQUFhLEVBQUUsQ0FBQztRQUNoQyxJQUFJLGFBQWEsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO1FBRXBDLE9BQU8sYUFBYSxFQUFFO1lBQ3BCLE1BQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDdEQsSUFBSSxjQUFjLEVBQUU7Z0JBQ2xCLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNyQyxhQUFhLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQzthQUN2QztpQkFBTTtnQkFDTCxNQUFNO2FBQ1A7U0FDRjtRQUVELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFRCwwQ0FBMEM7SUFDMUMsTUFBTSx3QkFBd0IsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzRCxHQUFHLFFBQVE7UUFDWCxVQUFVLEVBQUUsYUFBYSxDQUFDLFFBQVEsQ0FBQztLQUNwQyxDQUFDLENBQUMsQ0FBQztJQUVKLGlEQUFpRDtJQUNqRCxPQUFPLHdCQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUM1Qyw2QkFBNkI7UUFDN0IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbEMsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3ZDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3ZEO1NBQ0Y7UUFFRCw0REFBNEQ7UUFDNUQsSUFBSSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFNO1lBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU07WUFBRSxPQUFPLENBQUMsQ0FBQztRQUVoQyw4Q0FBOEM7UUFDOUMsSUFBSSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQUU7WUFDekIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDckM7UUFFRCw2Q0FBNkM7UUFDN0MsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsaUJBQWlCO0FBQ2pCLE1BQU0sd0JBQXdCLEdBQUcseUJBQXlCLENBQUMsZUFBZSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBtb2NrLWRhdGEudHNcbmltcG9ydCB7IExpc3RJdGVtIH0gZnJvbSAnLi4vc2hhcmVkQ29tcG9uZW50cy9wcm9ncmFtLWxpc3QvaW50ZXJmYWNlcy9saXN0LWl0ZW0uaW50ZXJmYWNlJztcblxuZXhwb3J0IGNvbnN0IE1PQ0tfUFJPR1JBTVM6IExpc3RJdGVtW10gPSBbXG4gIHtcbiAgICBcImlkXCI6IFwiQTJCNEM2XCIsXG4gICAgXCJuYW1lXCI6IFwiUDFcIixcbiAgICBcInR5cGVcIjogXCJyZWd1bGF0aW9uc1wiLFxuICB9LFxuICB7XG4gICAgXCJpZFwiOiBcIlg3WTlaOFwiLFxuICAgIFwibmFtZVwiOiBcIlN0YW5kYXJkIEFcIixcbiAgICBcInR5cGVcIjogXCJzdGFuZGFyZHNcIixcbiAgIFxuICB9LFxuICB7XG4gICAgXCJpZFwiOiBcIkc3SDJKOVwiLFxuICAgIFwibmFtZVwiOiBcIkludGVybmFsIENvbnRyb2wgQlwiLFxuICAgIFwidHlwZVwiOiBcImludGVybmFsX2NvbnRyb2xzXCIsXG4gICAgXG4gICBcbiAgfSxcbiAge1xuICAgIFwiaWRcIjogXCJLNEw2TTFcIixcbiAgICBcIm5hbWVcIjogXCJPdGhlciBEb2N1bWVudCBDXCIsXG4gICAgXCJ0eXBlXCI6IFwib3RoZXJzXCIsXG4gICAgXG4gICAgXG4gIH0sXG4gIHtcbiAgICBcImlkXCI6IFwiTjhQNVE3XCIsXG4gICAgXCJuYW1lXCI6IFwiUmVndWxhdGlvbiBYXCIsXG4gICAgXCJ0eXBlXCI6IFwicmVndWxhdGlvbnNcIixcbiAgICBcbiAgICBcbiAgfSxcbiAge1xuICAgIFwiaWRcIjogXCJSM1M5VDRcIixcbiAgICBcIm5hbWVcIjogXCJTdGFuZGFyZCBZXCIsXG4gICAgXCJ0eXBlXCI6IFwic3RhbmRhcmRzXCIsXG5cbiAgIFxuICB9LFxuICB7XG4gICAgXCJpZFwiOiBcIlU2VjJXOFwiLFxuICAgIFwibmFtZVwiOiBcIkludGVybmFsIENvbnRyb2wgWlwiLFxuICAgIFwidHlwZVwiOiBcImludGVybmFsX2NvbnRyb2xzXCIsXG4gIH0sXG4gIHtcbiAgICBcImlkXCI6IFwiQjlDNEQ3XCIsXG4gICAgXCJuYW1lXCI6IFwiT3RoZXIgRG9jdW1lbnQgRFwiLFxuICAgIFwidHlwZVwiOiBcIm90aGVyc1wiLFxuICB9LFxuICB7XG4gICAgXCJpZFwiOiBcIkU1RjhIMlwiLFxuICAgIFwibmFtZVwiOiBcIlJlZ3VsYXRpb24gQUFcIixcbiAgICBcInR5cGVcIjogXCJyZWd1bGF0aW9uc1wiLFxuICB9LFxuICB7XG4gICAgXCJpZFwiOiBcIkozSzdMNFwiLFxuICAgIFwibmFtZVwiOiBcIlN0YW5kYXJkIEJCXCIsXG4gICAgXCJ0eXBlXCI6IFwic3RhbmRhcmRzXCIsXG4gICAgXG4gICAgXG4gIH0sXG4gIHtcbiAgICBcImlkXCI6IFwiTTZOOVA1XCIsXG4gICAgXCJuYW1lXCI6IFwiSW50ZXJuYWwgQ29udHJvbCBDQ1wiLFxuICAgIFwidHlwZVwiOiBcImludGVybmFsX2NvbnRyb2xzXCIsXG4gICAgXG4gICAgXG4gIH0sXG4gIHtcbiAgICBcImlkXCI6IFwiUTJSOFMzXCIsXG4gICAgXCJuYW1lXCI6IFwiT3RoZXIgRG9jdW1lbnQgRVwiLFxuICAgIFwidHlwZVwiOiBcIm90aGVyc1wiLFxuICAgIFxuICAgIFxuICB9LFxuICB7XG4gICAgXCJpZFwiOiBcIlQ3VTRWMVwiLFxuICAgIFwibmFtZVwiOiBcIlJlZ3VsYXRpb24gQkJcIixcbiAgICBcInR5cGVcIjogXCJyZWd1bGF0aW9uc1wiLFxuICAgIFxuICAgIFxuICB9LFxuICB7XG4gICAgXCJpZFwiOiBcIlc1WDhZNlwiLFxuICAgIFwibmFtZVwiOiBcIlN0YW5kYXJkIENDXCIsXG4gICAgXCJ0eXBlXCI6IFwic3RhbmRhcmRzXCIsXG4gICAgXG4gICAgXG4gIH0sXG4gIHtcbiAgICBcImlkXCI6IFwiWjJBNkI5XCIsXG4gICAgXCJuYW1lXCI6IFwiSW50ZXJuYWwgQ29udHJvbCBERFwiLFxuICAgIFwidHlwZVwiOiBcImludGVybmFsX2NvbnRyb2xzXCIsXG4gICAgXG4gICAgXG4gIH0sXG4gIHtcbiAgICBcImlkXCI6IFwiQzREN0UyXCIsXG4gICAgXCJuYW1lXCI6IFwiT3RoZXIgRG9jdW1lbnQgRlwiLFxuICAgIFwidHlwZVwiOiBcIm90aGVyc1wiLFxuICAgIFxuICAgIFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IE1PQ0tfQ0FURUdPUklFUyA9IFsgICAgXG4gIHsgaWQ6IFwiQTJCNEM2XCIsIG5hbWU6IFwiUDFcIiwgZGVzY3JpcHRpb246IFwiUHJpbWFyeSByZWd1bGF0aW9uIGRvY3VtZW50XCIsIGxldmVsOiAxLCBwYXJlbnQ6IG51bGwgfSxcbiAgeyBpZDogXCJENUU4RjNcIiwgbmFtZTogXCJTdGFuZGFyZCBBXCIsIGRlc2NyaXB0aW9uOiBcIkluZHVzdHJ5IHN0YW5kYXJkIGRvY3VtZW50XCIsIGxldmVsOiAxLCBwYXJlbnQ6IFwiQTJCNEM2XCIgfSxcbiAgeyBpZDogXCJHN0gySjlcIiwgbmFtZTogXCJJbnRlcm5hbCBDb250cm9sIEJcIiwgZGVzY3JpcHRpb246IFwiSW50ZXJuYWwgZ3VpZGVsaW5lc1wiLCBsZXZlbDogMSwgcGFyZW50OiBcIkEyQjRDNlwiIH0sXG4gIHsgaWQ6IFwiSzRMNk0xXCIsIG5hbWU6IFwiT3RoZXIgRG9jdW1lbnQgQ1wiLCBkZXNjcmlwdGlvbjogXCJNaXNjZWxsYW5lb3VzIGRvY3VtZW50XCIsIGxldmVsOiAxLCBwYXJlbnQ6IFwiQTJCNEM2XCIgfSxcbiAgeyBpZDogXCJOOFA1UTdcIiwgbmFtZTogXCJSZWd1bGF0aW9uIFhcIiwgZGVzY3JpcHRpb246IFwiTGVnYWwgZnJhbWV3b3JrXCIsIGxldmVsOiAyLCBwYXJlbnQ6IFwiQTJCNEM2XCIgfSxcbiAgeyBpZDogXCJSM1M5VDRcIiwgbmFtZTogXCJTdGFuZGFyZCBZXCIsIGRlc2NyaXB0aW9uOiBcIlVwZGF0ZWQgc3RhbmRhcmRcIiwgbGV2ZWw6IDIsIHBhcmVudDogXCJENUU4RjNcIiB9LFxuICB7IGlkOiBcIlU2VjJXOFwiLCBuYW1lOiBcIkludGVybmFsIENvbnRyb2wgWlwiLCBkZXNjcmlwdGlvbjogXCJDb250cm9sIHByb2NlZHVyZXNcIiwgbGV2ZWw6IDIsIHBhcmVudDogXCJHN0gySjlcIiB9LFxuICB7IGlkOiBcIkI5QzREN1wiLCBuYW1lOiBcIk90aGVyIERvY3VtZW50IERcIiwgZGVzY3JpcHRpb246IFwiR2VuZXJhbCBpbmZvcm1hdGlvblwiLCBsZXZlbDogMiwgcGFyZW50OiBcIks0TDZNMVwiIH0sXG4gIHsgaWQ6IFwiRTVGOEgyXCIsIG5hbWU6IFwiUmVndWxhdGlvbiBBQVwiLCBkZXNjcmlwdGlvbjogXCJTdXBwbGVtZW50YXJ5IHJlZ3VsYXRpb25cIiwgbGV2ZWw6IDMsIHBhcmVudDogXCJOOFA1UTdcIiB9LFxuICB7IGlkOiBcIkozSzdMNFwiLCBuYW1lOiBcIlN0YW5kYXJkIEJCXCIsIGRlc2NyaXB0aW9uOiBcIk5ldyBjb21wbGlhbmNlIHN0YW5kYXJkXCIsIGxldmVsOiAzLCBwYXJlbnQ6IFwiUjNTOVQ0XCIgfSxcbiAgeyBpZDogXCJNNk45UDVcIiwgbmFtZTogXCJJbnRlcm5hbCBDb250cm9sIENDXCIsIGRlc2NyaXB0aW9uOiBcIkFkdmFuY2VkIGNvbnRyb2xzXCIsIGxldmVsOiAzLCBwYXJlbnQ6IFwiVTZWMlc4XCIgfSxcbiAgeyBpZDogXCJRMlI4UzNcIiwgbmFtZTogXCJPdGhlciBEb2N1bWVudCBFXCIsIGRlc2NyaXB0aW9uOiBcIkFkZGl0aW9uYWwgcmVmZXJlbmNlXCIsIGxldmVsOiAzLCBwYXJlbnQ6IFwiQjlDNEQ3XCIgfSxcbiAgeyBpZDogXCJUN1U0VjFcIiwgbmFtZTogXCJSZWd1bGF0aW9uIEJCXCIsIGRlc2NyaXB0aW9uOiBcIlJlZ3VsYXRvcnkgZXhwYW5zaW9uXCIsIGxldmVsOiA0LCBwYXJlbnQ6IFwiRTVGOEgyXCIgfSxcbiAgeyBpZDogXCJXNVg4WTZcIiwgbmFtZTogXCJTdGFuZGFyZCBDQ1wiLCBkZXNjcmlwdGlvbjogXCJJbmR1c3RyeSBiZW5jaG1hcmtcIiwgbGV2ZWw6IDQsIHBhcmVudDogXCJKM0s3TDRcIiB9LFxuICB7IGlkOiBcIloyQTZCOVwiLCBuYW1lOiBcIkludGVybmFsIENvbnRyb2wgRERcIiwgZGVzY3JpcHRpb246IFwiSW50ZXJuYWwgYXVkaXQgcG9saWNpZXNcIiwgbGV2ZWw6IDQsIHBhcmVudDogXCJNNk45UDVcIiB9LFxuICB7IGlkOiBcIkM0RDdFMlwiLCBuYW1lOiBcIk90aGVyIERvY3VtZW50IEZcIiwgZGVzY3JpcHRpb246IFwiRXh0cmEgZG9jdW1lbnRhdGlvblwiLCBsZXZlbDogNCwgcGFyZW50OiBcIlEyUjhTM1wiIH0sXG4gIHsgaWQ6IFwiRjhIM0o2XCIsIG5hbWU6IFwiUmVndWxhdGlvbiBDQ1wiLCBkZXNjcmlwdGlvbjogXCJBZGRpdGlvbmFsIGNvbXBsaWFuY2UgcnVsZXNcIiwgbGV2ZWw6IDUsIHBhcmVudDogXCJUN1U0VjFcIiB9LFxuICB7IGlkOiBcIks1TDlNNFwiLCBuYW1lOiBcIlN0YW5kYXJkIEREXCIsIGRlc2NyaXB0aW9uOiBcIlJldmlzZWQgZ3VpZGVsaW5lc1wiLCBsZXZlbDogNSwgcGFyZW50OiBcIlc1WDhZNlwiIH0sXG4gIHsgaWQ6IFwiTjJQNlE4XCIsIG5hbWU6IFwiSW50ZXJuYWwgQ29udHJvbCBFRVwiLCBkZXNjcmlwdGlvbjogXCJPcGVyYXRpb25hbCBzZWN1cml0eSBtZWFzdXJlc1wiLCBsZXZlbDogNSwgcGFyZW50OiBcIloyQTZCOVwiIH0sXG4gIHsgaWQ6IFwiUjdTM1Q1XCIsIG5hbWU6IFwiT3RoZXIgRG9jdW1lbnQgR1wiLCBkZXNjcmlwdGlvbjogXCJTdXBwbGVtZW50YXJ5IG5vdGVzXCIsIGxldmVsOiA1LCBwYXJlbnQ6IFwiQzREN0UyXCIgfVxuICBcbl1cblxuaW50ZXJmYWNlIENhdGVnb3J5IHtcbiAgaWQ6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBsZXZlbDogbnVtYmVyO1xuICBwYXJlbnQ6IHN0cmluZyB8IG51bGw7XG59XG5cbmludGVyZmFjZSBDYXRlZ29yeVdpdGhQYXJlbnRUcmVlIGV4dGVuZHMgQ2F0ZWdvcnkge1xuICBwYXJlbnRUcmVlOiBzdHJpbmdbXTtcbn1cblxuZnVuY3Rpb24gYWRkUGFyZW50VHJlZVRvQ2F0ZWdvcmllcyhjYXRlZ29yaWVzOiBDYXRlZ29yeVtdKTogQ2F0ZWdvcnlXaXRoUGFyZW50VHJlZVtdIHtcbiAgLy8gQ3JlYXRlIGEgbWFwIGZvciBxdWljayBsb29rdXAgb2YgY2F0ZWdvcmllcyBieSBJRFxuICBjb25zdCBjYXRlZ29yeU1hcCA9IG5ldyBNYXAoY2F0ZWdvcmllcy5tYXAoY2F0ZWdvcnkgPT4gW2NhdGVnb3J5LmlkLCBjYXRlZ29yeV0pKTtcblxuICBmdW5jdGlvbiBnZXRQYXJlbnRUcmVlKGNhdGVnb3J5OiBDYXRlZ29yeSk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBwYXJlbnRUcmVlOiBzdHJpbmdbXSA9IFtdO1xuICAgIGxldCBjdXJyZW50UGFyZW50ID0gY2F0ZWdvcnkucGFyZW50O1xuXG4gICAgd2hpbGUgKGN1cnJlbnRQYXJlbnQpIHtcbiAgICAgIGNvbnN0IHBhcmVudENhdGVnb3J5ID0gY2F0ZWdvcnlNYXAuZ2V0KGN1cnJlbnRQYXJlbnQpO1xuICAgICAgaWYgKHBhcmVudENhdGVnb3J5KSB7XG4gICAgICAgIHBhcmVudFRyZWUucHVzaChwYXJlbnRDYXRlZ29yeS5uYW1lKTtcbiAgICAgICAgY3VycmVudFBhcmVudCA9IHBhcmVudENhdGVnb3J5LnBhcmVudDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBwYXJlbnRUcmVlO1xuICB9XG5cbiAgLy8gRmlyc3QsIGFkZCBwYXJlbnRUcmVlIHRvIGFsbCBjYXRlZ29yaWVzXG4gIGNvbnN0IGNhdGVnb3JpZXNXaXRoUGFyZW50VHJlZSA9IGNhdGVnb3JpZXMubWFwKGNhdGVnb3J5ID0+ICh7XG4gICAgLi4uY2F0ZWdvcnksXG4gICAgcGFyZW50VHJlZTogZ2V0UGFyZW50VHJlZShjYXRlZ29yeSlcbiAgfSkpO1xuXG4gIC8vIFNvcnQgY2F0ZWdvcmllcyB0byBncm91cCBjaGlsZHJlbiB3aXRoIHBhcmVudHNcbiAgcmV0dXJuIGNhdGVnb3JpZXNXaXRoUGFyZW50VHJlZS5zb3J0KChhLCBiKSA9PiB7XG4gICAgLy8gQ29tcGFyZSBwYXJlbnQgdHJlZXMgZmlyc3RcbiAgICBjb25zdCBtaW5MZW5ndGggPSBNYXRoLm1pbihhLnBhcmVudFRyZWUubGVuZ3RoLCBiLnBhcmVudFRyZWUubGVuZ3RoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1pbkxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAoYS5wYXJlbnRUcmVlW2ldICE9PSBiLnBhcmVudFRyZWVbaV0pIHtcbiAgICAgICAgcmV0dXJuIGEucGFyZW50VHJlZVtpXS5sb2NhbGVDb21wYXJlKGIucGFyZW50VHJlZVtpXSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgb25lIGlzIGEgcGFyZW50IG9mIHRoZSBvdGhlciwgcGFyZW50IHNob3VsZCBjb21lIGZpcnN0XG4gICAgaWYgKGEuaWQgPT09IGIucGFyZW50KSByZXR1cm4gLTE7XG4gICAgaWYgKGIuaWQgPT09IGEucGFyZW50KSByZXR1cm4gMTtcblxuICAgIC8vIElmIHRoZXkgc2hhcmUgdGhlIHNhbWUgcGFyZW50LCBzb3J0IGJ5IG5hbWVcbiAgICBpZiAoYS5wYXJlbnQgPT09IGIucGFyZW50KSB7XG4gICAgICByZXR1cm4gYS5uYW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKTtcbiAgICB9XG5cbiAgICAvLyBJZiB0aGV5J3JlIGF0IHRoZSBzYW1lIGxldmVsLCBzb3J0IGJ5IG5hbWVcbiAgICByZXR1cm4gYS5uYW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKTtcbiAgfSk7XG59XG5cbi8vIEV4YW1wbGUgdXNhZ2U6XG5jb25zdCBjYXRlZ29yaWVzV2l0aFBhcmVudFRyZWUgPSBhZGRQYXJlbnRUcmVlVG9DYXRlZ29yaWVzKE1PQ0tfQ0FURUdPUklFUyk7Il19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlcXVlbmN5LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL2ludGVyZmFjZXMvZnJlcXVlbmN5LmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBGcmVxdWVuY3lPYmplY3Qge1xuICB0eXBlOiAnb25lX3RpbWUnIHwgJ2RhaWx5JyB8ICd3ZWVrbHknIHwgJ21vbnRobHknIHwgJ3F1YXJ0ZXJseScgfCAnc2VtZXN0ZXInIHwgJ3llYXJseScgfCAncmFuZG9tJyB8ICdvbmdvaW5nJyB8ICdvbl9jb21wbGV0aW9uX29mJyB8ICdiaWFubnVhbGx5JzsgXG4gIGVuZEFmdGVyOiBudW1iZXI7XG4gIHN0YXJ0QmVmb3JlOiBudW1iZXI7XG4gIGF1dG9EZWFjdGl2YXRlOiBudW1iZXI7XG4gIGRheTogbnVtYmVyO1xuICB0aW1lOiBzdHJpbmc7XG4gIHJlcGVhdE9wdGlvbnM/OiBSZXBlYXRPcHRpb25zO1xuICByYW5kb20/OiBSYW5kb20gfCB7fTtcbiAgb25Db21wbGV0ZT86IE9uQ29tcGxldGUgfCB7fTtcbiAgb25Hb2luZz86IE9uR29pbmcgfCB7fTtcbiAgXG59XG5cblxuaW50ZXJmYWNlIFJlcGVhdE9wdGlvbnMge1xuICBldmVyeTogbnVtYmVyO1xuICByZXBlYXRPbjogc3RyaW5nO1xuICBsaWZlY3ljbGU6IExpZmVjeWNsZTtcbn1cblxuaW50ZXJmYWNlIFJhbmRvbSB7XG4gIHR5cGU6IHN0cmluZztcbiAgb2NjdXJyZW5jZXM6IG51bWJlcjtcbn1cblxuaW50ZXJmYWNlIE9uQ29tcGxldGUge1xuICBySWQ6IG51bWJlcjtcbiAgYUlkOiBudW1iZXI7XG4gIHJjSWQ6IG51bWJlcjtcbiAgc3RhcnRBZnRlcjogbnVtYmVyO1xufVxuXG5pbnRlcmZhY2UgT25Hb2luZyB7XG4gICByZW1pbmRlcnM6IG51bWJlcjtcbiAgIHN0YXJ0T2Y6ICd3ZWVrJyB8ICdtb250aCcgfCAncXVhcnRlcicgfCAnc2VtZXN0ZXInIHwgJ3llYXInO1xufVxuXG5pbnRlcmZhY2UgTGlmZWN5Y2xlIHtcbiAgc3RhcnRGcm9tOiBzdHJpbmc7IC8veXl5eS1tbS1kZFxuICBlbmRCeTogc3RyaW5nIHwgdW5kZWZpbmVkOyAvL3l5eXktbW0tZGRcbiAgZW5kQWZ0ZXI6IG51bWJlciB8IHVuZGVmaW5lZDtcbn1cblxuXG4iXX0=
@@ -1,7 +0,0 @@
1
- export var PostMessageEvent;
2
- (function (PostMessageEvent) {
3
- PostMessageEvent["CLOSE_WEBVIEW"] = "closeWebview";
4
- PostMessageEvent["PROGRAM_CREATED"] = "programCreated";
5
- PostMessageEvent["PROGRAM_UPDATED"] = "programUpdated";
6
- })(PostMessageEvent || (PostMessageEvent = {}));
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLXR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9pbnRlcmZhY2VzL2lmcmFtZS10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGdCQUlYO0FBSkQsV0FBWSxnQkFBZ0I7SUFDeEIsa0RBQThCLENBQUE7SUFDOUIsc0RBQWtDLENBQUE7SUFDbEMsc0RBQWtDLENBQUE7QUFDdEMsQ0FBQyxFQUpXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFJM0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBQb3N0TWVzc2FnZUV2ZW50IHtcbiAgICBDTE9TRV9XRUJWSUVXID0gJ2Nsb3NlV2VidmlldycsXG4gICAgUFJPR1JBTV9DUkVBVEVEID0gJ3Byb2dyYW1DcmVhdGVkJyxcbiAgICBQUk9HUkFNX1VQREFURUQgPSAncHJvZ3JhbVVwZGF0ZWQnLFxufVxuIl19