@cqa-lib/cqa-ui 1.1.525 → 1.1.527
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.
- package/esm2020/lib/assets/images/image-assets.constants.mjs +3 -1
- package/esm2020/lib/compare-runs/compare-runs.component.mjs +1 -1
- package/esm2020/lib/execution-screen/db-query-execution-item/db-query-execution-item.component.mjs +1 -1
- package/esm2020/lib/execution-screen/db-verification-step/db-verification-step.component.mjs +1 -1
- package/esm2020/lib/iterations-loop/iterations-loop.component.mjs +1 -1
- package/esm2020/lib/segment-control/segment-control.component.mjs +6 -3
- package/esm2020/lib/simulator/simulator.component.mjs +3 -3
- package/esm2020/lib/step-builder/step-builder-document-generation-template-step/step-builder-document-generation-template-step.component.mjs +1 -1
- package/esm2020/lib/table/dynamic-table/dynamic-table.component.mjs +148 -4
- package/esm2020/lib/templates/modular-table-template/dialogs/delete-folder-dialog.component.mjs +181 -0
- package/esm2020/lib/templates/modular-table-template/dialogs/move-to-folder-dialog.component.mjs +264 -0
- package/esm2020/lib/templates/modular-table-template/dialogs/new-folder-dialog.component.mjs +352 -0
- package/esm2020/lib/templates/modular-table-template/directives/folder-drag.directive.mjs +45 -0
- package/esm2020/lib/templates/modular-table-template/directives/folder-drop.directive.mjs +95 -0
- package/esm2020/lib/templates/modular-table-template/directives/row-drag.directive.mjs +44 -0
- package/esm2020/lib/templates/modular-table-template/folder-sidebar/folder-sidebar.component.mjs +479 -0
- package/esm2020/lib/templates/modular-table-template/modular-table-template.component.mjs +1475 -0
- package/esm2020/lib/templates/modular-table-template/modular-table-template.models.mjs +79 -0
- package/esm2020/lib/templates/table-template.component.mjs +88 -12
- package/esm2020/lib/test-case-details/api-edit-step/api-edit-step.component.mjs +1 -1
- package/esm2020/lib/ui-kit.module.mjs +41 -1
- package/esm2020/public-api.mjs +10 -1
- package/fesm2015/cqa-lib-cqa-ui.mjs +3409 -179
- package/fesm2015/cqa-lib-cqa-ui.mjs.map +1 -1
- package/fesm2020/cqa-lib-cqa-ui.mjs +3389 -177
- package/fesm2020/cqa-lib-cqa-ui.mjs.map +1 -1
- package/lib/assets/images/image-assets.constants.d.ts +1 -0
- package/lib/segment-control/segment-control.component.d.ts +2 -1
- package/lib/table/dynamic-table/dynamic-table.component.d.ts +43 -1
- package/lib/templates/modular-table-template/dialogs/delete-folder-dialog.component.d.ts +34 -0
- package/lib/templates/modular-table-template/dialogs/move-to-folder-dialog.component.d.ts +57 -0
- package/lib/templates/modular-table-template/dialogs/new-folder-dialog.component.d.ts +79 -0
- package/lib/templates/modular-table-template/directives/folder-drag.directive.d.ts +10 -0
- package/lib/templates/modular-table-template/directives/folder-drop.directive.d.ts +22 -0
- package/lib/templates/modular-table-template/directives/row-drag.directive.d.ts +10 -0
- package/lib/templates/modular-table-template/folder-sidebar/folder-sidebar.component.d.ts +149 -0
- package/lib/templates/modular-table-template/modular-table-template.component.d.ts +453 -0
- package/lib/templates/modular-table-template/modular-table-template.models.d.ts +150 -0
- package/lib/templates/table-template.component.d.ts +40 -2
- package/lib/ui-kit.module.d.ts +153 -145
- package/package.json +1 -1
- package/public-api.d.ts +9 -0
- package/src/lib/assets/images/EmptyFolderState.png +0 -0
- package/src/lib/assets/images/image-assets.constants.ts +3 -0
- package/styles.css +1 -1
|
@@ -158,7 +158,7 @@ export class StepBuilderDocumentGenerationTemplateStepComponent {
|
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
160
|
StepBuilderDocumentGenerationTemplateStepComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: StepBuilderDocumentGenerationTemplateStepComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
161
|
-
StepBuilderDocumentGenerationTemplateStepComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: StepBuilderDocumentGenerationTemplateStepComponent, selector: "cqa-step-builder-document-generation-template-step", inputs: { documentTypeOptions: "documentTypeOptions", templateSourceOptions: "templateSourceOptions", valueTypeOptions: "valueTypeOptions" }, outputs: { createStep: "createStep", cancelled: "cancelled" }, host: { classAttribute: "cqa-ui-root" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cqa-flex cqa-flex-col cqa-bg-white cqa-px-4 cqa-py-2\">\n <!-- Header -->\n <h2 class=\"cqa-text-[12px] cqa-font-semibold cqa-text-black-100 cqa-mb-4\">\n Document Generation Template Step\n </h2>\n\n <div class=\"cqa-flex cqa-flex-col cqa-flex-1 cqa-max-h-[500px] cqa-overflow-y-auto\">\n <div class=\"cqa-flex cqa-flex-wrap cqa-custom-form-fields\">\n <!-- Document Type -->\n <div class=\"cqa-mb-3 cqa-w-1/2 cqa-custom-form-fields\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Document Type <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-dynamic-select class=\"cqa-w-full\" [form]=\"documentForm\" [config]=\"documentTypeConfig\">\n </cqa-dynamic-select>\n <p class=\"cqa-text-[12px] cqa-text-[#0A0A0A] cqa-mt-1\">\n Choose the file format you want to generate.\n </p>\n </div>\n <!-- Output Variable -->\n <div class=\"cqa-w-1/2 cqa-pl-2\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Output Variable <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-custom-input\n [placeholder]=\"'Input'\"\n [value]=\"documentForm.get('outputVariable')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"documentForm.get('outputVariable')?.setValue($event)\">\n </cqa-custom-input>\n <p class=\"cqa-text-[12px] cqa-text-[#0A0A0A] cqa-mt-1\">\n Stores the generated file so it can be used in later steps\n </p>\n </div>\n\n </div>\n <!-- Template Source -->\n <div class=\"cqa-mb-3 cqa-w-full cqa-custom-form-fields\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-between cqa-mb-3\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Template Source\n </label>\n <div>\n <cqa-segment-control\n [segments]=\"templateSegments\"\n [value]=\"selectedTemplateOption\"\n (valueChange)=\"onTemplateOptionChange($event)\">\n </cqa-segment-control>\n </div> \n </div>\n \n <!-- Use Existing Template -->\n <div *ngIf=\"selectedTemplateOption === 'use-existing'\">\n <cqa-dynamic-select class=\"cqa-w-full\" [form]=\"documentForm\" [config]=\"templateSourceConfig\">\n </cqa-dynamic-select>\n </div>\n \n <!-- Upload Template -->\n <div *ngIf=\"selectedTemplateOption === 'upload'\">\n <cqa-file-upload\n accept=\".pdf,.doc,.docx,.txt\"\n acceptedFileTypes=\"PDF, DOC, or TXT files\"\n (fileSelected)=\"onFileSelected($event)\">\n </cqa-file-upload>\n </div>\n \n <!-- Create New Template -->\n <div *ngIf=\"selectedTemplateOption === 'create-new'\">\n <div class=\"cqa-flex cqa-flex-wrap cqa-custom-form-fields cqa-mb-3\">\n <!-- Template Name -->\n <div class=\"cqa-mb-2 cqa-w-1/2 cqa-pr-2\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Template Name <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-custom-input\n [placeholder]=\"'PDF Document (.pdf)'\"\n [value]=\"documentForm.get('templateName')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"documentForm.get('templateName')?.setValue($event)\">\n </cqa-custom-input>\n </div>\n \n <!-- Template Description -->\n <div class=\"cqa-w-1/2 cqa-pl-2\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Template Description <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-custom-input\n [placeholder]=\"'PDF Document (.pdf)'\"\n [value]=\"documentForm.get('templateDescription')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"documentForm.get('templateDescription')?.setValue($event)\">\n </cqa-custom-input>\n </div>\n </div>\n \n <!-- Create Template Button -->\n <div class=\"cqa-flex cqa-justify-end\">\n <cqa-button\n variant=\"filled\"\n text=\"Create Template\"\n [customClass]=\"'cqa-px-4 cqa-py-2'\"\n (clicked)=\"onCreateTemplate()\">\n </cqa-button>\n </div>\n </div>\n </div>\n\n <!-- Document Mapper Section -->\n <div class=\"cqa-mb-3\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-between cqa-mb-2\">\n <div>\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Document Mapper\n </label>\n <p class=\"cqa-text-[12px] cqa-text-[#64748B] cqa-m-0\">\n Map placeholders to dynamic values.\n </p>\n </div>\n <a href=\"#\" class=\"cqa-flex cqa-items-center cqa-gap-1 cqa-text-[#111827] cqa-text-[10px] cqa-no-underline hover:cqa-underline\">\n <svg width=\"17\" height=\"16\" viewBox=\"0 0 17 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_1712_21527)\">\n <path d=\"M8.49984 14.6666C12.4119 14.6666 15.5832 11.6818 15.5832 7.99992C15.5832 4.31802 12.4119 1.33325 8.49984 1.33325C4.58782 1.33325 1.4165 4.31802 1.4165 7.99992C1.4165 11.6818 4.58782 14.6666 8.49984 14.6666Z\" stroke=\"#3F43EE\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M6.43896 5.99989C6.6055 5.55434 6.9342 5.17863 7.36685 4.93931C7.7995 4.7 8.30818 4.61252 8.8028 4.69237C9.29741 4.77222 9.74604 5.01424 10.0692 5.37558C10.3924 5.73691 10.5693 6.19424 10.5685 6.66656C10.5685 7.99989 8.44355 8.66656 8.44355 8.66656\" stroke=\"#3F43EE\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M8.5 11.3333H8.50966\" stroke=\"#3F43EE\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </g>\n <defs>\n <clipPath id=\"clip0_1712_21527\">\n <rect width=\"17\" height=\"16\" fill=\"white\"/>\n </clipPath>\n </defs>\n </svg>\n \n Need help?\n </a>\n </div>\n\n <!-- Mapper Table -->\n <div class=\"cqa-border cqa-border-gray-200 cqa-rounded-lg cqa-overflow-hidden\">\n <table class=\"cqa-w-full\" style=\"table-layout: fixed;\">\n <thead>\n <tr class=\"cqa-bg-[#D8D9FC4D] cqa-border-b cqa-border-gray-200\">\n <th class=\"cqa-w-[40px] cqa-p-2\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-center\">\n <input type=\"checkbox\" class=\"cqa-w-4 cqa-h-4\">\n </div>\n </th>\n <th class=\"cqa-text-left cqa-text-[12px] cqa-font-medium cqa-text-[#161617] cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">Key</th>\n <th class=\"cqa-text-left cqa-text-[12px] cqa-font-medium cqa-text-[#161617] cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">Value Type</th>\n <th class=\"cqa-text-left cqa-text-[12px] cqa-font-medium cqa-text-[#161617] cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">Value</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let mapping of mappingsFormArray.controls; let i = index\" class=\"cqa-border-b cqa-border-gray-200 cqa-last:border-b-0\">\n <!-- Checkbox -->\n <td class=\"cqa-w-[40px] cqa-p-2\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-center\">\n <input type=\"checkbox\" class=\"cqa-w-4 cqa-h-4\">\n </div>\n </td>\n\n <!-- Key Input -->\n <td class=\"cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">\n <cqa-custom-input\n inputInlineStyle=\"height: 36px;color: #0A0A0A; font-size: 14px; border-radius: 5px;\"\n [placeholder]=\"'Key'\"\n [value]=\"getMappingGroup(i).get('key')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"getMappingGroup(i).get('key')?.setValue($event)\">\n </cqa-custom-input>\n </td>\n\n <!-- Value Type Dropdown -->\n <td class=\"cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">\n <cqa-dynamic-select \n inputInlineStyle=\"height: 36px;color: #0A0A0A; font-size: 14px; box-shadow: none !important;\n border-radius: 5px !important;\"\n [form]=\"getMappingGroup(i)\" \n [config]=\"valueTypeConfig\">\n </cqa-dynamic-select>\n </td>\n\n <!-- Value Input with Delete Button -->\n <td class=\"cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">\n <div class=\"cqa-flex cqa-items-center cqa-gap-2\">\n <cqa-custom-input\n inputInlineStyle=\"height: 36px;color: #0A0A0A; font-size: 14px; border-radius: 5px;\"\n [placeholder]=\"'Value'\"\n [value]=\"getMappingGroup(i).get('value')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"getMappingGroup(i).get('value')?.setValue($event)\">\n </cqa-custom-input>\n <button\n type=\"button\"\n (click)=\"removeMapping(i)\"\n class=\"cqa-text-red-500 hover:cqa-text-red-700 cqa-p-1 cqa-flex-shrink-0\"\n [disabled]=\"mappingsFormArray.length === 1\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10.6668 6V12.6667H5.3335V6H10.6668ZM9.66683 2H6.3335L5.66683 2.66667H3.3335V4H12.6668V2.66667H10.3335L9.66683 2ZM12.0002 4.66667H4.00016V12.6667C4.00016 13.4 4.60016 14 5.3335 14H10.6668C11.4002 14 12.0002 13.4 12.0002 12.6667V4.66667Z\" fill=\"#F9BFBF\"/>\n</svg>\n </button>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n\n <!-- Add Mapping Button -->\n <div class=\"cqa-flex cqa-justify-end cqa-mt-2\">\n <button\n type=\"button\"\n (click)=\"addMapping()\"\n class=\"cqa-text-[#3F43EE] cqa-text-[12px] cqa-font-medium cqa-flex cqa-items-center cqa-gap-1 hover:cqa-underline\">\n <span>+</span>\n <span>Add Mapping</span>\n </button>\n </div>\n </div>\n </div>\n\n <!-- Action Buttons -->\n <div class=\"cqa-flex cqa-w-full cqa-gap-2 cqa-mt-auto cqa-pt-4 cqa-border-t cqa-border-gray-200\">\n <cqa-button class=\"cqa-w-1/2 cqa-rounded-[10px]\" variant=\"outlined\" text=\"Cancel\" [customClass]=\"'cqa-flex-1 cqa-w-full'\"\n (clicked)=\"onCancel()\">\n </cqa-button>\n <cqa-button class=\"cqa-border-solid cqa-rounded-[9px] cqa-w-1/2 cqa-border cqa-border-[#3F43EE]\" variant=\"filled\" text=\"Create Step\" [customClass]=\"'cqa-flex-1 cqa-w-full'\"\n (clicked)=\"onCreateStep()\">\n </cqa-button>\n </div>\n</div>\n\n", components: [{ type: i2.DynamicSelectFieldComponent, selector: "cqa-dynamic-select", inputs: ["form", "config"], outputs: ["selectionChange", "selectClick", "searchChange", "loadMore", "addCustomValue"] }, { type: i3.CustomInputComponent, selector: "cqa-custom-input", inputs: ["inputId", "label", "type", "placeholder", "value", "disabled", "errors", "required", "ariaLabel", "size", "fullWidth", "maxLength", "showCharCount", "inputInlineStyle", "labelInlineStyle"], outputs: ["valueChange", "blurred", "focused", "enterPressed"] }, { type: i4.SegmentControlComponent, selector: "cqa-segment-control", inputs: ["segments", "value", "disabled", "containerBgColor", "fullWidth"], outputs: ["valueChange"] }, { type: i5.FileUploadComponent, selector: "cqa-file-upload", inputs: ["accept", "acceptedFileTypes", "disabled"], outputs: ["fileSelected", "cancelled"] }, { type: i6.ButtonComponent, selector: "cqa-button", inputs: ["variant", "btnSize", "disabled", "loading", "icon", "iconPosition", "fullWidth", "iconColor", "type", "text", "customClass", "inlineStyles", "tooltip", "tooltipPosition"], outputs: ["clicked"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
161
|
+
StepBuilderDocumentGenerationTemplateStepComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: StepBuilderDocumentGenerationTemplateStepComponent, selector: "cqa-step-builder-document-generation-template-step", inputs: { documentTypeOptions: "documentTypeOptions", templateSourceOptions: "templateSourceOptions", valueTypeOptions: "valueTypeOptions" }, outputs: { createStep: "createStep", cancelled: "cancelled" }, host: { classAttribute: "cqa-ui-root" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cqa-flex cqa-flex-col cqa-bg-white cqa-px-4 cqa-py-2\">\n <!-- Header -->\n <h2 class=\"cqa-text-[12px] cqa-font-semibold cqa-text-black-100 cqa-mb-4\">\n Document Generation Template Step\n </h2>\n\n <div class=\"cqa-flex cqa-flex-col cqa-flex-1 cqa-max-h-[500px] cqa-overflow-y-auto\">\n <div class=\"cqa-flex cqa-flex-wrap cqa-custom-form-fields\">\n <!-- Document Type -->\n <div class=\"cqa-mb-3 cqa-w-1/2 cqa-custom-form-fields\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Document Type <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-dynamic-select class=\"cqa-w-full\" [form]=\"documentForm\" [config]=\"documentTypeConfig\">\n </cqa-dynamic-select>\n <p class=\"cqa-text-[12px] cqa-text-[#0A0A0A] cqa-mt-1\">\n Choose the file format you want to generate.\n </p>\n </div>\n <!-- Output Variable -->\n <div class=\"cqa-w-1/2 cqa-pl-2\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Output Variable <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-custom-input\n [placeholder]=\"'Input'\"\n [value]=\"documentForm.get('outputVariable')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"documentForm.get('outputVariable')?.setValue($event)\">\n </cqa-custom-input>\n <p class=\"cqa-text-[12px] cqa-text-[#0A0A0A] cqa-mt-1\">\n Stores the generated file so it can be used in later steps\n </p>\n </div>\n\n </div>\n <!-- Template Source -->\n <div class=\"cqa-mb-3 cqa-w-full cqa-custom-form-fields\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-between cqa-mb-3\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Template Source\n </label>\n <div>\n <cqa-segment-control\n [segments]=\"templateSegments\"\n [value]=\"selectedTemplateOption\"\n (valueChange)=\"onTemplateOptionChange($event)\">\n </cqa-segment-control>\n </div> \n </div>\n \n <!-- Use Existing Template -->\n <div *ngIf=\"selectedTemplateOption === 'use-existing'\">\n <cqa-dynamic-select class=\"cqa-w-full\" [form]=\"documentForm\" [config]=\"templateSourceConfig\">\n </cqa-dynamic-select>\n </div>\n \n <!-- Upload Template -->\n <div *ngIf=\"selectedTemplateOption === 'upload'\">\n <cqa-file-upload\n accept=\".pdf,.doc,.docx,.txt\"\n acceptedFileTypes=\"PDF, DOC, or TXT files\"\n (fileSelected)=\"onFileSelected($event)\">\n </cqa-file-upload>\n </div>\n \n <!-- Create New Template -->\n <div *ngIf=\"selectedTemplateOption === 'create-new'\">\n <div class=\"cqa-flex cqa-flex-wrap cqa-custom-form-fields cqa-mb-3\">\n <!-- Template Name -->\n <div class=\"cqa-mb-2 cqa-w-1/2 cqa-pr-2\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Template Name <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-custom-input\n [placeholder]=\"'PDF Document (.pdf)'\"\n [value]=\"documentForm.get('templateName')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"documentForm.get('templateName')?.setValue($event)\">\n </cqa-custom-input>\n </div>\n \n <!-- Template Description -->\n <div class=\"cqa-w-1/2 cqa-pl-2\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Template Description <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-custom-input\n [placeholder]=\"'PDF Document (.pdf)'\"\n [value]=\"documentForm.get('templateDescription')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"documentForm.get('templateDescription')?.setValue($event)\">\n </cqa-custom-input>\n </div>\n </div>\n \n <!-- Create Template Button -->\n <div class=\"cqa-flex cqa-justify-end\">\n <cqa-button\n variant=\"filled\"\n text=\"Create Template\"\n [customClass]=\"'cqa-px-4 cqa-py-2'\"\n (clicked)=\"onCreateTemplate()\">\n </cqa-button>\n </div>\n </div>\n </div>\n\n <!-- Document Mapper Section -->\n <div class=\"cqa-mb-3\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-between cqa-mb-2\">\n <div>\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Document Mapper\n </label>\n <p class=\"cqa-text-[12px] cqa-text-[#64748B] cqa-m-0\">\n Map placeholders to dynamic values.\n </p>\n </div>\n <a href=\"#\" class=\"cqa-flex cqa-items-center cqa-gap-1 cqa-text-[#111827] cqa-text-[10px] cqa-no-underline hover:cqa-underline\">\n <svg width=\"17\" height=\"16\" viewBox=\"0 0 17 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_1712_21527)\">\n <path d=\"M8.49984 14.6666C12.4119 14.6666 15.5832 11.6818 15.5832 7.99992C15.5832 4.31802 12.4119 1.33325 8.49984 1.33325C4.58782 1.33325 1.4165 4.31802 1.4165 7.99992C1.4165 11.6818 4.58782 14.6666 8.49984 14.6666Z\" stroke=\"#3F43EE\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M6.43896 5.99989C6.6055 5.55434 6.9342 5.17863 7.36685 4.93931C7.7995 4.7 8.30818 4.61252 8.8028 4.69237C9.29741 4.77222 9.74604 5.01424 10.0692 5.37558C10.3924 5.73691 10.5693 6.19424 10.5685 6.66656C10.5685 7.99989 8.44355 8.66656 8.44355 8.66656\" stroke=\"#3F43EE\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M8.5 11.3333H8.50966\" stroke=\"#3F43EE\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </g>\n <defs>\n <clipPath id=\"clip0_1712_21527\">\n <rect width=\"17\" height=\"16\" fill=\"white\"/>\n </clipPath>\n </defs>\n </svg>\n \n Need help?\n </a>\n </div>\n\n <!-- Mapper Table -->\n <div class=\"cqa-border cqa-border-gray-200 cqa-rounded-lg cqa-overflow-hidden\">\n <table class=\"cqa-w-full\" style=\"table-layout: fixed;\">\n <thead>\n <tr class=\"cqa-bg-[#D8D9FC4D] cqa-border-b cqa-border-gray-200\">\n <th class=\"cqa-w-[40px] cqa-p-2\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-center\">\n <input type=\"checkbox\" class=\"cqa-w-4 cqa-h-4\">\n </div>\n </th>\n <th class=\"cqa-text-left cqa-text-[12px] cqa-font-medium cqa-text-[#161617] cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">Key</th>\n <th class=\"cqa-text-left cqa-text-[12px] cqa-font-medium cqa-text-[#161617] cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">Value Type</th>\n <th class=\"cqa-text-left cqa-text-[12px] cqa-font-medium cqa-text-[#161617] cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">Value</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let mapping of mappingsFormArray.controls; let i = index\" class=\"cqa-border-b cqa-border-gray-200 cqa-last:border-b-0\">\n <!-- Checkbox -->\n <td class=\"cqa-w-[40px] cqa-p-2\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-center\">\n <input type=\"checkbox\" class=\"cqa-w-4 cqa-h-4\">\n </div>\n </td>\n\n <!-- Key Input -->\n <td class=\"cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">\n <cqa-custom-input\n inputInlineStyle=\"height: 36px;color: #0A0A0A; font-size: 14px; border-radius: 5px;\"\n [placeholder]=\"'Key'\"\n [value]=\"getMappingGroup(i).get('key')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"getMappingGroup(i).get('key')?.setValue($event)\">\n </cqa-custom-input>\n </td>\n\n <!-- Value Type Dropdown -->\n <td class=\"cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">\n <cqa-dynamic-select \n inputInlineStyle=\"height: 36px;color: #0A0A0A; font-size: 14px; box-shadow: none !important;\n border-radius: 5px !important;\"\n [form]=\"getMappingGroup(i)\" \n [config]=\"valueTypeConfig\">\n </cqa-dynamic-select>\n </td>\n\n <!-- Value Input with Delete Button -->\n <td class=\"cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">\n <div class=\"cqa-flex cqa-items-center cqa-gap-2\">\n <cqa-custom-input\n inputInlineStyle=\"height: 36px;color: #0A0A0A; font-size: 14px; border-radius: 5px;\"\n [placeholder]=\"'Value'\"\n [value]=\"getMappingGroup(i).get('value')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"getMappingGroup(i).get('value')?.setValue($event)\">\n </cqa-custom-input>\n <button\n type=\"button\"\n (click)=\"removeMapping(i)\"\n class=\"cqa-text-red-500 hover:cqa-text-red-700 cqa-p-1 cqa-flex-shrink-0\"\n [disabled]=\"mappingsFormArray.length === 1\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10.6668 6V12.6667H5.3335V6H10.6668ZM9.66683 2H6.3335L5.66683 2.66667H3.3335V4H12.6668V2.66667H10.3335L9.66683 2ZM12.0002 4.66667H4.00016V12.6667C4.00016 13.4 4.60016 14 5.3335 14H10.6668C11.4002 14 12.0002 13.4 12.0002 12.6667V4.66667Z\" fill=\"#F9BFBF\"/>\n</svg>\n </button>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n\n <!-- Add Mapping Button -->\n <div class=\"cqa-flex cqa-justify-end cqa-mt-2\">\n <button\n type=\"button\"\n (click)=\"addMapping()\"\n class=\"cqa-text-[#3F43EE] cqa-text-[12px] cqa-font-medium cqa-flex cqa-items-center cqa-gap-1 hover:cqa-underline\">\n <span>+</span>\n <span>Add Mapping</span>\n </button>\n </div>\n </div>\n </div>\n\n <!-- Action Buttons -->\n <div class=\"cqa-flex cqa-w-full cqa-gap-2 cqa-mt-auto cqa-pt-4 cqa-border-t cqa-border-gray-200\">\n <cqa-button class=\"cqa-w-1/2 cqa-rounded-[10px]\" variant=\"outlined\" text=\"Cancel\" [customClass]=\"'cqa-flex-1 cqa-w-full'\"\n (clicked)=\"onCancel()\">\n </cqa-button>\n <cqa-button class=\"cqa-border-solid cqa-rounded-[9px] cqa-w-1/2 cqa-border cqa-border-[#3F43EE]\" variant=\"filled\" text=\"Create Step\" [customClass]=\"'cqa-flex-1 cqa-w-full'\"\n (clicked)=\"onCreateStep()\">\n </cqa-button>\n </div>\n</div>\n\n", components: [{ type: i2.DynamicSelectFieldComponent, selector: "cqa-dynamic-select", inputs: ["form", "config"], outputs: ["selectionChange", "selectClick", "searchChange", "loadMore", "addCustomValue"] }, { type: i3.CustomInputComponent, selector: "cqa-custom-input", inputs: ["inputId", "label", "type", "placeholder", "value", "disabled", "errors", "required", "ariaLabel", "size", "fullWidth", "maxLength", "showCharCount", "inputInlineStyle", "labelInlineStyle"], outputs: ["valueChange", "blurred", "focused", "enterPressed"] }, { type: i4.SegmentControlComponent, selector: "cqa-segment-control", inputs: ["segments", "value", "disabled", "containerBgColor", "fullWidth", "size"], outputs: ["valueChange"] }, { type: i5.FileUploadComponent, selector: "cqa-file-upload", inputs: ["accept", "acceptedFileTypes", "disabled"], outputs: ["fileSelected", "cancelled"] }, { type: i6.ButtonComponent, selector: "cqa-button", inputs: ["variant", "btnSize", "disabled", "loading", "icon", "iconPosition", "fullWidth", "iconColor", "type", "text", "customClass", "inlineStyles", "tooltip", "tooltipPosition"], outputs: ["clicked"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
162
162
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: StepBuilderDocumentGenerationTemplateStepComponent, decorators: [{
|
|
163
163
|
type: Component,
|
|
164
164
|
args: [{ selector: 'cqa-step-builder-document-generation-template-step', host: { class: 'cqa-ui-root' }, template: "<div class=\"cqa-flex cqa-flex-col cqa-bg-white cqa-px-4 cqa-py-2\">\n <!-- Header -->\n <h2 class=\"cqa-text-[12px] cqa-font-semibold cqa-text-black-100 cqa-mb-4\">\n Document Generation Template Step\n </h2>\n\n <div class=\"cqa-flex cqa-flex-col cqa-flex-1 cqa-max-h-[500px] cqa-overflow-y-auto\">\n <div class=\"cqa-flex cqa-flex-wrap cqa-custom-form-fields\">\n <!-- Document Type -->\n <div class=\"cqa-mb-3 cqa-w-1/2 cqa-custom-form-fields\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Document Type <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-dynamic-select class=\"cqa-w-full\" [form]=\"documentForm\" [config]=\"documentTypeConfig\">\n </cqa-dynamic-select>\n <p class=\"cqa-text-[12px] cqa-text-[#0A0A0A] cqa-mt-1\">\n Choose the file format you want to generate.\n </p>\n </div>\n <!-- Output Variable -->\n <div class=\"cqa-w-1/2 cqa-pl-2\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Output Variable <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-custom-input\n [placeholder]=\"'Input'\"\n [value]=\"documentForm.get('outputVariable')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"documentForm.get('outputVariable')?.setValue($event)\">\n </cqa-custom-input>\n <p class=\"cqa-text-[12px] cqa-text-[#0A0A0A] cqa-mt-1\">\n Stores the generated file so it can be used in later steps\n </p>\n </div>\n\n </div>\n <!-- Template Source -->\n <div class=\"cqa-mb-3 cqa-w-full cqa-custom-form-fields\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-between cqa-mb-3\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Template Source\n </label>\n <div>\n <cqa-segment-control\n [segments]=\"templateSegments\"\n [value]=\"selectedTemplateOption\"\n (valueChange)=\"onTemplateOptionChange($event)\">\n </cqa-segment-control>\n </div> \n </div>\n \n <!-- Use Existing Template -->\n <div *ngIf=\"selectedTemplateOption === 'use-existing'\">\n <cqa-dynamic-select class=\"cqa-w-full\" [form]=\"documentForm\" [config]=\"templateSourceConfig\">\n </cqa-dynamic-select>\n </div>\n \n <!-- Upload Template -->\n <div *ngIf=\"selectedTemplateOption === 'upload'\">\n <cqa-file-upload\n accept=\".pdf,.doc,.docx,.txt\"\n acceptedFileTypes=\"PDF, DOC, or TXT files\"\n (fileSelected)=\"onFileSelected($event)\">\n </cqa-file-upload>\n </div>\n \n <!-- Create New Template -->\n <div *ngIf=\"selectedTemplateOption === 'create-new'\">\n <div class=\"cqa-flex cqa-flex-wrap cqa-custom-form-fields cqa-mb-3\">\n <!-- Template Name -->\n <div class=\"cqa-mb-2 cqa-w-1/2 cqa-pr-2\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Template Name <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-custom-input\n [placeholder]=\"'PDF Document (.pdf)'\"\n [value]=\"documentForm.get('templateName')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"documentForm.get('templateName')?.setValue($event)\">\n </cqa-custom-input>\n </div>\n \n <!-- Template Description -->\n <div class=\"cqa-w-1/2 cqa-pl-2\">\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Template Description <span class=\"cqa-text-red-500\">*</span>\n </label>\n <cqa-custom-input\n [placeholder]=\"'PDF Document (.pdf)'\"\n [value]=\"documentForm.get('templateDescription')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"documentForm.get('templateDescription')?.setValue($event)\">\n </cqa-custom-input>\n </div>\n </div>\n \n <!-- Create Template Button -->\n <div class=\"cqa-flex cqa-justify-end\">\n <cqa-button\n variant=\"filled\"\n text=\"Create Template\"\n [customClass]=\"'cqa-px-4 cqa-py-2'\"\n (clicked)=\"onCreateTemplate()\">\n </cqa-button>\n </div>\n </div>\n </div>\n\n <!-- Document Mapper Section -->\n <div class=\"cqa-mb-3\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-between cqa-mb-2\">\n <div>\n <label class=\"cqa-leading-[100%] cqa-block cqa-text-[14px] cqa-font-medium cqa-text-[#161617] cqa-mb-1\">\n Document Mapper\n </label>\n <p class=\"cqa-text-[12px] cqa-text-[#64748B] cqa-m-0\">\n Map placeholders to dynamic values.\n </p>\n </div>\n <a href=\"#\" class=\"cqa-flex cqa-items-center cqa-gap-1 cqa-text-[#111827] cqa-text-[10px] cqa-no-underline hover:cqa-underline\">\n <svg width=\"17\" height=\"16\" viewBox=\"0 0 17 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g clip-path=\"url(#clip0_1712_21527)\">\n <path d=\"M8.49984 14.6666C12.4119 14.6666 15.5832 11.6818 15.5832 7.99992C15.5832 4.31802 12.4119 1.33325 8.49984 1.33325C4.58782 1.33325 1.4165 4.31802 1.4165 7.99992C1.4165 11.6818 4.58782 14.6666 8.49984 14.6666Z\" stroke=\"#3F43EE\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M6.43896 5.99989C6.6055 5.55434 6.9342 5.17863 7.36685 4.93931C7.7995 4.7 8.30818 4.61252 8.8028 4.69237C9.29741 4.77222 9.74604 5.01424 10.0692 5.37558C10.3924 5.73691 10.5693 6.19424 10.5685 6.66656C10.5685 7.99989 8.44355 8.66656 8.44355 8.66656\" stroke=\"#3F43EE\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n <path d=\"M8.5 11.3333H8.50966\" stroke=\"#3F43EE\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </g>\n <defs>\n <clipPath id=\"clip0_1712_21527\">\n <rect width=\"17\" height=\"16\" fill=\"white\"/>\n </clipPath>\n </defs>\n </svg>\n \n Need help?\n </a>\n </div>\n\n <!-- Mapper Table -->\n <div class=\"cqa-border cqa-border-gray-200 cqa-rounded-lg cqa-overflow-hidden\">\n <table class=\"cqa-w-full\" style=\"table-layout: fixed;\">\n <thead>\n <tr class=\"cqa-bg-[#D8D9FC4D] cqa-border-b cqa-border-gray-200\">\n <th class=\"cqa-w-[40px] cqa-p-2\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-center\">\n <input type=\"checkbox\" class=\"cqa-w-4 cqa-h-4\">\n </div>\n </th>\n <th class=\"cqa-text-left cqa-text-[12px] cqa-font-medium cqa-text-[#161617] cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">Key</th>\n <th class=\"cqa-text-left cqa-text-[12px] cqa-font-medium cqa-text-[#161617] cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">Value Type</th>\n <th class=\"cqa-text-left cqa-text-[12px] cqa-font-medium cqa-text-[#161617] cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">Value</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let mapping of mappingsFormArray.controls; let i = index\" class=\"cqa-border-b cqa-border-gray-200 cqa-last:border-b-0\">\n <!-- Checkbox -->\n <td class=\"cqa-w-[40px] cqa-p-2\">\n <div class=\"cqa-flex cqa-items-center cqa-justify-center\">\n <input type=\"checkbox\" class=\"cqa-w-4 cqa-h-4\">\n </div>\n </td>\n\n <!-- Key Input -->\n <td class=\"cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">\n <cqa-custom-input\n inputInlineStyle=\"height: 36px;color: #0A0A0A; font-size: 14px; border-radius: 5px;\"\n [placeholder]=\"'Key'\"\n [value]=\"getMappingGroup(i).get('key')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"getMappingGroup(i).get('key')?.setValue($event)\">\n </cqa-custom-input>\n </td>\n\n <!-- Value Type Dropdown -->\n <td class=\"cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">\n <cqa-dynamic-select \n inputInlineStyle=\"height: 36px;color: #0A0A0A; font-size: 14px; box-shadow: none !important;\n border-radius: 5px !important;\"\n [form]=\"getMappingGroup(i)\" \n [config]=\"valueTypeConfig\">\n </cqa-dynamic-select>\n </td>\n\n <!-- Value Input with Delete Button -->\n <td class=\"cqa-p-2\" style=\"width: calc((100% - 40px) / 3);\">\n <div class=\"cqa-flex cqa-items-center cqa-gap-2\">\n <cqa-custom-input\n inputInlineStyle=\"height: 36px;color: #0A0A0A; font-size: 14px; border-radius: 5px;\"\n [placeholder]=\"'Value'\"\n [value]=\"getMappingGroup(i).get('value')?.value\"\n [fullWidth]=\"true\"\n (valueChange)=\"getMappingGroup(i).get('value')?.setValue($event)\">\n </cqa-custom-input>\n <button\n type=\"button\"\n (click)=\"removeMapping(i)\"\n class=\"cqa-text-red-500 hover:cqa-text-red-700 cqa-p-1 cqa-flex-shrink-0\"\n [disabled]=\"mappingsFormArray.length === 1\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M10.6668 6V12.6667H5.3335V6H10.6668ZM9.66683 2H6.3335L5.66683 2.66667H3.3335V4H12.6668V2.66667H10.3335L9.66683 2ZM12.0002 4.66667H4.00016V12.6667C4.00016 13.4 4.60016 14 5.3335 14H10.6668C11.4002 14 12.0002 13.4 12.0002 12.6667V4.66667Z\" fill=\"#F9BFBF\"/>\n</svg>\n </button>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n\n <!-- Add Mapping Button -->\n <div class=\"cqa-flex cqa-justify-end cqa-mt-2\">\n <button\n type=\"button\"\n (click)=\"addMapping()\"\n class=\"cqa-text-[#3F43EE] cqa-text-[12px] cqa-font-medium cqa-flex cqa-items-center cqa-gap-1 hover:cqa-underline\">\n <span>+</span>\n <span>Add Mapping</span>\n </button>\n </div>\n </div>\n </div>\n\n <!-- Action Buttons -->\n <div class=\"cqa-flex cqa-w-full cqa-gap-2 cqa-mt-auto cqa-pt-4 cqa-border-t cqa-border-gray-200\">\n <cqa-button class=\"cqa-w-1/2 cqa-rounded-[10px]\" variant=\"outlined\" text=\"Cancel\" [customClass]=\"'cqa-flex-1 cqa-w-full'\"\n (clicked)=\"onCancel()\">\n </cqa-button>\n <cqa-button class=\"cqa-border-solid cqa-rounded-[9px] cqa-w-1/2 cqa-border cqa-border-[#3F43EE]\" variant=\"filled\" text=\"Create Step\" [customClass]=\"'cqa-flex-1 cqa-w-full'\"\n (clicked)=\"onCreateStep()\">\n </cqa-button>\n </div>\n</div>\n\n", styles: [] }]
|