cat-documents-ng 0.3.66 → 0.3.67
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.
|
@@ -1413,7 +1413,7 @@ class DocumentHttpService {
|
|
|
1413
1413
|
* @returns {Observable<any>} Observable that emits the transformed data for dropdown options.
|
|
1414
1414
|
*/
|
|
1415
1415
|
getDocumentCatagories(contextId) {
|
|
1416
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1416
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1417
1417
|
return this.http.get(`${this.apiUrl}${URLS.DOCUMENTS_CATAGORIES}/${contextId}`, { headers })
|
|
1418
1418
|
.pipe(tap((response) => {
|
|
1419
1419
|
if (response && response.categories) {
|
|
@@ -1472,7 +1472,7 @@ class DocumentHttpService {
|
|
|
1472
1472
|
* @returns {Observable<DocumentModel>} An observable that emits the updated DocumentModel.
|
|
1473
1473
|
*/
|
|
1474
1474
|
updateDocumentName(documentId, payload) {
|
|
1475
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1475
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1476
1476
|
return this.http.put(`${this.apiUrl}${URLS.ALIAS_NAME}${documentId}`, payload, { headers: headers }).pipe(catchError((error) => {
|
|
1477
1477
|
return throwError(() => new Error(error));
|
|
1478
1478
|
}));
|
|
@@ -1485,7 +1485,7 @@ class DocumentHttpService {
|
|
|
1485
1485
|
getUserListByContextId(contextId) {
|
|
1486
1486
|
if (!contextId)
|
|
1487
1487
|
return EMPTY;
|
|
1488
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1488
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1489
1489
|
return this.http.get(`${this.apiUrl}${URLS.USERLIST}${contextId}`, { headers: headers }).pipe(tap((userList) => {
|
|
1490
1490
|
this.documentStore.setUserList(userList);
|
|
1491
1491
|
}), catchError((error) => {
|
|
@@ -1511,7 +1511,7 @@ class DocumentHttpService {
|
|
|
1511
1511
|
if (categoryId) {
|
|
1512
1512
|
params = params.set(SHARED.CATEGORY, categoryId);
|
|
1513
1513
|
}
|
|
1514
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1514
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1515
1515
|
return this.http.get(url, { params, headers }).pipe(tap((statusData) => {
|
|
1516
1516
|
this.documentStore.setStatusData(statusData);
|
|
1517
1517
|
}), catchError((error) => {
|
|
@@ -1540,7 +1540,7 @@ class DocumentHttpService {
|
|
|
1540
1540
|
if (searchKey) {
|
|
1541
1541
|
params = params.set(SHARED.SEARCH_KEY, searchKey);
|
|
1542
1542
|
}
|
|
1543
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1543
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1544
1544
|
return this.http.get(`${this.apiUrl}${URLS.GETALL}/${contextId}`, { params, headers }).pipe(tap((response) => {
|
|
1545
1545
|
if (response.documents) {
|
|
1546
1546
|
this.documentStore.setDocumentList(response.documents);
|
|
@@ -1553,7 +1553,7 @@ class DocumentHttpService {
|
|
|
1553
1553
|
if (!documentId) {
|
|
1554
1554
|
return of([]);
|
|
1555
1555
|
}
|
|
1556
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1556
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1557
1557
|
return this.http.get(`${this.apiUrl}${URLS.DOCUMENT_HISTORY}${documentId}`, { headers }).pipe(catchError((error) => {
|
|
1558
1558
|
return throwError(() => new Error(error));
|
|
1559
1559
|
}));
|
|
@@ -1566,7 +1566,7 @@ class DocumentHttpService {
|
|
|
1566
1566
|
getCategoriesBySource(source) {
|
|
1567
1567
|
if (!source)
|
|
1568
1568
|
return EMPTY;
|
|
1569
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1569
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1570
1570
|
return this.http.get(`${this.apiUrl}${URLS.GET_CATEGORIES_BY_SOURCE}${source}`, { headers }).pipe(catchError((error) => {
|
|
1571
1571
|
return throwError(() => new Error(error));
|
|
1572
1572
|
}));
|
|
@@ -1579,7 +1579,7 @@ class DocumentHttpService {
|
|
|
1579
1579
|
getDocumentTypesByCategory(categoryId) {
|
|
1580
1580
|
if (!categoryId)
|
|
1581
1581
|
return EMPTY;
|
|
1582
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1582
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1583
1583
|
return this.http.get(`${this.apiUrl}${URLS.GET_DOCUMENT_TYPES_BY_CATEGORY}${categoryId}`, { headers }).pipe(catchError((error) => {
|
|
1584
1584
|
return throwError(() => new Error(error));
|
|
1585
1585
|
}));
|
|
@@ -1590,7 +1590,7 @@ class DocumentHttpService {
|
|
|
1590
1590
|
* @returns {Observable<any>} Observable that emits the upload response.
|
|
1591
1591
|
*/
|
|
1592
1592
|
uploadFile(formData) {
|
|
1593
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1593
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1594
1594
|
return this.http.post(`${this.apiUrl}${URLS.DOCUMENT_UPLOAD_FILE}`, formData, { headers }).pipe(catchError((error) => {
|
|
1595
1595
|
return throwError(() => new Error(error));
|
|
1596
1596
|
}));
|
|
@@ -1601,7 +1601,7 @@ class DocumentHttpService {
|
|
|
1601
1601
|
* @returns {Observable<any>} Observable that emits the save response.
|
|
1602
1602
|
*/
|
|
1603
1603
|
saveDocumentUpload(payload) {
|
|
1604
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1604
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1605
1605
|
return this.http.post(`${this.apiUrl}${URLS.SAVE_DOCUMENT_UPLOAD}`, payload, { headers }).pipe(catchError((error) => {
|
|
1606
1606
|
return throwError(() => new Error(error));
|
|
1607
1607
|
}));
|
|
@@ -1617,7 +1617,7 @@ class DocumentHttpService {
|
|
|
1617
1617
|
const payload = {
|
|
1618
1618
|
statusUpdateDescription: statusUpdateDescription
|
|
1619
1619
|
};
|
|
1620
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1620
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1621
1621
|
return this.http.put(`${this.apiUrl}${URLS.UPDATE_DOCUMENT_STATUS}${documentId}/${status}`, payload, { headers }).pipe(tap((response) => {
|
|
1622
1622
|
if (response && response.status) {
|
|
1623
1623
|
const normalizedStatus = this.normalizeStatus(response.status);
|
|
@@ -1651,7 +1651,7 @@ class DocumentHttpService {
|
|
|
1651
1651
|
* @returns {Observable<any>} Observable that emits the delete response
|
|
1652
1652
|
*/
|
|
1653
1653
|
deleteDocument(documentId, contextId) {
|
|
1654
|
-
let headers = new HttpHeaders({ Authorization: 'Bearer
|
|
1654
|
+
let headers = new HttpHeaders({ Authorization: 'Bearer 567c2b7f-bb41-4d93-8974-e57853acab12' });
|
|
1655
1655
|
return this.http.delete(`${this.apiUrl}${URLS.DELETE_DOCUMENT}${documentId}`, { headers }).pipe(tap(() => {
|
|
1656
1656
|
this.getDocumentCatagories(contextId).subscribe();
|
|
1657
1657
|
this.getUserListByContextId(contextId).subscribe();
|
|
@@ -7277,11 +7277,11 @@ class DocumentZoomControlsComponent {
|
|
|
7277
7277
|
}
|
|
7278
7278
|
}
|
|
7279
7279
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentZoomControlsComponent, deps: [{ token: DocumentZoomService }, { token: DocumentHttpService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7280
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DocumentZoomControlsComponent, isStandalone: false, selector: "document-zoom-controls", inputs: { selectedDocument: "selectedDocument", contextId: "contextId", isFormHide: "isFormHide" }, outputs: { documentNameUpdated: "documentNameUpdated" }, ngImport: i0, template: "<div class=\"control-container\">\r\n <div class=\"inline-flex align-items-center justify-content-center gap-2\">\r\n <!-- Document name display with hover edit icon -->\r\n <div *ngIf=\"!isEditingDocumentName\" class=\"document-name-display\" \r\n [class.clickable-doc-name]=\"selectedDocument?.isAliasEditable\" \r\n [class.non-clickable-doc-name]=\"!selectedDocument?.isAliasEditable\"\r\n (click)=\"selectedDocument?.isAliasEditable ? onDocumentNameClick() : null\"\r\n [title]=\"selectedDocument?.isAliasEditable ? 'Click to edit document name' : 'Document name is not editable'\">\r\n <div class=\"alias-name\">\r\n {{ selectedDocument?.aliasName || selectedDocument?.docName }}\r\n <i *ngIf=\"selectedDocument?.isAliasEditable && !isFormHide\" class=\"pi pi-pencil edit-icon-small\"></i> \r\n </div>\r\n <div class=\"document-name\">{{ selectedDocument?.docName }}</div>\r\n </div>\r\n <div *ngIf=\"isEditingDocumentName\" class=\"document-edit-container\">\r\n <input #fileInput type=\"text\" class=\"h-3rem file-input-wrapper document-name-input\" pInputText\r\n [(ngModel)]=\"documentName\" (input)=\"onDocumentNameChange($event)\" (keydown.escape)=\"cancelDocumentNameEdit()\"\r\n (keydown.enter)=\"handleSaveClick()\" (blur)=\"handleSaveClick()\" />\r\n <div class=\"document-name-subline\">\r\n {{ selectedDocument?.docName }}\r\n </div>\r\n </div>\r\n <div *ngIf=\"fileNameError\" class=\"error-message-wrapper\">\r\n {{ fileNameError }}\r\n </div>\r\n </div>\r\n <div class=\"zoom-controls\">\r\n <p-button type=\"button\" icon=\"pi pi-minus\" [rounded]=\"true\" severity=\"secondary\" [outlined]=\"true\" (click)=\"zoomOut()\" [disabled]=\"isZoomOutDisabled\" title=\"Zoom Out\">\r\n </p-button>\r\n <p-button type=\"button\" icon=\"pi pi-plus\" [rounded]=\"true\" severity=\"secondary\" [outlined]=\"true\" (click)=\"zoomIn()\" [disabled]=\"isZoomInDisabled\" title=\"Zoom In\">\r\n </p-button>\r\n \r\n </div>\r\n\r\n</div>", styles: ["@charset \"UTF-8\";.control-container{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0;width:100%}.document-name-display{display:flex;flex-direction:column;gap:.25rem;cursor:pointer;padding:.75rem;border-radius:.5rem;transition:all .2s ease;border:1px solid transparent;margin-right:auto}.document-name-display:hover{background-color:transparent;border-color:transparent;transform:none;box-shadow:none}.document-name-display.non-clickable-doc-name{cursor:default}.document-name-display .alias-name{font-weight:600;color:#1e293b;font-size:1.125rem;display:flex;align-items:center;gap:.5rem;line-height:1.4}.document-name-display .alias-name .edit-icon-small{font-size:.75rem;color:#64748b;opacity:.7;transition:all .2s ease;padding:.25rem;border-radius:.25rem}.document-name-display.clickable-doc-name .alias-name:hover{color:#1d4ed8}.document-name-display .document-name{font-size:.875rem;color:#64748b;font-weight:400;line-height:1.3;word-break:break-all}.document-name-display.clickable-doc-name:hover .edit-icon-small{opacity:1;color:#475569}.document-edit-container{display:flex;flex-direction:column;gap:.375rem;padding:0;background:transparent;border-radius:0;border:none}.document-edit-container .document-name-input{border:none!important;border-bottom:2px solid #3b82f6!important;border-radius:0!important;padding:.25rem 0!important;font-size:1.125rem!important;font-weight:600!important;color:#1e293b!important;background:transparent!important;transition:border-color .2s ease;width:auto;min-width:12rem;max-width:100%;box-shadow:none!important;outline:none!important}.document-edit-container .document-name-input:focus{outline:none!important;border-bottom-color:#1d4ed8!important;box-shadow:none!important}.document-edit-container .document-name-input::placeholder{color:#94a3b8;font-weight:400}.document-edit-container .document-name-subline{font-size:.875rem;color:#94a3b8;padding-left:0;line-height:1.3}:host ::ng-deep .document-name-input.p-inputtext,:host ::ng-deep .document-name-input.p-inputtext:enabled:focus,:host ::ng-deep .document-name-input.p-inputtext:focus{border:none!important;border-bottom:2px solid #3b82f6!important;border-radius:0!important;box-shadow:none!important;outline:none!important;background:transparent!important}:host ::ng-deep .document-name-input.p-inputtext:hover,:host ::ng-deep .document-name-input.p-inputtext:enabled:hover{border:none!important;border-bottom:2px solid #1d4ed8!important;border-radius:0!important;box-shadow:none!important;outline:none!important;background:transparent!important}.error-message-wrapper{color:#dc2626;font-size:.875rem;font-weight:500;padding:.5rem .75rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;margin-top:.25rem;display:flex;align-items:center;gap:.5rem}.error-message-wrapper:before{content:\"\\26a0\";font-size:1rem}.zoom-controls{display:flex;align-items:center;gap:.75rem;transition:all .2s ease;margin-left:auto;padding-right:10px}.zoom-controls .zoom-button{width:44px;height:44px;border-radius:.5rem;border:none;background:#fff;color:#475569;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:1.25rem;font-weight:600;box-shadow:0 1px 3px #0000001a}.zoom-controls .zoom-button:hover:not(:disabled){background:#3b82f6;color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.zoom-controls .zoom-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #3b82f64d}.zoom-controls .zoom-button:disabled{opacity:.4;cursor:not-allowed;background:#f1f5f9;color:#94a3b8;transform:none}.zoom-controls .zoom-button i{font-size:1rem;transition:transform .2s ease}.zoom-controls .zoom-button:hover:not(:disabled) i{transform:scale(1.1)}.zoom-controls .zoom-level{min-width:4.5rem;text-align:center;font-weight:700;color:#1e293b;font-size:1rem;background:#fff;padding:.75rem 1rem;border-radius:.5rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;transition:all .2s ease;-webkit-user-select:none;user-select:none}.zoom-controls .zoom-level:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.zoom-controls .reset-button{padding:.75rem 1.25rem;border:1px solid #cbd5e1;background:#fff;color:#64748b;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d;white-space:nowrap}.zoom-controls .reset-button:hover{background:#f8fafc;border-color:#94a3b8;color:#475569;transform:translateY(-1px);box-shadow:0 3px 6px #0000001a}.zoom-controls .reset-button:active{transform:translateY(0)}@media (max-width: 768px){.control-container{gap:.75rem;flex-direction:column;align-items:stretch;justify-content:flex-start}.document-name-display{margin-right:0;margin-bottom:.5rem}.zoom-controls{margin-left:0;align-self:flex-end}.zoom-controls{padding:.75rem;gap:.5rem;flex-wrap:wrap;justify-content:center}.zoom-controls .zoom-button{width:40px;height:40px}.zoom-controls .zoom-level{min-width:4rem;padding:.5rem .75rem}.zoom-controls .reset-button{padding:.5rem 1rem;font-size:.8rem}.document-name-display{padding:.5rem}.document-name-display .alias-name{font-size:1rem}}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i9.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.InputText, selector: "[pInputText]", inputs: ["variant"] }] });
|
|
7280
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: DocumentZoomControlsComponent, isStandalone: false, selector: "document-zoom-controls", inputs: { selectedDocument: "selectedDocument", contextId: "contextId", isFormHide: "isFormHide" }, outputs: { documentNameUpdated: "documentNameUpdated" }, ngImport: i0, template: "<div class=\"control-container\">\r\n <div class=\"inline-flex align-items-center justify-content-center gap-2\">\r\n <!-- Document name display with hover edit icon -->\r\n <div *ngIf=\"!isEditingDocumentName\" class=\"document-name-display\" \r\n [class.clickable-doc-name]=\"selectedDocument?.isAliasEditable\" \r\n [class.non-clickable-doc-name]=\"!selectedDocument?.isAliasEditable\"\r\n (click)=\"selectedDocument?.isAliasEditable ? onDocumentNameClick() : null\"\r\n [title]=\"selectedDocument?.isAliasEditable ? 'Click to edit document name' : 'Document name is not editable'\">\r\n <div class=\"alias-name\">\r\n {{ selectedDocument?.aliasName || selectedDocument?.docName }}\r\n <i *ngIf=\"selectedDocument?.isAliasEditable && !isFormHide\" class=\"pi pi-pencil edit-icon-small\"></i> \r\n </div>\r\n <!-- Subline: if alias exists show `docName - documentTypeName`, else show only `documentTypeName` -->\r\n <div class=\"document-name\" *ngIf=\"((selectedDocument?.aliasName || '').trim()).length > 0\">\r\n {{ selectedDocument?.docName }}<ng-container *ngIf=\"selectedDocument?.documentTypeName\"> - {{ selectedDocument?.documentTypeName }}</ng-container>\r\n </div>\r\n <div class=\"document-name\" *ngIf=\"((selectedDocument?.aliasName || '').trim()).length === 0\">\r\n {{ selectedDocument?.documentTypeName }}\r\n </div>\r\n </div>\r\n <div *ngIf=\"isEditingDocumentName\" class=\"document-edit-container\">\r\n <input #fileInput type=\"text\" class=\"h-3rem file-input-wrapper document-name-input\" pInputText\r\n [(ngModel)]=\"documentName\" (input)=\"onDocumentNameChange($event)\" (keydown.escape)=\"cancelDocumentNameEdit()\"\r\n (keydown.enter)=\"handleSaveClick()\" (blur)=\"handleSaveClick()\" />\r\n <div class=\"document-name-subline\" *ngIf=\"((selectedDocument?.aliasName || '').trim()).length > 0\">\r\n {{ selectedDocument?.docName }}<ng-container *ngIf=\"selectedDocument?.documentTypeName\"> - {{ selectedDocument?.documentTypeName }}</ng-container>\r\n </div>\r\n <div class=\"document-name-subline\" *ngIf=\"((selectedDocument?.aliasName || '').trim()).length === 0\">\r\n {{ selectedDocument?.documentTypeName }}\r\n </div>\r\n </div>\r\n <div *ngIf=\"fileNameError\" class=\"error-message-wrapper\">\r\n {{ fileNameError }}\r\n </div>\r\n </div>\r\n <div class=\"zoom-controls\">\r\n <p-button type=\"button\" icon=\"pi pi-minus\" [rounded]=\"true\" severity=\"secondary\" [outlined]=\"true\" (click)=\"zoomOut()\" [disabled]=\"isZoomOutDisabled\" title=\"Zoom Out\">\r\n </p-button>\r\n <p-button type=\"button\" icon=\"pi pi-plus\" [rounded]=\"true\" severity=\"secondary\" [outlined]=\"true\" (click)=\"zoomIn()\" [disabled]=\"isZoomInDisabled\" title=\"Zoom In\">\r\n </p-button>\r\n \r\n </div>\r\n\r\n</div>", styles: ["@charset \"UTF-8\";.control-container{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0;width:100%}.document-name-display{display:flex;flex-direction:column;gap:.25rem;cursor:pointer;padding:.75rem;border-radius:.5rem;transition:all .2s ease;border:1px solid transparent;margin-right:auto}.document-name-display:hover{background-color:transparent;border-color:transparent;transform:none;box-shadow:none}.document-name-display.non-clickable-doc-name{cursor:default}.document-name-display .alias-name{font-weight:600;color:#1e293b;font-size:1.125rem;display:flex;align-items:center;gap:.5rem;line-height:1.4}.document-name-display .alias-name .edit-icon-small{font-size:.75rem;color:#64748b;opacity:.7;transition:all .2s ease;padding:.25rem;border-radius:.25rem}.document-name-display.clickable-doc-name .alias-name:hover{color:#1d4ed8}.document-name-display .document-name{font-size:.875rem;color:#64748b;font-weight:400;line-height:1.3;word-break:break-all}.document-name-display.clickable-doc-name:hover .edit-icon-small{opacity:1;color:#475569}.document-edit-container{display:flex;flex-direction:column;gap:.375rem;padding:0;background:transparent;border-radius:0;border:none}.document-edit-container .document-name-input{border:none!important;border-bottom:2px solid #3b82f6!important;border-radius:0!important;padding:.25rem 0!important;font-size:1.125rem!important;font-weight:600!important;color:#1e293b!important;background:transparent!important;transition:border-color .2s ease;width:auto;min-width:12rem;max-width:100%;box-shadow:none!important;outline:none!important}.document-edit-container .document-name-input:focus{outline:none!important;border-bottom-color:#1d4ed8!important;box-shadow:none!important}.document-edit-container .document-name-input::placeholder{color:#94a3b8;font-weight:400}.document-edit-container .document-name-subline{font-size:.875rem;color:#94a3b8;padding-left:0;line-height:1.3}:host ::ng-deep .document-name-input.p-inputtext,:host ::ng-deep .document-name-input.p-inputtext:enabled:focus,:host ::ng-deep .document-name-input.p-inputtext:focus{border:none!important;border-bottom:2px solid #3b82f6!important;border-radius:0!important;box-shadow:none!important;outline:none!important;background:transparent!important}:host ::ng-deep .document-name-input.p-inputtext:hover,:host ::ng-deep .document-name-input.p-inputtext:enabled:hover{border:none!important;border-bottom:2px solid #1d4ed8!important;border-radius:0!important;box-shadow:none!important;outline:none!important;background:transparent!important}.error-message-wrapper{color:#dc2626;font-size:.875rem;font-weight:500;padding:.5rem .75rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;margin-top:.25rem;display:flex;align-items:center;gap:.5rem}.error-message-wrapper:before{content:\"\\26a0\";font-size:1rem}.zoom-controls{display:flex;align-items:center;gap:.75rem;transition:all .2s ease;margin-left:auto;padding-right:10px}.zoom-controls .zoom-button{width:44px;height:44px;border-radius:.5rem;border:none;background:#fff;color:#475569;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:1.25rem;font-weight:600;box-shadow:0 1px 3px #0000001a}.zoom-controls .zoom-button:hover:not(:disabled){background:#3b82f6;color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.zoom-controls .zoom-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #3b82f64d}.zoom-controls .zoom-button:disabled{opacity:.4;cursor:not-allowed;background:#f1f5f9;color:#94a3b8;transform:none}.zoom-controls .zoom-button i{font-size:1rem;transition:transform .2s ease}.zoom-controls .zoom-button:hover:not(:disabled) i{transform:scale(1.1)}.zoom-controls .zoom-level{min-width:4.5rem;text-align:center;font-weight:700;color:#1e293b;font-size:1rem;background:#fff;padding:.75rem 1rem;border-radius:.5rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;transition:all .2s ease;-webkit-user-select:none;user-select:none}.zoom-controls .zoom-level:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.zoom-controls .reset-button{padding:.75rem 1.25rem;border:1px solid #cbd5e1;background:#fff;color:#64748b;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d;white-space:nowrap}.zoom-controls .reset-button:hover{background:#f8fafc;border-color:#94a3b8;color:#475569;transform:translateY(-1px);box-shadow:0 3px 6px #0000001a}.zoom-controls .reset-button:active{transform:translateY(0)}@media (max-width: 768px){.control-container{gap:.75rem;flex-direction:column;align-items:stretch;justify-content:flex-start}.document-name-display{margin-right:0;margin-bottom:.5rem}.zoom-controls{margin-left:0;align-self:flex-end}.zoom-controls{padding:.75rem;gap:.5rem;flex-wrap:wrap;justify-content:center}.zoom-controls .zoom-button{width:40px;height:40px}.zoom-controls .zoom-level{min-width:4rem;padding:.5rem .75rem}.zoom-controls .reset-button{padding:.5rem 1rem;font-size:.8rem}.document-name-display{padding:.5rem}.document-name-display .alias-name{font-size:1rem}}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i9.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.InputText, selector: "[pInputText]", inputs: ["variant"] }] });
|
|
7281
7281
|
}
|
|
7282
7282
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: DocumentZoomControlsComponent, decorators: [{
|
|
7283
7283
|
type: Component,
|
|
7284
|
-
args: [{ selector: 'document-zoom-controls', standalone: false, template: "<div class=\"control-container\">\r\n <div class=\"inline-flex align-items-center justify-content-center gap-2\">\r\n <!-- Document name display with hover edit icon -->\r\n <div *ngIf=\"!isEditingDocumentName\" class=\"document-name-display\" \r\n [class.clickable-doc-name]=\"selectedDocument?.isAliasEditable\" \r\n [class.non-clickable-doc-name]=\"!selectedDocument?.isAliasEditable\"\r\n (click)=\"selectedDocument?.isAliasEditable ? onDocumentNameClick() : null\"\r\n [title]=\"selectedDocument?.isAliasEditable ? 'Click to edit document name' : 'Document name is not editable'\">\r\n <div class=\"alias-name\">\r\n {{ selectedDocument?.aliasName || selectedDocument?.docName }}\r\n <i *ngIf=\"selectedDocument?.isAliasEditable && !isFormHide\" class=\"pi pi-pencil edit-icon-small\"></i> \r\n </div>\r\n <div class=\"document-name\">{{ selectedDocument?.docName }}</div>\r\n </div>\r\n <div *ngIf=\"isEditingDocumentName\" class=\"document-edit-container\">\r\n <input #fileInput type=\"text\" class=\"h-3rem file-input-wrapper document-name-input\" pInputText\r\n [(ngModel)]=\"documentName\" (input)=\"onDocumentNameChange($event)\" (keydown.escape)=\"cancelDocumentNameEdit()\"\r\n (keydown.enter)=\"handleSaveClick()\" (blur)=\"handleSaveClick()\" />\r\n <div class=\"document-name-subline\">\r\n {{ selectedDocument?.docName }}\r\n </div>\r\n </div>\r\n <div *ngIf=\"fileNameError\" class=\"error-message-wrapper\">\r\n {{ fileNameError }}\r\n </div>\r\n </div>\r\n <div class=\"zoom-controls\">\r\n <p-button type=\"button\" icon=\"pi pi-minus\" [rounded]=\"true\" severity=\"secondary\" [outlined]=\"true\" (click)=\"zoomOut()\" [disabled]=\"isZoomOutDisabled\" title=\"Zoom Out\">\r\n </p-button>\r\n <p-button type=\"button\" icon=\"pi pi-plus\" [rounded]=\"true\" severity=\"secondary\" [outlined]=\"true\" (click)=\"zoomIn()\" [disabled]=\"isZoomInDisabled\" title=\"Zoom In\">\r\n </p-button>\r\n \r\n </div>\r\n\r\n</div>", styles: ["@charset \"UTF-8\";.control-container{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0;width:100%}.document-name-display{display:flex;flex-direction:column;gap:.25rem;cursor:pointer;padding:.75rem;border-radius:.5rem;transition:all .2s ease;border:1px solid transparent;margin-right:auto}.document-name-display:hover{background-color:transparent;border-color:transparent;transform:none;box-shadow:none}.document-name-display.non-clickable-doc-name{cursor:default}.document-name-display .alias-name{font-weight:600;color:#1e293b;font-size:1.125rem;display:flex;align-items:center;gap:.5rem;line-height:1.4}.document-name-display .alias-name .edit-icon-small{font-size:.75rem;color:#64748b;opacity:.7;transition:all .2s ease;padding:.25rem;border-radius:.25rem}.document-name-display.clickable-doc-name .alias-name:hover{color:#1d4ed8}.document-name-display .document-name{font-size:.875rem;color:#64748b;font-weight:400;line-height:1.3;word-break:break-all}.document-name-display.clickable-doc-name:hover .edit-icon-small{opacity:1;color:#475569}.document-edit-container{display:flex;flex-direction:column;gap:.375rem;padding:0;background:transparent;border-radius:0;border:none}.document-edit-container .document-name-input{border:none!important;border-bottom:2px solid #3b82f6!important;border-radius:0!important;padding:.25rem 0!important;font-size:1.125rem!important;font-weight:600!important;color:#1e293b!important;background:transparent!important;transition:border-color .2s ease;width:auto;min-width:12rem;max-width:100%;box-shadow:none!important;outline:none!important}.document-edit-container .document-name-input:focus{outline:none!important;border-bottom-color:#1d4ed8!important;box-shadow:none!important}.document-edit-container .document-name-input::placeholder{color:#94a3b8;font-weight:400}.document-edit-container .document-name-subline{font-size:.875rem;color:#94a3b8;padding-left:0;line-height:1.3}:host ::ng-deep .document-name-input.p-inputtext,:host ::ng-deep .document-name-input.p-inputtext:enabled:focus,:host ::ng-deep .document-name-input.p-inputtext:focus{border:none!important;border-bottom:2px solid #3b82f6!important;border-radius:0!important;box-shadow:none!important;outline:none!important;background:transparent!important}:host ::ng-deep .document-name-input.p-inputtext:hover,:host ::ng-deep .document-name-input.p-inputtext:enabled:hover{border:none!important;border-bottom:2px solid #1d4ed8!important;border-radius:0!important;box-shadow:none!important;outline:none!important;background:transparent!important}.error-message-wrapper{color:#dc2626;font-size:.875rem;font-weight:500;padding:.5rem .75rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;margin-top:.25rem;display:flex;align-items:center;gap:.5rem}.error-message-wrapper:before{content:\"\\26a0\";font-size:1rem}.zoom-controls{display:flex;align-items:center;gap:.75rem;transition:all .2s ease;margin-left:auto;padding-right:10px}.zoom-controls .zoom-button{width:44px;height:44px;border-radius:.5rem;border:none;background:#fff;color:#475569;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:1.25rem;font-weight:600;box-shadow:0 1px 3px #0000001a}.zoom-controls .zoom-button:hover:not(:disabled){background:#3b82f6;color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.zoom-controls .zoom-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #3b82f64d}.zoom-controls .zoom-button:disabled{opacity:.4;cursor:not-allowed;background:#f1f5f9;color:#94a3b8;transform:none}.zoom-controls .zoom-button i{font-size:1rem;transition:transform .2s ease}.zoom-controls .zoom-button:hover:not(:disabled) i{transform:scale(1.1)}.zoom-controls .zoom-level{min-width:4.5rem;text-align:center;font-weight:700;color:#1e293b;font-size:1rem;background:#fff;padding:.75rem 1rem;border-radius:.5rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;transition:all .2s ease;-webkit-user-select:none;user-select:none}.zoom-controls .zoom-level:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.zoom-controls .reset-button{padding:.75rem 1.25rem;border:1px solid #cbd5e1;background:#fff;color:#64748b;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d;white-space:nowrap}.zoom-controls .reset-button:hover{background:#f8fafc;border-color:#94a3b8;color:#475569;transform:translateY(-1px);box-shadow:0 3px 6px #0000001a}.zoom-controls .reset-button:active{transform:translateY(0)}@media (max-width: 768px){.control-container{gap:.75rem;flex-direction:column;align-items:stretch;justify-content:flex-start}.document-name-display{margin-right:0;margin-bottom:.5rem}.zoom-controls{margin-left:0;align-self:flex-end}.zoom-controls{padding:.75rem;gap:.5rem;flex-wrap:wrap;justify-content:center}.zoom-controls .zoom-button{width:40px;height:40px}.zoom-controls .zoom-level{min-width:4rem;padding:.5rem .75rem}.zoom-controls .reset-button{padding:.5rem 1rem;font-size:.8rem}.document-name-display{padding:.5rem}.document-name-display .alias-name{font-size:1rem}}\n"] }]
|
|
7284
|
+
args: [{ selector: 'document-zoom-controls', standalone: false, template: "<div class=\"control-container\">\r\n <div class=\"inline-flex align-items-center justify-content-center gap-2\">\r\n <!-- Document name display with hover edit icon -->\r\n <div *ngIf=\"!isEditingDocumentName\" class=\"document-name-display\" \r\n [class.clickable-doc-name]=\"selectedDocument?.isAliasEditable\" \r\n [class.non-clickable-doc-name]=\"!selectedDocument?.isAliasEditable\"\r\n (click)=\"selectedDocument?.isAliasEditable ? onDocumentNameClick() : null\"\r\n [title]=\"selectedDocument?.isAliasEditable ? 'Click to edit document name' : 'Document name is not editable'\">\r\n <div class=\"alias-name\">\r\n {{ selectedDocument?.aliasName || selectedDocument?.docName }}\r\n <i *ngIf=\"selectedDocument?.isAliasEditable && !isFormHide\" class=\"pi pi-pencil edit-icon-small\"></i> \r\n </div>\r\n <!-- Subline: if alias exists show `docName - documentTypeName`, else show only `documentTypeName` -->\r\n <div class=\"document-name\" *ngIf=\"((selectedDocument?.aliasName || '').trim()).length > 0\">\r\n {{ selectedDocument?.docName }}<ng-container *ngIf=\"selectedDocument?.documentTypeName\"> - {{ selectedDocument?.documentTypeName }}</ng-container>\r\n </div>\r\n <div class=\"document-name\" *ngIf=\"((selectedDocument?.aliasName || '').trim()).length === 0\">\r\n {{ selectedDocument?.documentTypeName }}\r\n </div>\r\n </div>\r\n <div *ngIf=\"isEditingDocumentName\" class=\"document-edit-container\">\r\n <input #fileInput type=\"text\" class=\"h-3rem file-input-wrapper document-name-input\" pInputText\r\n [(ngModel)]=\"documentName\" (input)=\"onDocumentNameChange($event)\" (keydown.escape)=\"cancelDocumentNameEdit()\"\r\n (keydown.enter)=\"handleSaveClick()\" (blur)=\"handleSaveClick()\" />\r\n <div class=\"document-name-subline\" *ngIf=\"((selectedDocument?.aliasName || '').trim()).length > 0\">\r\n {{ selectedDocument?.docName }}<ng-container *ngIf=\"selectedDocument?.documentTypeName\"> - {{ selectedDocument?.documentTypeName }}</ng-container>\r\n </div>\r\n <div class=\"document-name-subline\" *ngIf=\"((selectedDocument?.aliasName || '').trim()).length === 0\">\r\n {{ selectedDocument?.documentTypeName }}\r\n </div>\r\n </div>\r\n <div *ngIf=\"fileNameError\" class=\"error-message-wrapper\">\r\n {{ fileNameError }}\r\n </div>\r\n </div>\r\n <div class=\"zoom-controls\">\r\n <p-button type=\"button\" icon=\"pi pi-minus\" [rounded]=\"true\" severity=\"secondary\" [outlined]=\"true\" (click)=\"zoomOut()\" [disabled]=\"isZoomOutDisabled\" title=\"Zoom Out\">\r\n </p-button>\r\n <p-button type=\"button\" icon=\"pi pi-plus\" [rounded]=\"true\" severity=\"secondary\" [outlined]=\"true\" (click)=\"zoomIn()\" [disabled]=\"isZoomInDisabled\" title=\"Zoom In\">\r\n </p-button>\r\n \r\n </div>\r\n\r\n</div>", styles: ["@charset \"UTF-8\";.control-container{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0;width:100%}.document-name-display{display:flex;flex-direction:column;gap:.25rem;cursor:pointer;padding:.75rem;border-radius:.5rem;transition:all .2s ease;border:1px solid transparent;margin-right:auto}.document-name-display:hover{background-color:transparent;border-color:transparent;transform:none;box-shadow:none}.document-name-display.non-clickable-doc-name{cursor:default}.document-name-display .alias-name{font-weight:600;color:#1e293b;font-size:1.125rem;display:flex;align-items:center;gap:.5rem;line-height:1.4}.document-name-display .alias-name .edit-icon-small{font-size:.75rem;color:#64748b;opacity:.7;transition:all .2s ease;padding:.25rem;border-radius:.25rem}.document-name-display.clickable-doc-name .alias-name:hover{color:#1d4ed8}.document-name-display .document-name{font-size:.875rem;color:#64748b;font-weight:400;line-height:1.3;word-break:break-all}.document-name-display.clickable-doc-name:hover .edit-icon-small{opacity:1;color:#475569}.document-edit-container{display:flex;flex-direction:column;gap:.375rem;padding:0;background:transparent;border-radius:0;border:none}.document-edit-container .document-name-input{border:none!important;border-bottom:2px solid #3b82f6!important;border-radius:0!important;padding:.25rem 0!important;font-size:1.125rem!important;font-weight:600!important;color:#1e293b!important;background:transparent!important;transition:border-color .2s ease;width:auto;min-width:12rem;max-width:100%;box-shadow:none!important;outline:none!important}.document-edit-container .document-name-input:focus{outline:none!important;border-bottom-color:#1d4ed8!important;box-shadow:none!important}.document-edit-container .document-name-input::placeholder{color:#94a3b8;font-weight:400}.document-edit-container .document-name-subline{font-size:.875rem;color:#94a3b8;padding-left:0;line-height:1.3}:host ::ng-deep .document-name-input.p-inputtext,:host ::ng-deep .document-name-input.p-inputtext:enabled:focus,:host ::ng-deep .document-name-input.p-inputtext:focus{border:none!important;border-bottom:2px solid #3b82f6!important;border-radius:0!important;box-shadow:none!important;outline:none!important;background:transparent!important}:host ::ng-deep .document-name-input.p-inputtext:hover,:host ::ng-deep .document-name-input.p-inputtext:enabled:hover{border:none!important;border-bottom:2px solid #1d4ed8!important;border-radius:0!important;box-shadow:none!important;outline:none!important;background:transparent!important}.error-message-wrapper{color:#dc2626;font-size:.875rem;font-weight:500;padding:.5rem .75rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;margin-top:.25rem;display:flex;align-items:center;gap:.5rem}.error-message-wrapper:before{content:\"\\26a0\";font-size:1rem}.zoom-controls{display:flex;align-items:center;gap:.75rem;transition:all .2s ease;margin-left:auto;padding-right:10px}.zoom-controls .zoom-button{width:44px;height:44px;border-radius:.5rem;border:none;background:#fff;color:#475569;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:1.25rem;font-weight:600;box-shadow:0 1px 3px #0000001a}.zoom-controls .zoom-button:hover:not(:disabled){background:#3b82f6;color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.zoom-controls .zoom-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #3b82f64d}.zoom-controls .zoom-button:disabled{opacity:.4;cursor:not-allowed;background:#f1f5f9;color:#94a3b8;transform:none}.zoom-controls .zoom-button i{font-size:1rem;transition:transform .2s ease}.zoom-controls .zoom-button:hover:not(:disabled) i{transform:scale(1.1)}.zoom-controls .zoom-level{min-width:4.5rem;text-align:center;font-weight:700;color:#1e293b;font-size:1rem;background:#fff;padding:.75rem 1rem;border-radius:.5rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;transition:all .2s ease;-webkit-user-select:none;user-select:none}.zoom-controls .zoom-level:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.zoom-controls .reset-button{padding:.75rem 1.25rem;border:1px solid #cbd5e1;background:#fff;color:#64748b;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d;white-space:nowrap}.zoom-controls .reset-button:hover{background:#f8fafc;border-color:#94a3b8;color:#475569;transform:translateY(-1px);box-shadow:0 3px 6px #0000001a}.zoom-controls .reset-button:active{transform:translateY(0)}@media (max-width: 768px){.control-container{gap:.75rem;flex-direction:column;align-items:stretch;justify-content:flex-start}.document-name-display{margin-right:0;margin-bottom:.5rem}.zoom-controls{margin-left:0;align-self:flex-end}.zoom-controls{padding:.75rem;gap:.5rem;flex-wrap:wrap;justify-content:center}.zoom-controls .zoom-button{width:40px;height:40px}.zoom-controls .zoom-level{min-width:4rem;padding:.5rem .75rem}.zoom-controls .reset-button{padding:.5rem 1rem;font-size:.8rem}.document-name-display{padding:.5rem}.document-name-display .alias-name{font-size:1rem}}\n"] }]
|
|
7285
7285
|
}], ctorParameters: () => [{ type: DocumentZoomService }, { type: DocumentHttpService }], propDecorators: { selectedDocument: [{
|
|
7286
7286
|
type: Input
|
|
7287
7287
|
}], contextId: [{
|