stable

Clone or download

Read-only

Allow links in Card fields of Text fields

part of request #25686 Links and references should be clickable in Planning and Kanban How to test: - Write references in Markdown and Links in Markdown & HTML Text field. - Add your Text field to Card semantic. - Browse artifacts in Kanban & Planning. Links should be clickable, references in Markdown should be clickable. - Filtering & highlighting should still function correctly. It should not be slow. - No functional change expected for Text format. - No functional change expected for other card fields. Notes: - References are _not_ extracted in HTML card fields, this will require another patch. - Filtering & highlighting is broken for Date fields, but it was this way before this patch. By dropping dependencies, card field's size has been reduced from 96.30 KiB to 30.93 KiB (UMD build) As a result: kanban: 1.1 MiB -> 1.04 MiB planning: 1.33 MiB -> 1.26 MiB Change-Id: I38307d5a9c9d532f38cbf790962c885e7cb59e14

Modified Files

Name
M .eslintrc.js +2 −0 Go to diff View file
M plugins/agiledashboard/scripts/lib/card-fields/package.json +5 −5 Go to diff View file
M plugins/agiledashboard/scripts/lib/card-fields/pnpm-lock.yaml +18 −13 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/card-text-field/CachedPurifier.test.ts +56 −0 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/card-text-field/CachedPurifier.ts +45 −0 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/card-text-field/PurifyHTML.ts +23 −0 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/card-text-field/WatchHandler.test.ts +112 −0 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/card-text-field/WatchHandler.ts +91 −0 Go to diff View file
M plugins/agiledashboard/scripts/lib/card-fields/src/card-text-field/card-text-field-directive.js +47 −15 Go to diff View file
D plugins/agiledashboard/scripts/lib/card-fields/src/card-text-field/card-text-field.tpl.html +0 −7 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/card-text-field/dom-modifier.test.ts +92 −0 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/card-text-field/dom-modifier.ts +83 −0 Go to diff View file
M plugins/agiledashboard/scripts/lib/card-fields/src/highlight-filter.js +9 −15 Go to diff View file
M plugins/agiledashboard/scripts/lib/card-fields/src/highlight-filter.test.js +4 −18 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/highlight/Classifier.test.ts +141 −0 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/highlight/Classifier.ts +53 −0 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/highlight/HighlightedText.test.ts +50 −0 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/src/highlight/HighlightedText.ts +43 −0 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/tests/stubs/PurifyHTMLStub.ts +43 −0 Go to diff View file
A plugins/agiledashboard/scripts/lib/card-fields/tsconfig.json +8 −0 Go to diff View file