From feb5d534b5b62ed99044da800fca273a0e63827e Mon Sep 17 00:00:00 2001
From: jojo2357 <66704796+jojo2357@users.noreply.github.com>
Date: Sat, 13 Sep 2025 21:19:00 -0600
Subject: [PATCH] Enhancement: long text custom field (#10846)
---------
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
---
.../custom-field-display.component.html | 3 ++
.../custom-field-display.component.ts | 6 +--
.../custom-fields-values.component.html | 5 +++
.../custom-fields-values.component.ts | 2 +
.../input/textarea/textarea.component.ts | 8 +++-
.../document-detail.component.html | 8 ++++
.../document-detail.component.ts | 2 +
...tom-fields-bulk-edit-dialog.component.html | 4 ++
...ustom-fields-bulk-edit-dialog.component.ts | 2 +
src-ui/src/app/data/custom-field-query.ts | 4 ++
src-ui/src/app/data/custom-field.ts | 5 +++
src/documents/filters.py | 7 +++-
...mfieldinstance_value_long_text_and_more.py | 39 +++++++++++++++++++
src/documents/models.py | 4 ++
src/documents/templating/filepath.py | 1 +
15 files changed, 95 insertions(+), 5 deletions(-)
create mode 100644 src/documents/migrations/1070_customfieldinstance_value_long_text_and_more.py
diff --git a/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.html b/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.html
index bfac6ef23..388c314d3 100644
--- a/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.html
+++ b/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.html
@@ -35,6 +35,9 @@
@case (CustomFieldDataType.Select) {
{{getSelectValue(field, value)}}
}
+ @case (CustomFieldDataType.LongText) {
+
{{value | slice:0:20}}{{value.length > 20 ? '...' : ''}}
+ }
@default {
{{value}}
}
diff --git a/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.ts b/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.ts
index 44ec0bdaa..7885f5c28 100644
--- a/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.ts
+++ b/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.ts
@@ -1,5 +1,5 @@
-import { CurrencyPipe, getLocaleCurrencyCode } from '@angular/common'
-import { Component, Input, LOCALE_ID, OnInit, inject } from '@angular/core'
+import { CurrencyPipe, getLocaleCurrencyCode, SlicePipe } from '@angular/common'
+import { Component, inject, Input, LOCALE_ID, OnInit } from '@angular/core'
import { NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap'
import { takeUntil } from 'rxjs'
import { CustomField, CustomFieldDataType } from 'src/app/data/custom-field'
@@ -14,7 +14,7 @@ import { LoadingComponentWithPermissions } from '../../loading-component/loading
selector: 'pngx-custom-field-display',
templateUrl: './custom-field-display.component.html',
styleUrl: './custom-field-display.component.scss',
- imports: [CustomDatePipe, CurrencyPipe, NgbTooltipModule],
+ imports: [CustomDatePipe, CurrencyPipe, NgbTooltipModule, SlicePipe],
})
export class CustomFieldDisplayComponent
extends LoadingComponentWithPermissions
diff --git a/src-ui/src/app/components/common/input/custom-fields-values/custom-fields-values.component.html b/src-ui/src/app/components/common/input/custom-fields-values/custom-fields-values.component.html
index f0886b1c2..0c20a620a 100644
--- a/src-ui/src/app/components/common/input/custom-fields-values/custom-fields-values.component.html
+++ b/src-ui/src/app/components/common/input/custom-fields-values/custom-fields-values.component.html
@@ -68,6 +68,11 @@
[allowNull]="true"
[horizontal]="true">
}
+ @case (CustomFieldDataType.LongText) {
+
+ }
}