diff --git a/README.md b/README.md
index 881ba1d5f..361671cc8 100644
--- a/README.md
+++ b/README.md
@@ -42,79 +42,14 @@ Add cloudflare certificate and specify a hostname to use `timo-redaction-dev.iqs
Password for all users is `OsloImWinter!23`
-```
+### Running the app locally
----
- global:
- imageRegistry: "nexus.iqser.com:5001"
+Requirements:
+* node 16 or newer installed ( https://nodejs.org/en/download/ )
+* yarn ( execute `npm install -g yarn` in any terminal after installing node )
- ingress:
- hosts:
- - host: redui-automation-ui.iqser.cloud
- tls:
- - secretName: iqser-cloud-origin
- hosts:
- - redui-automation-ui.iqser.cloud
-
- api:
- url: 'https://redui-automation-api.iqser.cloud'
- client: redaction
- oauthUrl: 'https://redkc-staging.iqser.cloud/auth/realms/redaction'
+In the root folder simply execute `yarn install` followed by `yarn start`.
+The file `apps/red-ui/src/assets/config.config.json` contains the configuration for local development. All properties defined here are later available via env variables.
-```
-```
-
----
- global:
- imageRegistry: "nexus.iqser.com:5001"
-
- ingress:
- hosts:
- - host: redui-automation-api.iqser.cloud
- tls:
- - secretName: iqser-cloud-origin
- hosts:
- - redui-automation-api.iqser.cloud
-
- cassandra:
- dbUser:
- forcePassword: false
- cluster:
- replicaCount: 1
- seedCount: 1
- jvm:
- max_heap_size: 2048M
- heap_new_size: 800M
- persistence:
- enabled: true
- resources:
- requests:
- memory: "4Gi"
- cpu: "0.5"
-
- keycloak:
- authServerUrl: 'https://redkc-staging.iqser.cloud/auth'
- client:
- secret: 'a4e8aa56-03b0-4e6b-b822-8ac1f41280c4'
-
- configuration_service_v1:
- init:
- dictionaries:
- # https://cloud.iqser.com/index.php/f/879133 (Entities/CleanMergedDictionaries/addresses.txt)
- - type: "address"
- nextcloud_host: "cloud.iqser.com"
- nextcloud_share_id: fTkfkxeGZorpFCL
- nextcloud_share_password: q9g9m34n
- # https://cloud.iqser.com/index.php/f/879133 (Entities/CleanMergedDictionaries/names.txt)
- - type: "name"
- nextcloud_host: "cloud.iqser.com"
- nextcloud_share_id: jaiArBK2DeZG6pJ
- nextcloud_share_password: WPfpQcKG
- # https://cloud.iqser.com/index.php/f/879133 (Entities/CleanMergedDictionaries/vertebrates.txt)
- - type: "vertebrate"
- nextcloud_host: "cloud.iqser.com"
- nextcloud_share_id: F7Nf9cTR3nJbSyb
- nextcloud_share_password: HCATe6TH
-```
diff --git a/apps/red-ui/src/app/modules/dossier-overview/components/table-item/file-workload/file-workload.component.html b/apps/red-ui/src/app/modules/dossier-overview/components/table-item/file-workload/file-workload.component.html
index 21d4653c2..e27ba5621 100644
--- a/apps/red-ui/src/app/modules/dossier-overview/components/table-item/file-workload/file-workload.component.html
+++ b/apps/red-ui/src/app/modules/dossier-overview/components/table-item/file-workload/file-workload.component.html
@@ -9,7 +9,7 @@
diff --git a/apps/red-ui/src/app/modules/dossiers-listing/components/dossier-workload-column/dossier-workload-column.component.html b/apps/red-ui/src/app/modules/dossiers-listing/components/dossier-workload-column/dossier-workload-column.component.html
index 7866b4a7d..2eaec1625 100644
--- a/apps/red-ui/src/app/modules/dossiers-listing/components/dossier-workload-column/dossier-workload-column.component.html
+++ b/apps/red-ui/src/app/modules/dossiers-listing/components/dossier-workload-column/dossier-workload-column.component.html
@@ -2,7 +2,7 @@
diff --git a/apps/red-ui/src/assets/i18n/redact/de.json b/apps/red-ui/src/assets/i18n/redact/de.json
index e13482dec..4b5618f2f 100644
--- a/apps/red-ui/src/assets/i18n/redact/de.json
+++ b/apps/red-ui/src/assets/i18n/redact/de.json
@@ -2199,5 +2199,6 @@
"select": "Wählen"
}
},
- "yesterday": "Gestern"
+ "yesterday": "Gestern",
+ "redaction-abbreviation": "R"
}
diff --git a/apps/red-ui/src/assets/i18n/redact/en.json b/apps/red-ui/src/assets/i18n/redact/en.json
index 177a07c80..200e5cfe3 100644
--- a/apps/red-ui/src/assets/i18n/redact/en.json
+++ b/apps/red-ui/src/assets/i18n/redact/en.json
@@ -2199,5 +2199,6 @@
"select": "Select"
}
},
- "yesterday": "Yesterday"
+ "yesterday": "Yesterday",
+ "redaction-abbreviation": "R"
}
diff --git a/apps/red-ui/src/assets/i18n/scm/de.json b/apps/red-ui/src/assets/i18n/scm/de.json
index e13482dec..6f8b32305 100644
--- a/apps/red-ui/src/assets/i18n/scm/de.json
+++ b/apps/red-ui/src/assets/i18n/scm/de.json
@@ -2199,5 +2199,6 @@
"select": "Wählen"
}
},
- "yesterday": "Gestern"
+ "yesterday": "Gestern",
+ "redaction-abbreviation": "C"
}
diff --git a/apps/red-ui/src/assets/i18n/scm/en.json b/apps/red-ui/src/assets/i18n/scm/en.json
index 177a07c80..71f41a670 100644
--- a/apps/red-ui/src/assets/i18n/scm/en.json
+++ b/apps/red-ui/src/assets/i18n/scm/en.json
@@ -87,7 +87,7 @@
"form": {
"add-to-dictionary-action": "Enable 'Add to dictionary'",
"case-sensitive": "Case Sensitive",
- "color": "{type, select, redaction{Redaction} hint{Hint} recommendation{Recommendation} skipped{Skipped Redaction} ignored{Ignored Hint} other{}} Color",
+ "color": "{type, select, redaction{Component} hint{Hint} recommendation{Recommendation} skipped{Skipped Component} ignored{Ignored Hint} other{}} Color",
"color-placeholder": "#",
"default-reason": "Default Reason",
"default-reason-placeholder": "No Default Reason",
@@ -99,7 +99,7 @@
"name-placeholder": "Enter Name",
"rank": "Rank",
"rank-placeholder": "1000",
- "redaction": "Redaction",
+ "redaction": "Component",
"technical-name": "Technical Name",
"technical-name-hint": "{type, select, edit{Autogenerated based on the initial display name.} create{Autogenerates based on the display name and cannot be edited after saving.} other{}}"
},
@@ -204,7 +204,7 @@
"label": "Force Hint"
},
"force-redaction": {
- "label": "Force Redaction"
+ "label": "Force Component"
},
"hide": "Hide",
"message": {
@@ -241,8 +241,8 @@
},
"manual-redaction": {
"add": {
- "error": "Failed to save redaction: {error}",
- "success": "Redaction added!"
+ "error": "Failed to save component: {error}",
+ "success": "Component added!"
},
"approve": {
"error": "Failed to approve suggestion: {error}",
@@ -257,36 +257,36 @@
"success": "Suggestion declined."
},
"force-redaction": {
- "error": "Failed to save redaction: {error}",
- "success": "Redaction added!"
+ "error": "Failed to save component: {error}",
+ "success": "Component added!"
},
"recategorize-image": {
"error": "Failed to recategorize image: {error}",
"success": "Image recategorized."
},
"remove": {
- "error": "Failed to remove redaction: {error}",
- "success": "Redaction removed!"
+ "error": "Failed to remove component: {error}",
+ "success": "Component removed!"
},
"request-change-legal-basis": {
"error": "Failed to request annotation reason change: {error}",
"success": "Annotation reason change requested."
},
"request-force-redaction": {
- "error": "Failed to save redaction suggestion: {error}",
- "success": "Redaction suggestion saved"
+ "error": "Failed to save component suggestion: {error}",
+ "success": "Component suggestion saved"
},
"request-image-recategorization": {
"error": "Failed to request image recategorization: {error}",
"success": "Image recategorization requested."
},
"request-remove": {
- "error": "Failed to request removal of redaction: {error}",
- "success": "Requested to remove redaction!"
+ "error": "Failed to request removal of component: {error}",
+ "success": "Requested to remove component!"
},
"suggest": {
- "error": "Failed to save redaction suggestion: {error}",
- "success": "Redaction suggestion saved"
+ "error": "Failed to save component suggestion: {error}",
+ "success": "Component suggestion saved"
},
"undo": {
"error": "Failed to undo: {error}",
@@ -321,32 +321,32 @@
},
"annotation-changes": {
"forced-hint": "Hint forced",
- "forced-redaction": "Redaction forced",
+ "forced-redaction": "Component forced",
"header": "Manual changes:",
"legal-basis": "Reason changed",
"recategorized": "Image category changed",
- "removed-manual": "Redaction/Hint removed",
- "resized": "Redaction area has been modified"
+ "removed-manual": "Component/Hint removed",
+ "resized": "Component area has been modified"
},
"annotation-engines": {
- "dictionary": "{isHint, select, true{Hint} other{Redaction}} based on dictionary",
- "ner": "Redaction based on AI",
- "rule": "Redaction based on rule {rule}"
+ "dictionary": "{isHint, select, true{Hint} other{Component}} based on dictionary",
+ "ner": "Component based on AI",
+ "rule": "Component based on rule {rule}"
},
"annotation-type": {
"declined-suggestion": "Declined Suggestion",
"hint": "Hint",
"ignored-hint": "Ignored Hint",
- "manual-redaction": "Manual Redaction",
+ "manual-redaction": "Manual Component",
"recommendation": "Recommendation",
- "redaction": "Redaction",
+ "redaction": "Component",
"skipped": "Skipped",
- "suggestion-add": "Suggested redaction",
+ "suggestion-add": "Suggested component",
"suggestion-add-dictionary": "Suggested add to Dictionary",
"suggestion-add-false-positive": "Suggested add to false positive",
"suggestion-change-legal-basis": "Suggested change legal basis",
"suggestion-force-hint": "Suggestion force hint",
- "suggestion-force-redaction": "Suggestion force redaction",
+ "suggestion-force-redaction": "Suggestion force component",
"suggestion-recategorize-image": "Suggested recategorize image",
"suggestion-remove": "Suggested local removal",
"suggestion-remove-dictionary": "Suggested dictionary removal",
@@ -449,11 +449,11 @@
"classification": "Value / Classification",
"comment": "Comment",
"legalBasis": "Legal Basis",
- "reason": "Select redaction reason",
+ "reason": "Select component reason",
"reason-placeholder": "Select a reason...",
"section": "Paragraph / Location"
},
- "header": "Edit Redaction Reason"
+ "header": "Edit Component Reason"
},
"color": "Color",
"comments": {
@@ -520,7 +520,7 @@
"approve-file-without-analysis": {
"confirmationText": "Approve without analysis",
"denyText": "Cancel",
- "question": "Analysis required to detect new redactions.",
+ "question": "Analysis required to detect new components.",
"title": "Warning!"
},
"approve-file": {
@@ -530,7 +530,7 @@
"approve-multiple-files-without-analysis": {
"confirmationText": "Approve without analysis",
"denyText": "Cancel",
- "question": "Analysis required to detect new redactions for at least one file.",
+ "question": "Analysis required to detect new components for at least one file.",
"title": "Warning"
},
"approve-multiple-files": {
@@ -595,7 +595,7 @@
"new-dossier": "New Dossier"
},
"greeting": {
- "subtitle": "Here's what's happening in your redaction teams today.",
+ "subtitle": "Here's what's happening in your component teams today.",
"title": "Welcome, {name}!"
}
},
@@ -617,7 +617,7 @@
"ignoredHintColor": "Ignored Hint",
"previewColor": "Preview",
"recommendationColor": "Recommendation",
- "redactionColor": "Redaction Color",
+ "redactionColor": "Component Color",
"requestAdd": "Request Add",
"requestRemove": "Request Remove",
"skippedColor": "Skipped",
@@ -703,7 +703,7 @@
"digital-signature-screen": {
"action": {
"delete-error": "Failed to remove digital signature, please try again.",
- "delete-success": "Digital signature removed. Redacted files will no longer be signed!",
+ "delete-success": "Digital signature removed. Files will no longer be signed!",
"remove": "Remove",
"save": "Save Changes",
"save-error": "Failed to save digital signature!",
@@ -711,7 +711,7 @@
},
"no-data": {
"action": "Configure Certificate",
- "title": "No Digital Signature Certificate.
For signing redacted documents please configure a certificate."
+ "title": "No Digital Signature Certificate.
For signing documents please configure a certificate."
}
},
"document-info": {
@@ -865,7 +865,7 @@
"edit": "Edit Dossier",
"upload-document": "Upload Document"
},
- "import-redactions": "Import redactions",
+ "import-redactions": "Import components",
"new-rule": {
"toast": {
"actions": {
@@ -1011,7 +1011,7 @@
"heading": "Watermarks on documents",
"no-watermark": "There is no watermark defined for the dossier template.
Contact your app admin to define one.",
"preview": "Watermark application on preview documents",
- "watermark": "Watermark application on redacted documents"
+ "watermark": "Watermark application on documents"
},
"dossiers-type-switch": {
"active": "Active",
@@ -1136,7 +1136,7 @@
"search": "Search...",
"table-col-names": {
"dictionary-entries": "Dictionary entries",
- "hint-redaction": "Hint/Redaction",
+ "hint-redaction": "Hint/Component",
"rank": "Rank",
"type": "Name"
},
@@ -1308,7 +1308,7 @@
"delta-tooltip": "The Delta View shows the unseen changes since your last visit to the page. This view is only available if there is at least 1 change.",
"document-info": "Document Info",
"download-original-file": "Download Original File",
- "exclude-pages": "Exclude pages from redaction",
+ "exclude-pages": "Exclude pages from component",
"excluded-from-redaction": "excluded",
"fullscreen": "Full Screen (F)",
"highlights": {
@@ -1326,9 +1326,9 @@
},
"reanalyse-notification": "This document was not processed with the latest rule/dictionary set. Analyze now to get updated annotations.",
"redacted": "Preview",
- "redacted-tooltip": "Redaction preview shows only redactions. Consider this a preview for the final redacted version. This view is only available if the file has no pending changes & doesn't require a reanalysis",
+ "redacted-tooltip": "Component preview shows only components. Consider this a preview for the final version. This view is only available if the file has no pending changes & doesn't require a reanalysis",
"standard": "Standard",
- "standard-tooltip": "Standard Workload view shows all hints, redactions, recommendations & suggestions. This view allows editing.",
+ "standard-tooltip": "Standard Workload view shows all hints, components, recommendations & suggestions. This view allows editing.",
"tabs": {
"annotations": {
"jump-to-next": "Jump to Next",
@@ -1362,18 +1362,18 @@
"label": "Exclude Pages",
"no-excluded": "No excluded pages.",
"put-back": "Undo",
- "removed-from-redaction": "Removed from redaction"
+ "removed-from-redaction": "Removed from component"
},
"highlights": {
"label": "Earmarks"
},
- "is-excluded": "Redaction is disabled for this document."
+ "is-excluded": "Component is disabled for this document."
},
"text-highlights": "Earmarks",
- "text-highlights-tooltip": "Shows all text-earmarks and allows removing or importing them as redactions",
+ "text-highlights-tooltip": "Shows all text-earmarks and allows removing or importing them as components",
"toggle-analysis": {
- "disable": "Disable redaction",
- "enable": "Enable for redaction",
+ "disable": "Disable component",
+ "enable": "Enable for component",
"only-managers": "Enabling / disabling is permitted only for managers"
}
},
@@ -1409,7 +1409,7 @@
"filter-types": "Filter",
"label": "Filter",
"pages-without-annotations": "Only pages without annotations",
- "redaction-changes": "Only annotations with redaction changes",
+ "redaction-changes": "Only annotations with component changes",
"unseen-pages": "Only annotations on unseen pages",
"with-comments": "Only annotations with comments"
},
@@ -1419,8 +1419,8 @@
"hint": "Hints only",
"image": "Images",
"none": "No Annotations",
- "redaction": "Redacted",
- "suggestion": "Suggested Redaction",
+ "redaction": "Components",
+ "suggestion": "Suggested Component",
"updated": "Updated"
},
"filters": {
@@ -1503,7 +1503,7 @@
},
"convert": {
"confirmation": "The {count} selected {count, plural, one{earmark} other{earmarks}} will be converted",
- "details": "All earmarks from the document will be converted to Imported Redactions, using the color set up in the Default Colors section of the app.",
+ "details": "All earmarks from the document will be converted to Imported Components, using the color set up in the Default Colors section of the app.",
"options": {
"all-pages": {
"description": "The earmarks in the selected HEX color will be converted on all pages of the document.",
@@ -1515,7 +1515,7 @@
}
},
"save": "Convert Earmarks",
- "title": "Convert earmarks to imported redactions"
+ "title": "Convert earmarks to imported components"
},
"form": {
"color": {
@@ -1552,17 +1552,17 @@
"cancel": "Cancel",
"import": "Import"
},
- "details": "To apply redactions from another document, you first need to upload it.",
+ "details": "To apply components from another document, you first need to upload it.",
"http": {
- "error": "Failed to import redactions! {error}",
- "success": "Redactions have been imported!"
+ "error": "Failed to import components! {error}",
+ "success": "Components have been imported!"
},
"import-only-for-pages": "Import only for pages",
"range": {
"label": "Minus(-) for range and comma(,) for enumeration.",
"placeholder": "e.g. 1-20,22,32"
},
- "title": "Import document with redactions"
+ "title": "Import document with components"
},
"initials-avatar": {
"unassigned": "Unassigned",
@@ -1608,7 +1608,7 @@
},
"title": "License Report {licenseCustomer}"
},
- "end-user-license-text": "The use of this product is subject to the terms of the Redaction End User Agreement, unless otherwise specified therein.",
+ "end-user-license-text": "The use of this product is subject to the terms of the Component End User Agreement, unless otherwise specified therein.",
"end-user-license-title": "End User License Agreement",
"license-title": "License Title",
"licensed-page-count": "Number of licensed pages",
@@ -1653,11 +1653,11 @@
"dictionary": "Add to dictionary",
"false-positive": "Set false positive",
"force-hint": "Force Hint",
- "force-redaction": "Force Redaction",
- "redaction": "Redaction",
+ "force-redaction": "Force Component",
+ "redaction": "Component",
"request-dictionary": "Request add to dictionary",
"request-false-positive": "Request false positive",
- "request-redaction": "Request Redaction"
+ "request-redaction": "Request Component"
}
}
},
@@ -1738,11 +1738,11 @@
"cancel": "Cancel upload",
"current-files": "Apply to current file",
"full-overwrite": {
- "description": "Manual changes done to the existing file will be removed and you are able to start over with redactions.",
+ "description": "Manual changes done to the existing file will be removed and you are able to start over with components.",
"label": "Overwrite and start over"
},
"partial-overwrite": {
- "description": "Manual changes are kept only if the affected redactions are still at the same position in the file. Some redactions could be misplaced if the content of the file changed.",
+ "description": "Manual changes are kept only if the affected components are still at the same position in the file. Some components could be misplaced if the content of the file changed.",
"label": "Overwrite and keep manual changes"
},
"proceed": "Proceed",
@@ -1772,7 +1772,7 @@
"search": "Search for selection"
}
},
- "toggle-readable-redactions": "Show redactions {active, select, true{as in final document} false{in preview color} other{}}",
+ "toggle-readable-redactions": "Show components {active, select, true{as in final document} false{in preview color} other{}}",
"toggle-tooltips": "{active, select, true{Disable} false{Enable} other{}} annotation tooltips"
},
"permissions-screen": {
@@ -1845,8 +1845,8 @@
"title": "Remove From Dictionary"
},
"remove-only-here": {
- "question": "Following redactions will be removed only here:",
- "title": "Remove Redaction"
+ "question": "Following components will be removed only here:",
+ "title": "Remove Component"
},
"value": "Value"
},
@@ -1865,24 +1865,24 @@
"y-m-d": "This placeholder is replaced by the creation date of the report in the international ISO 8601 format (yyyy-MM-dd), e.g. 2021-10-15."
},
"dossier": {
- "name": "This placeholder is replaced by the name of the dossier in which the redacted files are stored."
+ "name": "This placeholder is replaced by the name of the dossier in which the files are stored."
},
"file": {
"name": "This placeholder is replaced by the file name."
},
"redaction": {
"entity": {
- "display-name": "This placeholder is replaced by the name of the entity the redaction is based on."
+ "display-name": "This placeholder is replaced by the name of the entity the component is based on."
},
- "excerpt": "This placeholder is replaced by a text snippet that contains the redaction.",
- "justification": "This placeholder is replaced by the justification of the redaction. It is a combination of the legal reference (justificationParagraph) and the justification text (justificationReason).",
- "justification-legal-basis": "This placeholder is replaced by the legal basis for the redaction.",
- "justification-paragraph": "This placeholder is replaced by the legal reference of the justification of the redaction.",
- "justification-reason": "This placeholder is replaced by the justification text of the redaction.",
+ "excerpt": "This placeholder is replaced by a text snippet that contains the component.",
+ "justification": "This placeholder is replaced by the justification of the component. It is a combination of the legal reference (justificationParagraph) and the justification text (justificationReason).",
+ "justification-legal-basis": "This placeholder is replaced by the legal basis for the component.",
+ "justification-paragraph": "This placeholder is replaced by the legal reference of the justification of the component.",
+ "justification-reason": "This placeholder is replaced by the justification text of the component.",
"justification-text": "This placeholder is replaced by the justification text.",
- "page": "This placeholder is replaced by the page number of the redaction.",
- "paragraph": "This placeholder is replaced by the paragraph that contains the redaction.",
- "value": "This placeholder is replaced by the value that was redacted."
+ "page": "This placeholder is replaced by the page number of the component.",
+ "paragraph": "This placeholder is replaced by the paragraph that contains the component.",
+ "value": "This placeholder is replaced by the value that was extracted."
},
"time": {
"h-m": "This placeholder is replaced by the time the report was created."
@@ -1892,7 +1892,7 @@
"invalid-upload": "Invalid format selected for Upload! Supported formats are XLSX and DOCX",
"multi-file-report": "(Multi-file)",
"report-documents": "Report Documents",
- "setup": "Click the upload button on the right to upload your redaction report templates.",
+ "setup": "Click the upload button on the right to upload your component report templates.",
"table-header": {
"description": "Description",
"placeholders": "Placeholders"
@@ -1923,7 +1923,7 @@
"comment": "Comment",
"update-dictionary": "Update dictionary: {text}"
},
- "header": "Resize Redaction"
+ "header": "Resize Component"
},
"roles": {
"inactive": "Inactive",
@@ -2199,5 +2199,6 @@
"select": "Select"
}
},
- "yesterday": "Yesterday"
+ "yesterday": "Yesterday",
+ "redaction-abbreviation": "C"
}
diff --git a/apps/red-ui/src/assets/styles/themes/scm.css b/apps/red-ui/src/assets/styles/themes/scm.css
index 15006236a..86a9dcee8 100644
--- a/apps/red-ui/src/assets/styles/themes/scm.css
+++ b/apps/red-ui/src/assets/styles/themes/scm.css
@@ -1,9 +1,19 @@
body.light {
+ --iqser-primary: #4d4fdd;
+ --iqser-primary-rgb: 77, 79, 221;
+ --iqser-primary-2: #4d97dd;
+ --iqser-red-1: #4d4fdd;
+ --iqser-red-2: #4d97dd;
/*Override the default light theme here*/
/*Copy CSS variables from theme-template.css file*/
}
body.dark {
+ --iqser-primary: #4d4fdd;
+ --iqser-primary-rgb: 77, 79, 221;
+ --iqser-primary-2: #4d97dd;
+ --iqser-red-1: #4d4fdd;
+ --iqser-red-2: #4d97dd;
/*Override the default dark theme here*/
/*Copy CSS variables from theme-template.css file*/
}