From 8bf97464c22390cfa12bf86e6777db6330c257eb Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Wed, 2 Aug 2023 20:48:21 +0200 Subject: [PATCH 01/17] No issue. Set version to 30.0-SNAPSHOT --- inception/inception-active-learning/pom.xml | 2 +- inception/inception-agreement/pom.xml | 2 +- .../inception-annotation-storage/pom.xml | 2 +- inception/inception-api-annotation/pom.xml | 2 +- inception/inception-api-editor/pom.xml | 2 +- inception/inception-api-formats/pom.xml | 2 +- inception/inception-api-render/pom.xml | 2 +- inception/inception-api-schema/pom.xml | 2 +- inception/inception-api/pom.xml | 2 +- inception/inception-app-webapp/pom.xml | 2 +- inception/inception-bom/pom.xml | 220 +++++++++--------- inception/inception-boot-loader/pom.xml | 2 +- inception/inception-bootstrap/pom.xml | 2 +- inception/inception-brat-editor/pom.xml | 2 +- inception/inception-build/pom.xml | 2 +- inception/inception-concept-linking/pom.xml | 2 +- inception/inception-constraints/pom.xml | 2 +- inception/inception-curation-legacy/pom.xml | 2 +- inception/inception-curation/pom.xml | 2 +- inception/inception-dependencies/pom.xml | 2 +- inception/inception-diag/pom.xml | 2 +- inception/inception-diam-editor/pom.xml | 2 +- inception/inception-diam/pom.xml | 2 +- inception/inception-doc/pom.xml | 2 +- inception/inception-docker/pom.xml | 2 +- inception/inception-documents/pom.xml | 2 +- .../pom.xml | 2 +- inception/inception-export/pom.xml | 2 +- inception/inception-external-editor/pom.xml | 2 +- .../inception-external-search-core/pom.xml | 2 +- .../inception-external-search-elastic/pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../inception-external-search-pubmed/pom.xml | 2 +- .../inception-external-search-solr/pom.xml | 2 +- inception/inception-feature-lookup/pom.xml | 2 +- inception/inception-guidelines/pom.xml | 2 +- .../pom.xml | 2 +- inception/inception-html-editor/pom.xml | 2 +- .../inception-html-recogito-editor/pom.xml | 2 +- inception/inception-image/pom.xml | 2 +- inception/inception-imls-elg/pom.xml | 2 +- inception/inception-imls-external/pom.xml | 2 +- inception/inception-imls-hf/pom.xml | 2 +- inception/inception-imls-lapps/pom.xml | 2 +- inception/inception-imls-opennlp/pom.xml | 2 +- inception/inception-imls-stringmatch/pom.xml | 2 +- inception/inception-imls-weblicht/pom.xml | 2 +- inception/inception-io-bioc/pom.xml | 2 +- inception/inception-io-conll/pom.xml | 2 +- inception/inception-io-html/pom.xml | 2 +- inception/inception-io-imscwb/pom.xml | 2 +- inception/inception-io-intertext/pom.xml | 2 +- inception/inception-io-json/pom.xml | 2 +- inception/inception-io-lif/pom.xml | 2 +- inception/inception-io-nif/pom.xml | 2 +- inception/inception-io-perseus/pom.xml | 2 +- inception/inception-io-tcf/pom.xml | 2 +- inception/inception-io-tei/pom.xml | 2 +- inception/inception-io-text/pom.xml | 2 +- inception/inception-io-webanno-tsv/pom.xml | 2 +- inception/inception-io-xmi/pom.xml | 2 +- inception/inception-io-xml/pom.xml | 2 +- inception/inception-js-api/pom.xml | 2 +- inception/inception-kb-fact-linking/pom.xml | 2 +- inception/inception-kb/pom.xml | 2 +- inception/inception-layer-docmetadata/pom.xml | 2 +- inception/inception-log/pom.xml | 2 +- inception/inception-model-export/pom.xml | 2 +- inception/inception-model/pom.xml | 2 +- inception/inception-pdf-editor/pom.xml | 2 +- inception/inception-pdf-editor2/pom.xml | 2 +- inception/inception-plugin-api/pom.xml | 2 +- inception/inception-plugin-manager/pom.xml | 2 +- inception/inception-plugin-parent/pom.xml | 2 +- inception/inception-preferences/pom.xml | 2 +- inception/inception-project-export/pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../pom.xml | 2 +- .../inception-project-initializers/pom.xml | 2 +- inception/inception-project/pom.xml | 2 +- .../inception-recommendation-api/pom.xml | 2 +- inception/inception-recommendation/pom.xml | 2 +- inception/inception-remote/pom.xml | 2 +- inception/inception-review-editor/pom.xml | 2 +- inception/inception-scheduling/pom.xml | 2 +- inception/inception-schema/pom.xml | 2 +- inception/inception-search-core/pom.xml | 2 +- inception/inception-search-mtas/pom.xml | 2 +- inception/inception-security/pom.xml | 2 +- inception/inception-sharing/pom.xml | 2 +- .../inception-support-standalone/pom.xml | 2 +- inception/inception-support/pom.xml | 2 +- inception/inception-telemetry/pom.xml | 2 +- inception/inception-test-dependencies/pom.xml | 2 +- inception/inception-testing/pom.xml | 2 +- inception/inception-tutorial/pom.xml | 2 +- inception/inception-ui-agreement/pom.xml | 2 +- inception/inception-ui-annotation/pom.xml | 2 +- inception/inception-ui-core/pom.xml | 2 +- inception/inception-ui-curation/pom.xml | 2 +- .../inception-ui-dashboard-activity/pom.xml | 2 +- inception/inception-ui-dashboard/pom.xml | 2 +- .../inception-ui-external-search/pom.xml | 2 +- inception/inception-ui-kb/pom.xml | 2 +- inception/inception-ui-project/pom.xml | 2 +- inception/inception-ui-scheduling/pom.xml | 2 +- inception/inception-ui-search/pom.xml | 2 +- inception/inception-ui-tagsets/pom.xml | 2 +- inception/inception-versioning/pom.xml | 2 +- inception/inception-websocket/pom.xml | 2 +- inception/inception-workload-dynamic/pom.xml | 2 +- inception/inception-workload-matrix/pom.xml | 2 +- inception/inception-workload-ui/pom.xml | 2 +- inception/inception-workload/pom.xml | 2 +- inception/pom.xml | 6 +- pom.xml | 2 +- 119 files changed, 230 insertions(+), 230 deletions(-) diff --git a/inception/inception-active-learning/pom.xml b/inception/inception-active-learning/pom.xml index 4dbf7740403..28dc6403940 100644 --- a/inception/inception-active-learning/pom.xml +++ b/inception/inception-active-learning/pom.xml @@ -20,7 +20,7 @@ de.tudarmstadt.ukp.inception.app inception-app - 29.0-SNAPSHOT + 30.0-SNAPSHOT .. inception-active-learning diff --git a/inception/inception-agreement/pom.xml b/inception/inception-agreement/pom.xml index 6f4d888a263..80115d97405 100644 --- a/inception/inception-agreement/pom.xml +++ b/inception/inception-agreement/pom.xml @@ -20,7 +20,7 @@ de.tudarmstadt.ukp.inception.app inception-app - 29.0-SNAPSHOT + 30.0-SNAPSHOT inception-agreement INCEpTION - Core - Agreement diff --git a/inception/inception-annotation-storage/pom.xml b/inception/inception-annotation-storage/pom.xml index be228483b57..a9d60914696 100644 --- a/inception/inception-annotation-storage/pom.xml +++ b/inception/inception-annotation-storage/pom.xml @@ -20,7 +20,7 @@ de.tudarmstadt.ukp.inception.app inception-app - 29.0-SNAPSHOT + 30.0-SNAPSHOT inception-annotation-storage INCEpTION - Core - Annotation Storage diff --git a/inception/inception-api-annotation/pom.xml b/inception/inception-api-annotation/pom.xml index e7c8e3ce69e..3f640a96cb6 100644 --- a/inception/inception-api-annotation/pom.xml +++ b/inception/inception-api-annotation/pom.xml @@ -20,7 +20,7 @@ de.tudarmstadt.ukp.inception.app inception-app - 29.0-SNAPSHOT + 30.0-SNAPSHOT inception-api-annotation INCEpTION - Core - Annotation API diff --git a/inception/inception-api-editor/pom.xml b/inception/inception-api-editor/pom.xml index d5e1dfd5fc5..b821aa72a37 100644 --- a/inception/inception-api-editor/pom.xml +++ b/inception/inception-api-editor/pom.xml @@ -20,7 +20,7 @@ de.tudarmstadt.ukp.inception.app inception-app - 29.0-SNAPSHOT + 30.0-SNAPSHOT inception-api-editor INCEpTION - Core - Annotation editor API diff --git a/inception/inception-api-formats/pom.xml b/inception/inception-api-formats/pom.xml index af13342d20b..7541d249a17 100644 --- a/inception/inception-api-formats/pom.xml +++ b/inception/inception-api-formats/pom.xml @@ -20,7 +20,7 @@ de.tudarmstadt.ukp.inception.app inception-app - 29.0-SNAPSHOT + 30.0-SNAPSHOT inception-api-formats INCEpTION - Core - Formats API diff --git a/inception/inception-api-render/pom.xml b/inception/inception-api-render/pom.xml index ce08e0d2d32..6a6d6b4366f 100644 --- a/inception/inception-api-render/pom.xml +++ b/inception/inception-api-render/pom.xml @@ -20,7 +20,7 @@ de.tudarmstadt.ukp.inception.app inception-app - 29.0-SNAPSHOT + 30.0-SNAPSHOT inception-api-render INCEpTION - Core - Annotation rendering API diff --git a/inception/inception-api-schema/pom.xml b/inception/inception-api-schema/pom.xml index f0d53e62021..f1b1bb5da76 100644 --- a/inception/inception-api-schema/pom.xml +++ b/inception/inception-api-schema/pom.xml @@ -20,7 +20,7 @@ de.tudarmstadt.ukp.inception.app inception-app - 29.0-SNAPSHOT + 30.0-SNAPSHOT inception-api-schema INCEpTION - Core - Annotation Schema API diff --git a/inception/inception-api/pom.xml b/inception/inception-api/pom.xml index f7464e14acb..4abf2d54e8a 100644 --- a/inception/inception-api/pom.xml +++ b/inception/inception-api/pom.xml @@ -20,7 +20,7 @@ de.tudarmstadt.ukp.inception.app inception-app - 29.0-SNAPSHOT + 30.0-SNAPSHOT inception-api INCEpTION - Core - API diff --git a/inception/inception-app-webapp/pom.xml b/inception/inception-app-webapp/pom.xml index d1c2aaa9cb4..2d98caf7d46 100644 --- a/inception/inception-app-webapp/pom.xml +++ b/inception/inception-app-webapp/pom.xml @@ -21,7 +21,7 @@ de.tudarmstadt.ukp.inception.app inception-app - 29.0-SNAPSHOT + 30.0-SNAPSHOT .. diff --git a/inception/inception-bom/pom.xml b/inception/inception-bom/pom.xml index 6abd595f1ab..7c69053b404 100644 --- a/inception/inception-bom/pom.xml +++ b/inception/inception-bom/pom.xml @@ -20,7 +20,7 @@ de.tudarmstadt.ukp.inception.app inception - 29.0-SNAPSHOT + 30.0-SNAPSHOT ../.. @@ -33,222 +33,222 @@ de.tudarmstadt.ukp.inception.app inception-doc - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-agreement - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-agreement - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-annotation - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-project - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-tagsets - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-curation - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-curation - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-search - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-workload - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-workload-dynamic - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-workload-matrix - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-workload-ui - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-external-editor - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-external-search-core - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-external-search-pubannotation - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-external-search-pubmed - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-external-search-elastic - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-external-search-opensearch - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-external-search-solr - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-external-search - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-dashboard - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-dashboard-activity - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-kb - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-kb-fact-linking - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-html-apache-annotator-editor - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-html-editor - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-html-recogito-editor - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-pdf-editor - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-pdf-editor2 - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-recommendation - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-recommendation-api - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-review-editor - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-sharing - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-preferences - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-guidelines - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-schema - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-active-learning - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-core - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-ui-kb - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-concept-linking - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-imls-opennlp - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-imls-elg - 29.0-SNAPSHOT + 30.0-SNAPSHOT de.tudarmstadt.ukp.inception.app inception-imls-hf - 29.0-SNAPSHOT + 30.0-SNAPSHOT diff --git a/inception/inception-diam-editor/src/main/ts/src/DiamAnnotationBrowser.svelte b/inception/inception-diam-editor/src/main/ts/src/DiamAnnotationBrowser.svelte index fd4a6c63268..850b8325137 100644 --- a/inception/inception-diam-editor/src/main/ts/src/DiamAnnotationBrowser.svelte +++ b/inception/inception-diam-editor/src/main/ts/src/DiamAnnotationBrowser.svelte @@ -134,4 +134,5 @@ diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte new file mode 100644 index 00000000000..77d394c00b5 --- /dev/null +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte @@ -0,0 +1,126 @@ + + + + + +
+
+
+ +
+
{annotation?.layer?.name}
+
ID: {annotation?.vid}
+
+ {#if annotation} +
+ {#each annotation.comments as comment} +
{comment.comment}
+ {/each} +
+ {/if} +
+ + + diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationResizeHandle.svelte b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationResizeHandle.svelte index 212c14445e4..6276e2ac449 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationResizeHandle.svelte +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationResizeHandle.svelte @@ -23,8 +23,8 @@ export let highlight: HTMLElement = undefined export let position: 'begin' | 'end' - export let handle: HTMLElement - export let marker: HTMLElement + export let handle: HTMLElement = undefined + export let marker: HTMLElement = undefined export let dragging = false let borderRadius = 0 diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.scss b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.scss index 9aa33eef33c..312ed798026 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.scss +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.scss @@ -16,6 +16,7 @@ * limitations under the License. */ @import '~@inception-project/inception-js-api/src/style/InceptionEditorColors.scss'; + @import '~@inception-project/inception-js-api/src/style/InceptionEditorIcons.scss'; :root { --hover-brightness: 1.2; diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.ts b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.ts index 495399e4ee0..93c782c0932 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.ts +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.ts @@ -20,6 +20,7 @@ import { highlights, ApacheAnnotatorVisualizer } from './ApacheAnnotatorVisualiz import { ApacheAnnotatorSelector } from './ApacheAnnotatorSelector' import ApacheAnnotatorToolbar from './ApacheAnnotatorToolbar.svelte' import { showEmptyHighlights, showLabels } from './ApacheAnnotatorState' +import AnnotationDetailPopOver from './AnnotationDetailPopOver.svelte' export class ApacheAnnotatorEditor implements AnnotationEditor { private ajax: DiamAjax @@ -27,6 +28,7 @@ export class ApacheAnnotatorEditor implements AnnotationEditor { private vis: ApacheAnnotatorVisualizer private selector: ApacheAnnotatorSelector private toolbar: ApacheAnnotatorToolbar + private popover: AnnotationDetailPopOver public constructor (element: Element, ajax: DiamAjax, userPreferencesKey: string) { this.ajax = ajax @@ -68,6 +70,14 @@ export class ApacheAnnotatorEditor implements AnnotationEditor { this.selector = new ApacheAnnotatorSelector(this.root, this.ajax) this.toolbar = this.createToolbar() + this.popover = new AnnotationDetailPopOver({ + target: this.root.ownerDocument.body, + props: { + root: this.root, + ajax: this.ajax + } + }) + // Event handler for creating an annotion or selecting an annotation this.root.addEventListener('mouseup', e => this.onMouseUp(e)) diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorVisualizer.ts b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorVisualizer.ts index feffbdcb7fc..fc04edddb63 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorVisualizer.ts +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorVisualizer.ts @@ -16,7 +16,7 @@ * limitations under the License. */ import './ApacheAnnotatorEditor.scss' -import { unpackCompactAnnotatedTextV2, DiamAjax, DiamLoadAnnotationsOptions, VID, ViewportTracker, offsetToRange, AnnotatedText, Span, TextMarker, Offsets } from '@inception-project/inception-js-api' +import { unpackCompactAnnotatedTextV2, DiamAjax, DiamLoadAnnotationsOptions, VID, ViewportTracker, offsetToRange, AnnotatedText, Span, TextMarker, Offsets, AnnotationOverEvent, AnnotationOutEvent, Annotation } from '@inception-project/inception-js-api' import { CompactAnnotatedText } from '@inception-project/inception-js-api/src/model/compact_v2' import { highlightText } from '@apache-annotator/dom' import { showEmptyHighlights, showLabels } from './ApacheAnnotatorState' @@ -36,10 +36,14 @@ export class ApacheAnnotatorVisualizer { private showInlineLabels = false private showEmptyHighlights = false + private data? : AnnotatedText + private removePingMarkers: (() => void)[] = [] private removePingMarkersTimeout: number | undefined = undefined private alpha = '55' + private overAnnotation : Annotation | undefined + constructor (element: Element, ajax: DiamAjax) { this.ajax = ajax this.root = element @@ -50,6 +54,17 @@ export class ApacheAnnotatorVisualizer { // Event handlers for the resizer component this.root.addEventListener('mouseover', e => this.showResizer(e)) + // Event handlers for custom events + this.root.addEventListener('mouseover', event => { + if (!(event instanceof MouseEvent) || !(event.target instanceof HTMLElement)) return + const vid = event.target.getAttribute('data-iaa-id') + if (!vid) return + const annotation = this.data?.getAnnotation(vid) + if (!annotation) return + this.overAnnotation = annotation + event.target.dispatchEvent(new AnnotationOverEvent(annotation, event)) + }) + // Add event handlers for highlighting extent of the annotation the mouse is currently over this.root.addEventListener('mouseover', e => this.addAnnotationHighlight(e as MouseEvent)) this.root.addEventListener('mouseout', e => this.removeAnnotationHighight(e as MouseEvent)) @@ -98,7 +113,10 @@ export class ApacheAnnotatorVisualizer { console.log(`Loading annotations for range ${JSON.stringify(options.range)}`) this.ajax.loadAnnotations(options) - .then((doc: CompactAnnotatedText) => this.renderAnnotations(unpackCompactAnnotatedTextV2(doc))) + .then((doc: CompactAnnotatedText) => { + this.data = unpackCompactAnnotatedTextV2(doc) + this.renderAnnotations(this.data) + }) } private renderAnnotations (doc: AnnotatedText): void { diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ResizeManager.ts b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ResizeManager.ts index e4e2f8e5d82..a3c98b04b76 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ResizeManager.ts +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ResizeManager.ts @@ -37,21 +37,18 @@ export class ResizeManager { this.visualizer.root.addEventListener('dragover', e => this.handleDragOver(e)) - // @ts-expect-error - VSCode does not seem to understand the Svelte component this.beginHandle = new AnnotationResizeHandle({ target: this.visualizer.root, props: { position: 'begin' } }) - // @ts-expect-error - VSCode does not seem to understand the Svelte component + this.endHandle = new AnnotationResizeHandle({ target: this.visualizer.root, props: { position: 'end' } }) - // @ts-expect-error - VSCode does not seem to understand the Svelte component this.beginHandle.$on('resize-handle-released', e => this.handleResizeHandleReleased(e)) - // @ts-expect-error - VSCode does not seem to understand the Svelte component this.endHandle.$on('resize-handle-released', e => this.handleResizeHandleReleased(e)) this.hide() @@ -65,8 +62,8 @@ export class ResizeManager { const highlights = Array.from(this.visualizer.getHighlightsForAnnotation(id)) if (!highlights.length) return - this.beginHandle.highlight = highlights[0] - this.endHandle.highlight = highlights[highlights.length - 1] + this.beginHandle.highlight = highlights[0] as HTMLElement + this.endHandle.highlight = highlights[highlights.length - 1] as HTMLElement this.mouseOverHandler = e => this.handleMouseOver(e) this.visualizer.root.addEventListener('mouseover', this.mouseOverHandler) diff --git a/inception/inception-js-api/src/main/ts/index.ts b/inception/inception-js-api/src/main/ts/index.ts index f6cd59e53fb..8a65e126162 100644 --- a/inception/inception-js-api/src/main/ts/index.ts +++ b/inception/inception-js-api/src/main/ts/index.ts @@ -20,6 +20,7 @@ import './src/style/InceptionEditorColors.scss' export * from './src/diam' export * from './src/editor' export * from './src/model' +export * from './src/event' export * from './src/model/compact' export * from './src/util' diff --git a/inception/inception-js-api/src/main/ts/src/event/AnnotationOverEvent.ts b/inception/inception-js-api/src/main/ts/src/event/AnnotationOverEvent.ts new file mode 100644 index 00000000000..58a7dc30c20 --- /dev/null +++ b/inception/inception-js-api/src/main/ts/src/event/AnnotationOverEvent.ts @@ -0,0 +1,33 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Annotation } from '../model' + +const eventType = 'i7n-annotation-over' +export class AnnotationOverEvent extends Event { + static eventType = eventType + + originalEvent: Event + annotation: Annotation + + constructor (annotation: Annotation, originalEvent: Event) { + super(eventType, { bubbles: true }) + this.originalEvent = originalEvent + this.annotation = annotation + } +} \ No newline at end of file diff --git a/inception/inception-js-api/src/main/ts/src/event/index.ts b/inception/inception-js-api/src/main/ts/src/event/index.ts new file mode 100644 index 00000000000..63da7d8a990 --- /dev/null +++ b/inception/inception-js-api/src/main/ts/src/event/index.ts @@ -0,0 +1,18 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +export { AnnotationOverEvent } from './AnnotationOverEvent' diff --git a/inception/inception-js-api/src/main/ts/src/model/AnnotatedText.ts b/inception/inception-js-api/src/main/ts/src/model/AnnotatedText.ts index edaa511bbe0..6cfa72fc862 100644 --- a/inception/inception-js-api/src/main/ts/src/model/AnnotatedText.ts +++ b/inception/inception-js-api/src/main/ts/src/model/AnnotatedText.ts @@ -23,6 +23,7 @@ import { Span } from './Span' import { TextMarker } from './TextMarker' import { Layer } from './Layer' import { MarkerType } from './Marker' +import { Annotation } from './Annotation' export class AnnotatedText { window: Offsets @@ -56,4 +57,8 @@ export class AnnotatedText { this.relations.set(annotation.vid, annotation) } } + + public getAnnotation (id: VID): Annotation | undefined { + return this.spans.get(id) || this.relations.get(id) + } } diff --git a/inception/inception-js-api/src/main/ts/src/style/InceptionEditorIcons.scss b/inception/inception-js-api/src/main/ts/src/style/InceptionEditorIcons.scss new file mode 100644 index 00000000000..2817274300c --- /dev/null +++ b/inception/inception-js-api/src/main/ts/src/style/InceptionEditorIcons.scss @@ -0,0 +1,24 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +.i7n-icon-span::before { + content: "␣"; +} + +.i7n-icon-relation::before { + content: "→"; +} From b0750e783f3931cc6b973d80474849db05c70b2f Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Sat, 5 Aug 2023 10:01:17 +0200 Subject: [PATCH 03/17] #4140 - Simplify lazy detail lookup - Remove getLazyDetails() methods that produced the queries - Remove all classes related to the queries - Make lookupLazyDetails produce all the details on the fly when asked for details for a given VID --- .../annotation/page/AnnotationPageBase.java | 3 +- .../preferences/UserPreferencesService.java | 8 +- .../rendering/Renderer_ImplBase.java | 7 -- .../MultiValueStringFeatureSupport.java | 57 +++------ .../feature/string/StringFeatureSupport.java | 43 ++----- .../annotation/layer/chain/ChainRenderer.java | 2 - .../layer/relation/RelationRenderer.java | 37 ++---- .../annotation/layer/span/SpanRenderer.java | 1 - .../editor/AnnotationEditorExtension.java | 9 +- .../rendering/vmodel/VLazyDetailQuery.java | 57 --------- .../rendering/vmodel/VLazyDetailResult.java | 5 +- .../inception/rendering/vmodel/VObject.java | 23 ---- .../ukp/inception/rendering/Renderer.java | 50 ++------ .../schema/AnnotationSchemaService.java | 6 +- .../schema/feature/FeatureSupport.java | 22 +--- .../brat/message/GetDocumentResponse.java | 17 --- .../brat/render/BratSerializerImpl.java | 9 -- .../brat/render/model/Normalization.java | 105 ---------------- .../main/ts/src/visualizer_ui/VisualizerUI.ts | 84 ++----------- .../actions/EditorAjaxRequestHandler.java | 2 - .../LazyDetailsLookupServiceImpl.java | 115 ++++++++++-------- .../src/main/ts/src/diam/DiamAjaxImpl.ts | 6 +- .../feature/lookup/LookupFeatureSupport.java | 38 ++---- .../image/feature/ImageFeatureSupport.java | 27 ++-- .../src/main/ts/src/diam/DiamAjax.ts | 2 +- .../RecommendationEditorExtension.java | 50 +++++--- .../RecommenderServiceAutoConfiguration.java | 5 +- .../RecommendationRelationRenderer.java | 12 -- .../render/RecommendationSpanRenderer.java | 9 -- inception/inception-ui-curation/pom.xml | 29 ++++- .../sidebar/CurationEditorExtension.java | 38 +++++- .../CurationSidebarAutoConfiguration.java | 7 +- .../ui/kb/feature/ConceptFeatureSupport.java | 33 ++--- .../MultiValueConceptFeatureSupport.java | 69 +++-------- 34 files changed, 295 insertions(+), 692 deletions(-) delete mode 100644 inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailQuery.java delete mode 100644 inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/model/Normalization.java diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/page/AnnotationPageBase.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/page/AnnotationPageBase.java index 49e1751c15c..9e53572c3a7 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/page/AnnotationPageBase.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/page/AnnotationPageBase.java @@ -50,7 +50,6 @@ import org.apache.wicket.util.string.StringValueConversionException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.BeansException; import org.wicketstuff.urlfragment.UrlFragment; import org.wicketstuff.urlfragment.UrlParametersReceivingBehavior; @@ -423,7 +422,7 @@ public void actionValidateDocument(AjaxRequestTarget aTarget, CAS aCas) * is refreshed based on the visibility preferences and based on the project to which the * document being edited belongs. */ - protected void loadPreferences() throws BeansException, IOException + protected void loadPreferences() throws IOException { AnnotatorState state = getModelObject(); userPreferenceService.loadPreferences(state, userRepository.getCurrentUsername()); diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/preferences/UserPreferencesService.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/preferences/UserPreferencesService.java index 4d274146b10..4d34b975a0d 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/preferences/UserPreferencesService.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/preferences/UserPreferencesService.java @@ -19,8 +19,6 @@ import java.io.IOException; -import org.springframework.beans.BeansException; - import de.tudarmstadt.ukp.clarin.webanno.model.Mode; import de.tudarmstadt.ukp.clarin.webanno.model.Project; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotationPreference; @@ -36,14 +34,10 @@ public interface UserPreferencesService * The {@link AnnotatorState} that will be populated with preferences from the file * @param aUsername * The user for whom we need to read the preference (preferences are stored per user) - * - * @throws BeansException - * hum? * @throws IOException * hum? */ - void loadPreferences(AnnotatorState aState, String aUsername) - throws BeansException, IOException; + void loadPreferences(AnnotatorState aState, String aUsername) throws IOException; AnnotationPreference loadPreferences(Project aProject, String aUsername, Mode aMode) throws IOException; diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/rendering/Renderer_ImplBase.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/rendering/Renderer_ImplBase.java index 84df44f9e31..63186cedcfb 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/rendering/Renderer_ImplBase.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/api/annotation/rendering/Renderer_ImplBase.java @@ -29,7 +29,6 @@ import de.tudarmstadt.ukp.clarin.webanno.model.AnnotationFeature; import de.tudarmstadt.ukp.clarin.webanno.model.AnnotationLayer; import de.tudarmstadt.ukp.inception.rendering.Renderer; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VObject; import de.tudarmstadt.ukp.inception.schema.adapter.TypeAdapter; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupportRegistry; import de.tudarmstadt.ukp.inception.schema.layer.LayerSupportRegistry; @@ -144,12 +143,6 @@ public Optional getTraits(AnnotationLayer aLayer, Class aInterface) return Optional.empty(); } - public void renderLazyDetails(AnnotationFS fs, VObject aVObject, - List aFeatures) - { - aVObject.addLazyDetails(getLazyDetails(fs, aFeatures)); - } - public abstract List selectAnnotationsInWindow(CAS aCas, int aWindowBegin, int aWindowEnd); } diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/multistring/MultiValueStringFeatureSupport.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/multistring/MultiValueStringFeatureSupport.java index a18fce6abfe..d33115caadd 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/multistring/MultiValueStringFeatureSupport.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/multistring/MultiValueStringFeatureSupport.java @@ -18,8 +18,6 @@ package de.tudarmstadt.ukp.inception.annotation.feature.multistring; import static java.util.Arrays.asList; -import static java.util.Collections.emptyList; -import static org.apache.commons.lang3.StringUtils.isBlank; import static org.apache.commons.lang3.StringUtils.isNotBlank; import static org.apache.uima.cas.CAS.TYPE_NAME_STRING_ARRAY; @@ -51,8 +49,6 @@ import de.tudarmstadt.ukp.inception.editor.action.AnnotationActionHandler; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; import de.tudarmstadt.ukp.inception.schema.adapter.IllegalFeatureValueException; @@ -236,43 +232,26 @@ public String renderFeatureValue(AnnotationFeature aFeature, FeatureStructure aF } @Override - public List getLazyDetails(AnnotationFeature aFeature, FeatureStructure aFs) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { - Feature labelFeature = aFs.getType().getFeatureByBaseName(aFeature.getName()); - - if (labelFeature == null) { - return emptyList(); - } - - List values = getFeatureValue(aFeature, aFs); - if (values == null || values.isEmpty()) { - return emptyList(); - } - - var details = new ArrayList(); - for (String value : values) { - if (isNotBlank(value) && aFeature.getTagset() != null) { - details.add(new VLazyDetailQuery(aFeature.getName(), value)); + var results = new ArrayList(); + if (aValue instanceof Iterable) { + var values = (Iterable) aValue; + for (var v : values) { + if (v instanceof String) { + var value = (String) v; + var tag = schemaService.getTag(value, aFeature.getTagset()); + + if (tag.isEmpty()) { + results.add(new VLazyDetailResult(value, "Tag not in tagset")); + } + + if (tag.map(t -> isNotBlank(t.getDescription())).orElse(false)) { + results.add(new VLazyDetailResult(value, tag.get().getDescription())); + } + } } } - - return details; - } - - @Override - public List renderLazyDetails(CAS aCas, AnnotationFeature aFeature, - VID aParamId, String aQuery) - { - var tag = schemaService.getTag(aQuery, aFeature.getTagset()); - - if (tag.isEmpty()) { - return asList(new VLazyDetailResult(aQuery, "Tag not in tagset")); - } - - if (tag.map(t -> isBlank(t.getDescription())).orElse(true)) { - return emptyList(); - } - - return asList(new VLazyDetailResult(aQuery, tag.get().getDescription())); + return results; } } diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/string/StringFeatureSupport.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/string/StringFeatureSupport.java index e943fea8ed3..1c994bc3295 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/string/StringFeatureSupport.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/string/StringFeatureSupport.java @@ -22,7 +22,7 @@ import static de.tudarmstadt.ukp.inception.annotation.feature.string.StringFeatureTraits.EditorType.RADIOGROUP; import static java.util.Arrays.asList; import static java.util.Collections.emptyList; -import static org.apache.commons.lang3.StringUtils.isBlank; +import static org.apache.commons.lang3.StringUtils.isNotBlank; import java.io.IOException; import java.util.Collections; @@ -44,8 +44,6 @@ import de.tudarmstadt.ukp.inception.editor.action.AnnotationActionHandler; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; import de.tudarmstadt.ukp.inception.schema.adapter.AnnotationException; @@ -232,37 +230,20 @@ public boolean suppressAutoFocus(AnnotationFeature aFeature) } @Override - public List getLazyDetails(AnnotationFeature aFeature, String aLabel) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { - if (isBlank(aLabel) || aFeature.getTagset() == null) { - return emptyList(); - } - - // Checking here if the tag has a description would be nicer because it would avoid - // rendering an emtpy section for every string feature in the popover... but it also - // induces a database request for every single string feature on every annotation which - // would slow things down quite a bit... - // Tag tag = schemaService.getTag(aLabel, aFeature.getTagset()); - // if (tag == null || isBlank(tag.getDescription())) { - // return emptyList(); - // } - - return asList(new VLazyDetailQuery(aFeature.getName(), aLabel)); - } - - @Override - public List renderLazyDetails(CAS aCas, AnnotationFeature aFeature, - VID aParamId, String aQuery) - { - var tag = schemaService.getTag(aQuery, aFeature.getTagset()); - if (tag.isEmpty()) { - return asList(new VLazyDetailResult(aQuery, "Tag not in tagset")); - } + if (aValue instanceof String) { + var value = (String) aValue; + var tag = schemaService.getTag(value, aFeature.getTagset()); + if (tag.isEmpty()) { + return asList(new VLazyDetailResult(value, "Tag not in tagset")); + } - if (tag.map(t -> isBlank(t.getDescription())).orElse(true)) { - return emptyList(); + if (tag.map(t -> isNotBlank(t.getDescription())).orElse(false)) { + return asList(new VLazyDetailResult(value, tag.get().getDescription())); + } } - return asList(new VLazyDetailResult(aQuery, tag.get().getDescription())); + return emptyList(); } } diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/chain/ChainRenderer.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/chain/ChainRenderer.java index 4a5b7e52d34..95a81c14fd1 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/chain/ChainRenderer.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/chain/ChainRenderer.java @@ -170,8 +170,6 @@ public void render(CAS aCas, List aFeatures, VDocument aRespo label); annoToSpanIdx.put(linkFs, span); aResponse.add(span); - - renderLazyDetails(linkFs, span, aFeatures); } // Render arc (we do this on prevLinkFs because then we easily know that the current diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java index b54f30e70f4..427236b5a77 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java @@ -55,7 +55,6 @@ import de.tudarmstadt.ukp.inception.rendering.vmodel.VCommentType; import de.tudarmstadt.ukp.inception.rendering.vmodel.VDocument; import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.rendering.vmodel.VObject; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupportRegistry; @@ -134,12 +133,6 @@ public void render(final CAS aCas, List aFeatures, VDocument RelationAdapter typeAdapter = getTypeAdapter(); - // Map> relationLinks = getRelationLinks(aCas, aWindowBegin, - // aWindowEnd); - // - // // if this is a governor for more than one dependent, avoid duplicate yield - // List yieldDeps = new ArrayList<>(); - // Index mapping annotations to the corresponding rendered arcs Map annoToArcIdx = new HashMap<>(); @@ -154,9 +147,6 @@ public void render(final CAS aCas, List aFeatures, VDocument aResponse.add(arc); annoToArcIdx.put(fs, (VArc) arc); - // renderYield(aResponse, fs, relationLinks, yieldDeps); - - renderLazyDetails(fs, arc, aFeatures); renderRequiredFeatureErrors(aFeatures, fs, aResponse); } } @@ -261,28 +251,17 @@ public List render(VDocument aVDocument, AnnotationFS aFS, } @Override - public List getLazyDetails(AnnotationFS aFs, - List aFeatures) + public List lookupLazyDetails(CAS aCas, VID aVid, int aWindowBeginOffset, + int aWindowEndOffset) { - List queries = super.getLazyDetails(aFs, aFeatures); - - if (!queries.contains(VLazyDetailQuery.LAYER_LEVEL_QUERY)) { - queries.add(VLazyDetailQuery.LAYER_LEVEL_QUERY); + if (!checkTypeSystem(aCas)) { + return Collections.emptyList(); } - return queries; - } - - @Override - public List renderLazyDetails(CAS aCas, VID aVid, int windowBeginOffset, - int windowEndOffset) - { - checkTypeSystem(aCas); - // FIXME Should also handle relations that are only partially visible using // selectAnnotationsInWindow() - Map> relationLinks = getRelationLinks(aCas, windowBeginOffset, - windowEndOffset); + Map> relationLinks = getRelationLinks(aCas, aWindowBeginOffset, + aWindowEndOffset); // if this is a governor for more than one dependent, avoid duplicate yield List yieldDeps = new ArrayList<>(); @@ -291,8 +270,8 @@ public List renderLazyDetails(CAS aCas, VID aVid, int windowB Optional yield = renderYield(fs, relationLinks, yieldDeps); - List details = super.renderLazyDetails(aCas, aVid, windowBeginOffset, - windowEndOffset); + List details = super.lookupLazyDetails(aCas, aVid, aWindowBeginOffset, + aWindowEndOffset); if (yield.isPresent()) { details.add(new VLazyDetailResult("Yield", yield.get())); diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/span/SpanRenderer.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/span/SpanRenderer.java index 050b2d41c57..2c24a6d764f 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/span/SpanRenderer.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/span/SpanRenderer.java @@ -121,7 +121,6 @@ public void render(CAS aCas, List aFeatures, VDocument aRespo if (vobj instanceof VSpan) { annoToSpanIdx.put(fs, (VSpan) vobj); - renderLazyDetails(fs, vobj, aFeatures); renderRequiredFeatureErrors(aFeatures, fs, aResponse); } } diff --git a/inception/inception-api-editor/src/main/java/de/tudarmstadt/ukp/inception/editor/AnnotationEditorExtension.java b/inception/inception-api-editor/src/main/java/de/tudarmstadt/ukp/inception/editor/AnnotationEditorExtension.java index b83c17ad486..058a6279556 100644 --- a/inception/inception-api-editor/src/main/java/de/tudarmstadt/ukp/inception/editor/AnnotationEditorExtension.java +++ b/inception/inception-api-editor/src/main/java/de/tudarmstadt/ukp/inception/editor/AnnotationEditorExtension.java @@ -79,9 +79,14 @@ default void generateContextMenuItems(List aItems) // Do nothing by default } - default List renderLazyDetails(SourceDocument aDocument, User aUser, - VID aVid, AnnotationFeature aFeature, String aQuery) + default List lookupLazyDetails(SourceDocument aDocument, User aUser, + VID aVid, AnnotationFeature aFeature) { return Collections.emptyList(); } + + V getFeatureValue(SourceDocument aDocument, User aUser, CAS aCas, VID aVid, + AnnotationFeature aFeature) + throws IOException; + } diff --git a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailQuery.java b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailQuery.java deleted file mode 100644 index 3a2b19f5ee9..00000000000 --- a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailQuery.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Licensed to the Technische Universität Darmstadt under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The Technische Universität Darmstadt - * licenses this file to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package de.tudarmstadt.ukp.inception.rendering.vmodel; - -import java.io.Serializable; - -/** - * Query for a lazy detail. - *

- * Some information is only to be shown when the user performs a particular "detail information" - * action, e.g. hovering the mouse over an annotation. This class represents a query which is - * triggered at such a time to load additional information from the server. - *

- * - * @see VLazyDetailResult - */ -public class VLazyDetailQuery - implements Serializable -{ - private static final long serialVersionUID = -3223115878613737370L; - - public static final VLazyDetailQuery LAYER_LEVEL_QUERY = new VLazyDetailQuery(null, null); - - private final String feature; - private final String query; - - public VLazyDetailQuery(String aFeature, String aQuery) - { - feature = aFeature; - query = aQuery; - } - - public String getFeature() - { - return feature; - } - - public String getQuery() - { - return query; - } -} diff --git a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailResult.java b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailResult.java index b357c2163ba..d7488289c6d 100644 --- a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailResult.java +++ b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailResult.java @@ -23,11 +23,8 @@ * Result for a lazy detail. *

* Some information is only to be shown when the user performs a particular "detail information" - * action, e.g. hovering the mouse over an annotation. This class represents the result which is - * returned by the server for a particular detail query. + * action, e.g. hovering the mouse over an annotation. *

- * - * @see VLazyDetailQuery */ public class VLazyDetailResult implements Serializable diff --git a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VObject.java b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VObject.java index 31339ecbea0..28320436fe4 100644 --- a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VObject.java +++ b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VObject.java @@ -18,9 +18,7 @@ package de.tudarmstadt.ukp.inception.rendering.vmodel; import java.io.Serializable; -import java.util.ArrayList; import java.util.HashMap; -import java.util.List; import java.util.Map; import de.tudarmstadt.ukp.clarin.webanno.model.AnnotationLayer; @@ -35,7 +33,6 @@ public abstract class VObject private final int equivalenceSet; private VID vid; - private List lazyDetails = new ArrayList<>(); private String color; private String label; private double score; @@ -80,26 +77,6 @@ public Map getFeatures() return features; } - public List getLazyDetails() - { - return lazyDetails; - } - - public void setLazyDetails(List aLazyDetails) - { - lazyDetails = aLazyDetails; - } - - public void addLazyDetails(List aDetails) - { - lazyDetails.addAll(aDetails); - } - - public void addLazyDetail(VLazyDetailQuery aDetail) - { - lazyDetails.add(aDetail); - } - public void setColorHint(String aColor) { color = aColor; diff --git a/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/rendering/Renderer.java b/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/rendering/Renderer.java index 04084ffdec3..776948201ff 100644 --- a/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/rendering/Renderer.java +++ b/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/rendering/Renderer.java @@ -17,7 +17,6 @@ */ package de.tudarmstadt.ukp.inception.rendering; -import static de.tudarmstadt.ukp.clarin.webanno.model.MultiValueMode.NONE; import static de.tudarmstadt.ukp.clarin.webanno.support.uima.ICasUtil.getAddr; import static de.tudarmstadt.ukp.clarin.webanno.support.uima.ICasUtil.selectByAddr; import static de.tudarmstadt.ukp.inception.schema.validation.ValidationUtils.isRequiredFeatureMissing; @@ -39,7 +38,6 @@ import de.tudarmstadt.ukp.inception.rendering.vmodel.VCommentType; import de.tudarmstadt.ukp.inception.rendering.vmodel.VDocument; import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.rendering.vmodel.VObject; import de.tudarmstadt.ukp.inception.schema.adapter.TypeAdapter; @@ -50,8 +48,6 @@ */ public interface Renderer { - static final String QUERY_LAYER_LEVEL_DETAILS = "#"; - TypeAdapter getTypeAdapter(); /** @@ -98,34 +94,6 @@ default Map renderLabelFeatureValues(TypeAdapter aAdapter, Featu return features; } - default List getLazyDetails(AnnotationFS aFs, - List aFeatures) - { - List details = new ArrayList<>(); - - boolean tiggerLayerLevelLazyDetails = false; - - FeatureSupportRegistry fsr = getFeatureSupportRegistry(); - - for (AnnotationFeature feature : aFeatures) { - if (!feature.isEnabled()) { - continue; - } - - if (feature.isIncludeInHover() && NONE.equals(feature.getMultiValueMode())) { - tiggerLayerLevelLazyDetails = true; - } - - details.addAll(fsr.findExtension(feature).orElseThrow().getLazyDetails(feature, aFs)); - } - - if (tiggerLayerLevelLazyDetails) { - details.add(VLazyDetailQuery.LAYER_LEVEL_QUERY); - } - - return details; - } - default void renderRequiredFeatureErrors(List aFeatures, FeatureStructure aFS, VDocument aResponse) { @@ -141,16 +109,22 @@ default void renderRequiredFeatureErrors(List aFeatures, } } - default List renderLazyDetails(CAS aCas, VID aVid, int windowBeginOffset, + default List lookupLazyDetails(CAS aCas, VID aVid, int windowBeginOffset, int windowEndOffset) { - FeatureSupportRegistry fsr = getFeatureSupportRegistry(); + var fsr = getFeatureSupportRegistry(); - List details = new ArrayList<>(); + var aFs = selectByAddr(aCas, AnnotationFS.class, aVid.getId()); - AnnotationFS aFs = selectByAddr(aCas, AnnotationFS.class, aVid.getId()); + var details = new ArrayList(); + generateLazyDetailsForFeaturesIncludedInHover(fsr, details, aFs); + return details; + } - for (AnnotationFeature feature : getTypeAdapter().listFeatures()) { + default void generateLazyDetailsForFeaturesIncludedInHover(FeatureSupportRegistry fsr, + List details, AnnotationFS aFs) + { + for (var feature : getTypeAdapter().listFeatures()) { if (!feature.isEnabled() || !feature.isIncludeInHover() || !MultiValueMode.NONE.equals(feature.getMultiValueMode())) { continue; @@ -161,7 +135,5 @@ default List renderLazyDetails(CAS aCas, VID aVid, int window details.add(new VLazyDetailResult(feature.getName(), text)); } - - return details; } } diff --git a/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/AnnotationSchemaService.java b/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/AnnotationSchemaService.java index 85b97fbd809..8dcb94edf46 100644 --- a/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/AnnotationSchemaService.java +++ b/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/AnnotationSchemaService.java @@ -273,13 +273,13 @@ public interface AnnotationSchemaService /** * Get an {@link AnnotationFeature} using its name * - * @param name + * @param aFeature * the feature name. - * @param type + * @param aLayer * the feature type. * @return the feature. */ - AnnotationFeature getFeature(String name, AnnotationLayer type); + AnnotationFeature getFeature(String aFeature, AnnotationLayer aLayer); /** * Check if an {@link AnnotationLayer} already exists. diff --git a/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/feature/FeatureSupport.java b/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/feature/FeatureSupport.java index 55d3c9a7e37..3ed8569e0b0 100644 --- a/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/feature/FeatureSupport.java +++ b/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/feature/FeatureSupport.java @@ -43,8 +43,6 @@ import de.tudarmstadt.ukp.inception.editor.action.AnnotationActionHandler; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.schema.adapter.AnnotationException; import de.tudarmstadt.ukp.inception.schema.adapter.TypeAdapter; @@ -221,23 +219,6 @@ default String renderFeatureValue(AnnotationFeature aFeature, FeatureStructure a return renderFeatureValue(aFeature, aFs.getFeatureValueAsString(labelFeature)); } - default List getLazyDetails(AnnotationFeature aFeature, FeatureStructure aFs) - { - Feature labelFeature = aFs.getType().getFeatureByBaseName(aFeature.getName()); - - if (labelFeature != null && labelFeature.getRange().isPrimitive()) { - return getLazyDetails(aFeature, aFs.getFeatureValueAsString(labelFeature)); - } - else { - return Collections.emptyList(); - } - } - - default List getLazyDetails(AnnotationFeature aFeature, String aLabel) - { - return Collections.emptyList(); - } - /** * Gets the label that should be displayed for the given feature value in the UI. {@code null} * is an acceptable return value for this method. @@ -253,8 +234,7 @@ default String renderFeatureValue(AnnotationFeature aFeature, String aLabel) return aLabel; } - default List renderLazyDetails(CAS aCas, AnnotationFeature aFeature, - VID aParamId, String aQuery) + default List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { return Collections.emptyList(); } diff --git a/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/message/GetDocumentResponse.java b/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/message/GetDocumentResponse.java index 3ffc64e3c48..bfd834a93ca 100644 --- a/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/message/GetDocumentResponse.java +++ b/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/message/GetDocumentResponse.java @@ -30,7 +30,6 @@ import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Comment; import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Entity; import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Marker; -import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Normalization; import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Offsets; import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Relation; import de.tudarmstadt.ukp.inception.diam.model.ajax.AjaxResponse; @@ -79,7 +78,6 @@ public class GetDocumentResponse */ private @JsonInclude(NON_EMPTY) List entities = new ArrayList<>(); private @JsonInclude(NON_EMPTY) List comments = new ArrayList<>(); - private @JsonInclude(NON_EMPTY) List normalizations = new ArrayList<>(); private Map> args = new HashMap<>(); @@ -123,21 +121,6 @@ public void addComment(Comment aComment) comments.add(aComment); } - public List getNormalizations() - { - return normalizations; - } - - public void setNormalizations(List aNormalizations) - { - normalizations = aNormalizations; - } - - public void addNormalization(Normalization aNormalization) - { - normalizations.add(aNormalization); - } - public List getTokenOffsets() { return tokenOffsets; diff --git a/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/BratSerializerImpl.java b/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/BratSerializerImpl.java index 677fb851559..5fcc44c337e 100644 --- a/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/BratSerializerImpl.java +++ b/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/BratSerializerImpl.java @@ -47,7 +47,6 @@ import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Argument; import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Comment; import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Entity; -import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Normalization; import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Offsets; import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.Relation; import de.tudarmstadt.ukp.clarin.webanno.brat.render.model.SentenceComment; @@ -159,10 +158,6 @@ private void renderLayers(GetDocumentResponse aResponse, VDocument aVDoc) vspan.getRanges().get(vspan.getRanges().size() - 1).isClippedAtEnd()); aResponse.addEntity(entity); - - vspan.getLazyDetails().stream() - .map(d -> new Normalization(vspan.getVid(), d.getFeature(), d.getQuery())) - .forEach(aResponse::addNormalization); } for (VArc varc : aVDoc.arcs(layer.getId())) { @@ -171,10 +166,6 @@ private void renderLayers(GetDocumentResponse aResponse, VDocument aVDoc) getArgument(varc.getSource(), varc.getTarget()), varc.getLabelHint(), varc.getColorHint()); aResponse.addRelation(arc); - - varc.getLazyDetails().stream() - .map(d -> new Normalization(varc.getVid(), d.getFeature(), d.getQuery())) - .forEach(aResponse::addNormalization); } } } diff --git a/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/model/Normalization.java b/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/model/Normalization.java deleted file mode 100644 index e5866cfe1f4..00000000000 --- a/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/model/Normalization.java +++ /dev/null @@ -1,105 +0,0 @@ -/* - * Licensed to the Technische Universität Darmstadt under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The Technische Universität Darmstadt - * licenses this file to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package de.tudarmstadt.ukp.clarin.webanno.brat.render.model; - -import static com.fasterxml.jackson.annotation.JsonInclude.Include.NON_NULL; -import static org.apache.commons.lang3.StringUtils.defaultIfEmpty; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; - -import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.support.json.BeanAsArraySerializer; - -@JsonSerialize(using = BeanAsArraySerializer.class) -@JsonPropertyOrder(value = { "target", "refDb", "refId", "refText" }) -public class Normalization -{ - private VID target; - - @JsonInclude(NON_NULL) - private String refDb; - - @JsonInclude(NON_NULL) - private String refId; - - // If the refText is set, no AJAX query is performed. This is a behavior modification in the - // JS code by us - // NOTE: If refText is set, then refId **MUST** also be set! - @JsonInclude(NON_NULL) - private String refText; - - public Normalization(VID aTarget, String aReftext) - { - this(aTarget, "", "", aReftext); - } - - public Normalization(VID aTarget, String aRefDb, String aRefId) - { - this(aTarget, aRefDb, defaultIfEmpty(aRefId, null), null); - } - - public Normalization(VID aTarget, String aRefDb, String aRefId, String aReftext) - { - target = aTarget; - refText = aReftext; - refDb = aRefDb; - refId = aRefId; - } - - public VID getTarget() - { - return target; - } - - public void setTarget(VID aTarget) - { - target = aTarget; - } - - public String getRefDb() - { - return refDb; - } - - public void setRefDb(String aRefDb) - { - refDb = aRefDb; - } - - public String getRefId() - { - return refId; - } - - public void setRefId(String aRefId) - { - refId = aRefId; - } - - public String getReftext() - { - return refText; - } - - public void setReftext(String aReftext) - { - refText = aReftext; - } -} diff --git a/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts b/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts index 01e083eb9c5..e40a6c3941d 100644 --- a/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts +++ b/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts @@ -60,7 +60,7 @@ export class VisualizerUI { private commentPopup: JQuery private commentDisplayed = false - private displayCommentTimer = null + private displayCommentTimer: number | undefined = undefined private ajax: DiamAjax @@ -78,7 +78,6 @@ export class VisualizerUI { .on('displaySentComment', this, this.displaySentComment) .on('hideComment', this, this.hideComment) .on('resize', this, this.onResize) - .on('collectionLoaded', this, this.rememberNormDb) .on('spanAndAttributeTypesLoaded', this, this.spanAndAttributeTypesLoaded) .on('doneRendering', this, this.onDoneRendering) .on('mousemove', this, this.onMouseMove) @@ -177,15 +176,13 @@ export class VisualizerUI { comment += ('
"' + Util.escapeHTML(spanText) + '"
') } - // process normalizations - const normsToQuery = [] - comment += this.processNormalizations(normalizations, normsToQuery) + comment += '
' // display initial comment HTML this.displayComment(evt, comment, commentText, commentType, immediately) // initiate AJAX calls for the normalization data to query - $.each(normsToQuery, (normNo, norm) => this.initiateNormalizationAjaxCall(spanId, spanType, norm)) + this.initiateNormalizationAjaxCall(spanId, spanType) } displayArcComment (evt, target, symmetric, arcId, originSpanId, originSpanType, @@ -200,65 +197,17 @@ export class VisualizerUI { '' + (arcId ? 'ID:' + arcId : Util.escapeHTML(originSpanId) + arrowStr + Util.escapeHTML(targetSpanId)) + '' + '') comment += ('
' + Util.escapeHTML('"' + this.data.spans[originSpanId].text + '"') + arrowStr + Util.escapeHTML('"' + this.data.spans[targetSpanId].text + '"') + '
') - - // process normalizations - const normsToQuery = [] - comment += this.processNormalizations(normalizations, normsToQuery) + comment += '
' this.displayComment(evt, comment, commentText, commentType) // initiate AJAX calls for the normalization data to query - $.each(normsToQuery, (normNo, norm) => this.initiateNormalizationAjaxCall(arcId, arcRole, norm)) - } - - processNormalizations (normalizations, normsToQuery) { - let comment = '' - $.each(normalizations != null ? normalizations : [], (normNo, norm) => { - if (norm[2]) { - const cateogory = norm[0] - const key = norm[1] - const value = norm[2] - // no DB, just attach "human-readable" text provided with the annotation, if any - if (cateogory) { - comment += `
- ${Util.escapeHTML(cateogory)}' - ` - } - - if (key) { - comment += `${Util.escapeHTML(key)} - ` - } - - comment += `${Util.escapeHTML(value)?.replace(/\n/g, '
')}
-
- ` - } else { - // DB available, add drop-off point to HTML and store query parameters - const dbName = norm[0] - const dbKey = norm[1] - this.commentPopupNormInfoSeqId++ - if (dbKey) { - comment += `
- ${Util.escapeHTML(dbName)}: ${Util.escapeHTML(dbKey)} -
` - } else { - comment += '
' - } - comment += `
` - normsToQuery.push([dbName, dbKey, this.commentPopupNormInfoSeqId]) - } - }) - return comment.replace(/^\s*/gm, '') + this.initiateNormalizationAjaxCall(arcId, arcRole) } - initiateNormalizationAjaxCall (id, type, normq) { + initiateNormalizationAjaxCall (id, type) { // TODO: cache some number of most recent norm_get_data results - const dbName = normq[0] - const dbKey = normq[1] - const infoSeqId = normq[2] - - this.ajax.loadLazyDetails(id, type, dbName, dbKey).then(response => { + this.ajax.loadLazyDetails(id, type).then(response => { if (response.exception) { // TODO: response to error } else if (!response.results) { @@ -297,11 +246,12 @@ export class VisualizerUI { } } } - const drop = $('#norm_info_drop_point_' + infoSeqId) + + const drop = $('#lazy_details_drop_point') if (drop) { drop.html(norminfo) } else { - console.log('norm info drop point not found!') // TODO XXX + console.log('Lazy details drop point not found!') // TODO XXX } } }) @@ -333,7 +283,7 @@ export class VisualizerUI { /* END comment popup - related */ // BEGIN WEBANNO EXTENSION - #1697 - Explicit UI for accepting/recejcting recommendations - displayButtonsTimer = null + displayButtonsTimer: number | undefined = undefined buttonsShown = false acceptAction (evt: MouseEvent, offsets, editedSpan, id) { evt.preventDefault() @@ -420,18 +370,6 @@ export class VisualizerUI { /* START form management - related */ - rememberNormDb (response) { - // the visualizer needs to remember aspects of the norm setup - // so that it can avoid making queries for unconfigured or - // missing normalization DBs. - const norm_resources = response.normalization_config || [] - $.each(norm_resources, (normNo, norm) => { - const normName = norm[0] - const serverDb = norm[3] - this.normServerDbByNormDbName[normName] = serverDb - }) - } - onDoneRendering (args) { if (args && !args.edited) { // FIXME REC 2021-11-21 - Good idea but won't work in INCEpTION since there could diff --git a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/EditorAjaxRequestHandler.java b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/EditorAjaxRequestHandler.java index f21f5effcdc..13050ed5660 100644 --- a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/EditorAjaxRequestHandler.java +++ b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/EditorAjaxRequestHandler.java @@ -42,8 +42,6 @@ public interface EditorAjaxRequestHandler String PARAM_TARGET_SPAN_ID = "targetSpanId"; String PARAM_ORIGIN_SPAN_ID = "originSpanId"; String PARAM_TYPE = "type"; - String PARAM_LAZY_DETAIL_DATABASE = "database"; - String PARAM_LAZY_DETAIL_KEY = "key"; String ACTION_CONTEXT_MENU = "contextMenu"; diff --git a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupServiceImpl.java b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupServiceImpl.java index cab095e0be0..fbd25d52609 100644 --- a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupServiceImpl.java +++ b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupServiceImpl.java @@ -17,16 +17,17 @@ */ package de.tudarmstadt.ukp.inception.diam.editor.lazydetails; -import static de.tudarmstadt.ukp.inception.diam.editor.actions.EditorAjaxRequestHandler.PARAM_LAZY_DETAIL_DATABASE; -import static de.tudarmstadt.ukp.inception.diam.editor.actions.EditorAjaxRequestHandler.PARAM_LAZY_DETAIL_KEY; +import static de.tudarmstadt.ukp.clarin.webanno.support.uima.ICasUtil.selectFsByAddr; import static de.tudarmstadt.ukp.inception.diam.editor.actions.EditorAjaxRequestHandler.PARAM_TYPE; import static de.tudarmstadt.ukp.inception.diam.editor.actions.LazyDetailsHandler.COMMAND; +import static java.util.Collections.emptyList; import static java.util.stream.Collectors.toList; import java.io.IOException; import java.util.ArrayList; import java.util.List; +import org.apache.uima.cas.CAS; import org.apache.wicket.request.IRequestParameters; import org.apache.wicket.util.string.StringValue; @@ -38,7 +39,6 @@ import de.tudarmstadt.ukp.clarin.webanno.security.model.User; import de.tudarmstadt.ukp.inception.diam.editor.config.DiamAutoConfig; import de.tudarmstadt.ukp.inception.editor.AnnotationEditorExtensionRegistry; -import de.tudarmstadt.ukp.inception.rendering.Renderer; import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; @@ -71,42 +71,35 @@ public LazyDetailsLookupServiceImpl(AnnotationSchemaService aAnnotationService, } @Override - public LazyDetailsResponse lookupLazyDetails(IRequestParameters request, VID paramId, + public LazyDetailsResponse lookupLazyDetails(IRequestParameters request, VID aVid, CasProvider aCas, SourceDocument aDocument, User aUser, int windowBeginOffset, int windowEndOffset) throws AnnotationException, IOException { - LazyDetailsResponse response = new LazyDetailsResponse(COMMAND); + var response = new LazyDetailsResponse(COMMAND); - var topicParam = request.getParameterValue(PARAM_LAZY_DETAIL_DATABASE); - var keyParam = request.getParameterValue(PARAM_LAZY_DETAIL_KEY); var layerParam = request.getParameterValue(PARAM_TYPE); - if (layerParam.isEmpty() || topicParam.isEmpty()) { + if (layerParam.isEmpty()) { return response; } - Project project = aDocument.getProject(); - String topic = topicParam.toString(); - long layerId = layerParam.toLong(); - AnnotationLayer layer = annotationService.getLayer(project, layerId) - .orElseThrow(() -> new AnnotationException( - "Layer with ID [" + layerId + "] does not exist in project " + project)); + var cas = aCas.get(); + var layer = findLayer(aVid, cas, layerParam, aDocument.getProject()); - List details = new ArrayList<>(); + var details = new ArrayList(); - renderExtensionLevelDetail(paramId, aDocument, aUser, keyParam, topic, layer, details); + lookupLayerLevelDetails(aVid, cas, windowBeginOffset, windowEndOffset, layer) + .forEach(details::add); - // Is it a layer-level lazy detail? - if (Renderer.QUERY_LAYER_LEVEL_DETAILS.equals(topic)) { - renderLayerLevelDetail(paramId, aCas, windowBeginOffset, windowEndOffset, layer, - details); - } - // Is it a feature-level lazy detail? - // We interpret the key as the feature value or as a kind of query to be handled by the - // feature support - else if (!keyParam.isEmpty()) { - renderFeatureLevelDetail(paramId, aCas, keyParam, topic, layer, details); + for (var feature : annotationService.listAnnotationFeature(layer)) { + lookupExtensionLevelDetails(aVid, aDocument, cas, aUser, feature).forEach(details::add); + + // FIXME: We would like to get feature-level lazy details for the annotation label + // provided by the extension or said otherwise, we want to e.g. get KB details for a + // concept + // feature suggestion... this worked when we used the "query", but now is broken! + lookupFeatureLevelDetail(aVid, cas, feature).forEach(details::add); } response.setResults(details.stream() // @@ -116,41 +109,59 @@ else if (!keyParam.isEmpty()) { return response; } - private void renderFeatureLevelDetail(VID paramId, CasProvider aCas, StringValue keyParam, - String topic, AnnotationLayer layer, List details) - throws IOException + private AnnotationLayer findLayer(VID aVid, CAS aCas, StringValue aLayerParam, Project project) + throws AnnotationException, IOException { - AnnotationFeature feature = annotationService.getFeature(topic, layer); - featureSupportRegistry.findExtension(feature).orElseThrow() - .renderLazyDetails(aCas.get(), feature, paramId, keyParam.toString()) // - .forEach(details::add); + if (aVid.isSynthetic()) { + var layerId = aLayerParam.toLong(); + return annotationService.getLayer(project, layerId) + .orElseThrow(() -> new AnnotationException("Layer with ID [" + layerId + + "] does not exist in project " + project)); + } + + var fs = selectFsByAddr(aCas, aVid.getId()); + return annotationService.findLayer(project, fs); } - private void renderLayerLevelDetail(VID paramId, CasProvider aCas, int windowBeginOffset, - int windowEndOffset, AnnotationLayer layer, List details) - throws IOException + private List lookupFeatureLevelDetail(VID aVid, CAS aCas, + AnnotationFeature aFeature) { - layerSupportRegistry.getLayerSupport(layer) - .createRenderer(layer, () -> annotationService.listAnnotationFeature(layer)) - .renderLazyDetails(aCas.get(), paramId, windowBeginOffset, windowEndOffset) - .forEach(details::add); + if (aVid.isSynthetic()) { + return emptyList(); + } + + var fs = selectFsByAddr(aCas, aVid.getId()); + var ext = featureSupportRegistry.findExtension(aFeature).orElseThrow(); + return ext.lookupLazyDetails(aFeature, ext.getFeatureValue(aFeature, fs)); } - private void renderExtensionLevelDetail(VID paramId, SourceDocument aSourceDocument, User aUser, - StringValue keyParam, String topic, AnnotationLayer layer, - List details) + private List lookupLayerLevelDetails(VID aVid, CAS aCas, + int windowBeginOffset, int windowEndOffset, AnnotationLayer aLayer) { - // Only applies to synthetic annotations (i.e. from extensions) - if (!paramId.isSynthetic()) { - return; + if (aVid.isSynthetic()) { + return emptyList(); } - AnnotationFeature feature = annotationService.getFeature(topic, layer); + return layerSupportRegistry.getLayerSupport(aLayer) + .createRenderer(aLayer, () -> annotationService.listAnnotationFeature(aLayer)) + .lookupLazyDetails(aCas, aVid, windowBeginOffset, windowEndOffset); - String extensionId = paramId.getExtensionId(); - extensionRegistry.getExtension(extensionId) - .renderLazyDetails(aSourceDocument, aUser, paramId, feature, - keyParam.toOptionalString()) // - .forEach(details::add); + } + + private List lookupExtensionLevelDetails(VID aVid, SourceDocument aDocument, + CAS aCas, User aUser, AnnotationFeature aFeature) + throws IOException + { + if (!aVid.isSynthetic()) { + return emptyList(); + } + + var result = new ArrayList(); + var extension = extensionRegistry.getExtension(aVid.getExtensionId()); + var value = extension.getFeatureValue(aDocument, aUser, aCas, aVid, aFeature); + featureSupportRegistry.findExtension(aFeature).orElseThrow() + .lookupLazyDetails(aFeature, value).forEach(result::add); + extension.lookupLazyDetails(aDocument, aUser, aVid, aFeature).forEach(result::add); + return result; } } diff --git a/inception/inception-diam/src/main/ts/src/diam/DiamAjaxImpl.ts b/inception/inception-diam/src/main/ts/src/diam/DiamAjaxImpl.ts index acec99eba1e..731b4b2adfe 100644 --- a/inception/inception-diam/src/main/ts/src/diam/DiamAjaxImpl.ts +++ b/inception/inception-diam/src/main/ts/src/diam/DiamAjaxImpl.ts @@ -229,16 +229,14 @@ export class DiamAjaxImpl implements DiamAjax { }) } - loadLazyDetails (id: VID, type: string, database: string, key: string): Promise { + loadLazyDetails (id: VID, type: string): Promise { const token = DiamAjaxImpl.newToken() const params: Record = { action: 'normData', token, id, - type, - database, - key + type } return new Promise((resolve, reject) => { diff --git a/inception/inception-feature-lookup/src/main/java/de/tudarmstadt/ukp/inception/feature/lookup/LookupFeatureSupport.java b/inception/inception-feature-lookup/src/main/java/de/tudarmstadt/ukp/inception/feature/lookup/LookupFeatureSupport.java index d54e481b12d..42ef6a0a6cb 100644 --- a/inception/inception-feature-lookup/src/main/java/de/tudarmstadt/ukp/inception/feature/lookup/LookupFeatureSupport.java +++ b/inception/inception-feature-lookup/src/main/java/de/tudarmstadt/ukp/inception/feature/lookup/LookupFeatureSupport.java @@ -26,7 +26,6 @@ import java.util.List; import java.util.Optional; -import org.apache.commons.lang3.StringUtils; import org.apache.uima.cas.CAS; import org.apache.uima.resource.metadata.TypeDescription; import org.apache.uima.resource.metadata.TypeSystemDescription; @@ -44,8 +43,6 @@ import de.tudarmstadt.ukp.inception.feature.lookup.config.LookupServiceProperties; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.schema.feature.FeatureEditor; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupport; @@ -236,32 +233,23 @@ public void generateFeature(TypeSystemDescription aTSD, TypeDescription aTD, { aTD.addFeature(aFeature.getName(), "", CAS.TYPE_NAME_STRING); } - - @Override - public List getLazyDetails(AnnotationFeature aFeature, String aLabel) - { - if (StringUtils.isEmpty(aLabel)) { - return Collections.emptyList(); - } - - return asList(new VLazyDetailQuery(aFeature.getName(), aLabel)); - } - + @Override - public List renderLazyDetails(CAS aCas, AnnotationFeature aFeature, - VID aParamId, String aQuery) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { - List result = new ArrayList<>(); - - LookupFeatureTraits traits = readTraits(aFeature); - LookupEntry handle = labelCache.get(aFeature, traits, aQuery); + if (aValue instanceof LookupEntry) { + var handle = (LookupEntry) aValue; + + var result = new ArrayList(); + result.add(new VLazyDetailResult("Label", handle.getUiLabel())); - result.add(new VLazyDetailResult("Label", handle.getUiLabel())); + if (isNotBlank(handle.getDescription())) { + result.add(new VLazyDetailResult("Description", handle.getDescription())); + } - if (isNotBlank(handle.getDescription())) { - result.add(new VLazyDetailResult("Description", handle.getDescription())); + return result; } - - return result; + + return Collections.emptyList(); } } diff --git a/inception/inception-image/src/main/java/de/tudarmstadt/ukp/inception/image/feature/ImageFeatureSupport.java b/inception/inception-image/src/main/java/de/tudarmstadt/ukp/inception/image/feature/ImageFeatureSupport.java index ac3b36c91ca..853e77fa916 100644 --- a/inception/inception-image/src/main/java/de/tudarmstadt/ukp/inception/image/feature/ImageFeatureSupport.java +++ b/inception/inception-image/src/main/java/de/tudarmstadt/ukp/inception/image/feature/ImageFeatureSupport.java @@ -18,6 +18,8 @@ package de.tudarmstadt.ukp.inception.image.feature; import static java.util.Arrays.asList; +import static java.util.Collections.emptyList; +import static org.apache.commons.lang3.StringUtils.isBlank; import java.io.IOException; import java.io.Serializable; @@ -25,9 +27,7 @@ import java.util.List; import java.util.Optional; -import org.apache.commons.lang3.StringUtils; import org.apache.uima.cas.CAS; -import org.apache.uima.cas.FeatureStructure; import org.apache.uima.resource.metadata.TypeDescription; import org.apache.uima.resource.metadata.TypeSystemDescription; import org.apache.wicket.MarkupContainer; @@ -44,8 +44,6 @@ import de.tudarmstadt.ukp.inception.image.config.ImageSupportAutoConfiguration; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.schema.feature.FeatureEditor; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupport; @@ -199,21 +197,18 @@ public Serializable wrapFeatureValue(AnnotationFeature aFeature, CAS aCAS, Objec } @Override - public List getLazyDetails(AnnotationFeature aFeature, FeatureStructure aFs) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { - String label = renderFeatureValue(aFeature, aFs); + if (aValue instanceof String) { + var url = (String) aValue; - if (StringUtils.isEmpty(label)) { - return Collections.emptyList(); - } + if (isBlank(url)) { + return emptyList(); + } - return asList(new VLazyDetailQuery(aFeature.getName(), label)); - } + return asList(new VLazyDetailResult("", url)); + } - @Override - public List renderLazyDetails(CAS aCas, AnnotationFeature aFeature, - VID aParamId, String aQuery) - { - return asList(new VLazyDetailResult("", aQuery)); + return Collections.emptyList(); } } diff --git a/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts b/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts index a005ed454e6..582145d1b77 100644 --- a/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts +++ b/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts @@ -49,7 +49,7 @@ export interface DiamAjax { loadAnnotations(options?: DiamLoadAnnotationsOptions): Promise; - loadLazyDetails(id: VID, type: string, database: string, key: string): Promise; + loadLazyDetails(id: VID, type: string): Promise; loadPreferences (key: string): Promise; diff --git a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/RecommendationEditorExtension.java b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/RecommendationEditorExtension.java index de66ed47c9a..c7e4e949d7b 100644 --- a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/RecommendationEditorExtension.java +++ b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/RecommendationEditorExtension.java @@ -39,7 +39,6 @@ import org.apache.wicket.feedback.IFeedback; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationEventPublisher; import de.tudarmstadt.ukp.clarin.webanno.api.annotation.page.AnnotationPageBase; @@ -61,10 +60,8 @@ import de.tudarmstadt.ukp.inception.recommendation.api.RecommendationService; import de.tudarmstadt.ukp.inception.recommendation.api.model.AnnotationSuggestion; import de.tudarmstadt.ukp.inception.recommendation.api.model.Predictions; -import de.tudarmstadt.ukp.inception.recommendation.api.model.Preferences; import de.tudarmstadt.ukp.inception.recommendation.api.model.RelationSuggestion; import de.tudarmstadt.ukp.inception.recommendation.api.model.SpanSuggestion; -import de.tudarmstadt.ukp.inception.recommendation.api.model.SuggestionGroup; import de.tudarmstadt.ukp.inception.recommendation.config.RecommenderServiceAutoConfiguration; import de.tudarmstadt.ukp.inception.recommendation.event.AjaxRecommendationAcceptedEvent; import de.tudarmstadt.ukp.inception.recommendation.event.AjaxRecommendationRejectedEvent; @@ -75,6 +72,7 @@ import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; import de.tudarmstadt.ukp.inception.schema.adapter.AnnotationException; +import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupportRegistry; /** * This component hooks into the annotation editor in order to: @@ -101,16 +99,18 @@ public class RecommendationEditorExtension private final RecommendationService recommendationService; private final ApplicationEventPublisher applicationEventPublisher; private final UserDao userService; + private final FeatureSupportRegistry featureSupportRegistry; - @Autowired public RecommendationEditorExtension(AnnotationSchemaService aAnnotationService, RecommendationService aRecommendationService, - ApplicationEventPublisher aApplicationEventPublisher, UserDao aUserRegistry) + ApplicationEventPublisher aApplicationEventPublisher, UserDao aUserRegistry, + FeatureSupportRegistry aFeatureSupportRegistry) { annotationService = aAnnotationService; recommendationService = aRecommendationService; applicationEventPublisher = aApplicationEventPublisher; userService = aUserRegistry; + featureSupportRegistry = aFeatureSupportRegistry; } @Override @@ -328,16 +328,35 @@ public void renderRequested(AjaxRequestTarget aTarget, AnnotatorState aState) } @Override - public List renderLazyDetails(SourceDocument aDocument, User aUser, VID aVid, - AnnotationFeature aFeature, String aQuery) + @SuppressWarnings("unchecked") + public V getFeatureValue(SourceDocument aDocument, User aUser, CAS aCas, VID aVid, + AnnotationFeature aFeature) { var predictions = recommendationService.getPredictions(aUser, aDocument.getProject()); if (predictions == null) { - return emptyList(); + return null; + } + + var vid = VID.parse(aVid.getExtensionPayload()); + var ao = predictions.getPredictionByVID(aDocument, vid); + if (ao.isEmpty() || !ao.get().getFeature().equals(aFeature.getName())) { + return null; } - Preferences pref = recommendationService.getPreferences(aUser, aDocument.getProject()); + return (V) featureSupportRegistry.findExtension(aFeature) + .map(ext -> ext.wrapFeatureValue(aFeature, aCas, ao.get().getLabel())).orElse(null); + } + + @Override + public List lookupLazyDetails(SourceDocument aDocument, User aUser, VID aVid, + AnnotationFeature aFeature) + { + var predictions = recommendationService.getPredictions(aUser, aDocument.getProject()); + + if (predictions == null) { + return emptyList(); + } var vid = VID.parse(aVid.getExtensionPayload()); var representative = predictions.getPredictionByVID(aDocument, vid); @@ -345,8 +364,8 @@ public List renderLazyDetails(SourceDocument aDocument, User return emptyList(); } - AnnotationSuggestion sao = representative.get(); - Optional> group = predictions + var sao = representative.get(); + var group = predictions .getGroupedPredictions(AnnotationSuggestion.class, aDocument.getName(), aFeature.getLayer(), sao.getWindowBegin(), sao.getWindowEnd()) .stream() // @@ -357,13 +376,14 @@ public List renderLazyDetails(SourceDocument aDocument, User return emptyList(); } - var label = defaultIfBlank(aQuery, null); + var pref = recommendationService.getPreferences(aUser, aDocument.getProject()); + var label = defaultIfBlank(sao.getLabel(), null); var sortedByScore = group.get().bestSuggestionsByFeatureAndLabel(pref, aFeature.getName(), label); - List details = new ArrayList<>(); - for (AnnotationSuggestion ao : sortedByScore) { - List items = new ArrayList<>(); + var details = new ArrayList(); + for (var ao : sortedByScore) { + var items = new ArrayList(); if (ao.getScore() != -1) { items.add(String.format("Score: %.2f", ao.getScore())); } diff --git a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/config/RecommenderServiceAutoConfiguration.java b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/config/RecommenderServiceAutoConfiguration.java index e2c5c013e97..5f9affbb892 100644 --- a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/config/RecommenderServiceAutoConfiguration.java +++ b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/config/RecommenderServiceAutoConfiguration.java @@ -160,10 +160,11 @@ public RecommendationSidebarFactory recommendationSidebarFactory( public RecommendationEditorExtension recommendationEditorExtension( AnnotationSchemaService aAnnotationService, RecommendationService aRecommendationService, - ApplicationEventPublisher aApplicationEventPublisher, UserDao aUserService) + ApplicationEventPublisher aApplicationEventPublisher, UserDao aUserService, + FeatureSupportRegistry aFeatureSupportRegistry) { return new RecommendationEditorExtension(aAnnotationService, aRecommendationService, - aApplicationEventPublisher, aUserService); + aApplicationEventPublisher, aUserService, aFeatureSupportRegistry); } @Bean diff --git a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/render/RecommendationRelationRenderer.java b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/render/RecommendationRelationRenderer.java index 93b032c9122..255b7d14748 100644 --- a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/render/RecommendationRelationRenderer.java +++ b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/render/RecommendationRelationRenderer.java @@ -23,7 +23,6 @@ import static java.util.stream.Collectors.toMap; import static org.apache.uima.fit.util.CasUtil.selectAt; -import java.util.List; import java.util.Map; import org.apache.uima.cas.Type; @@ -43,7 +42,6 @@ import de.tudarmstadt.ukp.inception.rendering.vmodel.VArc; import de.tudarmstadt.ukp.inception.rendering.vmodel.VDocument; import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupport; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupportRegistry; @@ -148,16 +146,6 @@ public void render(VDocument aVDoc, RenderRequest aRequest, Predictions aPredict "\uD83E\uDD16 " + suggestion.getUiLabel(), featureAnnotation, COLOR); arc.setScore(suggestion.getScore()); - List lazyDetails = featureSupport.getLazyDetails(feature, - suggestion.getLabel()); - if (!lazyDetails.isEmpty()) { - arc.addLazyDetails(lazyDetails); - } - else { - arc.addLazyDetail( - new VLazyDetailQuery(feature.getName(), suggestion.getLabel())); - } - aVDoc.add(arc); } } diff --git a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/render/RecommendationSpanRenderer.java b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/render/RecommendationSpanRenderer.java index 59250262805..c471615d4cd 100644 --- a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/render/RecommendationSpanRenderer.java +++ b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/render/RecommendationSpanRenderer.java @@ -33,7 +33,6 @@ import de.tudarmstadt.ukp.inception.recommendation.config.RecommenderServiceAutoConfiguration; import de.tudarmstadt.ukp.inception.rendering.request.RenderRequest; import de.tudarmstadt.ukp.inception.rendering.vmodel.VDocument; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.rendering.vmodel.VRange; import de.tudarmstadt.ukp.inception.rendering.vmodel.VSpan; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; @@ -126,14 +125,6 @@ public void render(VDocument vdoc, RenderRequest aRequest, Predictions aPredicti v.setScore(suggestion.getScore()); v.setActionButtons(recommenderProperties.isActionButtonsEnabled()); - var lazyDetails = featureSupport.getLazyDetails(feature, suggestion.getLabel()); - if (!lazyDetails.isEmpty()) { - v.addLazyDetails(lazyDetails); - } - else { - v.addLazyDetail(new VLazyDetailQuery(feature.getName(), suggestion.getLabel())); - } - vdoc.add(v); } } diff --git a/inception/inception-ui-curation/pom.xml b/inception/inception-ui-curation/pom.xml index 17c069ea55d..bec746617a5 100644 --- a/inception/inception-ui-curation/pom.xml +++ b/inception/inception-ui-curation/pom.xml @@ -15,7 +15,9 @@ See the License for the specific language governing permissions and limitations under the License. --> - + 4.0.0 de.tudarmstadt.ukp.inception.app @@ -120,11 +122,11 @@ org.springframework - spring-tx + spring-beans org.springframework - spring-beans + spring-tx org.springframework @@ -214,13 +216,12 @@ org.slf4j slf4j-api - + javax.persistence javax.persistence-api - - + org.springframework.boot spring-boot-starter-data-jpa @@ -242,4 +243,20 @@ test + + + + + + org.apache.maven.plugins + maven-dependency-plugin + + + org.springframework:spring-beans + + + + + + \ No newline at end of file diff --git a/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/inception/ui/curation/sidebar/CurationEditorExtension.java b/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/inception/ui/curation/sidebar/CurationEditorExtension.java index cf93a9e6388..121ebfd8f7b 100644 --- a/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/inception/ui/curation/sidebar/CurationEditorExtension.java +++ b/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/inception/ui/curation/sidebar/CurationEditorExtension.java @@ -27,7 +27,6 @@ import org.apache.wicket.ajax.AjaxRequestTarget; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationEventPublisher; import de.tudarmstadt.ukp.clarin.webanno.api.DocumentService; @@ -37,6 +36,7 @@ import de.tudarmstadt.ukp.clarin.webanno.model.AnnotationLayer; import de.tudarmstadt.ukp.clarin.webanno.model.SourceDocument; import de.tudarmstadt.ukp.clarin.webanno.security.UserDao; +import de.tudarmstadt.ukp.clarin.webanno.security.model.User; import de.tudarmstadt.ukp.clarin.webanno.support.uima.ICasUtil; import de.tudarmstadt.ukp.inception.curation.merge.CasMerge; import de.tudarmstadt.ukp.inception.curation.merge.CasMergeOperationResult; @@ -50,6 +50,7 @@ import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; import de.tudarmstadt.ukp.inception.schema.adapter.AnnotationException; import de.tudarmstadt.ukp.inception.schema.adapter.TypeAdapter; +import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupportRegistry; import de.tudarmstadt.ukp.inception.ui.curation.sidebar.config.CurationSidebarAutoConfiguration; import de.tudarmstadt.ukp.inception.ui.curation.sidebar.render.CurationVID; @@ -72,17 +73,19 @@ public class CurationEditorExtension private final ApplicationEventPublisher applicationEventPublisher; private final UserDao userRepository; private final CurationSidebarService curationSidebarService; + private final FeatureSupportRegistry featureSupportRegistry; - @Autowired public CurationEditorExtension(AnnotationSchemaService aAnnotationService, DocumentService aDocumentService, ApplicationEventPublisher aApplicationEventPublisher, - UserDao aUserRepository, CurationSidebarService aCurationSidebarService) + UserDao aUserRepository, CurationSidebarService aCurationSidebarService, + FeatureSupportRegistry aFeatureSupportRegistry) { annotationService = aAnnotationService; documentService = aDocumentService; applicationEventPublisher = aApplicationEventPublisher; userRepository = aUserRepository; curationSidebarService = aCurationSidebarService; + featureSupportRegistry = aFeatureSupportRegistry; } @Override @@ -136,6 +139,35 @@ else if (ScrollToHandler.COMMAND.equals(aAction)) { } } + @Override + public V getFeatureValue(SourceDocument aDocument, User aUser, CAS aCas, VID aVid, + AnnotationFeature aFeature) + throws IOException + { + // only process actions relevant to curation + if (!aVid.getExtensionId().equals(EXTENSION_ID)) { + return null; + } + + var curationVid = CurationVID.parse(aVid.getExtensionPayload()); + if (curationVid == null) { + return null; + } + + var srcUser = curationVid.getUsername(); + + if (!documentService.existsAnnotationDocument(aDocument, srcUser)) { + log.error("Source CAS of [{}] for curation not found", srcUser); + return null; + } + + var vid = VID.parse(curationVid.getExtensionPayload()); + var cas = documentService.readAnnotationCas(aDocument, srcUser); + var fs = ICasUtil.selectAnnotationByAddr(cas, vid.getId()); + var ext = featureSupportRegistry.findExtension(aFeature).orElseThrow(); + return ext.getFeatureValue(aFeature, fs); + } + /** * Save annotation identified by aVID from user CAS to given curator's CAS */ diff --git a/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/inception/ui/curation/sidebar/config/CurationSidebarAutoConfiguration.java b/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/inception/ui/curation/sidebar/config/CurationSidebarAutoConfiguration.java index 93c458fbaad..442700741f9 100644 --- a/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/inception/ui/curation/sidebar/config/CurationSidebarAutoConfiguration.java +++ b/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/inception/ui/curation/sidebar/config/CurationSidebarAutoConfiguration.java @@ -32,6 +32,7 @@ import de.tudarmstadt.ukp.clarin.webanno.api.ProjectService; import de.tudarmstadt.ukp.clarin.webanno.security.UserDao; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; +import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupportRegistry; import de.tudarmstadt.ukp.inception.schema.layer.LayerSupportRegistry; import de.tudarmstadt.ukp.inception.ui.curation.sidebar.CurationEditorExtension; import de.tudarmstadt.ukp.inception.ui.curation.sidebar.CurationSidebarFactory; @@ -60,10 +61,12 @@ public CurationSidebarService curationSidebarService(EntityManager aEntityManage public CurationEditorExtension curationEditorExtension( AnnotationSchemaService aAnnotationService, DocumentService aDocumentService, ApplicationEventPublisher aApplicationEventPublisher, UserDao aUserRepository, - CurationSidebarService aCurationSidebarService) + CurationSidebarService aCurationSidebarService, + FeatureSupportRegistry aFeatureSupportRegistry) { return new CurationEditorExtension(aAnnotationService, aDocumentService, - aApplicationEventPublisher, aUserRepository, aCurationSidebarService); + aApplicationEventPublisher, aUserRepository, aCurationSidebarService, + aFeatureSupportRegistry); } @Bean("curationSidebar") diff --git a/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/ConceptFeatureSupport.java b/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/ConceptFeatureSupport.java index f0acc6d9eee..f2b8d450a07 100644 --- a/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/ConceptFeatureSupport.java +++ b/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/ConceptFeatureSupport.java @@ -26,7 +26,6 @@ import java.util.List; import java.util.Optional; -import org.apache.commons.lang3.StringUtils; import org.apache.uima.cas.CAS; import org.apache.uima.resource.metadata.TypeDescription; import org.apache.uima.resource.metadata.TypeSystemDescription; @@ -45,8 +44,6 @@ import de.tudarmstadt.ukp.inception.kb.graph.KBHandle; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.schema.feature.FeatureEditor; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupport; @@ -263,31 +260,21 @@ public void generateFeature(TypeSystemDescription aTSD, TypeDescription aTD, } @Override - public List getLazyDetails(AnnotationFeature aFeature, String aLabel) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { - if (StringUtils.isEmpty(aLabel)) { - return Collections.emptyList(); - } - - return asList(new VLazyDetailQuery(aFeature.getName(), aLabel)); - } - - @Override - public List renderLazyDetails(CAS aCas, AnnotationFeature aFeature, - VID aParamId, String aQuery) - { - List result = new ArrayList<>(); - - ConceptFeatureTraits traits = readTraits(aFeature); - KBHandle handle = getConceptHandle(aFeature, aQuery, traits); + if (aValue instanceof KBHandle) { + var handle = (KBHandle) aValue; + var result = new ArrayList(); + result.add(new VLazyDetailResult("Label", handle.getUiLabel())); - result.add(new VLazyDetailResult("Label", handle.getUiLabel())); + if (isNotBlank(handle.getDescription())) { + result.add(new VLazyDetailResult("Description", handle.getDescription())); + } - if (isNotBlank(handle.getDescription())) { - result.add(new VLazyDetailResult("Description", handle.getDescription())); + return result; } - return result; + return Collections.emptyList(); } @Override diff --git a/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/MultiValueConceptFeatureSupport.java b/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/MultiValueConceptFeatureSupport.java index bbf9de59f8f..18eb3eff1aa 100644 --- a/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/MultiValueConceptFeatureSupport.java +++ b/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/MultiValueConceptFeatureSupport.java @@ -26,10 +26,8 @@ import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; -import java.util.Collections; import java.util.List; -import org.apache.commons.lang3.StringUtils; import org.apache.uima.cas.CAS; import org.apache.uima.cas.Feature; import org.apache.uima.cas.FeatureStructure; @@ -53,8 +51,6 @@ import de.tudarmstadt.ukp.inception.kb.graph.KBHandle; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailQuery; import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; import de.tudarmstadt.ukp.inception.schema.adapter.IllegalFeatureValueException; import de.tudarmstadt.ukp.inception.schema.feature.FeatureEditor; @@ -245,7 +241,8 @@ public Serializable wrapFeatureValue(AnnotationFeature aFeature, CAS aCAS, Objec } if (aValue instanceof List) { - ArrayList wrapped = new ArrayList<>(); + var traits = readTraits(aFeature); + var wrapped = new ArrayList(); for (Object item : (List) aValue) { if (item instanceof KBHandle) { @@ -254,10 +251,9 @@ public Serializable wrapFeatureValue(AnnotationFeature aFeature, CAS aCAS, Objec } if (item instanceof String) { - String identifier = (String) item; - MultiValueConceptFeatureTraits traits = readTraits(aFeature); - KBHandle chbk = labelCache.get(aFeature, traits.getRepositoryId(), identifier); - KBHandle clone = new KBHandle(chbk.getIdentifier(), chbk.getUiLabel(), + var identifier = (String) item; + var chbk = labelCache.get(aFeature, traits.getRepositoryId(), identifier); + var clone = new KBHandle(chbk.getIdentifier(), chbk.getUiLabel(), chbk.getDescription(), chbk.getLanguage()); clone.setKB(chbk.getKB()); wrapped.add(clone); @@ -333,47 +329,22 @@ public String renderFeatureValue(AnnotationFeature aFeature, FeatureStructure aF } @Override - public List getLazyDetails(AnnotationFeature aFeature, FeatureStructure aFs) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { - Feature labelFeature = aFs.getType().getFeatureByBaseName(aFeature.getName()); - - if (labelFeature == null) { - return Collections.emptyList(); - } - - List handles = getFeatureValue(aFeature, aFs); - if (handles == null) { - return Collections.emptyList(); - } - - return handles.stream() // - .flatMap(h -> getLazyDetails(aFeature, h.getIdentifier()).stream()) // - .collect(toList()); - } - - @Override - public List getLazyDetails(AnnotationFeature aFeature, String aIdentifier) - { - if (StringUtils.isEmpty(aIdentifier)) { - return Collections.emptyList(); - } - - return asList(new VLazyDetailQuery(aFeature.getName(), aIdentifier)); - } - - @Override - public List renderLazyDetails(CAS aCas, AnnotationFeature aFeature, - VID aParamId, String aQuery) - { - List result = new ArrayList<>(); - - MultiValueConceptFeatureTraits traits = readTraits(aFeature); - KBHandle handle = labelCache.get(aFeature, traits.getRepositoryId(), aQuery); - - result.add(new VLazyDetailResult("Label", handle.getUiLabel())); - - if (isNotBlank(handle.getDescription())) { - result.add(new VLazyDetailResult("Description", handle.getDescription())); + var result = new ArrayList(); + + if (aValue instanceof Iterable) { + var handles = (Iterable) aValue; + for (var h : handles) { + if (h instanceof KBHandle) { + var handle = (KBHandle) h; + result.add(new VLazyDetailResult("Label", handle.getUiLabel())); + + if (isNotBlank(handle.getDescription())) { + result.add(new VLazyDetailResult("Description", handle.getDescription())); + } + } + } } return result; From a693e7fd1d97c58177556d494d80f2aaa642cb08 Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Sun, 6 Aug 2023 23:04:52 +0200 Subject: [PATCH 04/17] Issue #4139: Reusable popover component for annotation editors - Introduce lazy detail groups - Add lazy-detail support to the re-usable popover component --- .../MultiValueStringFeatureSupport.java | 14 ++-- .../feature/string/StringFeatureSupport.java | 10 ++- .../layer/relation/RelationRenderer.java | 19 +++-- .../editor/AnnotationEditorExtension.java | 6 +- ...LazyDetailResult.java => VLazyDetail.java} | 4 +- .../rendering/vmodel/VLazyDetailGroup.java | 73 +++++++++++++++++++ .../ukp/inception/rendering/Renderer.java | 13 ++-- .../schema/feature/FeatureSupport.java | 4 +- .../main/ts/src/annotator_ui/ResizeManager.ts | 2 +- .../src/main/ts/src/protocol/Protocol.ts | 14 +--- .../src/main/ts/src/visualizer/Arc.ts | 11 +-- .../src/main/ts/src/visualizer/Role.ts | 2 +- .../src/main/ts/src/visualizer/Visualizer.ts | 30 +------- .../main/ts/src/visualizer_ui/VisualizerUI.ts | 50 +++++++------ .../actions/EditorAjaxRequestHandler.java | 2 +- .../editor/actions/LazyDetailsHandler.java | 19 +++-- .../{LazyDetailQuery.java => LazyDetail.java} | 4 +- .../editor/lazydetails/LazyDetailGroup.java | 51 +++++++++++++ .../lazydetails/LazyDetailsLookupService.java | 6 +- .../LazyDetailsLookupServiceImpl.java | 44 ++++++----- .../lazydetails/LazyDetailsResponse.java | 21 ++---- .../src/main/ts/src/diam/DiamAjaxImpl.ts | 38 ++++++++-- .../feature/lookup/LookupFeatureSupport.java | 14 ++-- .../AnnotationDetailPopOver.svelte | 25 +++++-- .../image/feature/ImageFeatureSupport.java | 7 +- .../src/main/ts/src/diam/DiamAjax.ts | 32 +++++++- .../src/main/ts/src/model/LazyDetail.ts | 21 ++++++ .../src/main/ts/src/model/LazyDetailGroup.ts | 23 ++++++ .../src/main/ts/src/model/index.ts | 2 + .../RecommendationEditorExtension.java | 17 +++-- .../component/BratSuggestionVisualizer.java | 3 +- .../ui/kb/feature/ConceptFeatureSupport.java | 14 ++-- .../MultiValueConceptFeatureSupport.java | 13 ++-- 33 files changed, 404 insertions(+), 204 deletions(-) rename inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/{VLazyDetailResult.java => VLazyDetail.java} (94%) create mode 100644 inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailGroup.java rename inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/{LazyDetailQuery.java => LazyDetail.java} (94%) create mode 100644 inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailGroup.java create mode 100644 inception/inception-js-api/src/main/ts/src/model/LazyDetail.ts create mode 100644 inception/inception-js-api/src/main/ts/src/model/LazyDetailGroup.ts diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/multistring/MultiValueStringFeatureSupport.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/multistring/MultiValueStringFeatureSupport.java index d33115caadd..193c7d3c59d 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/multistring/MultiValueStringFeatureSupport.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/multistring/MultiValueStringFeatureSupport.java @@ -22,7 +22,6 @@ import static org.apache.uima.cas.CAS.TYPE_NAME_STRING_ARRAY; import java.io.IOException; -import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.List; @@ -49,7 +48,8 @@ import de.tudarmstadt.ukp.inception.editor.action.AnnotationActionHandler; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetail; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; import de.tudarmstadt.ukp.inception.schema.adapter.IllegalFeatureValueException; import de.tudarmstadt.ukp.inception.schema.feature.FeatureEditor; @@ -232,9 +232,9 @@ public String renderFeatureValue(AnnotationFeature aFeature, FeatureStructure aF } @Override - public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { - var results = new ArrayList(); + var results = new VLazyDetailGroup(); if (aValue instanceof Iterable) { var values = (Iterable) aValue; for (var v : values) { @@ -243,15 +243,15 @@ public List lookupLazyDetails(AnnotationFeature aFeature, Obj var tag = schemaService.getTag(value, aFeature.getTagset()); if (tag.isEmpty()) { - results.add(new VLazyDetailResult(value, "Tag not in tagset")); + results.addDetail(new VLazyDetail(value, "Tag not in tagset")); } if (tag.map(t -> isNotBlank(t.getDescription())).orElse(false)) { - results.add(new VLazyDetailResult(value, tag.get().getDescription())); + results.addDetail(new VLazyDetail(value, tag.get().getDescription())); } } } } - return results; + return asList(results); } } diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/string/StringFeatureSupport.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/string/StringFeatureSupport.java index 1c994bc3295..4a012ce59b9 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/string/StringFeatureSupport.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/feature/string/StringFeatureSupport.java @@ -44,7 +44,8 @@ import de.tudarmstadt.ukp.inception.editor.action.AnnotationActionHandler; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetail; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; import de.tudarmstadt.ukp.inception.schema.adapter.AnnotationException; import de.tudarmstadt.ukp.inception.schema.feature.FeatureEditor; @@ -230,17 +231,18 @@ public boolean suppressAutoFocus(AnnotationFeature aFeature) } @Override - public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { if (aValue instanceof String) { var value = (String) aValue; var tag = schemaService.getTag(value, aFeature.getTagset()); if (tag.isEmpty()) { - return asList(new VLazyDetailResult(value, "Tag not in tagset")); + return asList(new VLazyDetailGroup(new VLazyDetail(value, "Tag not in tagset"))); } if (tag.map(t -> isNotBlank(t.getDescription())).orElse(false)) { - return asList(new VLazyDetailResult(value, tag.get().getDescription())); + return asList( + new VLazyDetailGroup(new VLazyDetail(value, tag.get().getDescription()))); } } diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java index 427236b5a77..991bb0f9655 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java @@ -55,7 +55,8 @@ import de.tudarmstadt.ukp.inception.rendering.vmodel.VCommentType; import de.tudarmstadt.ukp.inception.rendering.vmodel.VDocument; import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetail; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.rendering.vmodel.VObject; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupportRegistry; import de.tudarmstadt.ukp.inception.schema.layer.LayerSupportRegistry; @@ -251,7 +252,7 @@ public List render(VDocument aVDocument, AnnotationFS aFS, } @Override - public List lookupLazyDetails(CAS aCas, VID aVid, int aWindowBeginOffset, + public List lookupLazyDetails(CAS aCas, VID aVid, int aWindowBeginOffset, int aWindowEndOffset) { if (!checkTypeSystem(aCas)) { @@ -260,21 +261,19 @@ public List lookupLazyDetails(CAS aCas, VID aVid, int aWindow // FIXME Should also handle relations that are only partially visible using // selectAnnotationsInWindow() - Map> relationLinks = getRelationLinks(aCas, aWindowBeginOffset, - aWindowEndOffset); + var relationLinks = getRelationLinks(aCas, aWindowBeginOffset, aWindowEndOffset); // if this is a governor for more than one dependent, avoid duplicate yield - List yieldDeps = new ArrayList<>(); + var yieldDeps = new ArrayList(); - AnnotationFS fs = ICasUtil.selectByAddr(aCas, AnnotationFS.class, aVid.getId()); + var fs = ICasUtil.selectByAddr(aCas, AnnotationFS.class, aVid.getId()); - Optional yield = renderYield(fs, relationLinks, yieldDeps); + var yield = renderYield(fs, relationLinks, yieldDeps); - List details = super.lookupLazyDetails(aCas, aVid, aWindowBeginOffset, - aWindowEndOffset); + var details = super.lookupLazyDetails(aCas, aVid, aWindowBeginOffset, aWindowEndOffset); if (yield.isPresent()) { - details.add(new VLazyDetailResult("Yield", yield.get())); + details.add(new VLazyDetailGroup(new VLazyDetail("Yield", yield.get()))); } return details; diff --git a/inception/inception-api-editor/src/main/java/de/tudarmstadt/ukp/inception/editor/AnnotationEditorExtension.java b/inception/inception-api-editor/src/main/java/de/tudarmstadt/ukp/inception/editor/AnnotationEditorExtension.java index 058a6279556..e29dc15afef 100644 --- a/inception/inception-api-editor/src/main/java/de/tudarmstadt/ukp/inception/editor/AnnotationEditorExtension.java +++ b/inception/inception-api-editor/src/main/java/de/tudarmstadt/ukp/inception/editor/AnnotationEditorExtension.java @@ -32,7 +32,7 @@ import de.tudarmstadt.ukp.inception.editor.action.AnnotationActionHandler; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.schema.adapter.AnnotationException; public interface AnnotationEditorExtension @@ -79,8 +79,8 @@ default void generateContextMenuItems(List aItems) // Do nothing by default } - default List lookupLazyDetails(SourceDocument aDocument, User aUser, - VID aVid, AnnotationFeature aFeature) + default List lookupLazyDetails(SourceDocument aDocument, User aUser, VID aVid, + AnnotationFeature aFeature) { return Collections.emptyList(); } diff --git a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailResult.java b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetail.java similarity index 94% rename from inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailResult.java rename to inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetail.java index d7488289c6d..22f104917da 100644 --- a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailResult.java +++ b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetail.java @@ -26,7 +26,7 @@ * action, e.g. hovering the mouse over an annotation. *

*/ -public class VLazyDetailResult +public class VLazyDetail implements Serializable { private static final long serialVersionUID = -2371700263138292842L; @@ -34,7 +34,7 @@ public class VLazyDetailResult private final String label; private final String value; - public VLazyDetailResult(String aLabel, String aValue) + public VLazyDetail(String aLabel, String aValue) { label = aLabel; value = aValue; diff --git a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailGroup.java b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailGroup.java new file mode 100644 index 00000000000..61f960b3079 --- /dev/null +++ b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VLazyDetailGroup.java @@ -0,0 +1,73 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package de.tudarmstadt.ukp.inception.rendering.vmodel; + +import static java.util.Arrays.asList; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +public class VLazyDetailGroup + implements Serializable + +{ + private static final long serialVersionUID = -1750783154850087688L; + + private final String title; + + private List details = new ArrayList<>(); + + public VLazyDetailGroup() + { + title = null; + } + + public VLazyDetailGroup(VLazyDetail... aDetails) + { + title = null; + if (aDetails != null) { + details.addAll(asList(aDetails)); + } + } + + public VLazyDetailGroup(String aTitle) + { + title = aTitle; + } + + public String getTitle() + { + return title; + } + + public List getDetails() + { + return details; + } + + public void setDetails(List aDetails) + { + details = aDetails; + } + + public void addDetail(VLazyDetail aDetail) + { + details.add(aDetail); + } +} diff --git a/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/rendering/Renderer.java b/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/rendering/Renderer.java index 9a9ef190363..375b7fe6635 100644 --- a/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/rendering/Renderer.java +++ b/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/rendering/Renderer.java @@ -37,7 +37,8 @@ import de.tudarmstadt.ukp.inception.rendering.vmodel.VCommentType; import de.tudarmstadt.ukp.inception.rendering.vmodel.VDocument; import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetail; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.rendering.vmodel.VObject; import de.tudarmstadt.ukp.inception.schema.adapter.TypeAdapter; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupportRegistry; @@ -108,20 +109,20 @@ default void renderRequiredFeatureErrors(List aFeatures, } } - default List lookupLazyDetails(CAS aCas, VID aVid, int windowBeginOffset, + default List lookupLazyDetails(CAS aCas, VID aVid, int windowBeginOffset, int windowEndOffset) { var fsr = getFeatureSupportRegistry(); var aFs = selectByAddr(aCas, AnnotationFS.class, aVid.getId()); - var details = new ArrayList(); + var details = new ArrayList(); generateLazyDetailsForFeaturesIncludedInHover(fsr, details, aFs); return details; } default void generateLazyDetailsForFeaturesIncludedInHover(FeatureSupportRegistry fsr, - List details, AnnotationFS aFs) + List details, AnnotationFS aFs) { for (var feature : getTypeAdapter().listFeatures()) { if (!feature.isEnabled() || !feature.isIncludeInHover() @@ -132,7 +133,9 @@ default void generateLazyDetailsForFeaturesIncludedInHover(FeatureSupportRegistr String text = defaultString( fsr.findExtension(feature).orElseThrow().renderFeatureValue(feature, aFs)); - details.add(new VLazyDetailResult(feature.getName(), text)); + var group = new VLazyDetailGroup(); + group.addDetail(new VLazyDetail(feature.getName(), text)); + details.add(group); } } } diff --git a/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/feature/FeatureSupport.java b/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/feature/FeatureSupport.java index 3ed8569e0b0..25b9cf1402c 100644 --- a/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/feature/FeatureSupport.java +++ b/inception/inception-api-schema/src/main/java/de/tudarmstadt/ukp/inception/schema/feature/FeatureSupport.java @@ -43,7 +43,7 @@ import de.tudarmstadt.ukp.inception.editor.action.AnnotationActionHandler; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.schema.adapter.AnnotationException; import de.tudarmstadt.ukp.inception.schema.adapter.TypeAdapter; @@ -234,7 +234,7 @@ default String renderFeatureValue(AnnotationFeature aFeature, String aLabel) return aLabel; } - default List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) + default List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { return Collections.emptyList(); } diff --git a/inception/inception-brat-editor/src/main/ts/src/annotator_ui/ResizeManager.ts b/inception/inception-brat-editor/src/main/ts/src/annotator_ui/ResizeManager.ts index 547bc42077f..806a9526636 100644 --- a/inception/inception-brat-editor/src/main/ts/src/annotator_ui/ResizeManager.ts +++ b/inception/inception-brat-editor/src/main/ts/src/annotator_ui/ResizeManager.ts @@ -122,7 +122,7 @@ export class ResizeManager { private handleMouseOver (e: Event): void { if (!(e instanceof MouseEvent) || !(e.target instanceof Element)) return - console.debug('ResizeManager.handleMouseOver') + // console.debug('ResizeManager.handleMouseOver') if (this.id === e.target.getAttribute('data-span-id')) { this.cancelAutoHide() diff --git a/inception/inception-brat-editor/src/main/ts/src/protocol/Protocol.ts b/inception/inception-brat-editor/src/main/ts/src/protocol/Protocol.ts index d3c576e1195..178a5b18349 100644 --- a/inception/inception-brat-editor/src/main/ts/src/protocol/Protocol.ts +++ b/inception/inception-brat-editor/src/main/ts/src/protocol/Protocol.ts @@ -82,7 +82,7 @@ export type MarkerDto = AnnotationMarkerDto | SentenceMarkerDto | TextMarkerDto; * @see */ export type RoleDto = [ - type: string, + type: number, target: VID ]; @@ -190,17 +190,6 @@ export type EntityTypeDto = { // hotkey: string; // deprecated? } -/** - * If the refText is set, no AJAX query is performed. If refText is set, then refId **MUST** also - * be set! - */ -export type NormalizationDto = [ - target: VID, - refDb?: string, - refId?: string, - refText?: string -] - /** * @deprecated Not used by server side */ @@ -247,7 +236,6 @@ export type SourceData = { text: string; comments: Array; entities: Array; - normalizations: Array; relations: Array; sentence_offsets: Array; token_offsets: Array; diff --git a/inception/inception-brat-editor/src/main/ts/src/visualizer/Arc.ts b/inception/inception-brat-editor/src/main/ts/src/visualizer/Arc.ts index 2c35c74227d..e61351b129a 100644 --- a/inception/inception-brat-editor/src/main/ts/src/visualizer/Arc.ts +++ b/inception/inception-brat-editor/src/main/ts/src/visualizer/Arc.ts @@ -38,16 +38,17 @@ * SOFTWARE. */ -import { MarkerType } from '../protocol/Protocol' +import { MarkerType, VID } from '../protocol/Protocol' import { EventDesc } from './EventDesc' +import { Role } from './Role' export class Arc { annotatorNotes = undefined comment = undefined - origin: string - target: string + origin: VID + target: VID dist: number - type: string + type: number shadowClass: string jumpHeight = 0 equiv = false @@ -57,7 +58,7 @@ export class Arc { marked: MarkerType hidden = false - constructor (eventDesc: EventDesc, role, dist: number, eventNo: string) { + constructor (eventDesc: EventDesc, role: Role, dist: number, eventNo: string) { this.origin = eventDesc.id this.target = role.targetId this.dist = dist diff --git a/inception/inception-brat-editor/src/main/ts/src/visualizer/Role.ts b/inception/inception-brat-editor/src/main/ts/src/visualizer/Role.ts index 8ec5abd228a..ba88ec6f1d5 100644 --- a/inception/inception-brat-editor/src/main/ts/src/visualizer/Role.ts +++ b/inception/inception-brat-editor/src/main/ts/src/visualizer/Role.ts @@ -39,6 +39,6 @@ */import { VID } from '../protocol/Protocol' export class Role { - type: string + type: number targetId: VID } diff --git a/inception/inception-brat-editor/src/main/ts/src/visualizer/Visualizer.ts b/inception/inception-brat-editor/src/main/ts/src/visualizer/Visualizer.ts index 105e42e98c5..f2b3138da97 100644 --- a/inception/inception-brat-editor/src/main/ts/src/visualizer/Visualizer.ts +++ b/inception/inception-brat-editor/src/main/ts/src/visualizer/Visualizer.ts @@ -523,33 +523,6 @@ export class Visualizer { }) // markedText } - applyNormalizations (normalizations: Array) { - if (!normalizations || !this.data) { - return - } - - for (const norm of normalizations) { - const target = norm[0] - const refdb = norm.length > 1 ? norm[1] : '#' // See Renderer.QUERY_LAYER_LEVEL_DETAILS - const refid = norm.length > 2 ? norm[2] : '' - const reftext = norm.length > 3 ? norm[3] : undefined - - const span = this.data.spans[target] - if (span) { - span.normalizations.push([refdb, refid, reftext]) - continue - } - - const arc = this.data.arcById[target] - if (arc) { - arc.normalizations.push([refdb, refid, reftext]) - continue - } - - this.dispatcher.post('messages', [[['Annotation ' + target + ' does not exist.', 'error']]]) - } - } - buildSpansFromEntities (documentText: string, entities: Array): Record { if (!entities) { return {} @@ -670,7 +643,7 @@ export class Visualizer { for (let i = 1; i < len; i++) { const id = okEquivSpans[i - 1] const tiggerId = okEquivSpans[i - 1] - const roles: Array = [[equiv[1], okEquivSpans[i]]] + const roles: Array = [[parseInt(equiv[1]), okEquivSpans[i]]] const eventDesc = eventDescs[equiv[0] + '*' + i] = new EventDesc(id, tiggerId, roles, EQUIV) eventDesc.leftSpans = okEquivSpans.slice(0, i) eventDesc.rightSpans = okEquivSpans.slice(i) @@ -1032,7 +1005,6 @@ export class Visualizer { this.sourceData.sentence_offsets, this.data.chunks) this.assignFragmentsToChunks(this.data.chunks, sortedFragments) this.data.arcs = this.assignArcsToSpans(this.data, this.data.eventDescs, this.data.spans) - this.applyNormalizations(this.sourceData.normalizations) this.applyHighlighting(this.data, this.sourceData) if (this.data.spans) { diff --git a/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts b/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts index e40a6c3941d..931102feb54 100644 --- a/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts +++ b/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts @@ -150,7 +150,7 @@ export class VisualizerUI { // to avoid clobbering on delayed response commentPopupNormInfoSeqId = 0 - normInfoSortFunction (a, b) { + compareLazyDetails (a, b) { // images at the top if (a[0].toLowerCase() === '') return -1 if (b[0].toLowerCase() === '') return 1 @@ -205,28 +205,30 @@ export class VisualizerUI { this.initiateNormalizationAjaxCall(arcId, arcRole) } - initiateNormalizationAjaxCall (id, type) { - // TODO: cache some number of most recent norm_get_data results - this.ajax.loadLazyDetails(id, type).then(response => { - if (response.exception) { - // TODO: response to error - } else if (!response.results) { - // TODO: response to missing key - } else { - // extend comment popup with normalization data - let norminfo = '' + initiateNormalizationAjaxCall (id: VID, type: number) { + this.ajax.loadLazyDetails(id, type).then(detailGroups => { + // extend comment popup with normalization data + let norminfo = '' + + for (const group of detailGroups) { + const details = group.details // flatten outer (name, attr, info) array (idx for sort) let infos: [string, string, number][] = [] let idx = 0 - for (let j = 0; j < response.results.length; j++) { - const label = response.results[j][0] as string - const value = response.results[j][1] as string - infos.push([label, value, idx++]) + for (let j = 0; j < details.length; j++) { + infos.push([details[j].label, details[j].value, idx++]) } // sort, prioritizing images (to get floats right) - infos = infos.sort(this.normInfoSortFunction) + infos = infos.sort(this.compareLazyDetails) + // generate HTML + if (group.title) { + norminfo += `
+ ${group.title} +
` + } + for (let i = 0; i < infos.length; i++) { const label = infos[i][0] as string let value = infos[i][1] as string @@ -241,18 +243,18 @@ export class VisualizerUI { } norminfo += `${Util.escapeHTML(label)} - : ${Util.escapeHTML(value)?.replace(/\n/g, '
')}
-
` + : ${Util.escapeHTML(value)?.replace(/\n/g, '
')}
+
` } } } + } - const drop = $('#lazy_details_drop_point') - if (drop) { - drop.html(norminfo) - } else { - console.log('Lazy details drop point not found!') // TODO XXX - } + const drop = $('#lazy_details_drop_point') + if (drop) { + drop.html(norminfo) + } else { + console.log('Lazy details drop point not found!') // TODO XXX } }) } diff --git a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/EditorAjaxRequestHandler.java b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/EditorAjaxRequestHandler.java index 13050ed5660..79a3ea94a95 100644 --- a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/EditorAjaxRequestHandler.java +++ b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/EditorAjaxRequestHandler.java @@ -41,7 +41,7 @@ public interface EditorAjaxRequestHandler String PARAM_OFFSETS = "offsets"; String PARAM_TARGET_SPAN_ID = "targetSpanId"; String PARAM_ORIGIN_SPAN_ID = "originSpanId"; - String PARAM_TYPE = "type"; + String PARAM_LAYER_ID = "layerId"; String ACTION_CONTEXT_MENU = "contextMenu"; diff --git a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/LazyDetailsHandler.java b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/LazyDetailsHandler.java index b22f7530900..d562def0532 100644 --- a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/LazyDetailsHandler.java +++ b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/actions/LazyDetailsHandler.java @@ -28,8 +28,7 @@ import de.tudarmstadt.ukp.inception.diam.editor.config.DiamAutoConfig; import de.tudarmstadt.ukp.inception.diam.editor.lazydetails.LazyDetailsLookupService; import de.tudarmstadt.ukp.inception.diam.model.ajax.AjaxResponse; -import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; +import de.tudarmstadt.ukp.inception.diam.model.ajax.DefaultAjaxResponse; /** *

@@ -59,19 +58,19 @@ public String getCommand() public AjaxResponse handle(AjaxRequestTarget aTarget, Request aRequest) { try { - AnnotationPageBase page = (AnnotationPageBase) aTarget.getPage(); + var page = (AnnotationPageBase) aTarget.getPage(); CasProvider casProvider = () -> page.getEditorCas(); // Parse annotation ID if present in request - final VID paramId = getVid(aRequest); + var paramId = getVid(aRequest); + var state = page.getModelObject(); + var details = lazyDetailsLookupService.lookupLazyDetails( + aRequest.getRequestParameters(), paramId, casProvider, state.getDocument(), + state.getUser(), state.getWindowBeginOffset(), state.getWindowEndOffset()); + attachResponse(aTarget, aRequest, toInterpretableJsonString(details)); - AnnotatorState state = page.getModelObject(); - var result = lazyDetailsLookupService.lookupLazyDetails(aRequest.getRequestParameters(), - paramId, casProvider, state.getDocument(), state.getUser(), - state.getWindowBeginOffset(), state.getWindowEndOffset()); - attachResponse(aTarget, aRequest, toInterpretableJsonString(result)); - return result; + return new DefaultAjaxResponse(COMMAND); } catch (Exception e) { return handleError("Unable to load lazy details", e); diff --git a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailQuery.java b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetail.java similarity index 94% rename from inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailQuery.java rename to inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetail.java index 9d49b5ee1bc..7804b996349 100644 --- a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailQuery.java +++ b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetail.java @@ -24,12 +24,12 @@ @JsonSerialize(using = BeanAsArraySerializer.class) @JsonPropertyOrder(value = { "label", "value" }) -public class LazyDetailQuery +public class LazyDetail { private String label; private String value; - public LazyDetailQuery(String aLabel, String aValue) + public LazyDetail(String aLabel, String aValue) { label = aLabel; value = aValue; diff --git a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailGroup.java b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailGroup.java new file mode 100644 index 00000000000..13c4c2c0cb7 --- /dev/null +++ b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailGroup.java @@ -0,0 +1,51 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package de.tudarmstadt.ukp.inception.diam.editor.lazydetails; + +import java.util.List; + +public class LazyDetailGroup +{ + private String title; + private List details; + + public LazyDetailGroup(String aTitle) + { + title = aTitle; + } + + public String getTitle() + { + return title; + } + + public void setTitle(String aTitle) + { + title = aTitle; + } + + public List getDetails() + { + return details; + } + + public void setDetails(List aDetails) + { + details = aDetails; + } +} diff --git a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupService.java b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupService.java index 24ebfe39e86..d990a35808d 100644 --- a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupService.java +++ b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupService.java @@ -18,6 +18,7 @@ package de.tudarmstadt.ukp.inception.diam.editor.lazydetails; import java.io.IOException; +import java.util.List; import org.apache.wicket.request.IRequestParameters; @@ -29,8 +30,9 @@ public interface LazyDetailsLookupService { - LazyDetailsResponse lookupLazyDetails(IRequestParameters request, VID paramId, CasProvider aCas, - SourceDocument aSourceDocument, User aUser, int windowBeginOffset, int windowEndOffset) + List lookupLazyDetails(IRequestParameters request, VID paramId, + CasProvider aCas, SourceDocument aSourceDocument, User aUser, int windowBeginOffset, + int windowEndOffset) throws AnnotationException, IOException; } diff --git a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupServiceImpl.java b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupServiceImpl.java index fbd25d52609..f7980828b95 100644 --- a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupServiceImpl.java +++ b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsLookupServiceImpl.java @@ -18,8 +18,7 @@ package de.tudarmstadt.ukp.inception.diam.editor.lazydetails; import static de.tudarmstadt.ukp.clarin.webanno.support.uima.ICasUtil.selectFsByAddr; -import static de.tudarmstadt.ukp.inception.diam.editor.actions.EditorAjaxRequestHandler.PARAM_TYPE; -import static de.tudarmstadt.ukp.inception.diam.editor.actions.LazyDetailsHandler.COMMAND; +import static de.tudarmstadt.ukp.inception.diam.editor.actions.EditorAjaxRequestHandler.PARAM_LAYER_ID; import static java.util.Collections.emptyList; import static java.util.stream.Collectors.toList; @@ -40,7 +39,7 @@ import de.tudarmstadt.ukp.inception.diam.editor.config.DiamAutoConfig; import de.tudarmstadt.ukp.inception.editor.AnnotationEditorExtensionRegistry; import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; import de.tudarmstadt.ukp.inception.schema.adapter.AnnotationException; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupportRegistry; @@ -71,42 +70,47 @@ public LazyDetailsLookupServiceImpl(AnnotationSchemaService aAnnotationService, } @Override - public LazyDetailsResponse lookupLazyDetails(IRequestParameters request, VID aVid, + public List lookupLazyDetails(IRequestParameters request, VID aVid, CasProvider aCas, SourceDocument aDocument, User aUser, int windowBeginOffset, int windowEndOffset) throws AnnotationException, IOException { - var response = new LazyDetailsResponse(COMMAND); - - var layerParam = request.getParameterValue(PARAM_TYPE); + var layerParam = request.getParameterValue(PARAM_LAYER_ID); if (layerParam.isEmpty()) { - return response; + return emptyList(); } var cas = aCas.get(); var layer = findLayer(aVid, cas, layerParam, aDocument.getProject()); - var details = new ArrayList(); + var detailGroups = new ArrayList(); lookupLayerLevelDetails(aVid, cas, windowBeginOffset, windowEndOffset, layer) - .forEach(details::add); + .forEach(detailGroups::add); for (var feature : annotationService.listAnnotationFeature(layer)) { - lookupExtensionLevelDetails(aVid, aDocument, cas, aUser, feature).forEach(details::add); + lookupExtensionLevelDetails(aVid, aDocument, cas, aUser, feature) + .forEach(detailGroups::add); // FIXME: We would like to get feature-level lazy details for the annotation label // provided by the extension or said otherwise, we want to e.g. get KB details for a // concept // feature suggestion... this worked when we used the "query", but now is broken! - lookupFeatureLevelDetail(aVid, cas, feature).forEach(details::add); + lookupFeatureLevelDetail(aVid, cas, feature).forEach(detailGroups::add); } - response.setResults(details.stream() // - .map(d -> new LazyDetailQuery(d.getLabel(), d.getValue())) // - .collect(toList())); + return detailGroups.stream() // + .map(this::toExternalForm) // + .collect(toList()); + } - return response; + private LazyDetailGroup toExternalForm(VLazyDetailGroup aGroup) + { + var extGroup = new LazyDetailGroup(aGroup.getTitle()); + extGroup.setDetails(aGroup.getDetails().stream() + .map(d -> new LazyDetail(d.getLabel(), d.getValue())).collect(toList())); + return extGroup; } private AnnotationLayer findLayer(VID aVid, CAS aCas, StringValue aLayerParam, Project project) @@ -123,7 +127,7 @@ private AnnotationLayer findLayer(VID aVid, CAS aCas, StringValue aLayerParam, P return annotationService.findLayer(project, fs); } - private List lookupFeatureLevelDetail(VID aVid, CAS aCas, + private List lookupFeatureLevelDetail(VID aVid, CAS aCas, AnnotationFeature aFeature) { if (aVid.isSynthetic()) { @@ -135,7 +139,7 @@ private List lookupFeatureLevelDetail(VID aVid, CAS aCas, return ext.lookupLazyDetails(aFeature, ext.getFeatureValue(aFeature, fs)); } - private List lookupLayerLevelDetails(VID aVid, CAS aCas, + private List lookupLayerLevelDetails(VID aVid, CAS aCas, int windowBeginOffset, int windowEndOffset, AnnotationLayer aLayer) { if (aVid.isSynthetic()) { @@ -148,7 +152,7 @@ private List lookupLayerLevelDetails(VID aVid, CAS aCas, } - private List lookupExtensionLevelDetails(VID aVid, SourceDocument aDocument, + private List lookupExtensionLevelDetails(VID aVid, SourceDocument aDocument, CAS aCas, User aUser, AnnotationFeature aFeature) throws IOException { @@ -156,7 +160,7 @@ private List lookupExtensionLevelDetails(VID aVid, SourceDocu return emptyList(); } - var result = new ArrayList(); + var result = new ArrayList(); var extension = extensionRegistry.getExtension(aVid.getExtensionId()); var value = extension.getFeatureValue(aDocument, aUser, aCas, aVid, aFeature); featureSupportRegistry.findExtension(aFeature).orElseThrow() diff --git a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsResponse.java b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsResponse.java index c7db2ae9e44..374030732e8 100644 --- a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsResponse.java +++ b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/editor/lazydetails/LazyDetailsResponse.java @@ -22,34 +22,23 @@ import de.tudarmstadt.ukp.inception.diam.model.ajax.AjaxResponse; -/** - * Response for the {@code normData} command. - * - * This is essentially present in brat, but there {@code results} would be a member of an array - * called {@code value}. We simplified this a bit here and in {@code visualizer_ui.js}. - */ public class LazyDetailsResponse extends AjaxResponse { - private List results = new ArrayList<>(); + private List groups = new ArrayList<>(); public LazyDetailsResponse(String aAction) { super(aAction); } - public List getResults() - { - return results; - } - - public void setResults(List aResult) + public List getGroups() { - results = aResult; + return groups; } - public void addResult(LazyDetailQuery aResult) + public void setGroups(List aGroups) { - results.add(aResult); + groups = aGroups; } } diff --git a/inception/inception-diam/src/main/ts/src/diam/DiamAjaxImpl.ts b/inception/inception-diam/src/main/ts/src/diam/DiamAjaxImpl.ts index 731b4b2adfe..c3a9ec6a46a 100644 --- a/inception/inception-diam/src/main/ts/src/diam/DiamAjaxImpl.ts +++ b/inception/inception-diam/src/main/ts/src/diam/DiamAjaxImpl.ts @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { DiamAjax, Offsets, VID } from '@inception-project/inception-js-api' +import { Annotation, DiamAjax, Offsets, VID, LazyDetailGroup } from '@inception-project/inception-js-api' import { DiamLoadAnnotationsOptions, DiamSelectAnnotationOptions } from '@inception-project/inception-js-api/src/diam/DiamAjax' declare const Wicket: any @@ -229,14 +229,28 @@ export class DiamAjaxImpl implements DiamAjax { }) } - loadLazyDetails (id: VID, type: string): Promise { + loadLazyDetails (idOrAnnotation: VID | Annotation, optionaLayerId?: number): Promise { const token = DiamAjaxImpl.newToken() + let id : VID + if (Object.prototype.hasOwnProperty.call(idOrAnnotation, 'vid')) { + id = (idOrAnnotation as Annotation).vid + } else { + id = idOrAnnotation as VID + } + + let layerId : number + if (optionaLayerId) { + layerId = optionaLayerId + } else { + layerId = (idOrAnnotation as Annotation).layer.id + } + const params: Record = { action: 'normData', token, id, - type + layerId } return new Promise((resolve, reject) => { @@ -251,12 +265,26 @@ export class DiamAjaxImpl implements DiamAjax { return } - resolve(result) + const detailGroups : LazyDetailGroup[] = [] + for (const detailGroup of result) { + const group : LazyDetailGroup = { + title: detailGroup.title, + details: [] + } + + for (const detail of detailGroup.details as []) { + group.details.push({ label: detail[0], value: detail[1] }) + } + + detailGroups.push(group) + } + + resolve(detailGroups) }], eh: [() => { DiamAjaxImpl.clearResult(token) - reject(new Error('Unable to load annotation')) + reject(new Error('Unable to load lazy details')) }] }) }) diff --git a/inception/inception-feature-lookup/src/main/java/de/tudarmstadt/ukp/inception/feature/lookup/LookupFeatureSupport.java b/inception/inception-feature-lookup/src/main/java/de/tudarmstadt/ukp/inception/feature/lookup/LookupFeatureSupport.java index 42ef6a0a6cb..8fccf5284df 100644 --- a/inception/inception-feature-lookup/src/main/java/de/tudarmstadt/ukp/inception/feature/lookup/LookupFeatureSupport.java +++ b/inception/inception-feature-lookup/src/main/java/de/tudarmstadt/ukp/inception/feature/lookup/LookupFeatureSupport.java @@ -21,7 +21,6 @@ import static org.apache.commons.lang3.StringUtils.isNotBlank; import java.io.IOException; -import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Optional; @@ -43,7 +42,8 @@ import de.tudarmstadt.ukp.inception.feature.lookup.config.LookupServiceProperties; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetail; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.schema.feature.FeatureEditor; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupport; import de.tudarmstadt.ukp.inception.schema.feature.FeatureType; @@ -235,19 +235,19 @@ public void generateFeature(TypeSystemDescription aTSD, TypeDescription aTD, } @Override - public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { if (aValue instanceof LookupEntry) { var handle = (LookupEntry) aValue; - var result = new ArrayList(); - result.add(new VLazyDetailResult("Label", handle.getUiLabel())); + var result = new VLazyDetailGroup(); + result.addDetail(new VLazyDetail("Label", handle.getUiLabel())); if (isNotBlank(handle.getDescription())) { - result.add(new VLazyDetailResult("Description", handle.getDescription())); + result.addDetail(new VLazyDetail("Description", handle.getDescription())); } - return result; + return asList(result); } return Collections.emptyList(); diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte index 77d394c00b5..7b6dbc03698 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte @@ -18,7 +18,7 @@

@@ -92,6 +93,16 @@ {#each annotation.comments as comment}
{comment.comment}
{/each} + {#if detailGroups} + {#each detailGroups as detailGroup} + {#if detailGroup.title} +
{detailGroup.title}
+ {/if} + {#each detailGroup.details as detail} +
{detail.label}: {detail.value}
+ {/each} + {/each} + {/if}
{/if} diff --git a/inception/inception-image/src/main/java/de/tudarmstadt/ukp/inception/image/feature/ImageFeatureSupport.java b/inception/inception-image/src/main/java/de/tudarmstadt/ukp/inception/image/feature/ImageFeatureSupport.java index 853e77fa916..4f8f3c8cd3e 100644 --- a/inception/inception-image/src/main/java/de/tudarmstadt/ukp/inception/image/feature/ImageFeatureSupport.java +++ b/inception/inception-image/src/main/java/de/tudarmstadt/ukp/inception/image/feature/ImageFeatureSupport.java @@ -44,7 +44,8 @@ import de.tudarmstadt.ukp.inception.image.config.ImageSupportAutoConfiguration; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetail; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.schema.feature.FeatureEditor; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupport; import de.tudarmstadt.ukp.inception.schema.feature.FeatureType; @@ -197,7 +198,7 @@ public Serializable wrapFeatureValue(AnnotationFeature aFeature, CAS aCAS, Objec } @Override - public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { if (aValue instanceof String) { var url = (String) aValue; @@ -206,7 +207,7 @@ public List lookupLazyDetails(AnnotationFeature aFeature, Obj return emptyList(); } - return asList(new VLazyDetailResult("", url)); + return asList(new VLazyDetailGroup(new VLazyDetail("", url))); } return Collections.emptyList(); diff --git a/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts b/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts index 582145d1b77..46cc916c91a 100644 --- a/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts +++ b/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts @@ -15,9 +15,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { Offsets, VID } from '../model' - -declare const Wicket: any +import { LazyDetail } from '@inception-project/inception-js-api/src/model/LazyDetail' +import { Annotation, LazyDetailGroup, Offsets, VID } from '../model' export type DiamLoadAnnotationsOptions = { format?: string, @@ -39,17 +38,42 @@ export interface DiamAjax { */ scrollTo(args: { id?: VID, offset?: Offsets }): void; + /** + * Delete the annotation with the given VID. + * + * @param id the VID of the annotation to delete. + */ deleteAnnotation(id: VID): void; + /** + * Create a new span annotation at the given location. + * + * @param offsets the offsets of the annotation. + * + * NOTE: Currently only a single element is supported in the offsets array. + */ createSpanAnnotation(offsets: Array, spanText?: string): void; + /** + * Move a new span annotation to a new location. + * + * @param offsets the offsets of the annotation. + * + * NOTE: Currently only a single element is supported in the offsets array. + */ moveSpanAnnotation(id: VID, offsets: Array): void; createRelationAnnotation(originSpanId: VID, targetSpanId: VID): void; loadAnnotations(options?: DiamLoadAnnotationsOptions): Promise; - loadLazyDetails(id: VID, type: string): Promise; + /** + * Loads the lazy details for the given annotation + * + * @param ann either the VID or the annotation itself + * @param layerId the layer ID of the annnotation if the annotation is specified as a VID + */ + loadLazyDetails(ann: VID | Annotation, layerId?: number): Promise; loadPreferences (key: string): Promise; diff --git a/inception/inception-js-api/src/main/ts/src/model/LazyDetail.ts b/inception/inception-js-api/src/main/ts/src/model/LazyDetail.ts new file mode 100644 index 00000000000..2a283ab2224 --- /dev/null +++ b/inception/inception-js-api/src/main/ts/src/model/LazyDetail.ts @@ -0,0 +1,21 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +export interface LazyDetail { + label: string + value: string +} diff --git a/inception/inception-js-api/src/main/ts/src/model/LazyDetailGroup.ts b/inception/inception-js-api/src/main/ts/src/model/LazyDetailGroup.ts new file mode 100644 index 00000000000..180432faeb8 --- /dev/null +++ b/inception/inception-js-api/src/main/ts/src/model/LazyDetailGroup.ts @@ -0,0 +1,23 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +import { LazyDetail } from "@inception-project/inception-js-api/src/model/LazyDetail" + +export interface LazyDetailGroup { + title: string + details: LazyDetail[] +} diff --git a/inception/inception-js-api/src/main/ts/src/model/index.ts b/inception/inception-js-api/src/main/ts/src/model/index.ts index 12928449271..b8264a6b5ba 100644 --- a/inception/inception-js-api/src/main/ts/src/model/index.ts +++ b/inception/inception-js-api/src/main/ts/src/model/index.ts @@ -26,3 +26,5 @@ export { TextMarker } from './TextMarker' export { Argument } from './Argument' export { Comment } from './Comment' export { Layer } from './Layer' +export { LazyDetail } from './LazyDetail' +export { LazyDetailGroup } from './LazyDetailGroup' diff --git a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/RecommendationEditorExtension.java b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/RecommendationEditorExtension.java index c7e4e949d7b..cf7d1de73d2 100644 --- a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/RecommendationEditorExtension.java +++ b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/RecommendationEditorExtension.java @@ -24,6 +24,7 @@ import static de.tudarmstadt.ukp.clarin.webanno.model.Mode.ANNOTATION; import static de.tudarmstadt.ukp.inception.recommendation.api.model.LearningRecordChangeLocation.MAIN_EDITOR; import static de.tudarmstadt.ukp.inception.recommendation.api.model.LearningRecordType.ACCEPTED; +import static java.util.Arrays.asList; import static java.util.Collections.emptyList; import static org.apache.commons.lang3.StringUtils.defaultIfBlank; import static org.apache.wicket.event.Broadcast.BREADTH; @@ -69,7 +70,8 @@ import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.selection.SelectionChangedEvent; import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetail; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; import de.tudarmstadt.ukp.inception.schema.adapter.AnnotationException; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupportRegistry; @@ -349,7 +351,7 @@ public V getFeatureValue(SourceDocument aDocument, User aUser, CAS aCas, VID } @Override - public List lookupLazyDetails(SourceDocument aDocument, User aUser, VID aVid, + public List lookupLazyDetails(SourceDocument aDocument, User aUser, VID aVid, AnnotationFeature aFeature) { var predictions = recommendationService.getPredictions(aUser, aDocument.getProject()); @@ -360,7 +362,8 @@ public List lookupLazyDetails(SourceDocument aDocument, User var vid = VID.parse(aVid.getExtensionPayload()); var representative = predictions.getPredictionByVID(aDocument, vid); - if (representative.isEmpty()) { + if (representative.isEmpty() + || !representative.get().getFeature().equals(aFeature.getName())) { return emptyList(); } @@ -381,7 +384,7 @@ public List lookupLazyDetails(SourceDocument aDocument, User var sortedByScore = group.get().bestSuggestionsByFeatureAndLabel(pref, aFeature.getName(), label); - var details = new ArrayList(); + var details = new VLazyDetailGroup(); for (var ao : sortedByScore) { var items = new ArrayList(); if (ao.getScore() != -1) { @@ -393,10 +396,10 @@ public List lookupLazyDetails(SourceDocument aDocument, User if (pref.isShowAllPredictions() && !ao.isVisible()) { items.add("Hidden: " + ao.getReasonForHiding()); } - details.add(new VLazyDetailResult(ao.getRecommenderName(), - "\n" + String.join("\n", items))); + details.addDetail( + new VLazyDetail(ao.getRecommenderName(), "\n" + String.join("\n", items))); } - return details; + return asList(details); } } diff --git a/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/curation/component/BratSuggestionVisualizer.java b/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/curation/component/BratSuggestionVisualizer.java index 1e7d2b638d0..5406ab487cc 100644 --- a/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/curation/component/BratSuggestionVisualizer.java +++ b/inception/inception-ui-curation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/curation/component/BratSuggestionVisualizer.java @@ -388,7 +388,8 @@ public AjaxResponse handle(AjaxRequestTarget aTarget, Request aRequest) casProvider, state.getDocument(), segment.getUser(), state.getWindowBeginOffset(), state.getWindowEndOffset()); attachResponse(aTarget, aRequest, toInterpretableJsonString(result)); - return result; + + return new DefaultAjaxResponse(LazyDetailsHandler.COMMAND); } catch (Exception e) { return handleError("Unable to load lazy details", e); diff --git a/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/ConceptFeatureSupport.java b/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/ConceptFeatureSupport.java index f2b8d450a07..48c25fe4754 100644 --- a/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/ConceptFeatureSupport.java +++ b/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/ConceptFeatureSupport.java @@ -21,7 +21,6 @@ import static org.apache.commons.lang3.StringUtils.isNotBlank; import java.io.IOException; -import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Optional; @@ -44,7 +43,8 @@ import de.tudarmstadt.ukp.inception.kb.graph.KBHandle; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetail; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.schema.feature.FeatureEditor; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupport; import de.tudarmstadt.ukp.inception.schema.feature.FeatureType; @@ -260,18 +260,18 @@ public void generateFeature(TypeSystemDescription aTSD, TypeDescription aTD, } @Override - public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { if (aValue instanceof KBHandle) { var handle = (KBHandle) aValue; - var result = new ArrayList(); - result.add(new VLazyDetailResult("Label", handle.getUiLabel())); + var result = new VLazyDetailGroup(handle.getIdentifier()); + result.addDetail(new VLazyDetail("Label", handle.getUiLabel())); if (isNotBlank(handle.getDescription())) { - result.add(new VLazyDetailResult("Description", handle.getDescription())); + result.addDetail(new VLazyDetail("Description", handle.getDescription())); } - return result; + return asList(result); } return Collections.emptyList(); diff --git a/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/MultiValueConceptFeatureSupport.java b/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/MultiValueConceptFeatureSupport.java index 18eb3eff1aa..ac5f923bbfe 100644 --- a/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/MultiValueConceptFeatureSupport.java +++ b/inception/inception-ui-kb/src/main/java/de/tudarmstadt/ukp/inception/ui/kb/feature/MultiValueConceptFeatureSupport.java @@ -51,7 +51,8 @@ import de.tudarmstadt.ukp.inception.kb.graph.KBHandle; import de.tudarmstadt.ukp.inception.rendering.editorstate.AnnotatorState; import de.tudarmstadt.ukp.inception.rendering.editorstate.FeatureState; -import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailResult; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetail; +import de.tudarmstadt.ukp.inception.rendering.vmodel.VLazyDetailGroup; import de.tudarmstadt.ukp.inception.schema.adapter.IllegalFeatureValueException; import de.tudarmstadt.ukp.inception.schema.feature.FeatureEditor; import de.tudarmstadt.ukp.inception.schema.feature.FeatureSupport; @@ -329,24 +330,24 @@ public String renderFeatureValue(AnnotationFeature aFeature, FeatureStructure aF } @Override - public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) + public List lookupLazyDetails(AnnotationFeature aFeature, Object aValue) { - var result = new ArrayList(); + var result = new VLazyDetailGroup(); if (aValue instanceof Iterable) { var handles = (Iterable) aValue; for (var h : handles) { if (h instanceof KBHandle) { var handle = (KBHandle) h; - result.add(new VLazyDetailResult("Label", handle.getUiLabel())); + result.addDetail(new VLazyDetail("Label", handle.getUiLabel())); if (isNotBlank(handle.getDescription())) { - result.add(new VLazyDetailResult("Description", handle.getDescription())); + result.addDetail(new VLazyDetail("Description", handle.getDescription())); } } } } - return result; + return asList(result); } } From a7a30904c6c483aa047726bcd9bcb19b1ec22db5 Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Thu, 10 Aug 2023 22:17:50 +0200 Subject: [PATCH 05/17] #4139 - Reusable popover component for annotation editors - Implemented reusable popup - Use it in the Apache Annotator editor and the annotation sidebar --- .../src/main/ts_template/package-lock.json | 26 +- .../src/main/ts_template/package-lock.json | 537 ++++++++++++--- .../main/ts/src/AnnotationsByLabelList.svelte | 12 + .../ts/src/AnnotationsByPositionList.svelte | 163 +++-- .../main/ts/src/DiamAnnotationBrowser.svelte | 12 +- .../src/main/ts_template/package-lock.json | 616 ++++++++++++++--- .../src/main/ts_template/package-lock.json | 433 ++++++++++-- .../src/main/ts_template/package-lock.json | 537 ++++++++++++--- .../AnnotationDetailPopOver.svelte | 137 ---- .../apache-annotator/ApacheAnnotatorEditor.ts | 2 +- .../ApacheAnnotatorVisualizer.ts | 13 +- .../src/main/ts_template/package.json | 6 +- .../src/main/ts_template/package-lock.json | 431 ++++++++++-- .../src/main/ts_template/package-lock.json | 511 ++++++++++++-- .../inception-js-api/src/main/ts/build.mjs | 22 +- .../src/main/ts/esbuild-runner.config.js | 7 + .../main/ts/src/event/AnnotationOutEvent.ts | 33 + .../src/main/ts/src/event/index.ts | 1 + .../src/widget/AnnotationDetailPopOver.svelte | 214 ++++++ .../src/main/ts_template/package-lock.json | 403 +++++++++-- .../src/main/ts_template/package.json | 6 +- .../src/main/ts_template/package-lock.json | 427 ++++++++++-- .../src/main/ts/build.mjs | 22 +- .../src/main/ts/esbuild-runner.config.js | 32 + .../src/main/ts_template/package-lock.json | 623 ++++++++++++++++-- .../src/main/ts_template/package.json | 3 + .../src/main/ts_template/package-lock.json | 261 ++++++-- .../src/main/ts_template/package-lock.json | 261 ++++++-- .../src/main/ts_template/package-lock.json | 261 ++++++-- .../src/main/ts_template/package-lock.json | 8 +- .../src/main/ts_template/package-lock.json | 12 +- 31 files changed, 4967 insertions(+), 1065 deletions(-) delete mode 100644 inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte create mode 100644 inception/inception-js-api/src/main/ts/src/event/AnnotationOutEvent.ts create mode 100644 inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte create mode 100644 inception/inception-pdf-editor2/src/main/ts/esbuild-runner.config.js diff --git a/inception/inception-bootstrap/src/main/ts_template/package-lock.json b/inception/inception-bootstrap/src/main/ts_template/package-lock.json index 115abfe6629..26d088d863d 100644 --- a/inception/inception-bootstrap/src/main/ts_template/package-lock.json +++ b/inception/inception-bootstrap/src/main/ts_template/package-lock.json @@ -599,9 +599,9 @@ } }, "node_modules/immutable": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", - "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", + "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", "dev": true }, "node_modules/is-binary-path": { @@ -617,9 +617,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -713,12 +713,12 @@ } }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", "dev": true, "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -730,9 +730,9 @@ } }, "node_modules/sass": { - "version": "1.63.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.6.tgz", - "integrity": "sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==", + "version": "1.65.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", + "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/inception/inception-brat-editor/src/main/ts_template/package-lock.json b/inception/inception-brat-editor/src/main/ts_template/package-lock.json index 0f88badff2f..73a2fefcbdd 100644 --- a/inception/inception-brat-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-brat-editor/src/main/ts_template/package-lock.json @@ -118,7 +118,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -126,7 +126,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -148,7 +148,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -246,7 +246,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/semver": { @@ -560,6 +560,24 @@ "node": ">=8" } }, + "../../../../inception-diam/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-diam/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -1138,26 +1156,26 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1219,13 +1237,13 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -1301,25 +1319,28 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -1443,7 +1464,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -1454,7 +1475,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -1552,7 +1573,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -1963,7 +1984,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -2085,7 +2106,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -2675,6 +2696,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-diam/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-diam/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-diam/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -2905,11 +2953,11 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3023,7 +3071,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -3612,7 +3660,8 @@ "license": "Apache-2.0", "dependencies": { "@stomp/stompjs": "^6.1.2", - "@types/stompjs": "^2.3.5" + "@types/stompjs": "^2.3.5", + "bootstrap": "5.3.0" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -3623,6 +3672,7 @@ "esbuild": "~0.16.17", "esbuild-runner-plugins": "^2.3.0-plugins.0", "esbuild-sass-plugin": "~2.5.0", + "esbuild-svelte": "^0.7.3", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -3633,6 +3683,8 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", + "svelte": "^3.55.0", + "svelte-preprocess": "^5.0.0", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -3676,7 +3728,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -3684,7 +3736,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -3706,7 +3758,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -3743,6 +3795,11 @@ "dev": true, "license": "BSD-3-Clause" }, + "../../../../inception-js-api/src/main/ts/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "dev": true, @@ -3775,6 +3832,15 @@ "node": ">= 8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/@popperjs/core": { + "version": "2.11.8", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/@stomp/stompjs": { "version": "6.1.2", "license": "Apache-2.0" @@ -3800,7 +3866,12 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", + "license": "MIT" + }, + "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { + "version": "2.0.6", + "dev": true, "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/semver": { @@ -4114,6 +4185,24 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -4207,6 +4296,23 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { + "version": "5.3.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.7" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -4232,6 +4338,14 @@ "dev": true, "license": "ISC" }, + "../../../../inception-js-api/src/main/ts/node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/buffer-from": { "version": "1.1.2", "dev": true, @@ -4474,6 +4588,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/diff": { "version": "5.0.0", "dev": true, @@ -4598,6 +4720,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/es6-promise": { + "version": "3.3.1", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { "version": "0.16.17", "dev": true, @@ -4663,6 +4790,18 @@ "sass": "^1.56.1" } }, + "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { + "version": "0.7.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/escalade": { "version": "3.1.1", "dev": true, @@ -4683,26 +4822,26 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -4764,13 +4903,13 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -4857,25 +4996,28 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -4999,7 +5141,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -5010,7 +5152,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -5108,7 +5250,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -5515,7 +5657,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -5637,7 +5779,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -5956,6 +6098,17 @@ "node": ">=10" } }, + "../../../../inception-js-api/src/main/ts/node_modules/magic-string": { + "version": "0.27.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/make-dir": { "version": "3.1.0", "dev": true, @@ -6013,6 +6166,14 @@ "node": ">=8.6" } }, + "../../../../inception-js-api/src/main/ts/node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -6232,6 +6393,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -6462,11 +6650,11 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -6579,8 +6767,41 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sander": { + "version": "0.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -6658,6 +6879,20 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sorcery": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/source-map": { "version": "0.6.1", "dev": true, @@ -6758,6 +6993,17 @@ "node": ">=4" } }, + "../../../../inception-js-api/src/main/ts/node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -6791,6 +7037,75 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte": { + "version": "3.59.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte-preprocess": { + "version": "5.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "../../../../inception-js-api/src/main/ts/node_modules/temp-dir": { "version": "1.0.0", "dev": true, @@ -7261,7 +7576,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -7269,7 +7584,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -7291,7 +7606,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -7743,6 +8058,24 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -8337,26 +8670,26 @@ } }, "node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -8418,13 +8751,13 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -8511,25 +8844,28 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -8647,7 +8983,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -8658,7 +8994,7 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -8756,7 +9092,7 @@ "license": "MIT" }, "node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -9167,7 +9503,7 @@ } }, "node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT" }, @@ -9288,7 +9624,7 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -9897,6 +10233,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -10122,11 +10485,11 @@ } }, "node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -10273,7 +10636,7 @@ } }, "node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-diam-editor/src/main/ts/src/AnnotationsByLabelList.svelte b/inception/inception-diam-editor/src/main/ts/src/AnnotationsByLabelList.svelte index bbc2bec52db..13d913bc191 100644 --- a/inception/inception-diam-editor/src/main/ts/src/AnnotationsByLabelList.svelte +++ b/inception/inception-diam-editor/src/main/ts/src/AnnotationsByLabelList.svelte @@ -20,6 +20,8 @@ import { AnnotatedText, Annotation, + AnnotationOverEvent, + AnnotationOutEvent, DiamAjax, Relation, Span, @@ -91,6 +93,13 @@ function scrollTo(ann: Annotation) { ajaxClient.scrollTo({ id: ann.vid }); } + + function mouseOverAnnotation(event: MouseEvent, annotation: Annotation) { + event.target.dispatchEvent(new AnnotationOverEvent(annotation, event)) + } + function mouseOutAnnotation(event: MouseEvent, annotation: Annotation) { + event.target.dispatchEvent(new AnnotationOutEvent(annotation, event)) + } {#if !data} @@ -141,8 +150,11 @@
    {#if groupedAnnotations[label]} {#each groupedAnnotations[label] as ann} +
  • mouseOverAnnotation(ev, ann)} + on:mouseout={ev => mouseOutAnnotation(ev, ann)} >
    - let groupedRelations: Record - let sortedSpanOffsets: Offsets[] + let groupedSpans: Record; + let groupedRelations: Record; + let sortedSpanOffsets: Offsets[]; - $: groupedSpans = groupSpansByPosition(data) - $: groupedRelations = groupRelationsByPosition(data) - $: sortedSpanOffsets = uniqueOffsets(data) + $: groupedSpans = groupSpansByPosition(data); + $: groupedRelations = groupRelationsByPosition(data); + $: sortedSpanOffsets = uniqueOffsets(data); - function scrollToSpan (span: Span) { + function scrollToSpan(span: Span) { ajaxClient.scrollTo({ id: span.vid, offset: span.offsets[0] }); } - function scrollToRelation (relation: Relation) { + function scrollToRelation(relation: Relation) { ajaxClient.scrollTo({ id: relation.vid }); } + + function mouseOverAnnotation(event: MouseEvent, annotation: Annotation) { + event.target.dispatchEvent(new AnnotationOverEvent(annotation, event)); + } + + function mouseOutAnnotation(event: MouseEvent, annotation: Annotation) { + event.target.dispatchEvent(new AnnotationOutEvent(annotation, event)); + } {#if !data} -
    -
    -
    - Loading... +
    +
    +
    + Loading... +
    -
    {:else} -
    - {#if sortedSpanOffsets || sortedSpanOffsets?.length} -
      - {#each sortedSpanOffsets as offsets} - {@const spans = groupedSpans[`${offsets}`]} - {@const firstSpan = spans[0]} -
    • - -
      scrollToSpan(firstSpan)}> -
      - {#each spans as span} - - {/each} +
      + {#if sortedSpanOffsets || sortedSpanOffsets?.length} +
        + {#each sortedSpanOffsets as offsets} + {@const spans = groupedSpans[`${offsets}`]} + {@const firstSpan = spans[0]} + +
      • + +
        scrollToSpan(firstSpan)} + > +
        + {#each spans as span} + + mouseOverAnnotation(ev, span)} + on:mouseout={(ev) => + mouseOutAnnotation(ev, span)} + > + + + {/each} +
        +
        - -
      -
    • + - {@const relations = groupedRelations[`${offsets}`]} - {#if relations} - {#each relations as relation} - {@const target = relation.arguments[1].target} -
    • -
      - -
      - -
      scrollToRelation(relation)}> -
      - + {@const relations = groupedRelations[`${offsets}`]} + {#if relations} + {#each relations as relation} + {@const target = relation.arguments[1].target} + +
    • + mouseOverAnnotation(ev, relation)} + on:mouseout={(ev) => + mouseOutAnnotation(ev, relation)} + > +
      +
      + +
      scrollToRelation(relation)} + > +
      + +
      - -
      -
    • - {/each} - {/if} - {/each} -
    - {/if} -
    + +
    +
  • + {/each} + {/if} + {/each} +
+ {/if} + {/if} - \ No newline at end of file diff --git a/inception/inception-diam-editor/src/main/ts/src/DiamAnnotationBrowser.svelte b/inception/inception-diam-editor/src/main/ts/src/DiamAnnotationBrowser.svelte index 850b8325137..20561f31527 100644 --- a/inception/inception-diam-editor/src/main/ts/src/DiamAnnotationBrowser.svelte +++ b/inception/inception-diam-editor/src/main/ts/src/DiamAnnotationBrowser.svelte @@ -31,6 +31,7 @@ } from "./AnnotationBrowserState"; import AnnotationsByPositionList from "./AnnotationsByPositionList.svelte"; import AnnotationsByLabelList from "./AnnotationsByLabelList.svelte"; + import AnnotationDetailPopOver from "@inception-project/inception-js-api/src/widget/AnnotationDetailPopOver.svelte" export let wsEndpointUrl: string; export let topicChannel: string; @@ -115,7 +116,16 @@ connected = false; } - onMount(async () => connect()); + onMount(async () => { + connect() + new AnnotationDetailPopOver({ + target: element, + props: { + root: element, + ajax: ajaxClient + } + }) + }); onDestroy(async () => disconnect()); diff --git a/inception/inception-diam-editor/src/main/ts_template/package-lock.json b/inception/inception-diam-editor/src/main/ts_template/package-lock.json index ec3d01b663a..35791ee13fa 100644 --- a/inception/inception-diam-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-diam-editor/src/main/ts_template/package-lock.json @@ -118,7 +118,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -126,7 +126,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -148,7 +148,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -246,7 +246,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/semver": { @@ -560,6 +560,24 @@ "node": ">=8" } }, + "../../../../inception-diam/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-diam/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -1138,26 +1156,26 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1219,13 +1237,13 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -1301,25 +1319,28 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -1443,7 +1464,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -1454,7 +1475,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -1552,7 +1573,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -1963,7 +1984,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -2085,7 +2106,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -2675,6 +2696,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-diam/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-diam/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-diam/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -2905,11 +2953,11 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3023,7 +3071,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -3612,7 +3660,8 @@ "license": "Apache-2.0", "dependencies": { "@stomp/stompjs": "^6.1.2", - "@types/stompjs": "^2.3.5" + "@types/stompjs": "^2.3.5", + "bootstrap": "5.3.0" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -3623,6 +3672,7 @@ "esbuild": "~0.16.17", "esbuild-runner-plugins": "^2.3.0-plugins.0", "esbuild-sass-plugin": "~2.5.0", + "esbuild-svelte": "^0.7.3", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -3633,6 +3683,8 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", + "svelte": "^3.55.0", + "svelte-preprocess": "^5.0.0", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -3676,7 +3728,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -3684,7 +3736,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -3706,7 +3758,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -3743,6 +3795,11 @@ "dev": true, "license": "BSD-3-Clause" }, + "../../../../inception-js-api/src/main/ts/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "dev": true, @@ -3775,6 +3832,15 @@ "node": ">= 8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/@popperjs/core": { + "version": "2.11.8", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/@stomp/stompjs": { "version": "6.1.2", "license": "Apache-2.0" @@ -3800,7 +3866,12 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", + "license": "MIT" + }, + "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { + "version": "2.0.6", + "dev": true, "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/semver": { @@ -4114,6 +4185,24 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -4207,6 +4296,23 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { + "version": "5.3.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.7" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -4232,6 +4338,14 @@ "dev": true, "license": "ISC" }, + "../../../../inception-js-api/src/main/ts/node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/buffer-from": { "version": "1.1.2", "dev": true, @@ -4474,6 +4588,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/diff": { "version": "5.0.0", "dev": true, @@ -4598,6 +4720,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/es6-promise": { + "version": "3.3.1", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { "version": "0.16.17", "dev": true, @@ -4663,6 +4790,18 @@ "sass": "^1.56.1" } }, + "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { + "version": "0.7.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/escalade": { "version": "3.1.1", "dev": true, @@ -4683,26 +4822,26 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -4764,13 +4903,13 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -4857,25 +4996,28 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -4999,7 +5141,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -5010,7 +5152,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -5108,7 +5250,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -5515,7 +5657,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -5637,7 +5779,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -5956,6 +6098,17 @@ "node": ">=10" } }, + "../../../../inception-js-api/src/main/ts/node_modules/magic-string": { + "version": "0.27.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/make-dir": { "version": "3.1.0", "dev": true, @@ -6013,6 +6166,14 @@ "node": ">=8.6" } }, + "../../../../inception-js-api/src/main/ts/node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -6232,6 +6393,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -6462,11 +6650,11 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -6579,8 +6767,41 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sander": { + "version": "0.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -6658,6 +6879,20 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sorcery": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/source-map": { "version": "0.6.1", "dev": true, @@ -6758,6 +6993,17 @@ "node": ">=4" } }, + "../../../../inception-js-api/src/main/ts/node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -6791,6 +7037,75 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte": { + "version": "3.59.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte-preprocess": { + "version": "5.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "../../../../inception-js-api/src/main/ts/node_modules/temp-dir": { "version": "1.0.0", "dev": true, @@ -7232,16 +7547,81 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.5", + "version": "7.22.10", "dev": true, "license": "MIT", "dependencies": { - "@babel/highlight": "^7.22.5" + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/helper-validator-identifier": { "version": "7.22.5", "dev": true, @@ -7251,12 +7631,12 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.5", + "version": "7.22.10", "dev": true, "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", + "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, "engines": { @@ -7328,11 +7708,11 @@ } }, "node_modules/@babel/runtime": { - "version": "7.22.6", + "version": "7.22.10", "dev": true, "license": "MIT", "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" @@ -7368,7 +7748,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -7376,7 +7756,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -7398,7 +7778,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -7900,6 +8280,24 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -8659,26 +9057,26 @@ } }, "node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -8740,13 +9138,13 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -8833,25 +9231,28 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -8984,7 +9385,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -8995,7 +9396,7 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -9105,7 +9506,7 @@ "license": "MIT" }, "node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -9576,7 +9977,7 @@ } }, "node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT" }, @@ -9712,7 +10113,7 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -10466,6 +10867,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -10711,7 +11139,7 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", + "version": "0.14.0", "dev": true, "license": "MIT" }, @@ -10756,11 +11184,11 @@ "license": "MIT" }, "node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -10912,7 +11340,7 @@ } }, "node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-diam/src/main/ts_template/package-lock.json b/inception/inception-diam/src/main/ts_template/package-lock.json index eec5041adf8..1dafc48cfb4 100644 --- a/inception/inception-diam/src/main/ts_template/package-lock.json +++ b/inception/inception-diam/src/main/ts_template/package-lock.json @@ -44,7 +44,8 @@ "license": "Apache-2.0", "dependencies": { "@stomp/stompjs": "^6.1.2", - "@types/stompjs": "^2.3.5" + "@types/stompjs": "^2.3.5", + "bootstrap": "5.3.0" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -55,6 +56,7 @@ "esbuild": "~0.16.17", "esbuild-runner-plugins": "^2.3.0-plugins.0", "esbuild-sass-plugin": "~2.5.0", + "esbuild-svelte": "^0.7.3", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -65,6 +67,8 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", + "svelte": "^3.55.0", + "svelte-preprocess": "^5.0.0", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -108,7 +112,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -116,7 +120,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -138,7 +142,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -175,6 +179,11 @@ "dev": true, "license": "BSD-3-Clause" }, + "../../../../inception-js-api/src/main/ts/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "dev": true, @@ -207,6 +216,15 @@ "node": ">= 8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/@popperjs/core": { + "version": "2.11.8", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/@stomp/stompjs": { "version": "6.1.2", "license": "Apache-2.0" @@ -232,7 +250,12 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", + "license": "MIT" + }, + "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { + "version": "2.0.6", + "dev": true, "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/semver": { @@ -546,6 +569,24 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -639,6 +680,23 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { + "version": "5.3.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.7" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -664,6 +722,14 @@ "dev": true, "license": "ISC" }, + "../../../../inception-js-api/src/main/ts/node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/buffer-from": { "version": "1.1.2", "dev": true, @@ -906,6 +972,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/diff": { "version": "5.0.0", "dev": true, @@ -1030,6 +1104,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/es6-promise": { + "version": "3.3.1", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { "version": "0.16.17", "dev": true, @@ -1095,6 +1174,18 @@ "sass": "^1.56.1" } }, + "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { + "version": "0.7.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/escalade": { "version": "3.1.1", "dev": true, @@ -1115,26 +1206,26 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1196,13 +1287,13 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -1289,25 +1380,28 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -1431,7 +1525,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -1442,7 +1536,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -1540,7 +1634,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -1947,7 +2041,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -2069,7 +2163,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -2388,6 +2482,17 @@ "node": ">=10" } }, + "../../../../inception-js-api/src/main/ts/node_modules/magic-string": { + "version": "0.27.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/make-dir": { "version": "3.1.0", "dev": true, @@ -2445,6 +2550,14 @@ "node": ">=8.6" } }, + "../../../../inception-js-api/src/main/ts/node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -2664,6 +2777,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -2894,11 +3034,11 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3011,8 +3151,41 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sander": { + "version": "0.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -3090,6 +3263,20 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sorcery": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/source-map": { "version": "0.6.1", "dev": true, @@ -3190,6 +3377,17 @@ "node": ">=4" } }, + "../../../../inception-js-api/src/main/ts/node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -3223,6 +3421,75 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte": { + "version": "3.59.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte-preprocess": { + "version": "5.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "../../../../inception-js-api/src/main/ts/node_modules/temp-dir": { "version": "1.0.0", "dev": true, @@ -3693,7 +3960,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -3701,7 +3968,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -3723,7 +3990,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -3821,7 +4088,7 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", "license": "MIT" }, "node_modules/@types/semver": { @@ -4135,6 +4402,24 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -4713,26 +4998,26 @@ } }, "node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -4794,13 +5079,13 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -4876,25 +5161,28 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -5018,7 +5306,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -5029,7 +5317,7 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -5127,7 +5415,7 @@ "license": "MIT" }, "node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -5538,7 +5826,7 @@ } }, "node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -5660,7 +5948,7 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -6250,6 +6538,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -6480,11 +6795,11 @@ } }, "node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -6598,7 +6913,7 @@ } }, "node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, diff --git a/inception/inception-external-editor/src/main/ts_template/package-lock.json b/inception/inception-external-editor/src/main/ts_template/package-lock.json index 2439de0bd21..5321afab525 100644 --- a/inception/inception-external-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-external-editor/src/main/ts_template/package-lock.json @@ -102,7 +102,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -110,7 +110,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -132,7 +132,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -230,7 +230,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/semver": { @@ -544,6 +544,24 @@ "node": ">=8" } }, + "../../../../inception-diam/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-diam/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -1122,26 +1140,26 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1203,13 +1221,13 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -1285,25 +1303,28 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -1427,7 +1448,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -1438,7 +1459,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -1536,7 +1557,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -1947,7 +1968,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -2069,7 +2090,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -2659,6 +2680,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-diam/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-diam/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-diam/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -2889,11 +2937,11 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3007,7 +3055,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -3596,7 +3644,8 @@ "license": "Apache-2.0", "dependencies": { "@stomp/stompjs": "^6.1.2", - "@types/stompjs": "^2.3.5" + "@types/stompjs": "^2.3.5", + "bootstrap": "5.3.0" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -3607,6 +3656,7 @@ "esbuild": "~0.16.17", "esbuild-runner-plugins": "^2.3.0-plugins.0", "esbuild-sass-plugin": "~2.5.0", + "esbuild-svelte": "^0.7.3", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -3617,6 +3667,8 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", + "svelte": "^3.55.0", + "svelte-preprocess": "^5.0.0", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -3660,7 +3712,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -3668,7 +3720,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -3690,7 +3742,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -3727,6 +3779,11 @@ "dev": true, "license": "BSD-3-Clause" }, + "../../../../inception-js-api/src/main/ts/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "dev": true, @@ -3759,6 +3816,15 @@ "node": ">= 8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/@popperjs/core": { + "version": "2.11.8", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/@stomp/stompjs": { "version": "6.1.2", "license": "Apache-2.0" @@ -3784,7 +3850,12 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", + "license": "MIT" + }, + "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { + "version": "2.0.6", + "dev": true, "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/semver": { @@ -4098,6 +4169,24 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -4191,6 +4280,23 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { + "version": "5.3.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.7" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -4216,6 +4322,14 @@ "dev": true, "license": "ISC" }, + "../../../../inception-js-api/src/main/ts/node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/buffer-from": { "version": "1.1.2", "dev": true, @@ -4458,6 +4572,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/diff": { "version": "5.0.0", "dev": true, @@ -4582,6 +4704,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/es6-promise": { + "version": "3.3.1", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { "version": "0.16.17", "dev": true, @@ -4647,6 +4774,18 @@ "sass": "^1.56.1" } }, + "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { + "version": "0.7.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/escalade": { "version": "3.1.1", "dev": true, @@ -4667,26 +4806,26 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -4748,13 +4887,13 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -4841,25 +4980,28 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -4983,7 +5125,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -4994,7 +5136,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -5092,7 +5234,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -5499,7 +5641,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -5621,7 +5763,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -5940,6 +6082,17 @@ "node": ">=10" } }, + "../../../../inception-js-api/src/main/ts/node_modules/magic-string": { + "version": "0.27.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/make-dir": { "version": "3.1.0", "dev": true, @@ -5997,6 +6150,14 @@ "node": ">=8.6" } }, + "../../../../inception-js-api/src/main/ts/node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -6216,6 +6377,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -6446,11 +6634,11 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -6563,8 +6751,41 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sander": { + "version": "0.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -6642,6 +6863,20 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sorcery": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/source-map": { "version": "0.6.1", "dev": true, @@ -6742,6 +6977,17 @@ "node": ">=4" } }, + "../../../../inception-js-api/src/main/ts/node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -6775,6 +7021,75 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte": { + "version": "3.59.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte-preprocess": { + "version": "5.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "../../../../inception-js-api/src/main/ts/node_modules/temp-dir": { "version": "1.0.0", "dev": true, @@ -7245,7 +7560,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -7253,7 +7568,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -7275,7 +7590,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -7659,6 +7974,24 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -8124,26 +8457,26 @@ } }, "node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -8205,13 +8538,13 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -8298,25 +8631,28 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -8440,7 +8776,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -8451,7 +8787,7 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -8549,7 +8885,7 @@ "license": "MIT" }, "node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -8933,7 +9269,7 @@ } }, "node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -9051,7 +9387,7 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -9413,6 +9749,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -9628,11 +9991,11 @@ } }, "node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -9727,7 +10090,7 @@ } }, "node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte deleted file mode 100644 index 7b6dbc03698..00000000000 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/AnnotationDetailPopOver.svelte +++ /dev/null @@ -1,137 +0,0 @@ - - - - - -
-
-
- -
-
{annotation?.layer?.name}
-
ID: {annotation?.vid}
-
- {#if annotation} -
- {#each annotation.comments as comment} -
{comment.comment}
- {/each} - {#if detailGroups} - {#each detailGroups as detailGroup} - {#if detailGroup.title} -
{detailGroup.title}
- {/if} - {#each detailGroup.details as detail} -
{detail.label}: {detail.value}
- {/each} - {/each} - {/if} -
- {/if} -
- - - diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.ts b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.ts index 93c782c0932..4dd6f66d0b2 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.ts +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorEditor.ts @@ -20,7 +20,7 @@ import { highlights, ApacheAnnotatorVisualizer } from './ApacheAnnotatorVisualiz import { ApacheAnnotatorSelector } from './ApacheAnnotatorSelector' import ApacheAnnotatorToolbar from './ApacheAnnotatorToolbar.svelte' import { showEmptyHighlights, showLabels } from './ApacheAnnotatorState' -import AnnotationDetailPopOver from './AnnotationDetailPopOver.svelte' +import AnnotationDetailPopOver from '@inception-project/inception-js-api/src/widget/AnnotationDetailPopOver.svelte' export class ApacheAnnotatorEditor implements AnnotationEditor { private ajax: DiamAjax diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorVisualizer.ts b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorVisualizer.ts index fc04edddb63..10511853a2f 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorVisualizer.ts +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/src/apache-annotator/ApacheAnnotatorVisualizer.ts @@ -16,7 +16,7 @@ * limitations under the License. */ import './ApacheAnnotatorEditor.scss' -import { unpackCompactAnnotatedTextV2, DiamAjax, DiamLoadAnnotationsOptions, VID, ViewportTracker, offsetToRange, AnnotatedText, Span, TextMarker, Offsets, AnnotationOverEvent, AnnotationOutEvent, Annotation } from '@inception-project/inception-js-api' +import { unpackCompactAnnotatedTextV2, DiamAjax, DiamLoadAnnotationsOptions, VID, ViewportTracker, offsetToRange, AnnotatedText, Span, TextMarker, Offsets, AnnotationOverEvent, AnnotationOutEvent } from '@inception-project/inception-js-api' import { CompactAnnotatedText } from '@inception-project/inception-js-api/src/model/compact_v2' import { highlightText } from '@apache-annotator/dom' import { showEmptyHighlights, showLabels } from './ApacheAnnotatorState' @@ -42,8 +42,6 @@ export class ApacheAnnotatorVisualizer { private removePingMarkersTimeout: number | undefined = undefined private alpha = '55' - private overAnnotation : Annotation | undefined - constructor (element: Element, ajax: DiamAjax) { this.ajax = ajax this.root = element @@ -61,9 +59,16 @@ export class ApacheAnnotatorVisualizer { if (!vid) return const annotation = this.data?.getAnnotation(vid) if (!annotation) return - this.overAnnotation = annotation event.target.dispatchEvent(new AnnotationOverEvent(annotation, event)) }) + this.root.addEventListener('mouseout', event => { + if (!(event instanceof MouseEvent) || !(event.target instanceof HTMLElement)) return + const vid = event.target.getAttribute('data-iaa-id') + if (!vid) return + const annotation = this.data?.getAnnotation(vid) + if (!annotation) return + event.target.dispatchEvent(new AnnotationOutEvent(annotation, event)) + }) // Add event handlers for highlighting extent of the annotation the mouse is currently over this.root.addEventListener('mouseover', e => this.addAnnotationHighlight(e as MouseEvent)) diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts_template/package.json b/inception/inception-html-apache-annotator-editor/src/main/ts_template/package.json index c828ef0fbee..cda6082f243 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts_template/package.json +++ b/inception/inception-html-apache-annotator-editor/src/main/ts_template/package.json @@ -4,12 +4,12 @@ "author": "INCEpTION Team", "license": "Apache-2.0", "homepage": "https://github.com/inception-project/inception#readme", - "scripts": { - "build": "node build.mjs" - }, "bugs": { "url": "https://github.com/inception-project/issues" }, + "scripts": { + "build": "node build.mjs" + }, "dependencies": { "@inception-project/inception-js-api": "${semver}", "apache-annotator": "${apache-annotator.version}", diff --git a/inception/inception-html-editor/src/main/ts_template/package-lock.json b/inception/inception-html-editor/src/main/ts_template/package-lock.json index 539c8dc825d..7dd4ad5638b 100644 --- a/inception/inception-html-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-html-editor/src/main/ts_template/package-lock.json @@ -72,7 +72,8 @@ "license": "Apache-2.0", "dependencies": { "@stomp/stompjs": "^6.1.2", - "@types/stompjs": "^2.3.5" + "@types/stompjs": "^2.3.5", + "bootstrap": "5.3.0" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -83,6 +84,7 @@ "esbuild": "~0.16.17", "esbuild-runner-plugins": "^2.3.0-plugins.0", "esbuild-sass-plugin": "~2.5.0", + "esbuild-svelte": "^0.7.3", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -93,6 +95,8 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", + "svelte": "^3.55.0", + "svelte-preprocess": "^5.0.0", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -136,7 +140,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -144,7 +148,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -166,7 +170,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -203,6 +207,11 @@ "dev": true, "license": "BSD-3-Clause" }, + "../../../../inception-js-api/src/main/ts/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "dev": true, @@ -235,6 +244,15 @@ "node": ">= 8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/@popperjs/core": { + "version": "2.11.8", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/@stomp/stompjs": { "version": "6.1.2", "license": "Apache-2.0" @@ -260,7 +278,12 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", + "license": "MIT" + }, + "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { + "version": "2.0.6", + "dev": true, "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/semver": { @@ -574,6 +597,24 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -667,6 +708,23 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { + "version": "5.3.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.7" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -692,6 +750,14 @@ "dev": true, "license": "ISC" }, + "../../../../inception-js-api/src/main/ts/node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/buffer-from": { "version": "1.1.2", "dev": true, @@ -934,6 +1000,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/diff": { "version": "5.0.0", "dev": true, @@ -1058,6 +1132,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/es6-promise": { + "version": "3.3.1", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { "version": "0.16.17", "dev": true, @@ -1123,6 +1202,18 @@ "sass": "^1.56.1" } }, + "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { + "version": "0.7.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/escalade": { "version": "3.1.1", "dev": true, @@ -1143,26 +1234,26 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1224,13 +1315,13 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -1317,25 +1408,28 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -1459,7 +1553,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -1470,7 +1564,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -1568,7 +1662,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -1975,7 +2069,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -2097,7 +2191,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -2416,6 +2510,17 @@ "node": ">=10" } }, + "../../../../inception-js-api/src/main/ts/node_modules/magic-string": { + "version": "0.27.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/make-dir": { "version": "3.1.0", "dev": true, @@ -2473,6 +2578,14 @@ "node": ">=8.6" } }, + "../../../../inception-js-api/src/main/ts/node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -2692,6 +2805,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -2922,11 +3062,11 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3039,8 +3179,41 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sander": { + "version": "0.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -3118,6 +3291,20 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sorcery": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/source-map": { "version": "0.6.1", "dev": true, @@ -3218,6 +3405,17 @@ "node": ">=4" } }, + "../../../../inception-js-api/src/main/ts/node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -3251,6 +3449,75 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte": { + "version": "3.59.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte-preprocess": { + "version": "5.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "../../../../inception-js-api/src/main/ts/node_modules/temp-dir": { "version": "1.0.0", "dev": true, @@ -3721,7 +3988,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -3729,7 +3996,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -3751,7 +4018,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -4144,6 +4411,24 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -4609,26 +4894,26 @@ } }, "node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -4690,13 +4975,13 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -4783,25 +5068,28 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -4925,7 +5213,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -4936,7 +5224,7 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -5034,7 +5322,7 @@ "license": "MIT" }, "node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -5418,7 +5706,7 @@ } }, "node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -5536,7 +5824,7 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -5902,6 +6190,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -6117,11 +6432,11 @@ } }, "node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -6216,7 +6531,7 @@ } }, "node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, diff --git a/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json b/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json index 917a98c82d4..334c34e083b 100644 --- a/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json @@ -71,7 +71,8 @@ "license": "Apache-2.0", "dependencies": { "@stomp/stompjs": "^6.1.2", - "@types/stompjs": "^2.3.5" + "@types/stompjs": "^2.3.5", + "bootstrap": "5.3.0" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -82,6 +83,7 @@ "esbuild": "~0.16.17", "esbuild-runner-plugins": "^2.3.0-plugins.0", "esbuild-sass-plugin": "~2.5.0", + "esbuild-svelte": "^0.7.3", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -92,6 +94,8 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", + "svelte": "^3.55.0", + "svelte-preprocess": "^5.0.0", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -135,7 +139,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -143,7 +147,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -165,7 +169,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -202,6 +206,11 @@ "dev": true, "license": "BSD-3-Clause" }, + "../../../../inception-js-api/src/main/ts/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "dev": true, @@ -234,6 +243,15 @@ "node": ">= 8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/@popperjs/core": { + "version": "2.11.8", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/@stomp/stompjs": { "version": "6.1.2", "license": "Apache-2.0" @@ -259,7 +277,12 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", + "license": "MIT" + }, + "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { + "version": "2.0.6", + "dev": true, "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/semver": { @@ -573,6 +596,24 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -666,6 +707,23 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { + "version": "5.3.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.7" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -691,6 +749,14 @@ "dev": true, "license": "ISC" }, + "../../../../inception-js-api/src/main/ts/node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/buffer-from": { "version": "1.1.2", "dev": true, @@ -933,6 +999,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/diff": { "version": "5.0.0", "dev": true, @@ -1057,6 +1131,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/es6-promise": { + "version": "3.3.1", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { "version": "0.16.17", "dev": true, @@ -1122,6 +1201,18 @@ "sass": "^1.56.1" } }, + "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { + "version": "0.7.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/escalade": { "version": "3.1.1", "dev": true, @@ -1142,26 +1233,26 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1223,13 +1314,13 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -1316,25 +1407,28 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -1458,7 +1552,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -1469,7 +1563,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -1567,7 +1661,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -1974,7 +2068,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -2096,7 +2190,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -2415,6 +2509,17 @@ "node": ">=10" } }, + "../../../../inception-js-api/src/main/ts/node_modules/magic-string": { + "version": "0.27.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/make-dir": { "version": "3.1.0", "dev": true, @@ -2472,6 +2577,14 @@ "node": ">=8.6" } }, + "../../../../inception-js-api/src/main/ts/node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -2691,6 +2804,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -2921,11 +3061,11 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3038,8 +3178,41 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sander": { + "version": "0.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -3117,6 +3290,20 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sorcery": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/source-map": { "version": "0.6.1", "dev": true, @@ -3217,6 +3404,17 @@ "node": ">=4" } }, + "../../../../inception-js-api/src/main/ts/node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -3250,6 +3448,75 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte": { + "version": "3.59.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte-preprocess": { + "version": "5.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "../../../../inception-js-api/src/main/ts/node_modules/temp-dir": { "version": "1.0.0", "dev": true, @@ -3691,15 +3958,73 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.5", + "version": "7.22.10", "license": "MIT", "dependencies": { - "@babel/highlight": "^7.22.5" + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "license": "MIT" + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/helper-module-imports": { "version": "7.22.5", "license": "MIT", @@ -3725,11 +4050,11 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.5", + "version": "7.22.10", "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", + "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, "engines": { @@ -3794,17 +4119,21 @@ } }, "node_modules/@babel/runtime": { - "version": "7.22.6", + "version": "7.22.10", "license": "MIT", "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/runtime/node_modules/regenerator-runtime": { + "version": "0.14.0", + "license": "MIT" + }, "node_modules/@babel/types": { - "version": "7.22.5", + "version": "7.22.10", "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.22.5", @@ -3937,7 +4266,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -3945,7 +4274,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -3967,7 +4296,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -3975,7 +4304,7 @@ } }, "node_modules/@flatten-js/core": { - "version": "1.3.12", + "version": "1.4.0", "license": "MIT", "dependencies": { "@flatten-js/interval-tree": "^1.0.21" @@ -4476,6 +4805,24 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -4734,7 +5081,7 @@ "license": "MIT" }, "node_modules/core-js": { - "version": "3.31.1", + "version": "3.32.0", "hasInstallScript": true, "license": "MIT", "funding": { @@ -5008,26 +5355,26 @@ } }, "node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -5089,13 +5436,13 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -5171,25 +5518,28 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -5298,7 +5648,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -5309,7 +5659,7 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -5406,7 +5756,7 @@ "license": "MIT" }, "node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -5787,7 +6137,7 @@ } }, "node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -5903,7 +6253,7 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "license": "MIT", "dependencies": { "has": "^1.0.3" @@ -6317,6 +6667,33 @@ "node": ">= 0.4" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -6649,10 +7026,10 @@ } }, "node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -6744,7 +7121,7 @@ } }, "node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, diff --git a/inception/inception-js-api/src/main/ts/build.mjs b/inception/inception-js-api/src/main/ts/build.mjs index 4cbe5e2f235..e0668afabf3 100644 --- a/inception/inception-js-api/src/main/ts/build.mjs +++ b/inception/inception-js-api/src/main/ts/build.mjs @@ -15,9 +15,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +import esbuild from 'esbuild' +import esbuildSvelte from 'esbuild-svelte' +import sveltePreprocess from 'svelte-preprocess' import yargs from 'yargs/yargs' import { hideBin } from 'yargs/helpers' -import esbuild from 'esbuild' import { sassPlugin } from 'esbuild-sass-plugin' import fs from 'fs-extra' @@ -31,10 +33,24 @@ const defaults = { bundle: true, sourcemap: true, minify: !argv.live, - target: 'es6', + target: 'es2018', loader: { '.ts': 'ts' }, logLevel: 'info', - plugins: [sassPlugin()] + plugins: [ + sassPlugin(), + esbuildSvelte({ + compilerOptions: { dev: argv.live }, + preprocess: sveltePreprocess(), + filterWarnings: (warning) => { + // Ignore warnings about unused CSS selectors in Svelte components which appear as we import + // Bootstrap CSS files. We do not use all selectors in the files and thus the warnings are + // expected. + if (warning.code === 'css-unused-selector') { + return false + } + } + }) + ] } if (argv.live) { diff --git a/inception/inception-js-api/src/main/ts/esbuild-runner.config.js b/inception/inception-js-api/src/main/ts/esbuild-runner.config.js index ee0183fffab..31493a4f5af 100644 --- a/inception/inception-js-api/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-js-api/src/main/ts/esbuild-runner.config.js @@ -15,11 +15,18 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +const esbuildSvelte = require('esbuild-svelte') +const sveltePreprocess = require('svelte-preprocess') + module.exports = { type: 'bundle', // bundle or transform (see description above) esbuild: { target: 'es6', plugins: [ + esbuildSvelte({ + compilerOptions: { css: true }, + preprocess: sveltePreprocess({ sourceMap: true }) + }) ] } } diff --git a/inception/inception-js-api/src/main/ts/src/event/AnnotationOutEvent.ts b/inception/inception-js-api/src/main/ts/src/event/AnnotationOutEvent.ts new file mode 100644 index 00000000000..dbe443e8e3c --- /dev/null +++ b/inception/inception-js-api/src/main/ts/src/event/AnnotationOutEvent.ts @@ -0,0 +1,33 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { Annotation } from '../model' + +const eventType = 'i7n-annotation-out' +export class AnnotationOutEvent extends Event { + static eventType = eventType + + originalEvent: Event + annotation: Annotation + + constructor (annotation: Annotation, originalEvent: Event) { + super(eventType, { bubbles: true }) + this.originalEvent = originalEvent + this.annotation = annotation + } +} \ No newline at end of file diff --git a/inception/inception-js-api/src/main/ts/src/event/index.ts b/inception/inception-js-api/src/main/ts/src/event/index.ts index 63da7d8a990..18e2e4566c9 100644 --- a/inception/inception-js-api/src/main/ts/src/event/index.ts +++ b/inception/inception-js-api/src/main/ts/src/event/index.ts @@ -16,3 +16,4 @@ * limitations under the License. */ export { AnnotationOverEvent } from './AnnotationOverEvent' +export { AnnotationOutEvent } from './AnnotationOutEvent' diff --git a/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte b/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte new file mode 100644 index 00000000000..4bfdaec4301 --- /dev/null +++ b/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte @@ -0,0 +1,214 @@ + + + + + +
+
+
+ +
+
{annotation?.layer?.name}
+
ID: {annotation?.vid}
+
+ {#if annotation} +
+ {#each annotation.comments as comment} +
{comment.comment}
+ {/each} + {#if detailGroups} + {#each detailGroups as detailGroup} + {#if detailGroup.title} +
{detailGroup.title}
+ {/if} + {#each detailGroup.details as detail} +
+ {detail.label}: + {detail.value} +
+ {/each} + {/each} + {/if} +
+ {/if} +
+ + + diff --git a/inception/inception-js-api/src/main/ts_template/package-lock.json b/inception/inception-js-api/src/main/ts_template/package-lock.json index e0e122479e6..177d9926a00 100644 --- a/inception/inception-js-api/src/main/ts_template/package-lock.json +++ b/inception/inception-js-api/src/main/ts_template/package-lock.json @@ -10,7 +10,8 @@ "license": "Apache-2.0", "dependencies": { "@stomp/stompjs": "^6.1.2", - "@types/stompjs": "^2.3.5" + "@types/stompjs": "^2.3.5", + "bootstrap": "5.3.0" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -21,6 +22,7 @@ "esbuild": "~0.16.17", "esbuild-runner-plugins": "^2.3.0-plugins.0", "esbuild-sass-plugin": "~2.5.0", + "esbuild-svelte": "^0.7.3", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -31,6 +33,8 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", + "svelte": "^3.55.0", + "svelte-preprocess": "^5.0.0", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -413,18 +417,18 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", - "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", + "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", - "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", + "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -445,9 +449,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", - "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", + "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -486,6 +490,12 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -521,6 +531,16 @@ "node": ">= 8" } }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "node_modules/@stomp/stompjs": { "version": "6.1.2", "resolved": "https://registry.npmjs.org/@stomp/stompjs/-/stompjs-6.1.2.tgz", @@ -551,9 +571,15 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.4.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.2.tgz", - "integrity": "sha512-Dd0BYtWgnWJKwO1jkmTrzofjK2QXXcai0dmtzvIBhcA+RsG5h8R3xlyta0kGOZRNfL9GuRtb1knmPEhQrePCEw==" + "version": "20.4.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.9.tgz", + "integrity": "sha512-8e2HYcg7ohnTUbHk8focoklEQYvemQmu9M/f43DZVx43kHn0tE3BY/6gSDxS7k0SprtS0NHvj+L80cGLnoOUcQ==" + }, + "node_modules/@types/pug": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/pug/-/pug-2.0.6.tgz", + "integrity": "sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg==", + "dev": true }, "node_modules/@types/semver": { "version": "7.5.0", @@ -887,6 +913,25 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.2.tgz", + "integrity": "sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", @@ -988,6 +1033,24 @@ "node": ">=8" } }, + "node_modules/bootstrap": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.0.tgz", + "integrity": "sha512-UnBV3E3v4STVNQdms6jSGO2CvOkjUMdDAVR2V5N4uCMdaIkaQjbcEAMqRimDHIs4uqBYzDAKCQwCB+97tJgHQw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "peerDependencies": { + "@popperjs/core": "^2.11.7" + } + }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1016,6 +1079,15 @@ "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", "dev": true }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -1280,6 +1352,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/detect-indent": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", + "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/diff": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", @@ -1412,6 +1493,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es6-promise": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", + "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==", + "dev": true + }, "node_modules/esbuild": { "version": "0.16.17", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", @@ -1480,6 +1567,19 @@ "sass": "^1.56.1" } }, + "node_modules/esbuild-svelte": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/esbuild-svelte/-/esbuild-svelte-0.7.4.tgz", + "integrity": "sha512-d4Vafj5nFTmZPXznW6YL3ZHXiWwNiPLcE8yfq/5oE8nbyrZlIB92ZCVh3JMbMje+vCb4jnKdH+WoV2sLZRdOJA==", + "dev": true, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" + } + }, "node_modules/escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -1502,27 +1602,27 @@ } }, "node_modules/eslint": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", - "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", + "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1585,14 +1685,14 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz", - "integrity": "sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==", + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dev": true, "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -1686,26 +1786,29 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz", - "integrity": "sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==", + "version": "2.28.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", + "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", "dev": true, "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -1838,9 +1941,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", + "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1850,9 +1953,9 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz", - "integrity": "sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -1958,9 +2061,9 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz", - "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", @@ -2405,9 +2508,9 @@ } }, "node_modules/immutable": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", - "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", + "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", "dev": true, "peer": true }, @@ -2539,9 +2642,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -2889,6 +2992,18 @@ "node": ">=10" } }, + "node_modules/magic-string": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", + "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -2952,6 +3067,15 @@ "node": ">=8.6" } }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -3190,6 +3314,35 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.0.tgz", + "integrity": "sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", @@ -3442,12 +3595,12 @@ } }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", "dev": true, "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3567,10 +3720,46 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/sander": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/sander/-/sander-0.5.1.tgz", + "integrity": "sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==", + "dev": true, + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "node_modules/sander/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "node_modules/sass": { - "version": "1.63.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.6.tgz", - "integrity": "sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==", + "version": "1.65.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", + "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", "dev": true, "peer": true, "dependencies": { @@ -3653,6 +3842,21 @@ "node": ">=8" } }, + "node_modules/sorcery": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/sorcery/-/sorcery-0.11.0.tgz", + "integrity": "sha512-J69LQ22xrQB1cIFJhPfgtLuI6BpWRiWu1Y3vSsIwK/eAScqJxd/+CJlUuHQRdX2C9NGFamq+KqNywGgaThwfHw==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -3762,6 +3966,18 @@ "node": ">=4" } }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -3798,6 +4014,77 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/svelte": { + "version": "3.59.2", + "resolved": "https://registry.npmjs.org/svelte/-/svelte-3.59.2.tgz", + "integrity": "sha512-vzSyuGr3eEoAtT/A6bmajosJZIUWySzY2CzB3w2pgPvnkUjGqlDnsNnA0PMO+mMAhuyMul6C2uuZzY6ELSkzyA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/svelte-preprocess": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-5.0.4.tgz", + "integrity": "sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "node_modules/temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", diff --git a/inception/inception-js-api/src/main/ts_template/package.json b/inception/inception-js-api/src/main/ts_template/package.json index 61be672bf58..0f24a393673 100644 --- a/inception/inception-js-api/src/main/ts_template/package.json +++ b/inception/inception-js-api/src/main/ts_template/package.json @@ -15,11 +15,13 @@ }, "dependencies": { "@stomp/stompjs": "${stomp-stompjs.version}", - "@types/stompjs": "${types-stompjs.version}" + "@types/stompjs": "${types-stompjs.version}", + "bootstrap": "${bootstrap.version}" }, "devDependencies": { "chai": "${chai.version}", "esbuild": "${esbuild.version}", + "esbuild-svelte": "${esbuild-svelte.version}", "esbuild-runner-plugins": "${esbuild-runner-plugins.version}", "esbuild-sass-plugin": "${esbuild-sass-plugin.version}", "eslint": "${eslint.version}", @@ -32,6 +34,8 @@ "fs-extra": "${fs-extra.version}", "mocha": "${mocha.version}", "mocha-junit-reporter": "${mocha-junit-reporter.version}", + "svelte": "${svelte.version}", + "svelte-preprocess": "${svelte-preprocess.version}", "ts-mocha": "${mocha.version}", "typescript": "${typescript.version}", "@typescript-eslint/eslint-plugin": "${typescript-eslint-eslint-plugin.version}", diff --git a/inception/inception-pdf-editor/src/main/ts_template/package-lock.json b/inception/inception-pdf-editor/src/main/ts_template/package-lock.json index b24ed075ae8..3d02831accd 100644 --- a/inception/inception-pdf-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-pdf-editor/src/main/ts_template/package-lock.json @@ -72,7 +72,8 @@ "license": "Apache-2.0", "dependencies": { "@stomp/stompjs": "^6.1.2", - "@types/stompjs": "^2.3.5" + "@types/stompjs": "^2.3.5", + "bootstrap": "5.3.0" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -83,6 +84,7 @@ "esbuild": "~0.16.17", "esbuild-runner-plugins": "^2.3.0-plugins.0", "esbuild-sass-plugin": "~2.5.0", + "esbuild-svelte": "^0.7.3", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -93,6 +95,8 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", + "svelte": "^3.55.0", + "svelte-preprocess": "^5.0.0", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -136,7 +140,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -144,7 +148,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -166,7 +170,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -203,6 +207,11 @@ "dev": true, "license": "BSD-3-Clause" }, + "../../../../inception-js-api/src/main/ts/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "dev": true, @@ -235,6 +244,15 @@ "node": ">= 8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/@popperjs/core": { + "version": "2.11.8", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/@stomp/stompjs": { "version": "6.1.2", "license": "Apache-2.0" @@ -260,7 +278,12 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", + "license": "MIT" + }, + "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { + "version": "2.0.6", + "dev": true, "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/semver": { @@ -574,6 +597,24 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -667,6 +708,23 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { + "version": "5.3.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.7" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -692,6 +750,14 @@ "dev": true, "license": "ISC" }, + "../../../../inception-js-api/src/main/ts/node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/buffer-from": { "version": "1.1.2", "dev": true, @@ -934,6 +1000,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/diff": { "version": "5.0.0", "dev": true, @@ -1058,6 +1132,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/es6-promise": { + "version": "3.3.1", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { "version": "0.16.17", "dev": true, @@ -1123,6 +1202,18 @@ "sass": "^1.56.1" } }, + "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { + "version": "0.7.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/escalade": { "version": "3.1.1", "dev": true, @@ -1143,26 +1234,26 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1224,13 +1315,13 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -1317,25 +1408,28 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -1459,7 +1553,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -1470,7 +1564,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -1568,7 +1662,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -1975,7 +2069,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -2097,7 +2191,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -2416,6 +2510,17 @@ "node": ">=10" } }, + "../../../../inception-js-api/src/main/ts/node_modules/magic-string": { + "version": "0.27.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/make-dir": { "version": "3.1.0", "dev": true, @@ -2473,6 +2578,14 @@ "node": ">=8.6" } }, + "../../../../inception-js-api/src/main/ts/node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -2692,6 +2805,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -2922,11 +3062,11 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3039,8 +3179,41 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sander": { + "version": "0.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -3118,6 +3291,20 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sorcery": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/source-map": { "version": "0.6.1", "dev": true, @@ -3218,6 +3405,17 @@ "node": ">=4" } }, + "../../../../inception-js-api/src/main/ts/node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -3251,6 +3449,75 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte": { + "version": "3.59.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte-preprocess": { + "version": "5.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "../../../../inception-js-api/src/main/ts/node_modules/temp-dir": { "version": "1.0.0", "dev": true, @@ -3721,7 +3988,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -3729,7 +3996,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -3751,7 +4018,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -4128,6 +4395,24 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -4519,26 +4804,26 @@ } }, "node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -4600,13 +4885,13 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -4682,25 +4967,28 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -4809,7 +5097,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -4820,7 +5108,7 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -4925,7 +5213,7 @@ "license": "MIT" }, "node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -5396,7 +5684,7 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -5749,6 +6037,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -5963,11 +6278,11 @@ } }, "node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, diff --git a/inception/inception-pdf-editor2/src/main/ts/build.mjs b/inception/inception-pdf-editor2/src/main/ts/build.mjs index 0e9ca09d5e8..d8de9ae4751 100644 --- a/inception/inception-pdf-editor2/src/main/ts/build.mjs +++ b/inception/inception-pdf-editor2/src/main/ts/build.mjs @@ -15,9 +15,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +import esbuild from 'esbuild' +import esbuildSvelte from 'esbuild-svelte' +import sveltePreprocess from 'svelte-preprocess' import yargs from 'yargs/yargs' import { hideBin } from 'yargs/helpers' -import esbuild from 'esbuild' import { sassPlugin } from 'esbuild-sass-plugin' import fs from 'fs-extra' @@ -31,10 +33,24 @@ const defaults = { bundle: true, sourcemap: true, minify: !argv.live, - target: 'es6', + target: 'es2018', loader: { '.ts': 'ts' }, logLevel: 'info', - plugins: [sassPlugin()] + plugins: [ + sassPlugin(), + esbuildSvelte({ + compilerOptions: { dev: argv.live }, + preprocess: sveltePreprocess(), + filterWarnings: (warning) => { + // Ignore warnings about unused CSS selectors in Svelte components which appear as we import + // Bootstrap CSS files. We do not use all selectors in the files and thus the warnings are + // expected. + if (warning.code === 'css-unused-selector') { + return false + } + } + }) + ] } if (argv.live) { diff --git a/inception/inception-pdf-editor2/src/main/ts/esbuild-runner.config.js b/inception/inception-pdf-editor2/src/main/ts/esbuild-runner.config.js new file mode 100644 index 00000000000..31493a4f5af --- /dev/null +++ b/inception/inception-pdf-editor2/src/main/ts/esbuild-runner.config.js @@ -0,0 +1,32 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +const esbuildSvelte = require('esbuild-svelte') +const sveltePreprocess = require('svelte-preprocess') + +module.exports = { + type: 'bundle', // bundle or transform (see description above) + esbuild: { + target: 'es6', + plugins: [ + esbuildSvelte({ + compilerOptions: { css: true }, + preprocess: sveltePreprocess({ sourceMap: true }) + }) + ] + } +} diff --git a/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json b/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json index ce315663035..c672bba4fca 100644 --- a/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json +++ b/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json @@ -26,6 +26,7 @@ "esbuild": "~0.16.17", "esbuild-runner-plugins": "^2.3.0-plugins.0", "esbuild-sass-plugin": "~2.5.0", + "esbuild-svelte": "^0.7.3", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -36,6 +37,8 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "sass": "^1.57.1", + "svelte": "^3.55.0", + "svelte-preprocess": "^5.0.0", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -82,7 +85,8 @@ "license": "Apache-2.0", "dependencies": { "@stomp/stompjs": "^6.1.2", - "@types/stompjs": "^2.3.5" + "@types/stompjs": "^2.3.5", + "bootstrap": "5.3.0" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -93,6 +97,7 @@ "esbuild": "~0.16.17", "esbuild-runner-plugins": "^2.3.0-plugins.0", "esbuild-sass-plugin": "~2.5.0", + "esbuild-svelte": "^0.7.3", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -103,6 +108,8 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", + "svelte": "^3.55.0", + "svelte-preprocess": "^5.0.0", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -146,7 +153,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -154,7 +161,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -176,7 +183,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -213,6 +220,11 @@ "dev": true, "license": "BSD-3-Clause" }, + "../../../../inception-js-api/src/main/ts/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "dev": true, @@ -245,6 +257,15 @@ "node": ">= 8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/@popperjs/core": { + "version": "2.11.8", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/@stomp/stompjs": { "version": "6.1.2", "license": "Apache-2.0" @@ -270,7 +291,12 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.9", + "license": "MIT" + }, + "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { + "version": "2.0.6", + "dev": true, "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/semver": { @@ -584,6 +610,24 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -677,6 +721,23 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { + "version": "5.3.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.7" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -702,6 +763,14 @@ "dev": true, "license": "ISC" }, + "../../../../inception-js-api/src/main/ts/node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/buffer-from": { "version": "1.1.2", "dev": true, @@ -944,6 +1013,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/diff": { "version": "5.0.0", "dev": true, @@ -1068,6 +1145,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/es6-promise": { + "version": "3.3.1", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { "version": "0.16.17", "dev": true, @@ -1133,6 +1215,18 @@ "sass": "^1.56.1" } }, + "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { + "version": "0.7.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/escalade": { "version": "3.1.1", "dev": true, @@ -1153,26 +1247,26 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1234,13 +1328,13 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -1327,25 +1421,28 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -1469,7 +1566,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -1480,7 +1577,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -1578,7 +1675,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -1985,7 +2082,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT", "peer": true @@ -2107,7 +2204,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -2426,6 +2523,17 @@ "node": ">=10" } }, + "../../../../inception-js-api/src/main/ts/node_modules/magic-string": { + "version": "0.27.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/make-dir": { "version": "3.1.0", "dev": true, @@ -2483,6 +2591,14 @@ "node": ">=8.6" } }, + "../../../../inception-js-api/src/main/ts/node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -2702,6 +2818,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -2932,11 +3075,11 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3049,8 +3192,41 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sander": { + "version": "0.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "peer": true, @@ -3128,6 +3304,20 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sorcery": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/source-map": { "version": "0.6.1", "dev": true, @@ -3228,6 +3418,17 @@ "node": ">=4" } }, + "../../../../inception-js-api/src/main/ts/node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -3261,6 +3462,75 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte": { + "version": "3.59.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/svelte-preprocess": { + "version": "5.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "../../../../inception-js-api/src/main/ts/node_modules/temp-dir": { "version": "1.0.0", "dev": true, @@ -3731,7 +4001,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -3739,7 +4009,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.1", "dev": true, "license": "MIT", "dependencies": { @@ -3761,7 +4031,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.46.0", "dev": true, "license": "MIT", "engines": { @@ -3802,6 +4072,11 @@ "resolved": "../../../../inception-js-api/src/main/ts", "link": true }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "license": "MIT" + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "dev": true, @@ -3867,6 +4142,11 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/pug": { + "version": "2.0.6", + "dev": true, + "license": "MIT" + }, "node_modules/@types/semver": { "version": "7.5.0", "dev": true, @@ -4181,6 +4461,24 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -4291,6 +4589,14 @@ "dev": true, "license": "ISC" }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "node_modules/buffer-from": { "version": "1.1.2", "dev": true, @@ -4517,6 +4823,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/diff": { "version": "5.0.0", "dev": true, @@ -4645,6 +4959,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es6-promise": { + "version": "3.3.1", + "dev": true, + "license": "MIT" + }, "node_modules/esbuild": { "version": "0.16.17", "dev": true, @@ -4710,6 +5029,18 @@ "sass": "^1.56.1" } }, + "node_modules/esbuild-svelte": { + "version": "0.7.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" + } + }, "node_modules/escalade": { "version": "3.1.1", "dev": true, @@ -4730,26 +5061,26 @@ } }, "node_modules/eslint": { - "version": "8.45.0", + "version": "8.46.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -4811,13 +5142,13 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -4904,25 +5235,28 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -5046,7 +5380,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.2", "dev": true, "license": "Apache-2.0", "engines": { @@ -5057,7 +5391,7 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -5162,7 +5496,7 @@ "license": "MIT" }, "node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -5569,7 +5903,7 @@ } }, "node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT" }, @@ -5685,7 +6019,7 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -6004,6 +6338,17 @@ "node": ">=10" } }, + "node_modules/magic-string": { + "version": "0.27.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/make-dir": { "version": "3.1.0", "dev": true, @@ -6046,6 +6391,14 @@ "node": ">=8.6" } }, + "node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -6065,6 +6418,17 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/mocha": { "version": "10.2.0", "dev": true, @@ -6236,6 +6600,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -6482,11 +6873,11 @@ } }, "node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -6599,8 +6990,30 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/sander": { + "version": "0.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "dependencies": { @@ -6677,6 +7090,20 @@ "node": ">=8" } }, + "node_modules/sorcery": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "node_modules/source-map": { "version": "0.6.1", "dev": true, @@ -6776,6 +7203,17 @@ "node": ">=4" } }, + "node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -6809,6 +7247,75 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/svelte": { + "version": "3.59.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/svelte-preprocess": { + "version": "5.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, "node_modules/temp-dir": { "version": "1.0.0", "dev": true, diff --git a/inception/inception-pdf-editor2/src/main/ts_template/package.json b/inception/inception-pdf-editor2/src/main/ts_template/package.json index 48dbca98a6a..9db1ae14780 100644 --- a/inception/inception-pdf-editor2/src/main/ts_template/package.json +++ b/inception/inception-pdf-editor2/src/main/ts_template/package.json @@ -22,6 +22,7 @@ "devDependencies": { "chai": "${chai.version}", "esbuild": "${esbuild.version}", + "esbuild-svelte": "${esbuild-svelte.version}", "esbuild-runner-plugins": "${esbuild-runner-plugins.version}", "esbuild-sass-plugin": "${esbuild-sass-plugin.version}", "eslint": "${eslint.version}", @@ -34,6 +35,8 @@ "fs-extra": "${fs-extra.version}", "mocha": "${mocha.version}", "sass": "${sass.version}", + "svelte": "${svelte.version}", + "svelte-preprocess": "${svelte-preprocess.version}", "typescript": "${typescript.version}", "@typescript-eslint/eslint-plugin": "${typescript-eslint-eslint-plugin.version}", "@typescript-eslint/parser": "${typescript-eslint-parser.version}", diff --git a/inception/inception-project-export/src/main/ts_template/package-lock.json b/inception/inception-project-export/src/main/ts_template/package-lock.json index e59a7d4d9f0..e8fe911c547 100644 --- a/inception/inception-project-export/src/main/ts_template/package-lock.json +++ b/inception/inception-project-export/src/main/ts_template/package-lock.json @@ -53,17 +53,89 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", - "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", + "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", "dev": true, "dependencies": { - "@babel/highlight": "^7.22.5" + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/helper-validator-identifier": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", @@ -74,13 +146,13 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", - "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", + "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", + "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, "engines": { @@ -159,12 +231,12 @@ } }, "node_modules/@babel/runtime": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", - "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.10.tgz", + "integrity": "sha512-21t/fkKLMZI4pqP2wlmsQAWnYW1PDyKyyUV4vCi+B25ydmdaYTKXPwCj0BzSUnZf4seIiYvSA3jcZ3gdsMFkLQ==", "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" @@ -538,18 +610,18 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", - "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", + "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", - "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", + "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -570,9 +642,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", - "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", + "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1112,6 +1184,25 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.2.tgz", + "integrity": "sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", @@ -1935,27 +2026,27 @@ } }, "node_modules/eslint": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", - "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", + "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -2018,14 +2109,14 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz", - "integrity": "sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==", + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dev": true, "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -2119,26 +2210,29 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz", - "integrity": "sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==", + "version": "2.28.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", + "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", "dev": true, "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -2281,9 +2375,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", + "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2293,9 +2387,9 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz", - "integrity": "sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -2414,9 +2508,9 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz", - "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", @@ -2926,9 +3020,9 @@ } }, "node_modules/immutable": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", - "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", + "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", "dev": true }, "node_modules/import-fresh": { @@ -3075,9 +3169,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -3899,6 +3993,35 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.0.tgz", + "integrity": "sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", @@ -4169,9 +4292,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==", "dev": true }, "node_modules/regexp.prototype.flags": { @@ -4219,12 +4342,12 @@ "dev": true }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", "dev": true, "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -4387,9 +4510,9 @@ } }, "node_modules/sass": { - "version": "1.63.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.6.tgz", - "integrity": "sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==", + "version": "1.65.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", + "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/inception/inception-recommendation/src/main/ts_template/package-lock.json b/inception/inception-recommendation/src/main/ts_template/package-lock.json index 2c9e3a621c2..54b2623f244 100644 --- a/inception/inception-recommendation/src/main/ts_template/package-lock.json +++ b/inception/inception-recommendation/src/main/ts_template/package-lock.json @@ -54,17 +54,89 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", - "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", + "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", "dev": true, "dependencies": { - "@babel/highlight": "^7.22.5" + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/helper-validator-identifier": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", @@ -75,13 +147,13 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", - "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", + "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", + "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, "engines": { @@ -160,12 +232,12 @@ } }, "node_modules/@babel/runtime": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", - "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.10.tgz", + "integrity": "sha512-21t/fkKLMZI4pqP2wlmsQAWnYW1PDyKyyUV4vCi+B25ydmdaYTKXPwCj0BzSUnZf4seIiYvSA3jcZ3gdsMFkLQ==", "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" @@ -539,18 +611,18 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", - "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", + "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", - "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", + "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -571,9 +643,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", - "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", + "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1113,6 +1185,25 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.2.tgz", + "integrity": "sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", @@ -1936,27 +2027,27 @@ } }, "node_modules/eslint": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", - "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", + "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -2019,14 +2110,14 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz", - "integrity": "sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==", + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dev": true, "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -2120,26 +2211,29 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz", - "integrity": "sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==", + "version": "2.28.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", + "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", "dev": true, "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -2282,9 +2376,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", + "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2294,9 +2388,9 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz", - "integrity": "sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -2415,9 +2509,9 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz", - "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", @@ -2927,9 +3021,9 @@ } }, "node_modules/immutable": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", - "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", + "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", "dev": true }, "node_modules/import-fresh": { @@ -3076,9 +3170,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -3900,6 +3994,35 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.0.tgz", + "integrity": "sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", @@ -4170,9 +4293,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==", "dev": true }, "node_modules/regexp.prototype.flags": { @@ -4220,12 +4343,12 @@ "dev": true }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", "dev": true, "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -4388,9 +4511,9 @@ } }, "node_modules/sass": { - "version": "1.63.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.6.tgz", - "integrity": "sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==", + "version": "1.65.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", + "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json b/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json index b6fe1a89d3a..2656c535a89 100644 --- a/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json @@ -53,17 +53,89 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", - "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", + "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", "dev": true, "dependencies": { - "@babel/highlight": "^7.22.5" + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/helper-validator-identifier": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", @@ -74,13 +146,13 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", - "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", + "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", + "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, "engines": { @@ -159,12 +231,12 @@ } }, "node_modules/@babel/runtime": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", - "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.10.tgz", + "integrity": "sha512-21t/fkKLMZI4pqP2wlmsQAWnYW1PDyKyyUV4vCi+B25ydmdaYTKXPwCj0BzSUnZf4seIiYvSA3jcZ3gdsMFkLQ==", "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" @@ -538,18 +610,18 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", - "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", + "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", - "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", + "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -570,9 +642,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", - "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", + "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1107,6 +1179,25 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.2.tgz", + "integrity": "sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", @@ -1935,27 +2026,27 @@ } }, "node_modules/eslint": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", - "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", + "version": "8.46.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", + "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.1", + "@eslint/js": "^8.46.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.2", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -2018,14 +2109,14 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz", - "integrity": "sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==", + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dev": true, "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -2119,26 +2210,29 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz", - "integrity": "sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==", + "version": "2.28.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", + "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", "dev": true, "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -2281,9 +2375,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", + "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2293,9 +2387,9 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz", - "integrity": "sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -2414,9 +2508,9 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz", - "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", @@ -2926,9 +3020,9 @@ } }, "node_modules/immutable": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", - "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", + "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", "dev": true }, "node_modules/import-fresh": { @@ -3075,9 +3169,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -3899,6 +3993,35 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.0.tgz", + "integrity": "sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", @@ -4169,9 +4292,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==", "dev": true }, "node_modules/regexp.prototype.flags": { @@ -4219,12 +4342,12 @@ "dev": true }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", "dev": true, "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -4387,9 +4510,9 @@ } }, "node_modules/sass": { - "version": "1.63.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.6.tgz", - "integrity": "sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==", + "version": "1.65.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", + "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/inception/inception-ui-kb/src/main/ts_template/package-lock.json b/inception/inception-ui-kb/src/main/ts_template/package-lock.json index 6767bcde4a2..4671a8238a4 100644 --- a/inception/inception-ui-kb/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-kb/src/main/ts_template/package-lock.json @@ -257,7 +257,7 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/immutable": { - "version": "4.3.0", + "version": "4.3.1", "dev": true, "license": "MIT" }, @@ -375,7 +375,7 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/sass": { - "version": "1.62.1", + "version": "1.63.6", "dev": true, "license": "MIT", "dependencies": { @@ -577,7 +577,7 @@ } }, "node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT" }, @@ -650,7 +650,7 @@ } }, "node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-ui-search/src/main/ts_template/package-lock.json b/inception/inception-ui-search/src/main/ts_template/package-lock.json index a4bdc0e1d81..3346ae934df 100644 --- a/inception/inception-ui-search/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-search/src/main/ts_template/package-lock.json @@ -112,9 +112,9 @@ } }, "node_modules/immutable": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", - "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", + "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", "dev": true }, "node_modules/is-binary-path": { @@ -193,9 +193,9 @@ } }, "node_modules/sass": { - "version": "1.63.6", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.6.tgz", - "integrity": "sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==", + "version": "1.65.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", + "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", From 11789f95557519af3fa6fc1099b21546ee08a042 Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Fri, 11 Aug 2023 19:59:07 +0200 Subject: [PATCH 06/17] Issue #4148: Switch PDF editor to compact model v2 - Switch over to the new format --- .../pdfanno/core/src/annotation/abstract.ts | 2 +- .../src/main/ts/src/pdfanno/pdfanno.ts | 136 +++++++++--------- 2 files changed, 72 insertions(+), 66 deletions(-) diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/abstract.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/abstract.ts index 342d7338842..a405ec5f628 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/abstract.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/abstract.ts @@ -69,7 +69,7 @@ export default abstract class AbstractAnnotation extends EventEmitter { this.setHoverEvent() } - this.disabled && this.disable() + if (!this.disabled) this.disable() } /** diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts index 0d0ad5cb681..f376a9c0122 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts @@ -8,17 +8,14 @@ import AnnotationContainer from './core/src/annotation/container' import AbstractAnnotation from './core/src/annotation/abstract' import { installSpanSelection } from './core/src/UI/span' import { installRelationSelection } from './core/src/UI/relation' -import { CompactAnnotatedText, CompactSpan, DiamAjax, Offsets, VID } from '@inception-project/inception-js-api' +import { unpackCompactAnnotatedTextV2, DiamAjax, Offsets, VID, AnnotatedText, Span, Relation, TextMarker } from '@inception-project/inception-js-api' +import { CompactAnnotatedText } from '@inception-project/inception-js-api/src/model/compact_v2' import { DiamLoadAnnotationsOptions } from '@inception-project/inception-js-api/src/diam/DiamAjax' import SpanAnnotation from './core/src/annotation/span' import { getGlyphAtTextOffset, getGlyphsInRange } from './page/textLayer' import RelationAnnotation from './core/src/annotation/relation' import { createRect, mapToDocumentCoordinates, mergeRects } from './core/src/render/renderSpan' import { transform } from './core/src/render/appendChild' -import { makeMarkerMap } from '@inception-project/inception-js-api/src/model/compact/CompactAnnotatedText' -import { CompactTextMarker } from '@inception-project/inception-js-api/src/model/compact/CompactTextMarker' -import { CompactRelation } from '@inception-project/inception-js-api/src/model/compact/CompactRelation' -import { CompactAnnotationMarker } from '@inception-project/inception-js-api/src/model/compact/CompactAnnotationMarker' import { Rectangle } from '../vmodel/Rectangle' // TODO make it a global const. @@ -31,6 +28,8 @@ let diamAjax: DiamAjax let currentFocusPage: number let pagechangeEventCounter: number +let data: AnnotatedText | undefined + export async function initPdfAnno (ajax: DiamAjax): Promise { globalThis.globalEvent = new EventEmitter() globalThis.globalEvent.setMaxListeners(0) @@ -198,13 +197,13 @@ function renderAnno () { dispatchWindowEvent('annotationlayercreated') - renderAnnotations() + rerenderAnnotations() } /** * Render all annotations. */ -function renderAnnotations () { +function rerenderAnnotations () { const annotations = annotationContainer.getAllAnnotations() if (annotations.length === 0) { return @@ -274,42 +273,44 @@ export function getAnnotations () { const options : DiamLoadAnnotationsOptions = { range: [extendedBegin, extendedEnd], - includeText: false + includeText: false, + format: 'compact_v2' } diamAjax.loadAnnotations(options).then((doc: CompactAnnotatedText) => { - annotationContainer.clear() + data = unpackCompactAnnotatedTextV2(doc) + renderAnnotations(data) + }) +} - const annotationMarkers = makeMarkerMap(doc.annotationMarkers) +function renderAnnotations (doc: AnnotatedText): void { + const startTime = new Date().getTime() - console.log(`Loaded ${doc.spans?.length || '0'} spans and ${doc.relations?.length || '0'} relations in range [${doc.window}]`) + annotationContainer.clear() - if (doc.spans) { - for (const s of doc.spans) { - makeSpan(s, doc, annotationMarkers) - } - } + if (doc.spans) { + console.log(`Loaded ${doc.spans.size} span annotations`) + doc.spans.forEach(span => renderSpan(doc, span)) + } - if (doc.relations) { - for (const r of doc.relations) { - makeRelation(r, annotationMarkers) - } - } + if (doc.relations) { + console.log(`Loaded ${doc.relations.size} relations annotations`) + doc.relations.forEach(relation => renderRelation(doc, relation)) + } - if (doc.textMarkers) { - for (const m of doc.textMarkers) { - makeTextMarker(m, doc) - } - } + if (doc.textMarkers) { + doc.textMarkers.forEach(marker => makeTextMarker(doc, marker)) + } - renderAnnotations() - }) + rerenderAnnotations() + + const endTime = new Date().getTime() + console.log(`Client-side rendering took ${Math.abs(endTime - startTime)}ms`) } -function makeSpan (s: CompactSpan, doc: CompactAnnotatedText, annotationMarkers: Map>) { - const offsets = s[1] - const begin = offsets[0][0] + doc.window[0] - const end = offsets[0][1] + doc.window[0] +function renderSpan (doc: AnnotatedText, span: Span) { + const begin = span.offsets[0][0] + doc.window[0] + const end = span.offsets[0][1] + doc.window[0] const range: Offsets = [begin, end] const page = textLayer.findPageForTextOffset(begin)?.index @@ -323,40 +324,45 @@ function makeSpan (s: CompactSpan, doc: CompactAnnotatedText, annotationMarkers: return } - const span = new SpanAnnotation() - span.vid = `${s[0]}` - span.textRange = range - span.page = page - span.color = s[2]?.c || '#FFF' - span.text = s[2]?.l || '' - span.rectangles = rectangles - annotationMarkers.get(s[0])?.forEach(m => span.classList.push(`marker-${m[0]}`)) - span.save() + const spanAnnotation = new SpanAnnotation() + spanAnnotation.vid = span.vid + spanAnnotation.textRange = range + spanAnnotation.page = page + spanAnnotation.color = span.color || '#FFF' + spanAnnotation.text = span.label || '' + spanAnnotation.rectangles = rectangles + + const ms = doc.annotationMarkers.get(spanAnnotation.vid) || [] + ms.forEach(m => spanAnnotation.classList.push(`marker-${m.type}`)) + + spanAnnotation.save() } -function makeRelation (r: CompactRelation, annotationMarkers: Map>) { - const source = annotationContainer.findById(r[1][0][0]) - const target = annotationContainer.findById(r[1][1][0]) +function renderRelation (doc: AnnotatedText, relation: Relation) { + const source = annotationContainer.findById(relation.arguments[0].targetId) + const target = annotationContainer.findById(relation.arguments[1].targetId) if (!source || !target) { - console.warn(`Cannot find source or target for relation ${r[0]}`) + console.warn(`Cannot find source or target for relation ${relation[0]}`) return } - const rel = new RelationAnnotation() - rel.vid = `${r[0]}` - rel.rel1Annotation = source as SpanAnnotation - rel.rel2Annotation = target as SpanAnnotation - rel.color = r[2]?.c - rel.text = r[2]?.l || null - annotationMarkers.get(r[0])?.forEach(m => rel.classList.push(`marker-${m[0]}`)) - rel.save() + const relationAnnotation = new RelationAnnotation() + relationAnnotation.vid = relation.vid + relationAnnotation.rel1Annotation = source as SpanAnnotation + relationAnnotation.rel2Annotation = target as SpanAnnotation + relationAnnotation.color = relation.color || '#FFF' + relationAnnotation.text = relation.label || '' + + const ms = doc.annotationMarkers.get(relationAnnotation.vid) || [] + ms.forEach(m => relationAnnotation.classList.push(`marker-${m.type}`)) + + relationAnnotation.save() } -function makeTextMarker (m: CompactTextMarker, doc: CompactAnnotatedText) { - const offsets = m[1] - const begin = offsets[0][0] + doc.window[0] - const end = offsets[0][1] + doc.window[0] +function makeTextMarker (doc: AnnotatedText, marker: TextMarker) { + const begin = marker.offsets[0][0] + doc.window[0] + const end = marker.offsets[0][1] + doc.window[0] const range: Offsets = [begin, end] const page = textLayer.findPageForTextOffset(begin)?.index @@ -370,14 +376,14 @@ function makeTextMarker (m: CompactTextMarker, doc: CompactAnnotatedText) { return } - const marker = new SpanAnnotation() - marker.textRange = range - marker.page = page - marker.knob = false - marker.border = false - marker.rectangles = rectangles - marker.classList = [`marker-${m[0]}`] - marker.save() + const markerAnnotation = new SpanAnnotation() + markerAnnotation.textRange = range + markerAnnotation.page = page + markerAnnotation.knob = false + markerAnnotation.border = false + markerAnnotation.rectangles = rectangles + markerAnnotation.classList = [`marker-$${marker.type}`] + markerAnnotation.save() } function calculateRectangles (range: [number, number]): Rectangle[] | null { From 1a29ee3ec9b4424a9eb6323d1c1b24dfbf287c78 Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Fri, 11 Aug 2023 22:03:55 +0200 Subject: [PATCH 07/17] #4139 - Reusable popover component for annotation editors - Add the popover to the PDF editor --- .../src/main/ts_template/package-lock.json | 18 +++--- .../src/main/ts/esbuild-runner.config.js | 2 +- .../src/main/ts_template/package-lock.json | 62 +++++++++---------- .../src/main/ts/esbuild-runner.config.js | 2 +- .../src/main/ts_template/package-lock.json | 62 +++++++++---------- .../src/main/ts_template/package-lock.json | 42 ++++++------- .../src/main/ts_template/package-lock.json | 58 ++++++++--------- .../src/main/ts/esbuild-runner.config.js | 2 +- .../src/main/ts_template/package-lock.json | 40 ++++++------ .../src/main/ts_template/package-lock.json | 40 ++++++------ .../src/main/ts/esbuild-runner.config.js | 2 +- .../src/widget/AnnotationDetailPopOver.svelte | 4 +- .../src/main/ts_template/package-lock.json | 52 ++++++++-------- .../src/main/ts_template/package-lock.json | 40 ++++++------ .../src/main/ts/esbuild-runner.config.js | 2 +- .../src/main/ts/src/PdfAnnotationEditor.ts | 2 +- .../ts/src/pdfanno/core/src/UI/relation.ts | 4 +- .../main/ts/src/pdfanno/core/src/UI/span.ts | 2 +- .../AbstractAnnotation.ts} | 16 ++++- .../AnnotationContainer.ts} | 2 +- .../RelationAnnotation.ts} | 8 +-- .../span.ts => model/SpanAnnotation.ts} | 2 +- .../pdfanno/core/src/render/appendChild.ts | 6 +- .../src/pdfanno/core/src/render/renderKnob.ts | 1 - .../pdfanno/core/src/render/renderRelation.ts | 3 +- .../src/pdfanno/core/src/render/renderSpan.ts | 2 +- .../ts/src/pdfanno/page/pdf/PDFAnnoPage.ts | 6 +- .../src/main/ts/src/pdfanno/pdfanno.ts | 21 +++++-- .../src/main/ts_template/package-lock.json | 44 ++++++------- .../src/main/ts_template/package.json | 1 + .../src/main/ts/esbuild-runner.config.js | 2 +- .../src/main/ts_template/package-lock.json | 44 ++++++------- .../src/main/ts/esbuild-runner.config.js | 2 +- .../src/main/ts_template/package-lock.json | 44 ++++++------- .../src/main/ts/esbuild-runner.config.js | 2 +- .../src/main/ts_template/package-lock.json | 44 ++++++------- .../src/main/ts_template/package-lock.json | 28 ++++----- .../src/main/ts/esbuild-runner.config.js | 2 +- .../src/main/ts_template/package-lock.json | 8 +-- pom.xml | 4 +- 40 files changed, 374 insertions(+), 354 deletions(-) rename inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/{annotation/abstract.ts => model/AbstractAnnotation.ts} (89%) rename inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/{annotation/container.ts => model/AnnotationContainer.ts} (95%) rename inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/{annotation/relation.ts => model/RelationAnnotation.ts} (97%) rename inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/{annotation/span.ts => model/SpanAnnotation.ts} (98%) diff --git a/inception/inception-bootstrap/src/main/ts_template/package-lock.json b/inception/inception-bootstrap/src/main/ts_template/package-lock.json index 26d088d863d..8043f294a42 100644 --- a/inception/inception-bootstrap/src/main/ts_template/package-lock.json +++ b/inception/inception-bootstrap/src/main/ts_template/package-lock.json @@ -9,11 +9,11 @@ "version": "${semver}", "license": "Apache-2.0", "devDependencies": { - "bootstrap": "5.3.0", + "bootstrap": "5.3.1", "cross-env": "^7.0.3", "esbuild": "~0.16.17", "esbuild-sass-plugin": "~2.5.0", - "sass": "^1.57.1" + "sass": "~1.64.2" } }, "node_modules/@esbuild/android-arm": { @@ -402,9 +402,9 @@ } }, "node_modules/bootstrap": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.0.tgz", - "integrity": "sha512-UnBV3E3v4STVNQdms6jSGO2CvOkjUMdDAVR2V5N4uCMdaIkaQjbcEAMqRimDHIs4uqBYzDAKCQwCB+97tJgHQw==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.1.tgz", + "integrity": "sha512-jzwza3Yagduci2x0rr9MeFSORjcHpt0lRZukZPZQJT1Dth5qzV7XcgGqYzi39KGAVYR8QEDVoO0ubFKOxzMG+g==", "dev": true, "funding": [ { @@ -417,7 +417,7 @@ } ], "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "node_modules/braces": { @@ -730,9 +730,9 @@ } }, "node_modules/sass": { - "version": "1.65.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", - "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", + "version": "1.64.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.2.tgz", + "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/inception/inception-brat-editor/src/main/ts/esbuild-runner.config.js b/inception/inception-brat-editor/src/main/ts/esbuild-runner.config.js index 31493a4f5af..8f28240c0c0 100644 --- a/inception/inception-brat-editor/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-brat-editor/src/main/ts/esbuild-runner.config.js @@ -21,7 +21,7 @@ const sveltePreprocess = require('svelte-preprocess') module.exports = { type: 'bundle', // bundle or transform (see description above) esbuild: { - target: 'es6', + target: 'es2018', plugins: [ esbuildSvelte({ compilerOptions: { css: true }, diff --git a/inception/inception-brat-editor/src/main/ts_template/package-lock.json b/inception/inception-brat-editor/src/main/ts_template/package-lock.json index 73a2fefcbdd..afc1924fe5b 100644 --- a/inception/inception-brat-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-brat-editor/src/main/ts_template/package-lock.json @@ -38,7 +38,7 @@ "fs-extra": "^10.1.0", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", - "sass": "^1.57.1", + "sass": "~1.64.2", "svelte": "^3.55.0", "svelte-preprocess": "^5.0.0", "typescript": "^4.9.4", @@ -126,7 +126,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -148,7 +148,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -246,7 +246,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/semver": { @@ -1156,14 +1156,14 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -1174,7 +1174,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -1464,7 +1464,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -1826,7 +1826,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -3661,7 +3661,7 @@ "dependencies": { "@stomp/stompjs": "^6.1.2", "@types/stompjs": "^2.3.5", - "bootstrap": "5.3.0" + "bootstrap": "5.3.1" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -3736,7 +3736,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -3758,7 +3758,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -3866,7 +3866,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -4297,7 +4297,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "funding": [ { "type": "github", @@ -4310,7 +4310,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { @@ -4822,14 +4822,14 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -4840,7 +4840,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -5141,7 +5141,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -5499,7 +5499,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -7584,7 +7584,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -7606,7 +7606,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -8670,14 +8670,14 @@ } }, "node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -8688,7 +8688,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -8983,7 +8983,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -9345,7 +9345,7 @@ } }, "node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -10636,7 +10636,7 @@ } }, "node_modules/sass": { - "version": "1.65.1", + "version": "1.64.2", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-diam-editor/src/main/ts/esbuild-runner.config.js b/inception/inception-diam-editor/src/main/ts/esbuild-runner.config.js index 31493a4f5af..8f28240c0c0 100644 --- a/inception/inception-diam-editor/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-diam-editor/src/main/ts/esbuild-runner.config.js @@ -21,7 +21,7 @@ const sveltePreprocess = require('svelte-preprocess') module.exports = { type: 'bundle', // bundle or transform (see description above) esbuild: { - target: 'es6', + target: 'es2018', plugins: [ esbuildSvelte({ compilerOptions: { css: true }, diff --git a/inception/inception-diam-editor/src/main/ts_template/package-lock.json b/inception/inception-diam-editor/src/main/ts_template/package-lock.json index 35791ee13fa..a128f1cfad2 100644 --- a/inception/inception-diam-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-diam-editor/src/main/ts_template/package-lock.json @@ -38,7 +38,7 @@ "jsdom-global": "^3.0.2", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", - "sass": "^1.57.1", + "sass": "~1.64.2", "svelte": "^3.55.0", "svelte-preprocess": "^5.0.0", "typescript": "^4.9.4", @@ -126,7 +126,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -148,7 +148,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -246,7 +246,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/semver": { @@ -1156,14 +1156,14 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -1174,7 +1174,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -1464,7 +1464,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -1826,7 +1826,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -3661,7 +3661,7 @@ "dependencies": { "@stomp/stompjs": "^6.1.2", "@types/stompjs": "^2.3.5", - "bootstrap": "5.3.0" + "bootstrap": "5.3.1" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -3736,7 +3736,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -3758,7 +3758,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -3866,7 +3866,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -4297,7 +4297,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "funding": [ { "type": "github", @@ -4310,7 +4310,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { @@ -4822,14 +4822,14 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -4840,7 +4840,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -5141,7 +5141,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -5499,7 +5499,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -7756,7 +7756,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -7778,7 +7778,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -9057,14 +9057,14 @@ } }, "node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -9075,7 +9075,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -9385,7 +9385,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -9772,7 +9772,7 @@ } }, "node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -11340,7 +11340,7 @@ } }, "node_modules/sass": { - "version": "1.65.1", + "version": "1.64.2", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-diam/src/main/ts_template/package-lock.json b/inception/inception-diam/src/main/ts_template/package-lock.json index 1dafc48cfb4..5985a56ca05 100644 --- a/inception/inception-diam/src/main/ts_template/package-lock.json +++ b/inception/inception-diam/src/main/ts_template/package-lock.json @@ -45,7 +45,7 @@ "dependencies": { "@stomp/stompjs": "^6.1.2", "@types/stompjs": "^2.3.5", - "bootstrap": "5.3.0" + "bootstrap": "5.3.1" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -120,7 +120,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -142,7 +142,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -250,7 +250,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -681,7 +681,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "funding": [ { "type": "github", @@ -694,7 +694,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { @@ -1206,14 +1206,14 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -1224,7 +1224,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -1525,7 +1525,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -1883,7 +1883,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -3968,7 +3968,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -3990,7 +3990,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -4088,7 +4088,7 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "node_modules/@types/semver": { @@ -4998,14 +4998,14 @@ } }, "node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -5016,7 +5016,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -5306,7 +5306,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -5668,7 +5668,7 @@ } }, "node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-external-editor/src/main/ts_template/package-lock.json b/inception/inception-external-editor/src/main/ts_template/package-lock.json index 5321afab525..a498d5d6fe4 100644 --- a/inception/inception-external-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-external-editor/src/main/ts_template/package-lock.json @@ -110,7 +110,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -132,7 +132,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -230,7 +230,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/semver": { @@ -1140,14 +1140,14 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -1158,7 +1158,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -1448,7 +1448,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -1810,7 +1810,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -3645,7 +3645,7 @@ "dependencies": { "@stomp/stompjs": "^6.1.2", "@types/stompjs": "^2.3.5", - "bootstrap": "5.3.0" + "bootstrap": "5.3.1" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -3720,7 +3720,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -3742,7 +3742,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -3850,7 +3850,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -4281,7 +4281,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "funding": [ { "type": "github", @@ -4294,7 +4294,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { @@ -4806,14 +4806,14 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -4824,7 +4824,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -5125,7 +5125,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -5483,7 +5483,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -7568,7 +7568,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -7590,7 +7590,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -8457,14 +8457,14 @@ } }, "node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -8475,7 +8475,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -8776,7 +8776,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -9119,7 +9119,7 @@ } }, "node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/esbuild-runner.config.js b/inception/inception-html-apache-annotator-editor/src/main/ts/esbuild-runner.config.js index 31493a4f5af..8f28240c0c0 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/esbuild-runner.config.js @@ -21,7 +21,7 @@ const sveltePreprocess = require('svelte-preprocess') module.exports = { type: 'bundle', // bundle or transform (see description above) esbuild: { - target: 'es6', + target: 'es2018', plugins: [ esbuildSvelte({ compilerOptions: { css: true }, diff --git a/inception/inception-html-editor/src/main/ts_template/package-lock.json b/inception/inception-html-editor/src/main/ts_template/package-lock.json index 7dd4ad5638b..2ece5a98d49 100644 --- a/inception/inception-html-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-html-editor/src/main/ts_template/package-lock.json @@ -73,7 +73,7 @@ "dependencies": { "@stomp/stompjs": "^6.1.2", "@types/stompjs": "^2.3.5", - "bootstrap": "5.3.0" + "bootstrap": "5.3.1" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -148,7 +148,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -170,7 +170,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -278,7 +278,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -709,7 +709,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "funding": [ { "type": "github", @@ -722,7 +722,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { @@ -1234,14 +1234,14 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -1252,7 +1252,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -1553,7 +1553,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -1911,7 +1911,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -3996,7 +3996,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -4018,7 +4018,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -4894,14 +4894,14 @@ } }, "node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -4912,7 +4912,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -5213,7 +5213,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -5556,7 +5556,7 @@ } }, "node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json b/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json index 334c34e083b..16f15f42409 100644 --- a/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json @@ -72,7 +72,7 @@ "dependencies": { "@stomp/stompjs": "^6.1.2", "@types/stompjs": "^2.3.5", - "bootstrap": "5.3.0" + "bootstrap": "5.3.1" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -147,7 +147,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -169,7 +169,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -277,7 +277,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -708,7 +708,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "funding": [ { "type": "github", @@ -721,7 +721,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { @@ -1233,14 +1233,14 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -1251,7 +1251,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -1552,7 +1552,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -1910,7 +1910,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -4274,7 +4274,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -4296,7 +4296,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -5355,14 +5355,14 @@ } }, "node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -5373,7 +5373,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -5648,7 +5648,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -5988,7 +5988,7 @@ } }, "node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-js-api/src/main/ts/esbuild-runner.config.js b/inception/inception-js-api/src/main/ts/esbuild-runner.config.js index 31493a4f5af..8f28240c0c0 100644 --- a/inception/inception-js-api/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-js-api/src/main/ts/esbuild-runner.config.js @@ -21,7 +21,7 @@ const sveltePreprocess = require('svelte-preprocess') module.exports = { type: 'bundle', // bundle or transform (see description above) esbuild: { - target: 'es6', + target: 'es2018', plugins: [ esbuildSvelte({ compilerOptions: { css: true }, diff --git a/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte b/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte index 4bfdaec4301..95eb20c43c4 100644 --- a/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte +++ b/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte @@ -105,7 +105,7 @@ movePopover(e); }); - root.addEventListener("mousedown", (e: MouseEvnet) => { + root.addEventListener("mousedown", (e: MouseEvent) => { if (popoverTimeoutId) { window.clearTimeout(popoverTimeoutId); popoverTimeoutId = undefined; @@ -198,7 +198,7 @@ .popover { width: var(--width); - max-width: min(var(--width), 90vw); + max-width: calc(min(var(--width), 90vw)); pointer-events: none; } diff --git a/inception/inception-js-api/src/main/ts_template/package-lock.json b/inception/inception-js-api/src/main/ts_template/package-lock.json index 177d9926a00..8eed1782c76 100644 --- a/inception/inception-js-api/src/main/ts_template/package-lock.json +++ b/inception/inception-js-api/src/main/ts_template/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@stomp/stompjs": "^6.1.2", "@types/stompjs": "^2.3.5", - "bootstrap": "5.3.0" + "bootstrap": "5.3.1" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -426,9 +426,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", - "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -449,9 +449,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", - "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.47.0.tgz", + "integrity": "sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -571,9 +571,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.4.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.9.tgz", - "integrity": "sha512-8e2HYcg7ohnTUbHk8focoklEQYvemQmu9M/f43DZVx43kHn0tE3BY/6gSDxS7k0SprtS0NHvj+L80cGLnoOUcQ==" + "version": "20.4.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.10.tgz", + "integrity": "sha512-vwzFiiy8Rn6E0MtA13/Cxxgpan/N6UeNYR9oUu6kuJWxu6zCk98trcDp8CBhbtaeuq9SykCmXkFr2lWLoPcvLg==" }, "node_modules/@types/pug": { "version": "2.0.6", @@ -1034,9 +1034,9 @@ } }, "node_modules/bootstrap": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.0.tgz", - "integrity": "sha512-UnBV3E3v4STVNQdms6jSGO2CvOkjUMdDAVR2V5N4uCMdaIkaQjbcEAMqRimDHIs4uqBYzDAKCQwCB+97tJgHQw==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.1.tgz", + "integrity": "sha512-jzwza3Yagduci2x0rr9MeFSORjcHpt0lRZukZPZQJT1Dth5qzV7XcgGqYzi39KGAVYR8QEDVoO0ubFKOxzMG+g==", "funding": [ { "type": "github", @@ -1048,7 +1048,7 @@ } ], "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "node_modules/brace-expansion": { @@ -1602,15 +1602,15 @@ } }, "node_modules/eslint": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", - "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz", + "integrity": "sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -1621,7 +1621,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -1941,9 +1941,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", - "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2335,9 +2335,9 @@ } }, "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", "dev": true, "dependencies": { "type-fest": "^0.20.2" diff --git a/inception/inception-pdf-editor/src/main/ts_template/package-lock.json b/inception/inception-pdf-editor/src/main/ts_template/package-lock.json index 3d02831accd..ebe5a74bc6c 100644 --- a/inception/inception-pdf-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-pdf-editor/src/main/ts_template/package-lock.json @@ -73,7 +73,7 @@ "dependencies": { "@stomp/stompjs": "^6.1.2", "@types/stompjs": "^2.3.5", - "bootstrap": "5.3.0" + "bootstrap": "5.3.1" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -148,7 +148,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -170,7 +170,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -278,7 +278,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -709,7 +709,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "funding": [ { "type": "github", @@ -722,7 +722,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { @@ -1234,14 +1234,14 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -1252,7 +1252,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -1553,7 +1553,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -1911,7 +1911,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -3996,7 +3996,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -4018,7 +4018,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -4804,14 +4804,14 @@ } }, "node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -4822,7 +4822,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -5097,7 +5097,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -5434,7 +5434,7 @@ } }, "node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-pdf-editor2/src/main/ts/esbuild-runner.config.js b/inception/inception-pdf-editor2/src/main/ts/esbuild-runner.config.js index 31493a4f5af..8f28240c0c0 100644 --- a/inception/inception-pdf-editor2/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-pdf-editor2/src/main/ts/esbuild-runner.config.js @@ -21,7 +21,7 @@ const sveltePreprocess = require('svelte-preprocess') module.exports = { type: 'bundle', // bundle or transform (see description above) esbuild: { - target: 'es6', + target: 'es2018', plugins: [ esbuildSvelte({ compilerOptions: { css: true }, diff --git a/inception/inception-pdf-editor2/src/main/ts/src/PdfAnnotationEditor.ts b/inception/inception-pdf-editor2/src/main/ts/src/PdfAnnotationEditor.ts index 3fdbac6b4e8..06c0637f26c 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/PdfAnnotationEditor.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/PdfAnnotationEditor.ts @@ -18,7 +18,7 @@ import type { AnnotationEditor, DiamAjax, Offsets } from '@inception-project/inception-js-api' import './PdfAnnotationEditor.css' import { initPdfAnno, getAnnotations as doLoadAnnotations, scrollTo } from './pdfanno/pdfanno' -import AbstractAnnotation from './pdfanno/core/src/annotation/abstract' +import AbstractAnnotation from './pdfanno/core/src/model/AbstractAnnotation' export class PdfAnnotationEditor implements AnnotationEditor { private ajax: DiamAjax diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/UI/relation.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/UI/relation.ts index a9b2f90c498..a27ef0be618 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/UI/relation.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/UI/relation.ts @@ -1,5 +1,5 @@ -import RelationAnnotation from '../annotation/relation.js' -import SpanAnnotation from '../annotation/span.js' +import RelationAnnotation from '../model/RelationAnnotation.js' +import SpanAnnotation from '../model/SpanAnnotation.js' import { getClientXY, scaleDown } from './utils' let relationAnnotation: RelationAnnotation | null = null diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/UI/span.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/UI/span.ts index 164f67f0b90..7dd36370677 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/UI/span.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/UI/span.ts @@ -1,5 +1,5 @@ import { scaleDown } from './utils' -import SpanAnnotation from '../annotation/span' +import SpanAnnotation from '../model/SpanAnnotation' import { getGlyphsInRange, findGlyphAtPointWithinPage } from '../../../page/textLayer' import { mergeRects } from '../render/renderSpan' diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/abstract.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/AbstractAnnotation.ts similarity index 89% rename from inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/abstract.ts rename to inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/AbstractAnnotation.ts index a405ec5f628..277ebfcde7c 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/abstract.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/AbstractAnnotation.ts @@ -2,13 +2,14 @@ import EventEmitter from 'events' import { appendChild } from '../render/appendChild' import { DEFAULT_RADIUS } from '../render/renderKnob' import { dispatchWindowEvent } from '../../../shared/util' -import { VID } from '@inception-project/inception-js-api' +import { Annotation, AnnotationOutEvent, AnnotationOverEvent, VID } from '@inception-project/inception-js-api' /** * Abstract Annotation Class. */ export default abstract class AbstractAnnotation extends EventEmitter { vid: VID | null = null + source: Annotation | null = null color?: string deleted = false disabled = false @@ -112,21 +113,30 @@ export default abstract class AbstractAnnotation extends EventEmitter { /** * Handle a hoverIn event. */ - handleHoverInEvent (e: Event) { + handleHoverInEvent (e: MouseEvent) { // console.log('handleHoverInEvent', this.element) + this.highlight() this.emit('hoverin') dispatchWindowEvent('annotationHoverIn', this) + + if (this.element && this.source) { + this.element.dispatchEvent(new AnnotationOverEvent(this.source, e)) + } } /** * Handle a hoverOut event. */ - handleHoverOutEvent (e: Event) { + handleHoverOutEvent (e: MouseEvent) { // console.log('handleHoverOutEvent') this.dehighlight() this.emit('hoverout') dispatchWindowEvent('annotationHoverOut', this) + + if (this.element && this.source) { + this.element.dispatchEvent(new AnnotationOutEvent(this.source, e)) + } } /** diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/container.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/AnnotationContainer.ts similarity index 95% rename from inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/container.ts rename to inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/AnnotationContainer.ts index cfed817fc9a..6a11e060329 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/container.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/AnnotationContainer.ts @@ -1,6 +1,6 @@ import { VID } from '@inception-project/inception-js-api' import { dispatchWindowEvent } from '../../../shared/util' -import AbstractAnnotation from './abstract' +import AbstractAnnotation from './AbstractAnnotation' /** * Annotation Container. diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/relation.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/RelationAnnotation.ts similarity index 97% rename from inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/relation.ts rename to inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/RelationAnnotation.ts index b702eaca64c..d12940586cd 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/relation.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/RelationAnnotation.ts @@ -1,6 +1,6 @@ -import AbstractAnnotation from './abstract' +import AbstractAnnotation from './AbstractAnnotation' import { anyOf } from '../../../shared/util' -import SpanAnnotation from './span' +import SpanAnnotation from './SpanAnnotation' /** * Relation Annotation (one-way / two-way / link) @@ -198,7 +198,7 @@ export default class RelationAnnotation extends AbstractAnnotation { /** * The callback that is called at hoverred in. */ - handleHoverInEvent (e) { + handleHoverInEvent (e: MouseEvent) { super.handleHoverInEvent(e) this.highlightRelAnnotations() } @@ -206,7 +206,7 @@ export default class RelationAnnotation extends AbstractAnnotation { /** * The callback that is called at hoverred out. */ - handleHoverOutEvent (e) { + handleHoverOutEvent (e: MouseEvent) { super.handleHoverOutEvent(e) this.dehighlightRelAnnotations() } diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/span.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/SpanAnnotation.ts similarity index 98% rename from inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/span.ts rename to inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/SpanAnnotation.ts index 5a2e50b926e..7ab1b698440 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/annotation/span.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/model/SpanAnnotation.ts @@ -1,4 +1,4 @@ -import AbstractAnnotation from './abstract' +import AbstractAnnotation from './AbstractAnnotation' import { getGlyphsInRange } from '../../../page/textLayer' import { Rectangle } from '../../../../vmodel/Rectangle' import { mergeRects } from '../render/renderSpan' diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/appendChild.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/appendChild.ts index 248e90b119e..ab6874a9ae5 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/appendChild.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/appendChild.ts @@ -1,8 +1,8 @@ import { renderSpan } from './renderSpan' import { renderRelation } from './renderRelation' -import AbstractAnnotation from '../annotation/abstract' -import SpanAnnotation from '../annotation/span' -import RelationAnnotation from '../annotation/relation' +import AbstractAnnotation from '../model/AbstractAnnotation' +import SpanAnnotation from '../model/SpanAnnotation' +import RelationAnnotation from '../model/RelationAnnotation' /** * Transform the rotation and scale of a node using SVG's native transform attribute. diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderKnob.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderKnob.ts index 95396037e10..ac22d166aa1 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderKnob.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderKnob.ts @@ -12,7 +12,6 @@ export function renderKnob ({ a, x, y, readOnly, text }): HTMLElement { [x, y] = adjustPoint(x, (y - (DEFAULT_RADIUS + 2)), DEFAULT_RADIUS) const knob = document.createElement('div') - knob.setAttribute('title', text) knob.classList.add('anno-knob') a.classList.forEach(c => knob.classList.add(c)) if (readOnly) { diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderRelation.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderRelation.ts index 3c9a024ee87..1fdfe4572ea 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderRelation.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderRelation.ts @@ -1,7 +1,7 @@ import setAttributes from '../utils/setAttributes' import { DEFAULT_RADIUS } from './renderKnob' import { findBezierControlPoint } from '../utils/relation.js' -import RelationAnnotation from '../annotation/relation' +import RelationAnnotation from '../model/RelationAnnotation' /** * Create a RELATION annotation. @@ -111,7 +111,6 @@ export function renderRelation (a: RelationAnnotation): HTMLDivElement { group.appendChild(relation) const base = document.createElement('div') - base.title = a.text || '' base.style.position = 'absolute' base.style.top = '0' base.style.left = '0' diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderSpan.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderSpan.ts index 2e451c45d70..1ac321a2861 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderSpan.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/core/src/render/renderSpan.ts @@ -1,6 +1,6 @@ import { renderKnob } from './renderKnob' import { hex2rgba } from '../utils/color' -import SpanAnnotation from '../annotation/span' +import SpanAnnotation from '../model/SpanAnnotation' import { Rectangle } from '../../../../vmodel/Rectangle' import { scale } from '../../../page/textLayer' import { VGlyph } from '../../../../vmodel/VGlyph' diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/page/pdf/PDFAnnoPage.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/page/pdf/PDFAnnoPage.ts index f3bd72840b1..790c10fbe1a 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/page/pdf/PDFAnnoPage.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/page/pdf/PDFAnnoPage.ts @@ -1,9 +1,9 @@ import { dispatchWindowEvent } from '../../shared/util' import { convertToExportY, paddingBetweenPages } from '../../shared/coords' import { adjustViewerSize } from '../util/window' -import AnnotationContainer from '../../core/src/annotation/container' -import SpanAnnotation from '../../core/src/annotation/span' -import RelationAnnotation from '../../core/src/annotation/relation' +import AnnotationContainer from '../../core/src/model/AnnotationContainer' +import SpanAnnotation from '../../core/src/model/SpanAnnotation' +import RelationAnnotation from '../../core/src/model/RelationAnnotation' import { VID } from '@inception-project/inception-js-api' /** diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts index f376a9c0122..a544238b29c 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts @@ -4,19 +4,20 @@ import * as textLayer from './page/textLayer' import PDFAnnoPage from './page/pdf/PDFAnnoPage' import { dispatchWindowEvent } from './shared/util' import EventEmitter from 'events' -import AnnotationContainer from './core/src/annotation/container' -import AbstractAnnotation from './core/src/annotation/abstract' +import AnnotationContainer from './core/src/model/AnnotationContainer' +import AbstractAnnotation from './core/src/model/AbstractAnnotation' import { installSpanSelection } from './core/src/UI/span' import { installRelationSelection } from './core/src/UI/relation' -import { unpackCompactAnnotatedTextV2, DiamAjax, Offsets, VID, AnnotatedText, Span, Relation, TextMarker } from '@inception-project/inception-js-api' +import { unpackCompactAnnotatedTextV2, DiamAjax, Offsets, AnnotatedText, Span, Relation, TextMarker } from '@inception-project/inception-js-api' import { CompactAnnotatedText } from '@inception-project/inception-js-api/src/model/compact_v2' import { DiamLoadAnnotationsOptions } from '@inception-project/inception-js-api/src/diam/DiamAjax' -import SpanAnnotation from './core/src/annotation/span' +import SpanAnnotation from './core/src/model/SpanAnnotation' import { getGlyphAtTextOffset, getGlyphsInRange } from './page/textLayer' -import RelationAnnotation from './core/src/annotation/relation' +import RelationAnnotation from './core/src/model/RelationAnnotation' import { createRect, mapToDocumentCoordinates, mergeRects } from './core/src/render/renderSpan' import { transform } from './core/src/render/appendChild' import { Rectangle } from '../vmodel/Rectangle' +import AnnotationDetailPopOver from '@inception-project/inception-js-api/src/widget/AnnotationDetailPopOver.svelte' // TODO make it a global const. // const svgLayerId = 'annoLayer' @@ -81,6 +82,14 @@ export async function initPdfAnno (ajax: DiamAjax): Promise { installSpanSelection() installRelationSelection() + this.popover = new AnnotationDetailPopOver({ + target: document.body, + props: { + root: document.body, + ajax: diamAjax + } + }) + // Show a content. displayViewer() @@ -325,6 +334,7 @@ function renderSpan (doc: AnnotatedText, span: Span) { } const spanAnnotation = new SpanAnnotation() + spanAnnotation.source = span spanAnnotation.vid = span.vid spanAnnotation.textRange = range spanAnnotation.page = page @@ -348,6 +358,7 @@ function renderRelation (doc: AnnotatedText, relation: Relation) { } const relationAnnotation = new RelationAnnotation() + relationAnnotation.source = relation relationAnnotation.vid = relation.vid relationAnnotation.rel1Annotation = source as SpanAnnotation relationAnnotation.rel2Annotation = target as SpanAnnotation diff --git a/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json b/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json index c672bba4fca..b0dd750a5dc 100644 --- a/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json +++ b/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json @@ -36,7 +36,7 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "sass": "^1.57.1", + "sass": "~1.64.2", "svelte": "^3.55.0", "svelte-preprocess": "^5.0.0", "typescript": "^4.9.4", @@ -86,7 +86,7 @@ "dependencies": { "@stomp/stompjs": "^6.1.2", "@types/stompjs": "^2.3.5", - "bootstrap": "5.3.0" + "bootstrap": "5.3.1" }, "devDependencies": { "@types/chai": "^4.3.1", @@ -161,7 +161,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -183,7 +183,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -291,7 +291,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.9", + "version": "20.4.10", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -722,7 +722,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "funding": [ { "type": "github", @@ -735,7 +735,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { @@ -1247,14 +1247,14 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -1265,7 +1265,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -1566,7 +1566,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -1924,7 +1924,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -4009,7 +4009,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -4031,7 +4031,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -5061,14 +5061,14 @@ } }, "node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -5079,7 +5079,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -5380,7 +5380,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -5745,7 +5745,7 @@ } }, "node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -7013,7 +7013,7 @@ } }, "node_modules/sass": { - "version": "1.65.1", + "version": "1.64.2", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-pdf-editor2/src/main/ts_template/package.json b/inception/inception-pdf-editor2/src/main/ts_template/package.json index 9db1ae14780..c5f18bd8a4c 100644 --- a/inception/inception-pdf-editor2/src/main/ts_template/package.json +++ b/inception/inception-pdf-editor2/src/main/ts_template/package.json @@ -3,6 +3,7 @@ "version": "${semver}", "author": "hshindo, yoheiMune, INCEpTION Team", "license": "(MIT AND Apache-2.0)", + "homepage": "https://github.com/inception-project/inception#readme", "repository": { "type": "git", "url": "git+https://github.com/inception-project/inception.git" diff --git a/inception/inception-project-export/src/main/ts/esbuild-runner.config.js b/inception/inception-project-export/src/main/ts/esbuild-runner.config.js index 31493a4f5af..8f28240c0c0 100644 --- a/inception/inception-project-export/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-project-export/src/main/ts/esbuild-runner.config.js @@ -21,7 +21,7 @@ const sveltePreprocess = require('svelte-preprocess') module.exports = { type: 'bundle', // bundle or transform (see description above) esbuild: { - target: 'es6', + target: 'es2018', plugins: [ esbuildSvelte({ compilerOptions: { css: true }, diff --git a/inception/inception-project-export/src/main/ts_template/package-lock.json b/inception/inception-project-export/src/main/ts_template/package-lock.json index e8fe911c547..6e994d79a41 100644 --- a/inception/inception-project-export/src/main/ts_template/package-lock.json +++ b/inception/inception-project-export/src/main/ts_template/package-lock.json @@ -36,7 +36,7 @@ "jsdom-global": "^3.0.2", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", - "sass": "^1.57.1", + "sass": "~1.64.2", "svelte-preprocess": "^5.0.0", "typescript": "^4.9.4", "uuid": "^8.3.2", @@ -619,9 +619,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", - "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -642,9 +642,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", - "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.47.0.tgz", + "integrity": "sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2026,15 +2026,15 @@ } }, "node_modules/eslint": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", - "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz", + "integrity": "sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -2045,7 +2045,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -2375,9 +2375,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", - "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2796,9 +2796,9 @@ } }, "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -4510,9 +4510,9 @@ } }, "node_modules/sass": { - "version": "1.65.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", - "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", + "version": "1.64.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.2.tgz", + "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/inception/inception-recommendation/src/main/ts/esbuild-runner.config.js b/inception/inception-recommendation/src/main/ts/esbuild-runner.config.js index 31493a4f5af..8f28240c0c0 100644 --- a/inception/inception-recommendation/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-recommendation/src/main/ts/esbuild-runner.config.js @@ -21,7 +21,7 @@ const sveltePreprocess = require('svelte-preprocess') module.exports = { type: 'bundle', // bundle or transform (see description above) esbuild: { - target: 'es6', + target: 'es2018', plugins: [ esbuildSvelte({ compilerOptions: { css: true }, diff --git a/inception/inception-recommendation/src/main/ts_template/package-lock.json b/inception/inception-recommendation/src/main/ts_template/package-lock.json index 54b2623f244..f2fc2724402 100644 --- a/inception/inception-recommendation/src/main/ts_template/package-lock.json +++ b/inception/inception-recommendation/src/main/ts_template/package-lock.json @@ -36,7 +36,7 @@ "jsdom-global": "^3.0.2", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", - "sass": "^1.57.1", + "sass": "~1.64.2", "svelte": "^3.55.0", "svelte-preprocess": "^5.0.0", "typescript": "^4.9.4", @@ -620,9 +620,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", - "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -643,9 +643,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", - "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.47.0.tgz", + "integrity": "sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2027,15 +2027,15 @@ } }, "node_modules/eslint": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", - "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz", + "integrity": "sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -2046,7 +2046,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -2376,9 +2376,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", - "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2797,9 +2797,9 @@ } }, "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -4511,9 +4511,9 @@ } }, "node_modules/sass": { - "version": "1.65.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", - "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", + "version": "1.64.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.2.tgz", + "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/inception/inception-ui-dashboard-activity/src/main/ts/esbuild-runner.config.js b/inception/inception-ui-dashboard-activity/src/main/ts/esbuild-runner.config.js index ba069680a03..5261efdf384 100644 --- a/inception/inception-ui-dashboard-activity/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-ui-dashboard-activity/src/main/ts/esbuild-runner.config.js @@ -21,7 +21,7 @@ const sveltePreprocess = require( "svelte-preprocess") module.exports = { type: "bundle", // bundle or transform (see description above) esbuild: { - target: 'es6', + target: 'es2018', plugins: [ esbuildSvelte({ preprocess: sveltePreprocess(), diff --git a/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json b/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json index 2656c535a89..b41a3adb626 100644 --- a/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json @@ -36,7 +36,7 @@ "jsdom-global": "^3.0.2", "mocha": "^10.0.0", "mocha-junit-reporter": "^2.1.0", - "sass": "^1.57.1", + "sass": "~1.64.2", "svelte-preprocess": "^5.0.0", "typescript": "^4.9.4", "uuid": "^8.3.2", @@ -619,9 +619,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.1.tgz", - "integrity": "sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -642,9 +642,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.46.0.tgz", - "integrity": "sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.47.0.tgz", + "integrity": "sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2026,15 +2026,15 @@ } }, "node_modules/eslint": { - "version": "8.46.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.46.0.tgz", - "integrity": "sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz", + "integrity": "sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -2045,7 +2045,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -2375,9 +2375,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.2.tgz", - "integrity": "sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2796,9 +2796,9 @@ } }, "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -4510,9 +4510,9 @@ } }, "node_modules/sass": { - "version": "1.65.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", - "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", + "version": "1.64.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.2.tgz", + "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/inception/inception-ui-kb/src/main/ts_template/package-lock.json b/inception/inception-ui-kb/src/main/ts_template/package-lock.json index 4671a8238a4..21987b03b27 100644 --- a/inception/inception-ui-kb/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-kb/src/main/ts_template/package-lock.json @@ -10,8 +10,8 @@ "license": "Apache-2.0", "devDependencies": { "@inception-project/inception-bootstrap": "${semver}", - "bootstrap": "5.3.0", - "sass": "^1.57.1" + "bootstrap": "5.3.1", + "sass": "~1.64.2" } }, "../../../../inception-bootstrap/src/main/ts": { @@ -20,11 +20,11 @@ "dev": true, "license": "Apache-2.0", "devDependencies": { - "bootstrap": "5.3.0", + "bootstrap": "5.3.1", "cross-env": "^7.0.3", "esbuild": "~0.16.17", "esbuild-sass-plugin": "~2.5.0", - "sass": "^1.57.1" + "sass": "~1.64.2" } }, "../../../../inception-bootstrap/src/main/ts/node_modules/@esbuild/darwin-arm64": { @@ -73,7 +73,7 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "dev": true, "funding": [ { @@ -87,7 +87,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "../../../../inception-bootstrap/src/main/ts/node_modules/braces": { @@ -257,7 +257,7 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, "license": "MIT" }, @@ -273,7 +273,7 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -359,11 +359,11 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -375,7 +375,7 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.64.2", "dev": true, "license": "MIT", "dependencies": { @@ -488,7 +488,7 @@ } }, "node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "dev": true, "funding": [ { @@ -502,7 +502,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "node_modules/braces": { @@ -650,7 +650,7 @@ } }, "node_modules/sass": { - "version": "1.65.1", + "version": "1.64.2", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-ui-scheduling/src/main/ts/esbuild-runner.config.js b/inception/inception-ui-scheduling/src/main/ts/esbuild-runner.config.js index 31493a4f5af..8f28240c0c0 100644 --- a/inception/inception-ui-scheduling/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-ui-scheduling/src/main/ts/esbuild-runner.config.js @@ -21,7 +21,7 @@ const sveltePreprocess = require('svelte-preprocess') module.exports = { type: 'bundle', // bundle or transform (see description above) esbuild: { - target: 'es6', + target: 'es2018', plugins: [ esbuildSvelte({ compilerOptions: { css: true }, diff --git a/inception/inception-ui-search/src/main/ts_template/package-lock.json b/inception/inception-ui-search/src/main/ts_template/package-lock.json index 3346ae934df..dd05b8694bc 100644 --- a/inception/inception-ui-search/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-search/src/main/ts_template/package-lock.json @@ -9,7 +9,7 @@ "version": "${semver}", "license": "Apache-2.0", "devDependencies": { - "sass": "^1.57.1" + "sass": "~1.64.2" } }, "node_modules/anymatch": { @@ -193,9 +193,9 @@ } }, "node_modules/sass": { - "version": "1.65.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", - "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", + "version": "1.64.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.2.tgz", + "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/pom.xml b/pom.xml index a6f9e3c4dad..3cad14ada2d 100644 --- a/pom.xml +++ b/pom.xml @@ -151,7 +151,7 @@ 18.14.2 0.2.0 3.2.6 - 5.3.0 + 5.3.1 ^4.3.6 ^7.0.3 ^2.0.1 @@ -184,7 +184,7 @@ 1.8.2 0.1.11 1.7.7 - ^1.57.1 + ~1.64.2 ^6.1.2 ^3.55.0 ^5.0.0 From 71a8a307277838967565dbe359753c30dfc72da9 Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Sat, 12 Aug 2023 18:29:18 +0200 Subject: [PATCH 08/17] #4139 - Reusable popover component for annotation editors - Raise target JS level to es2018 - Add new popover to the brat editor - Remove rests of old lazy details code from brat editor - esbuild 0.16.17 -> 0.18.19 - esbuild-sass-plugin 2.5.0 -> 2.10.0 - esbuild-svelte 0.7.3 -> 0.7.4 - mocha 10.0.0 -> 10.2.0 - mocha-junit-reporter 2.1.0 -> 2.2.1 - popperjs 2.11.7 -> 2.11.8 - svelte 3.55.0 -> 3.59.2 - svelte-preprocess 5.0.0 -> 5.0.4 - ts-mocha -> 10.0.0 - types-mocha 9.1.1 -> 10.0.1 - Regenerate package.json files --- .../src/main/ts_template/package-lock.json | 199 +- .../src/main/ts/build.mjs | 2 +- .../src/main/ts/esbuild-runner.config.js | 4 +- .../src/main/ts/src/BratEditor.ts | 10 + .../AnnotationResizeHandle.svelte | 2 - .../src/main/ts/src/visualizer/Arc.ts | 1 - .../src/main/ts/src/visualizer/Entity.ts | 2 - .../src/main/ts/src/visualizer/Visualizer.ts | 79 +- .../main/ts/src/visualizer_ui/VisualizerUI.ts | 43 +- .../src/main/ts_template/package-lock.json | 254 +- .../src/main/ts_template/package.json | 1 + .../src/main/ts_template/package-lock.json | 227 +- .../src/main/ts_template/package-lock.json | 152 +- .../src/main/ts_template/package-lock.json | 226 +- .../src/main/ts_template/package-lock.json | 4796 ++--------------- .../src/main/ts_template/package-lock.json | 162 +- .../src/main/ts_template/package-lock.json | 162 +- .../inception-js-api/src/main/ts/index.ts | 2 +- .../src/widget/AnnotationDetailPopOver.svelte | 21 +- .../src/main/ts_template/package-lock.json | 220 +- .../src/main/ts_template/package.json | 4 +- .../src/main/ts_template/package-lock.json | 138 +- .../src/main/ts/src/pdfanno/pdfanno.ts | 2 +- .../src/main/ts_template/package-lock.json | 161 +- .../src/main/ts_template/package-lock.json | 215 +- .../src/main/ts_template/package-lock.json | 217 +- .../src/main/ts_template/package-lock.json | 215 +- .../src/main/ts_template/package-lock.json | 61 +- .../src/main/ts_template/package-lock.json | 478 +- inception/update-package-lock.sh | 19 +- pom.xml | 19 +- 31 files changed, 2164 insertions(+), 5930 deletions(-) diff --git a/inception/inception-bootstrap/src/main/ts_template/package-lock.json b/inception/inception-bootstrap/src/main/ts_template/package-lock.json index 8043f294a42..05c4b5bd977 100644 --- a/inception/inception-bootstrap/src/main/ts_template/package-lock.json +++ b/inception/inception-bootstrap/src/main/ts_template/package-lock.json @@ -11,15 +11,15 @@ "devDependencies": { "bootstrap": "5.3.1", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", - "esbuild-sass-plugin": "~2.5.0", + "esbuild": "~0.18.19", + "esbuild-sass-plugin": "~2.10.0", "sass": "~1.64.2" } }, "node_modules/@esbuild/android-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz", - "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", "cpu": [ "arm" ], @@ -33,9 +33,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", - "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", "cpu": [ "arm64" ], @@ -49,9 +49,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz", - "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", "cpu": [ "x64" ], @@ -65,9 +65,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", - "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", "cpu": [ "arm64" ], @@ -81,9 +81,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", - "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", "cpu": [ "x64" ], @@ -97,9 +97,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", - "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", "cpu": [ "arm64" ], @@ -113,9 +113,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", - "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", "cpu": [ "x64" ], @@ -129,9 +129,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", - "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", "cpu": [ "arm" ], @@ -145,9 +145,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", - "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", "cpu": [ "arm64" ], @@ -161,9 +161,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", - "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", "cpu": [ "ia32" ], @@ -177,9 +177,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", - "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", "cpu": [ "loong64" ], @@ -193,9 +193,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", - "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", "cpu": [ "mips64el" ], @@ -209,9 +209,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", - "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", "cpu": [ "ppc64" ], @@ -225,9 +225,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", - "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", "cpu": [ "riscv64" ], @@ -241,9 +241,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", - "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", "cpu": [ "s390x" ], @@ -257,9 +257,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", - "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", "cpu": [ "x64" ], @@ -273,9 +273,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", - "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", "cpu": [ "x64" ], @@ -289,9 +289,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", - "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", "cpu": [ "x64" ], @@ -305,9 +305,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", - "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", "cpu": [ "x64" ], @@ -321,9 +321,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", - "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", "cpu": [ "arm64" ], @@ -337,9 +337,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", - "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", "cpu": [ "ia32" ], @@ -353,9 +353,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", - "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", "cpu": [ "x64" ], @@ -492,9 +492,9 @@ } }, "node_modules/esbuild": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", - "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, "hasInstallScript": true, "bin": { @@ -504,42 +504,41 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.5.0.tgz", - "integrity": "sha512-SKWcvZwB+3/3eLhSCscJfb9AEOgL3oYlwOaItnXpXNPVj9Hc1Iwf5Cx4muUd+H+6zKyUwviAtVdRwcUsocUYgA==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", + "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", "dev": true, "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/fill-range": { diff --git a/inception/inception-brat-editor/src/main/ts/build.mjs b/inception/inception-brat-editor/src/main/ts/build.mjs index 65ae5a622c2..a09912fff6a 100644 --- a/inception/inception-brat-editor/src/main/ts/build.mjs +++ b/inception/inception-brat-editor/src/main/ts/build.mjs @@ -33,7 +33,7 @@ const defaults = { bundle: true, sourcemap: true, minify: !argv.live, - target: 'es6', + target: 'es2018', loader: { '.ts': 'ts' }, logLevel: 'info', plugins: [ diff --git a/inception/inception-brat-editor/src/main/ts/esbuild-runner.config.js b/inception/inception-brat-editor/src/main/ts/esbuild-runner.config.js index 8f28240c0c0..92d338afb40 100644 --- a/inception/inception-brat-editor/src/main/ts/esbuild-runner.config.js +++ b/inception/inception-brat-editor/src/main/ts/esbuild-runner.config.js @@ -17,12 +17,14 @@ */ const esbuildSvelte = require('esbuild-svelte') const sveltePreprocess = require('svelte-preprocess') +const { sassPlugin } = require('esbuild-sass-plugin') module.exports = { - type: 'bundle', // bundle or transform (see description above) + type: 'bundle', esbuild: { target: 'es2018', plugins: [ + sassPlugin(), esbuildSvelte({ compilerOptions: { css: true }, preprocess: sveltePreprocess({ sourceMap: true }) diff --git a/inception/inception-brat-editor/src/main/ts/src/BratEditor.ts b/inception/inception-brat-editor/src/main/ts/src/BratEditor.ts index 3cffb830ce1..07d3f80222c 100644 --- a/inception/inception-brat-editor/src/main/ts/src/BratEditor.ts +++ b/inception/inception-brat-editor/src/main/ts/src/BratEditor.ts @@ -23,11 +23,13 @@ import { Visualizer } from './visualizer/Visualizer' import { VisualizerUI } from './visualizer_ui/VisualizerUI' import './style-vis.scss' import { ResizeManager } from './annotator_ui/ResizeManager' +import AnnotationDetailPopOver from '@inception-project/inception-js-api/src/widget/AnnotationDetailPopOver.svelte' export class BratEditor implements AnnotationEditor { dispatcher: Dispatcher visualizer: Visualizer resizer: ResizeManager + popover: AnnotationDetailPopOver public constructor (element: Element, ajax: DiamAjax, props: AnnotationEditorProperties) { const markupId = element.getAttribute('id') @@ -51,6 +53,14 @@ export class BratEditor implements AnnotationEditor { } this.resizer = new ResizeManager(this.dispatcher, this.visualizer, ajax) + + this.popover = new AnnotationDetailPopOver({ + target: document.body, + props: { + root: element, + ajax + } + }) } post (command: Message, data: any) : void { diff --git a/inception/inception-brat-editor/src/main/ts/src/annotator_ui/AnnotationResizeHandle.svelte b/inception/inception-brat-editor/src/main/ts/src/annotator_ui/AnnotationResizeHandle.svelte index a9cfa97248f..3fb23d13b90 100644 --- a/inception/inception-brat-editor/src/main/ts/src/annotator_ui/AnnotationResizeHandle.svelte +++ b/inception/inception-brat-editor/src/main/ts/src/annotator_ui/AnnotationResizeHandle.svelte @@ -50,8 +50,6 @@ }) $: { - console.debug("reactive update") - const rects = highlight ? highlight.getClientRects() : [] visibility = rects.length > 0 ? 'visible' : 'hidden' opacity = dragging ? 0.0 : 1 diff --git a/inception/inception-brat-editor/src/main/ts/src/visualizer/Arc.ts b/inception/inception-brat-editor/src/main/ts/src/visualizer/Arc.ts index e61351b129a..150c9019028 100644 --- a/inception/inception-brat-editor/src/main/ts/src/visualizer/Arc.ts +++ b/inception/inception-brat-editor/src/main/ts/src/visualizer/Arc.ts @@ -54,7 +54,6 @@ export class Arc { equiv = false eventDescId: string relation = false - normalizations: Array<[string?, string?, string?]> = [] marked: MarkerType hidden = false diff --git a/inception/inception-brat-editor/src/main/ts/src/visualizer/Entity.ts b/inception/inception-brat-editor/src/main/ts/src/visualizer/Entity.ts index acb3fd37f2a..38ada66b04e 100644 --- a/inception/inception-brat-editor/src/main/ts/src/visualizer/Entity.ts +++ b/inception/inception-brat-editor/src/main/ts/src/visualizer/Entity.ts @@ -74,7 +74,6 @@ export class Entity { annotatorNotes? : string attributeMerge: Record = {} // for box, cross, etc. that are span-global fragments: Fragment[] = [] - normalizations: Array<[string?, string?, string?]> = [] wholeFrom: number wholeTo: number comment: Comment @@ -119,7 +118,6 @@ export class Entity { this.attributeCueFor = {} this.attributeMerge = {} this.fragments = [] - this.normalizations = [] } /** diff --git a/inception/inception-brat-editor/src/main/ts/src/visualizer/Visualizer.ts b/inception/inception-brat-editor/src/main/ts/src/visualizer/Visualizer.ts index f2b3138da97..96938a0569b 100644 --- a/inception/inception-brat-editor/src/main/ts/src/visualizer/Visualizer.ts +++ b/inception/inception-brat-editor/src/main/ts/src/visualizer/Visualizer.ts @@ -59,7 +59,7 @@ import '@svgdotjs/svg.filter.js' import { SVG, Element as SVGJSElement, Svg, Container, Text as SVGText, PathCommand, Rect, ArrayXY, SVGTypeMapping, Defs } from '@svgdotjs/svg.js' import { INSTANCE as Configuration } from '../configuration/Configuration' import { INSTANCE as Util } from '../util/Util' -import { Offsets } from '@inception-project/inception-js-api' +import { AnnotationOutEvent, AnnotationOverEvent, Offsets, Relation, Span } from '@inception-project/inception-js-api' declare const $: JQueryStatic /** @@ -82,7 +82,6 @@ function setSourceDataDefaults (sourceData: SourceData) { 'entities', 'equivs', 'events', - 'normalizations', 'relations', 'triggers' ], (attrNo, attr) => { @@ -3519,6 +3518,21 @@ export class Visualizer { this.triggerRender() } + onMouseOutSpan (evt: MouseEvent) { + if (!this.data) return + + const target = $(evt.target) + const id = target.attr('data-span-id') + const span = this.data.spans[id] + + if (span.hidden) { return } + + if (evt.target) { + console.log(span) + evt.target.dispatchEvent(new AnnotationOutEvent({ vid: id, layer: { id: span.type, name: Util.spanDisplayForm(this.entityTypes, span.type) } }, evt.originalEvent)) + } + } + onMouseOverSpan (evt: MouseEvent) { if (!this.data) return @@ -3528,13 +3542,19 @@ export class Visualizer { if (span.hidden) { return } + if (evt.target) { + const fakeSpan = new Span() + fakeSpan.vid = id + fakeSpan.layer = { id: span.type, name: Util.spanDisplayForm(this.entityTypes, span.type) } + evt.target.dispatchEvent(new AnnotationOverEvent(fakeSpan, evt.originalEvent)) + } + this.dispatcher.post('displaySpanComment', [ evt, target, id, span.type, span.attributeText, span.text, span.hovertext, span.comment && span.comment.text, - span.comment && span.comment.type, - span.normalizations + span.comment && span.comment.type ]) if (span.actionButtons) { @@ -3613,6 +3633,33 @@ export class Visualizer { this.highlight.push(highlightBox) } + onMouseOutArc (evt: MouseEvent) { + if (!this.data) return + + const target = $(evt.target) + const originSpanId = target.attr('data-arc-origin') + const role = target.attr('data-arc-role') + const arcEventDescId: string = target.attr('data-arc-ed') + let arcId: string | undefined + + if (arcEventDescId) { + const eventDesc = this.data.eventDescs[arcEventDescId] + if (eventDesc.relation) { + // among arcs, only ones corresponding to relations have "independent" IDs + arcId = arcEventDescId + } + } + + const originSpanType = this.data.spans[originSpanId].type || '' + + if (arcId) { + if (evt.target) { + const labelText = Util.arcDisplayForm(this.entityTypes, originSpanType, role, this.relationTypes) + evt.target.dispatchEvent(new AnnotationOutEvent({ vid: arcId, layer: { id: role, name: labelText } }, evt.originalEvent)) + } + } + } + onMouseOverArc (evt: MouseEvent) { if (!this.data) return @@ -3650,19 +3697,23 @@ export class Visualizer { const originSpanType = this.data.spans[originSpanId].type || '' const targetSpanType = this.data.spans[targetSpanId].type || '' - let normalizations : Array<[string?, string?, string?]> = [] - if (arcId) { - normalizations = this.data.arcById[arcId].normalizations - } this.dispatcher.post('displayArcComment', [ evt, target, symmetric, arcId, originSpanId, originSpanType, role, targetSpanId, targetSpanType, - commentText, commentType, normalizations + commentText, commentType ]) if (arcId) { + if (evt.target) { + const fakeRelation = new Relation() + fakeRelation.vid = arcId + const labelText = Util.arcDisplayForm(this.entityTypes, originSpanType, role, this.relationTypes) + fakeRelation.layer = { id: role, name: labelText } + evt.target.dispatchEvent(new AnnotationOverEvent(fakeRelation, evt.originalEvent)) + } + this.highlightArcs = this.svg .find(`g[data-id="${arcId}"]`) .map(e => e.addClass('highlight')) @@ -3731,6 +3782,16 @@ export class Visualizer { // arc.removeClass('highlight') // } // } + + if (target.getAttribute('data-span-id')) { + this.onMouseOutSpan(evt) + return + } + + if (target.getAttribute('data-arc-role')) { + this.onMouseOutArc(evt) + return + } } onSelectionStarted () { diff --git a/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts b/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts index 931102feb54..78192706f85 100644 --- a/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts +++ b/inception/inception-brat-editor/src/main/ts/src/visualizer_ui/VisualizerUI.ts @@ -49,13 +49,10 @@ import { Entity } from '../visualizer/Entity' import { AttributeType } from '../visualizer/AttributeType' export class VisualizerUI { - private spanTypes: Record | null = null - private relationTypesHash: Record | null = null + private spanTypes: Record = {} + private relationTypesHash: Record = {} private data: DocumentData | null = null - // normalization: server-side DB by norm DB name - private normServerDbByNormDbName = {} - private dispatcher: Dispatcher private commentPopup: JQuery @@ -73,8 +70,8 @@ export class VisualizerUI { this.dispatcher .on('init', this, this.init) .on('dataReady', this, this.rememberData) - .on('displaySpanComment', this, this.displaySpanComment) - .on('displayArcComment', this, this.displayArcComment) +// .on('displaySpanComment', this, this.displaySpanComment) +// .on('displayArcComment', this, this.displayArcComment) .on('displaySentComment', this, this.displaySentComment) .on('hideComment', this, this.hideComment) .on('resize', this, this.onResize) @@ -89,6 +86,9 @@ export class VisualizerUI { /* START comment popup - related */ + /** + * @deprecated To be replaced with the new Popover component + */ adjustToCursor (evt: MouseEvent, element, offset, top, right) { // get the real width, without wrapping element.css({ left: 0, top: 0 }) @@ -117,10 +117,16 @@ export class VisualizerUI { element.css({ top: y, left: x }) } + /** + * @deprecated To be replaced with the new Popover component + */ displaySentComment (evt: MouseEvent, commentText: string, commentType: CommentType) { this.displayComment(evt, '', commentText, commentType) } + /** + * @deprecated To be replaced with the new Popover component + */ displayComment (evt: MouseEvent, comment: string, commentText: string, commentType: CommentType, immediately?: boolean) { let idtype = '' if (commentType) { @@ -150,6 +156,9 @@ export class VisualizerUI { // to avoid clobbering on delayed response commentPopupNormInfoSeqId = 0 + /** + * @deprecated To be replaced with the new Popover component + */ compareLazyDetails (a, b) { // images at the top if (a[0].toLowerCase() === '') return -1 @@ -158,8 +167,11 @@ export class VisualizerUI { return Util.cmp(a[2], b[2]) } + /** + * @deprecated To be replaced with the new Popover component + */ displaySpanComment (evt, target, spanId, spanType, mods, spanText, hoverText, - commentText, commentType, normalizations) { + commentText, commentType) { const immediately = false let comment = ('
' + '' + Util.escapeHTML(Util.spanDisplayForm(this.spanTypes, spanType)) + '' + ' ' + @@ -185,8 +197,12 @@ export class VisualizerUI { this.initiateNormalizationAjaxCall(spanId, spanType) } + /** + * @deprecated To be replaced with the new Popover component + */ displayArcComment (evt, target, symmetric, arcId, originSpanId, originSpanType, - role, targetSpanId, targetSpanType, commentText, commentType, normalizations) { + role, targetSpanId, targetSpanType, commentText, commentType) { + if (!this.data) return const arcRole = target.attr('data-arc-role') // in arrowStr, — == mdash, → == Unicode right arrow const arrowStr = symmetric ? '—' : '→' @@ -205,6 +221,9 @@ export class VisualizerUI { this.initiateNormalizationAjaxCall(arcId, arcRole) } + /** + * @deprecated To be replaced with the new Popover component + */ initiateNormalizationAjaxCall (id: VID, type: number) { this.ajax.loadLazyDetails(id, type).then(detailGroups => { // extend comment popup with normalization data @@ -259,6 +278,9 @@ export class VisualizerUI { }) } + /** + * @deprecated To be replaced with the new Popover component + */ hideComment () { clearTimeout(this.displayCommentTimer) if (this.commentDisplayed) { @@ -276,6 +298,9 @@ export class VisualizerUI { clearTimeout(this.displayButtonsTimer) } + /** + * @deprecated To be replaced with the new Popover component + */ onMouseMove (evt: MouseEvent) { if (this.commentDisplayed) { this.adjustToCursor(evt, this.commentPopup, 10, true, true) diff --git a/inception/inception-brat-editor/src/main/ts_template/package-lock.json b/inception/inception-brat-editor/src/main/ts_template/package-lock.json index afc1924fe5b..6014e63f85e 100644 --- a/inception/inception-brat-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-brat-editor/src/main/ts_template/package-lock.json @@ -13,21 +13,22 @@ "@inception-project/inception-js-api": "${semver}", "@svgdotjs/svg.filter.js": "^3.0.8", "@svgdotjs/svg.js": "^3.1.2", + "bootstrap": "5.3.1", "fast-json-patch": "^3.1.1" }, "devDependencies": { "@types/chai": "^4.3.1", "@types/events": "^3.0.0", "@types/jquery": "^3.5.14", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@types/urijs": "^1.19.19", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -36,11 +37,11 @@ "eslint-plugin-promise": "^6.1.1", "eslint-plugin-svelte3": "^4.0.0", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "sass": "~1.64.2", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -58,14 +59,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -73,8 +74,8 @@ "eslint-plugin-n": "^15.6.0", "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -89,7 +90,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -241,7 +242,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -1072,7 +1073,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1083,28 +1084,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1124,16 +1125,15 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-diam/src/main/ts/node_modules/escalade": { @@ -1986,8 +1986,7 @@ "../../../../inception-diam/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -3074,7 +3073,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -3161,7 +3159,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -3665,14 +3662,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -3682,9 +3679,9 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "mocha-junit-reporter": "^2.2.1", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -3699,7 +3696,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -3861,7 +3858,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -4726,7 +4723,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4737,28 +4734,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -4778,16 +4775,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -5659,8 +5655,7 @@ "../../../../inception-js-api/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -6804,7 +6799,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -6905,7 +6899,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -7547,7 +7540,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -7688,6 +7681,15 @@ "node": ">= 8" } }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "node_modules/@svgdotjs/svg.filter.js": { "version": "3.0.8", "license": "MIT", @@ -7735,7 +7737,7 @@ "license": "MIT" }, "node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -8161,6 +8163,23 @@ "node": ">=8" } }, + "node_modules/bootstrap": { + "version": "5.3.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, "node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -8574,7 +8593,7 @@ "license": "MIT" }, "node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -8585,28 +8604,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-runner-plugins": { @@ -8626,16 +8645,15 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/esbuild-svelte": { diff --git a/inception/inception-brat-editor/src/main/ts_template/package.json b/inception/inception-brat-editor/src/main/ts_template/package.json index 22e83d5e3cc..048af110dfa 100644 --- a/inception/inception-brat-editor/src/main/ts_template/package.json +++ b/inception/inception-brat-editor/src/main/ts_template/package.json @@ -17,6 +17,7 @@ "dependencies": { "@inception-project/inception-js-api": "${semver}", "@inception-project/inception-diam": "${semver}", + "bootstrap": "${bootstrap.version}", "fast-json-patch": "${fast-json-patch.version}", "@svgdotjs/svg.js": "${svgdotjs-svg-js.version}", "@svgdotjs/svg.filter.js": "${svgdotjs-svg-filter-js.version}" diff --git a/inception/inception-diam-editor/src/main/ts_template/package-lock.json b/inception/inception-diam-editor/src/main/ts_template/package-lock.json index a128f1cfad2..391a7c69f38 100644 --- a/inception/inception-diam-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-diam-editor/src/main/ts_template/package-lock.json @@ -17,14 +17,14 @@ "@testing-library/svelte": "^3.1.3", "@types/chai": "^4.3.1", "@types/events": "^3.0.0", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -36,11 +36,11 @@ "fs-extra": "^10.1.0", "jsdom": "^20.0.0", "jsdom-global": "^3.0.2", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "sass": "~1.64.2", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -58,14 +58,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -73,8 +73,8 @@ "eslint-plugin-n": "^15.6.0", "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -89,7 +89,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -241,7 +241,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -1072,7 +1072,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1083,28 +1083,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1124,16 +1124,15 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-diam/src/main/ts/node_modules/escalade": { @@ -1986,8 +1985,7 @@ "../../../../inception-diam/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -3074,7 +3072,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -3161,7 +3158,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -3665,14 +3661,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -3682,9 +3678,9 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "mocha-junit-reporter": "^2.2.1", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -3699,7 +3695,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -3861,7 +3857,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -4726,7 +4722,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4737,28 +4733,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -4778,16 +4774,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -5659,8 +5654,7 @@ "../../../../inception-js-api/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -6804,7 +6798,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -6905,7 +6898,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -7719,7 +7711,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -7926,7 +7918,7 @@ "license": "MIT" }, "node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -8933,7 +8925,7 @@ "license": "MIT" }, "node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -8944,28 +8936,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-runner-plugins": { @@ -8985,16 +8977,15 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/esbuild-svelte": { diff --git a/inception/inception-diam/src/main/ts_template/package-lock.json b/inception/inception-diam/src/main/ts_template/package-lock.json index 5985a56ca05..3c9819aadd9 100644 --- a/inception/inception-diam/src/main/ts_template/package-lock.json +++ b/inception/inception-diam/src/main/ts_template/package-lock.json @@ -16,14 +16,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -31,8 +31,8 @@ "eslint-plugin-n": "^15.6.0", "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -49,14 +49,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -66,9 +66,9 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "mocha-junit-reporter": "^2.2.1", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -83,7 +83,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -245,7 +245,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -1110,7 +1110,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1121,28 +1121,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1162,16 +1162,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -2043,8 +2042,7 @@ "../../../../inception-js-api/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -3188,7 +3186,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -3289,7 +3286,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -3931,7 +3927,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -4083,7 +4079,7 @@ "license": "MIT" }, "node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -4914,7 +4910,7 @@ } }, "node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4925,28 +4921,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-runner-plugins": { @@ -4966,16 +4962,15 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/escalade": { @@ -5828,8 +5823,7 @@ "node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/import-fresh": { "version": "3.3.0", @@ -6916,7 +6910,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -7003,7 +6996,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } diff --git a/inception/inception-external-editor/src/main/ts_template/package-lock.json b/inception/inception-external-editor/src/main/ts_template/package-lock.json index a498d5d6fe4..973090b1be6 100644 --- a/inception/inception-external-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-external-editor/src/main/ts_template/package-lock.json @@ -16,8 +16,8 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", - "esbuild-sass-plugin": "~2.5.0", + "esbuild": "~0.18.19", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -42,14 +42,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -57,8 +57,8 @@ "eslint-plugin-n": "^15.6.0", "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -73,7 +73,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -225,7 +225,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -1056,7 +1056,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1067,28 +1067,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1108,16 +1108,15 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-diam/src/main/ts/node_modules/escalade": { @@ -1970,8 +1969,7 @@ "../../../../inception-diam/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -3058,7 +3056,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -3145,7 +3142,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -3649,14 +3645,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -3666,9 +3662,9 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "mocha-junit-reporter": "^2.2.1", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -3683,7 +3679,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -3845,7 +3841,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -4710,7 +4706,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4721,28 +4717,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -4762,16 +4758,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -5643,8 +5638,7 @@ "../../../../inception-js-api/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -6788,7 +6782,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -6889,7 +6882,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -7531,7 +7523,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -7922,7 +7914,6 @@ "version": "3.1.3", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -8065,7 +8056,6 @@ "version": "2.2.0", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=8" } @@ -8143,7 +8133,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -8164,7 +8153,6 @@ "version": "5.1.2", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -8389,7 +8377,7 @@ } }, "node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -8400,41 +8388,40 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/escalade": { @@ -9016,7 +9003,6 @@ "os": [ "darwin" ], - "peer": true, "engines": { "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } @@ -9271,8 +9257,7 @@ "node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/import-fresh": { "version": "3.3.0", @@ -9352,7 +9337,6 @@ "version": "2.1.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -9711,7 +9695,6 @@ "version": "3.0.0", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -9947,7 +9930,6 @@ "version": "3.6.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -10093,7 +10075,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -10164,7 +10145,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts_template/package-lock.json b/inception/inception-html-apache-annotator-editor/src/main/ts_template/package-lock.json index 085e6d8036b..10a879e2b9a 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-html-apache-annotator-editor/src/main/ts_template/package-lock.json @@ -1,7 +1,7 @@ { "name": "@inception-project/${project.artifactId}", "version": "${semver}", - "lockfileVersion": 2, + "lockfileVersion": 3, "requires": true, "packages": { "": { @@ -10,17 +10,17 @@ "license": "Apache-2.0", "dependencies": { "@inception-project/inception-js-api": "${semver}", - "@popperjs/core": "2.11.7", + "@popperjs/core": "2.11.8", "apache-annotator": "0.2.0", - "bootstrap": "5.3.0" + "bootstrap": "5.3.1" }, "devDependencies": { "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -28,8 +28,8 @@ "eslint-plugin-promise": "^6.1.1", "eslint-plugin-svelte3": "^4.0.0", "fs-extra": "^10.1.0", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "typescript": "^4.9.4", "yargs": "^17.6.0" } @@ -47,14 +47,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -62,8 +62,8 @@ "eslint-plugin-n": "^15.6.0", "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -75,17 +75,19 @@ "license": "Apache-2.0", "dependencies": { "@stomp/stompjs": "^6.1.2", - "@types/stompjs": "^2.3.5" + "@types/stompjs": "^2.3.5", + "bootstrap": "5.3.1" }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -95,7 +97,9 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha-junit-reporter": "^2.2.1", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -110,7 +114,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -139,7 +143,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.5.1", + "version": "4.6.2", "dev": true, "license": "MIT", "engines": { @@ -147,7 +151,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/eslintrc": { - "version": "2.1.0", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -169,7 +173,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint/js": { - "version": "8.44.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -206,6 +210,11 @@ "dev": true, "license": "BSD-3-Clause" }, + "../../../../inception-js-api/src/main/ts/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "dev": true, @@ -238,6 +247,15 @@ "node": ">= 8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/@popperjs/core": { + "version": "2.11.8", + "license": "MIT", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/@stomp/stompjs": { "version": "6.1.2", "license": "Apache-2.0" @@ -258,12 +276,17 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.2", + "version": "20.4.10", + "license": "MIT" + }, + "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { + "version": "2.0.6", + "dev": true, "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/semver": { @@ -577,6 +600,24 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/array.prototype.flat": { "version": "1.3.1", "dev": true, @@ -670,6 +711,23 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/bootstrap": { + "version": "5.3.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/brace-expansion": { "version": "1.1.11", "dev": true, @@ -695,6 +753,14 @@ "dev": true, "license": "ISC" }, + "../../../../inception-js-api/src/main/ts/node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/buffer-from": { "version": "1.1.2", "dev": true, @@ -937,6 +1003,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/diff": { "version": "5.0.0", "dev": true, @@ -1061,8 +1135,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/es6-promise": { + "version": "3.3.1", + "dev": true, + "license": "MIT" + }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1073,28 +1152,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1114,16 +1193,27 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { + "version": "0.7.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "esbuild": ">=0.9.6", + "svelte": ">=3.43.0 <5" } }, "../../../../inception-js-api/src/main/ts/node_modules/escalade": { @@ -1146,26 +1236,26 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint": { - "version": "8.45.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1227,13 +1317,13 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -1320,25 +1410,28 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.27.5", + "version": "2.28.0", "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -1462,7 +1555,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-visitor-keys": { - "version": "3.4.1", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -1473,7 +1566,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", + "version": "7.2.2", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -1571,7 +1664,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/fast-glob": { - "version": "3.3.0", + "version": "3.3.1", "dev": true, "license": "MIT", "dependencies": { @@ -1820,7 +1913,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -1978,10 +2071,9 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -2100,7 +2192,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -2419,6 +2511,17 @@ "node": ">=10" } }, + "../../../../inception-js-api/src/main/ts/node_modules/magic-string": { + "version": "0.27.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.13" + }, + "engines": { + "node": ">=12" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/make-dir": { "version": "3.1.0", "dev": true, @@ -2476,6 +2579,14 @@ "node": ">=8.6" } }, + "../../../../inception-js-api/src/main/ts/node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/minimatch": { "version": "3.1.2", "dev": true, @@ -2695,6 +2806,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/object.fromentries": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/object.groupby": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/object.values": { "version": "1.1.6", "dev": true, @@ -2925,11 +3063,11 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/resolve": { - "version": "1.22.2", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -3042,11 +3180,43 @@ "url": "https://github.com/sponsors/ljharb" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sander": { + "version": "0.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-promise": "^3.1.2", + "graceful-fs": "^4.1.3", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.2" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/sander/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.63.6", + "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -3121,6 +3291,20 @@ "node": ">=8" } }, + "../../../../inception-js-api/src/main/ts/node_modules/sorcery": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.14", + "buffer-crc32": "^0.2.5", + "minimist": "^1.2.0", + "sander": "^0.5.0" + }, + "bin": { + "sorcery": "bin/sorcery" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/source-map": { "version": "0.6.1", "dev": true, @@ -3133,7 +3317,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -3221,6 +3404,17 @@ "node": ">=4" } }, + "../../../../inception-js-api/src/main/ts/node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, "../../../../inception-js-api/src/main/ts/node_modules/strip-json-comments": { "version": "3.1.1", "dev": true, @@ -3254,60 +3448,129 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../../inception-js-api/src/main/ts/node_modules/temp-dir": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../../../../inception-js-api/src/main/ts/node_modules/temp-write": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.15", - "is-stream": "^2.0.0", - "make-dir": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">=8" - } - }, - "../../../../inception-js-api/src/main/ts/node_modules/text-table": { - "version": "0.2.0", - "dev": true, - "license": "MIT" - }, - "../../../../inception-js-api/src/main/ts/node_modules/to-regex-range": { - "version": "5.0.1", + "../../../../inception-js-api/src/main/ts/node_modules/svelte": { + "version": "3.59.2", "dev": true, "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, "engines": { - "node": ">=8.0" + "node": ">= 8" } }, - "../../../../inception-js-api/src/main/ts/node_modules/ts-mocha": { - "version": "10.0.0", + "../../../../inception-js-api/src/main/ts/node_modules/svelte-preprocess": { + "version": "5.0.4", "dev": true, + "hasInstallScript": true, "license": "MIT", "dependencies": { - "ts-node": "7.0.1" - }, - "bin": { - "ts-mocha": "bin/ts-mocha" + "@types/pug": "^2.0.6", + "detect-indent": "^6.1.0", + "magic-string": "^0.27.0", + "sorcery": "^0.11.0", + "strip-indent": "^3.0.0" }, "engines": { - "node": ">= 6.X.X" - }, - "optionalDependencies": { - "tsconfig-paths": "^3.5.0" + "node": ">= 14.10.0" + }, + "peerDependencies": { + "@babel/core": "^7.10.2", + "coffeescript": "^2.5.1", + "less": "^3.11.3 || ^4.0.0", + "postcss": "^7 || ^8", + "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0", + "pug": "^3.0.0", + "sass": "^1.26.8", + "stylus": "^0.55.0", + "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0", + "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0", + "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "coffeescript": { + "optional": true + }, + "less": { + "optional": true + }, + "postcss": { + "optional": true + }, + "postcss-load-config": { + "optional": true + }, + "pug": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/temp-dir": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/temp-write": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.15", + "is-stream": "^2.0.0", + "make-dir": "^3.0.0", + "temp-dir": "^1.0.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">=8" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/text-table": { + "version": "0.2.0", + "dev": true, + "license": "MIT" + }, + "../../../../inception-js-api/src/main/ts/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "../../../../inception-js-api/src/main/ts/node_modules/ts-mocha": { + "version": "10.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ts-node": "7.0.1" + }, + "bin": { + "ts-mocha": "bin/ts-mocha" + }, + "engines": { + "node": ">= 6.X.X" + }, + "optionalDependencies": { + "tsconfig-paths": "^3.5.0" }, "peerDependencies": { "mocha": "^3.X.X || ^4.X.X || ^5.X.X || ^6.X.X || ^7.X.X || ^8.X.X || ^9.X.X || ^10.X.X" @@ -3716,18 +3979,18 @@ } }, "node_modules/@babel/runtime-corejs3": { - "version": "7.22.6", + "version": "7.22.10", "license": "MIT", "dependencies": { "core-js-pure": "^3.30.2", - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -3764,7 +4027,7 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.1", + "version": "2.1.2", "dev": true, "license": "MIT", "dependencies": { @@ -3786,7 +4049,7 @@ } }, "node_modules/@eslint/js": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "engines": { @@ -3865,7 +4128,7 @@ } }, "node_modules/@popperjs/core": { - "version": "2.11.7", + "version": "2.11.8", "license": "MIT", "funding": { "type": "opencollective", @@ -4132,7 +4395,6 @@ "version": "3.1.3", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -4287,13 +4549,12 @@ "version": "2.2.0", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=8" } }, "node_modules/bootstrap": { - "version": "5.3.0", + "version": "5.3.1", "funding": [ { "type": "github", @@ -4306,7 +4567,7 @@ ], "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.7" + "@popperjs/core": "^2.11.8" } }, "node_modules/brace-expansion": { @@ -4395,7 +4656,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -4416,7 +4676,6 @@ "version": "5.1.2", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -4646,7 +4905,7 @@ "license": "MIT" }, "node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4657,28 +4916,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-runner-plugins": { @@ -4698,16 +4957,15 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/esbuild-svelte": { @@ -4742,14 +5000,14 @@ } }, "node_modules/eslint": { - "version": "8.46.0", + "version": "8.47.0", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -4760,7 +5018,7 @@ "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", + "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", @@ -4823,13 +5081,13 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", + "version": "0.3.9", "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -5044,7 +5302,7 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.2", + "version": "3.4.3", "dev": true, "license": "Apache-2.0", "engines": { @@ -5284,7 +5542,6 @@ "os": [ "darwin" ], - "peer": true, "engines": { "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } @@ -5387,7 +5644,7 @@ } }, "node_modules/globals": { - "version": "13.20.0", + "version": "13.21.0", "dev": true, "license": "MIT", "dependencies": { @@ -5537,10 +5794,9 @@ } }, "node_modules/immutable": { - "version": "4.3.1", + "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/import-fresh": { "version": "3.3.0", @@ -5620,7 +5876,6 @@ "version": "2.1.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -5655,7 +5910,7 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", + "version": "2.13.0", "dev": true, "license": "MIT", "dependencies": { @@ -6042,7 +6297,6 @@ "version": "3.0.0", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -6277,7 +6531,6 @@ "version": "3.6.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -6286,7 +6539,7 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", + "version": "0.14.0", "license": "MIT" }, "node_modules/regexp.prototype.flags": { @@ -6325,11 +6578,11 @@ } }, "node_modules/resolve": { - "version": "1.22.3", + "version": "1.22.4", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.12.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -6446,10 +6699,9 @@ } }, "node_modules/sass": { - "version": "1.64.1", + "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -6542,7 +6794,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -7067,4172 +7318,5 @@ "url": "https://github.com/sponsors/sindresorhus" } } - }, - "dependencies": { - "@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "dev": true - }, - "@apache-annotator/dom": { - "version": "0.2.0", - "requires": { - "@babel/runtime-corejs3": "^7.13.10", - "optimal-select": "^4.0.1" - } - }, - "@apache-annotator/selector": { - "version": "0.2.0", - "requires": { - "@babel/runtime-corejs3": "^7.13.10" - } - }, - "@babel/runtime-corejs3": { - "version": "7.22.6", - "requires": { - "core-js-pure": "^3.30.2", - "regenerator-runtime": "^0.13.11" - } - }, - "@esbuild/darwin-arm64": { - "version": "0.16.17", - "dev": true, - "optional": true - }, - "@eslint-community/eslint-utils": { - "version": "4.4.0", - "dev": true, - "requires": { - "eslint-visitor-keys": "^3.3.0" - } - }, - "@eslint-community/regexpp": { - "version": "4.6.2", - "dev": true - }, - "@eslint/eslintrc": { - "version": "2.1.1", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - } - }, - "@eslint/js": { - "version": "8.46.0", - "dev": true - }, - "@humanwhocodes/config-array": { - "version": "0.11.10", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "dev": true - }, - "@humanwhocodes/object-schema": { - "version": "1.2.1", - "dev": true - }, - "@inception-project/inception-js-api": { - "version": "file:../../../../inception-js-api/src/main/ts", - "requires": { - "@stomp/stompjs": "^6.1.2", - "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", - "@types/stompjs": "^2.3.5", - "@typescript-eslint/eslint-plugin": "^5.47.1", - "@typescript-eslint/parser": "^5.47.1", - "chai": "^4.3.6", - "esbuild": "~0.16.17", - "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "eslint": "^8.31.0", - "eslint-config-standard": "^17.0.0", - "eslint-plugin-chai-friendly": "^0.7.2", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-mocha": "^10.1.0", - "eslint-plugin-n": "^15.6.0", - "eslint-plugin-promise": "^6.1.1", - "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "ts-mocha": "^10.0.0", - "typescript": "^4.9.4", - "yargs": "^17.6.0" - }, - "dependencies": { - "@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "dev": true - }, - "@esbuild/darwin-arm64": { - "version": "0.16.17", - "dev": true, - "optional": true - }, - "@eslint-community/eslint-utils": { - "version": "4.4.0", - "dev": true, - "requires": { - "eslint-visitor-keys": "^3.3.0" - } - }, - "@eslint-community/regexpp": { - "version": "4.5.1", - "dev": true - }, - "@eslint/eslintrc": { - "version": "2.1.0", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - } - }, - "@eslint/js": { - "version": "8.44.0", - "dev": true - }, - "@humanwhocodes/config-array": { - "version": "0.11.10", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "dev": true - }, - "@humanwhocodes/object-schema": { - "version": "1.2.1", - "dev": true - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@stomp/stompjs": { - "version": "6.1.2" - }, - "@types/chai": { - "version": "4.3.5", - "dev": true - }, - "@types/json-schema": { - "version": "7.0.12", - "dev": true - }, - "@types/json5": { - "version": "0.0.29", - "dev": true - }, - "@types/mocha": { - "version": "9.1.1", - "dev": true - }, - "@types/node": { - "version": "20.4.2" - }, - "@types/semver": { - "version": "7.5.0", - "dev": true - }, - "@types/stompjs": { - "version": "2.3.5", - "requires": { - "@types/node": "*" - } - }, - "@typescript-eslint/eslint-plugin": { - "version": "5.62.0", - "dev": true, - "requires": { - "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/type-utils": "5.62.0", - "@typescript-eslint/utils": "5.62.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/parser": { - "version": "5.62.0", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "5.62.0", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - } - }, - "@typescript-eslint/type-utils": { - "version": "5.62.0", - "dev": true, - "requires": { - "@typescript-eslint/typescript-estree": "5.62.0", - "@typescript-eslint/utils": "5.62.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/types": { - "version": "5.62.0", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/utils": { - "version": "5.62.0", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - } - }, - "acorn": { - "version": "8.10.0", - "dev": true - }, - "acorn-jsx": { - "version": "5.3.2", - "dev": true, - "requires": {} - }, - "ajv": { - "version": "6.12.6", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-colors": { - "version": "4.1.1", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.3", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "argparse": { - "version": "2.0.1", - "dev": true - }, - "array-buffer-byte-length": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - } - }, - "array-includes": { - "version": "3.1.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "is-string": "^1.0.7" - } - }, - "array-union": { - "version": "2.1.0", - "dev": true - }, - "array.prototype.flat": { - "version": "1.3.1", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - } - }, - "array.prototype.flatmap": { - "version": "1.3.1", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - } - }, - "arraybuffer.prototype.slice": { - "version": "1.0.1", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" - } - }, - "arrify": { - "version": "1.0.1", - "dev": true - }, - "assertion-error": { - "version": "1.1.0", - "dev": true - }, - "available-typed-arrays": { - "version": "1.0.5", - "dev": true - }, - "balanced-match": { - "version": "1.0.2", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browser-stdout": { - "version": "1.3.1", - "dev": true - }, - "buffer-from": { - "version": "1.1.2", - "dev": true - }, - "builtins": { - "version": "5.0.1", - "dev": true, - "requires": { - "semver": "^7.0.0" - } - }, - "call-bind": { - "version": "1.0.2", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "callsites": { - "version": "3.1.0", - "dev": true - }, - "camelcase": { - "version": "6.3.0", - "dev": true - }, - "chai": { - "version": "4.3.7", - "dev": true, - "requires": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "charenc": { - "version": "0.0.2", - "dev": true - }, - "check-error": { - "version": "1.0.2", - "dev": true - }, - "chokidar": { - "version": "3.5.3", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "cliui": { - "version": "8.0.1", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "crypt": { - "version": "0.0.2", - "dev": true - }, - "debug": { - "version": "4.3.4", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "decamelize": { - "version": "4.0.0", - "dev": true - }, - "deep-eql": { - "version": "4.1.3", - "dev": true, - "requires": { - "type-detect": "^4.0.0" - } - }, - "deep-is": { - "version": "0.1.4", - "dev": true - }, - "define-properties": { - "version": "1.2.0", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "diff": { - "version": "5.0.0", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "emoji-regex": { - "version": "8.0.0", - "dev": true - }, - "es-abstract": { - "version": "1.22.1", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.1", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.1", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.0", - "safe-array-concat": "^1.0.0", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.10" - } - }, - "es-set-tostringtag": { - "version": "2.0.1", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - } - }, - "es-shim-unscopables": { - "version": "1.0.0", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "esbuild": { - "version": "0.16.17", - "dev": true, - "requires": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" - } - }, - "esbuild-runner-plugins": { - "version": "2.3.0-plugins.0", - "dev": true, - "requires": { - "source-map-support": "0.5.19", - "temp-write": "^4.0.0", - "tslib": "2.3.1" - } - }, - "esbuild-sass-plugin": { - "version": "2.5.0", - "dev": true, - "requires": { - "resolve": "^1.22.1" - } - }, - "escalade": { - "version": "3.1.1", - "dev": true - }, - "escape-string-regexp": { - "version": "4.0.0", - "dev": true - }, - "eslint": { - "version": "8.45.0", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", - "@humanwhocodes/config-array": "^0.11.10", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "eslint-scope": { - "version": "7.2.1", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0", - "dev": true - } - } - }, - "eslint-config-standard": { - "version": "17.1.0", - "dev": true, - "requires": {} - }, - "eslint-import-resolver-node": { - "version": "0.3.7", - "dev": true, - "requires": { - "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-module-utils": { - "version": "2.8.0", - "dev": true, - "requires": { - "debug": "^3.2.7" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-plugin-chai-friendly": { - "version": "0.7.2", - "dev": true, - "requires": {} - }, - "eslint-plugin-es": { - "version": "4.1.0", - "dev": true, - "requires": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - }, - "dependencies": { - "eslint-utils": { - "version": "2.1.0", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "eslint-visitor-keys": { - "version": "1.3.0", - "dev": true - } - } - }, - "eslint-plugin-import": { - "version": "2.27.5", - "dev": true, - "requires": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "array.prototype.flatmap": "^1.3.1", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", - "has": "^1.0.3", - "is-core-module": "^2.11.0", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "doctrine": { - "version": "2.1.0", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "semver": { - "version": "6.3.1", - "dev": true - } - } - }, - "eslint-plugin-mocha": { - "version": "10.1.0", - "dev": true, - "requires": { - "eslint-utils": "^3.0.0", - "rambda": "^7.1.0" - } - }, - "eslint-plugin-n": { - "version": "15.7.0", - "dev": true, - "requires": { - "builtins": "^5.0.1", - "eslint-plugin-es": "^4.1.0", - "eslint-utils": "^3.0.0", - "ignore": "^5.1.1", - "is-core-module": "^2.11.0", - "minimatch": "^3.1.2", - "resolve": "^1.22.1", - "semver": "^7.3.8" - } - }, - "eslint-plugin-promise": { - "version": "6.1.1", - "dev": true, - "requires": {} - }, - "eslint-scope": { - "version": "5.1.1", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "3.0.0", - "dev": true, - "requires": { - "eslint-visitor-keys": "^2.0.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.1.0", - "dev": true - } - } - }, - "eslint-visitor-keys": { - "version": "3.4.1", - "dev": true - }, - "espree": { - "version": "9.6.1", - "dev": true, - "requires": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - } - }, - "esquery": { - "version": "1.5.0", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "dev": true - } - } - }, - "esrecurse": { - "version": "4.3.0", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "dev": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "dev": true - }, - "fast-glob": { - "version": "3.3.0", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "dev": true - }, - "fastq": { - "version": "1.15.0", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "file-entry-cache": { - "version": "6.0.1", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-up": { - "version": "5.0.0", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "flat": { - "version": "5.0.2", - "dev": true - }, - "flat-cache": { - "version": "3.0.4", - "dev": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.2.7", - "dev": true - }, - "for-each": { - "version": "0.3.3", - "dev": true, - "requires": { - "is-callable": "^1.1.3" - } - }, - "fs-extra": { - "version": "10.1.0", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "dev": true - }, - "function.prototype.name": { - "version": "1.1.5", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - } - }, - "functions-have-names": { - "version": "1.2.3", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "dev": true - }, - "get-func-name": { - "version": "2.0.0", - "dev": true - }, - "get-intrinsic": { - "version": "1.2.1", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" - } - }, - "get-symbol-description": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "glob": { - "version": "7.2.0", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "6.0.2", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "13.20.0", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "globalthis": { - "version": "1.0.3", - "dev": true, - "requires": { - "define-properties": "^1.1.3" - } - }, - "globby": { - "version": "11.1.0", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "gopd": { - "version": "1.0.1", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3" - } - }, - "graceful-fs": { - "version": "4.2.11", - "dev": true - }, - "graphemer": { - "version": "1.4.0", - "dev": true - }, - "has": { - "version": "1.0.3", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-bigints": { - "version": "1.0.2", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-proto": { - "version": "1.0.1", - "dev": true - }, - "has-symbols": { - "version": "1.0.3", - "dev": true - }, - "has-tostringtag": { - "version": "1.0.0", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "he": { - "version": "1.2.0", - "dev": true - }, - "ignore": { - "version": "5.2.4", - "dev": true - }, - "immutable": { - "version": "4.3.1", - "dev": true, - "peer": true - }, - "import-fresh": { - "version": "3.3.0", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "dev": true - }, - "internal-slot": { - "version": "1.0.5", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "is-array-buffer": { - "version": "3.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - } - }, - "is-bigint": { - "version": "1.0.4", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "dev": true - }, - "is-callable": { - "version": "1.2.7", - "dev": true - }, - "is-core-module": { - "version": "2.12.1", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-date-object": { - "version": "1.0.5", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-extglob": { - "version": "2.1.1", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-negative-zero": { - "version": "2.0.2", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "dev": true - }, - "is-number-object": { - "version": "1.0.7", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-path-inside": { - "version": "3.0.3", - "dev": true - }, - "is-plain-obj": { - "version": "2.1.0", - "dev": true - }, - "is-regex": { - "version": "1.1.4", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "2.0.1", - "dev": true - }, - "is-string": { - "version": "1.0.7", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "is-typed-array": { - "version": "1.1.12", - "dev": true, - "requires": { - "which-typed-array": "^1.1.11" - } - }, - "is-unicode-supported": { - "version": "0.1.0", - "dev": true - }, - "is-weakref": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "isarray": { - "version": "2.0.5", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "json-schema-traverse": { - "version": "0.4.1", - "dev": true - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "dev": true - }, - "json5": { - "version": "1.0.2", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "jsonfile": { - "version": "6.1.0", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "levn": { - "version": "0.4.1", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "locate-path": { - "version": "6.0.0", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "lodash.merge": { - "version": "4.6.2", - "dev": true - }, - "log-symbols": { - "version": "4.1.0", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - } - }, - "loupe": { - "version": "2.3.6", - "dev": true, - "requires": { - "get-func-name": "^2.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "make-dir": { - "version": "3.1.0", - "dev": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "dev": true - } - } - }, - "make-error": { - "version": "1.3.6", - "dev": true - }, - "md5": { - "version": "2.3.0", - "dev": true, - "requires": { - "charenc": "0.0.2", - "crypt": "0.0.2", - "is-buffer": "~1.1.6" - } - }, - "merge2": { - "version": "1.4.1", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "minimatch": { - "version": "3.1.2", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.8", - "dev": true - }, - "mkdirp": { - "version": "3.0.1", - "dev": true - }, - "mocha": { - "version": "10.2.0", - "dev": true, - "requires": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "cliui": { - "version": "7.0.4", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "minimatch": { - "version": "5.0.1", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "ms": { - "version": "2.1.3", - "dev": true - }, - "supports-color": { - "version": "8.1.1", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "yargs": { - "version": "16.2.0", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - } - } - }, - "mocha-junit-reporter": { - "version": "2.2.1", - "dev": true, - "requires": { - "debug": "^4.3.4", - "md5": "^2.3.0", - "mkdirp": "^3.0.0", - "strip-ansi": "^6.0.1", - "xml": "^1.0.1" - } - }, - "ms": { - "version": "2.1.2", - "dev": true - }, - "nanoid": { - "version": "3.3.3", - "dev": true - }, - "natural-compare": { - "version": "1.4.0", - "dev": true - }, - "natural-compare-lite": { - "version": "1.4.0", - "dev": true - }, - "normalize-path": { - "version": "3.0.0", - "dev": true - }, - "object-inspect": { - "version": "1.12.3", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "dev": true - }, - "object.assign": { - "version": "4.1.4", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "object.values": { - "version": "1.1.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "once": { - "version": "1.4.0", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "optionator": { - "version": "0.9.3", - "dev": true, - "requires": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - } - }, - "p-limit": { - "version": "3.1.0", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "parent-module": { - "version": "1.0.1", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "path-exists": { - "version": "4.0.0", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "dev": true - }, - "pathval": { - "version": "1.1.1", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "dev": true - }, - "prelude-ls": { - "version": "1.2.1", - "dev": true - }, - "punycode": { - "version": "2.3.0", - "dev": true - }, - "queue-microtask": { - "version": "1.2.3", - "dev": true - }, - "rambda": { - "version": "7.5.0", - "dev": true - }, - "randombytes": { - "version": "2.1.0", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "readdirp": { - "version": "3.6.0", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "regexp.prototype.flags": { - "version": "1.5.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "functions-have-names": "^1.2.3" - } - }, - "regexpp": { - "version": "3.2.0", - "dev": true - }, - "require-directory": { - "version": "2.1.1", - "dev": true - }, - "resolve": { - "version": "1.22.2", - "dev": true, - "requires": { - "is-core-module": "^2.11.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "4.0.0", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "run-parallel": { - "version": "1.2.0", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "safe-array-concat": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - } - }, - "safe-buffer": { - "version": "5.2.1", - "dev": true - }, - "safe-regex-test": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - } - }, - "sass": { - "version": "1.63.6", - "dev": true, - "peer": true, - "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - } - }, - "semver": { - "version": "7.5.4", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "serialize-javascript": { - "version": "6.0.0", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "shebang-command": { - "version": "2.0.0", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "dev": true - }, - "side-channel": { - "version": "1.0.4", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "slash": { - "version": "3.0.0", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "dev": true - }, - "source-map-js": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "source-map-support": { - "version": "0.5.19", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "string-width": { - "version": "4.2.3", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "string.prototype.trim": { - "version": "1.2.7", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimend": { - "version": "1.0.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimstart": { - "version": "1.0.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "strip-ansi": { - "version": "6.0.1", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-bom": { - "version": "3.0.0", - "dev": true - }, - "strip-json-comments": { - "version": "3.1.1", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "dev": true - }, - "temp-dir": { - "version": "1.0.0", - "dev": true - }, - "temp-write": { - "version": "4.0.0", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "is-stream": "^2.0.0", - "make-dir": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^3.3.2" - } - }, - "text-table": { - "version": "0.2.0", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "ts-mocha": { - "version": "10.0.0", - "dev": true, - "requires": { - "ts-node": "7.0.1", - "tsconfig-paths": "^3.5.0" - } - }, - "ts-node": { - "version": "7.0.1", - "dev": true, - "requires": { - "arrify": "^1.0.0", - "buffer-from": "^1.1.0", - "diff": "^3.1.0", - "make-error": "^1.1.1", - "minimist": "^1.2.0", - "mkdirp": "^0.5.1", - "source-map-support": "^0.5.6", - "yn": "^2.0.0" - }, - "dependencies": { - "diff": { - "version": "3.5.0", - "dev": true - }, - "mkdirp": { - "version": "0.5.6", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - } - } - }, - "tsconfig-paths": { - "version": "3.14.2", - "dev": true, - "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "tslib": { - "version": "2.3.1", - "dev": true - }, - "tsutils": { - "version": "3.21.0", - "dev": true, - "requires": { - "tslib": "^1.8.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "dev": true - } - } - }, - "type-check": { - "version": "0.4.0", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-detect": { - "version": "4.0.8", - "dev": true - }, - "type-fest": { - "version": "0.20.2", - "dev": true - }, - "typed-array-buffer": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" - } - }, - "typed-array-byte-length": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - } - }, - "typed-array-byte-offset": { - "version": "1.0.0", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - } - }, - "typed-array-length": { - "version": "1.0.4", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - } - }, - "typescript": { - "version": "4.9.5", - "dev": true - }, - "unbox-primitive": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - } - }, - "universalify": { - "version": "2.0.0", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "uuid": { - "version": "3.4.0", - "dev": true - }, - "which": { - "version": "2.0.2", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-boxed-primitive": { - "version": "1.0.2", - "dev": true, - "requires": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - } - }, - "which-typed-array": { - "version": "1.1.11", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - } - }, - "workerpool": { - "version": "6.2.1", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "dev": true - }, - "xml": { - "version": "1.0.1", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "dev": true - }, - "yargs": { - "version": "17.7.2", - "dev": true, - "requires": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "dependencies": { - "yargs-parser": { - "version": "21.1.1", - "dev": true - } - } - }, - "yargs-parser": { - "version": "20.2.4", - "dev": true - }, - "yargs-unparser": { - "version": "2.0.0", - "dev": true, - "requires": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - } - }, - "yn": { - "version": "2.0.0", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "dev": true - } - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "dev": true - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@popperjs/core": { - "version": "2.11.7" - }, - "@types/json-schema": { - "version": "7.0.12", - "dev": true - }, - "@types/json5": { - "version": "0.0.29", - "dev": true - }, - "@types/pug": { - "version": "2.0.6", - "dev": true - }, - "@types/semver": { - "version": "7.5.0", - "dev": true - }, - "@typescript-eslint/eslint-plugin": { - "version": "5.62.0", - "dev": true, - "requires": { - "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/type-utils": "5.62.0", - "@typescript-eslint/utils": "5.62.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/parser": { - "version": "5.62.0", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "5.62.0", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - } - }, - "@typescript-eslint/type-utils": { - "version": "5.62.0", - "dev": true, - "requires": { - "@typescript-eslint/typescript-estree": "5.62.0", - "@typescript-eslint/utils": "5.62.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/types": { - "version": "5.62.0", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/utils": { - "version": "5.62.0", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - } - }, - "acorn": { - "version": "8.10.0", - "dev": true - }, - "acorn-jsx": { - "version": "5.3.2", - "dev": true, - "requires": {} - }, - "ajv": { - "version": "6.12.6", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-regex": { - "version": "5.0.1", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.3", - "dev": true, - "peer": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "apache-annotator": { - "version": "0.2.0", - "requires": { - "@apache-annotator/dom": "^0.2.0", - "@apache-annotator/selector": "^0.2.0", - "@babel/runtime-corejs3": "^7.13.10" - } - }, - "argparse": { - "version": "2.0.1", - "dev": true - }, - "array-buffer-byte-length": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - } - }, - "array-includes": { - "version": "3.1.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "is-string": "^1.0.7" - } - }, - "array-union": { - "version": "2.1.0", - "dev": true - }, - "array.prototype.findlastindex": { - "version": "1.2.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.1.3" - } - }, - "array.prototype.flat": { - "version": "1.3.1", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - } - }, - "array.prototype.flatmap": { - "version": "1.3.1", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - } - }, - "arraybuffer.prototype.slice": { - "version": "1.0.1", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" - } - }, - "available-typed-arrays": { - "version": "1.0.5", - "dev": true - }, - "balanced-match": { - "version": "1.0.2", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "dev": true, - "peer": true - }, - "bootstrap": { - "version": "5.3.0", - "requires": {} - }, - "brace-expansion": { - "version": "1.1.11", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "buffer-crc32": { - "version": "0.2.13", - "dev": true - }, - "buffer-from": { - "version": "1.1.2", - "dev": true - }, - "builtins": { - "version": "5.0.1", - "dev": true, - "requires": { - "semver": "^7.0.0" - } - }, - "call-bind": { - "version": "1.0.2", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "callsites": { - "version": "3.1.0", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "chokidar": { - "version": "3.5.3", - "dev": true, - "peer": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "dev": true, - "peer": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "cliui": { - "version": "8.0.1", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "dev": true - }, - "core-js-pure": { - "version": "3.32.0" - }, - "cross-spawn": { - "version": "7.0.3", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "debug": { - "version": "4.3.4", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "deep-is": { - "version": "0.1.4", - "dev": true - }, - "define-properties": { - "version": "1.2.0", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "detect-indent": { - "version": "6.1.0", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "emoji-regex": { - "version": "8.0.0", - "dev": true - }, - "es-abstract": { - "version": "1.22.1", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.1", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.1", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.0", - "safe-array-concat": "^1.0.0", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.10" - } - }, - "es-set-tostringtag": { - "version": "2.0.1", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - } - }, - "es-shim-unscopables": { - "version": "1.0.0", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es6-promise": { - "version": "3.3.1", - "dev": true - }, - "esbuild": { - "version": "0.16.17", - "dev": true, - "requires": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" - } - }, - "esbuild-runner-plugins": { - "version": "2.3.0-plugins.0", - "dev": true, - "requires": { - "source-map-support": "0.5.19", - "temp-write": "^4.0.0", - "tslib": "2.3.1" - } - }, - "esbuild-sass-plugin": { - "version": "2.5.0", - "dev": true, - "requires": { - "resolve": "^1.22.1" - } - }, - "esbuild-svelte": { - "version": "0.7.4", - "dev": true, - "requires": {} - }, - "escalade": { - "version": "3.1.1", - "dev": true - }, - "escape-string-regexp": { - "version": "4.0.0", - "dev": true - }, - "eslint": { - "version": "8.46.0", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.1", - "@eslint/js": "^8.46.0", - "@humanwhocodes/config-array": "^0.11.10", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.2", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "eslint-scope": { - "version": "7.2.2", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "estraverse": { - "version": "5.3.0", - "dev": true - } - } - }, - "eslint-config-standard": { - "version": "17.1.0", - "dev": true, - "requires": {} - }, - "eslint-import-resolver-node": { - "version": "0.3.7", - "dev": true, - "requires": { - "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-module-utils": { - "version": "2.8.0", - "dev": true, - "requires": { - "debug": "^3.2.7" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-plugin-es": { - "version": "4.1.0", - "dev": true, - "requires": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - }, - "dependencies": { - "eslint-utils": { - "version": "2.1.0", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "eslint-visitor-keys": { - "version": "1.3.0", - "dev": true - } - } - }, - "eslint-plugin-import": { - "version": "2.28.0", - "dev": true, - "requires": { - "array-includes": "^3.1.6", - "array.prototype.findlastindex": "^1.2.2", - "array.prototype.flat": "^1.3.1", - "array.prototype.flatmap": "^1.3.1", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.8.0", - "has": "^1.0.3", - "is-core-module": "^2.12.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.6", - "object.groupby": "^1.0.0", - "object.values": "^1.1.6", - "resolve": "^1.22.3", - "semver": "^6.3.1", - "tsconfig-paths": "^3.14.2" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "doctrine": { - "version": "2.1.0", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "semver": { - "version": "6.3.1", - "dev": true - } - } - }, - "eslint-plugin-n": { - "version": "15.7.0", - "dev": true, - "requires": { - "builtins": "^5.0.1", - "eslint-plugin-es": "^4.1.0", - "eslint-utils": "^3.0.0", - "ignore": "^5.1.1", - "is-core-module": "^2.11.0", - "minimatch": "^3.1.2", - "resolve": "^1.22.1", - "semver": "^7.3.8" - } - }, - "eslint-plugin-promise": { - "version": "6.1.1", - "dev": true, - "requires": {} - }, - "eslint-plugin-svelte3": { - "version": "4.0.0", - "dev": true, - "requires": {} - }, - "eslint-scope": { - "version": "5.1.1", - "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "3.0.0", - "dev": true, - "requires": { - "eslint-visitor-keys": "^2.0.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.1.0", - "dev": true - } - } - }, - "eslint-visitor-keys": { - "version": "3.4.2", - "dev": true - }, - "espree": { - "version": "9.6.1", - "dev": true, - "requires": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - } - }, - "esquery": { - "version": "1.5.0", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "dev": true - } - } - }, - "esrecurse": { - "version": "4.3.0", - "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "dev": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "dev": true - }, - "fast-glob": { - "version": "3.3.1", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "dev": true - }, - "fastq": { - "version": "1.15.0", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "file-entry-cache": { - "version": "6.0.1", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-up": { - "version": "5.0.0", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "flat-cache": { - "version": "3.0.4", - "dev": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.2.7", - "dev": true - }, - "for-each": { - "version": "0.3.3", - "dev": true, - "requires": { - "is-callable": "^1.1.3" - } - }, - "fs-extra": { - "version": "10.1.0", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "dev": true, - "optional": true, - "peer": true - }, - "function-bind": { - "version": "1.1.1", - "dev": true - }, - "function.prototype.name": { - "version": "1.1.5", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - } - }, - "functions-have-names": { - "version": "1.2.3", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "dev": true - }, - "get-intrinsic": { - "version": "1.2.1", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" - } - }, - "get-symbol-description": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "glob": { - "version": "7.2.3", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "6.0.2", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "13.20.0", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "globalthis": { - "version": "1.0.3", - "dev": true, - "requires": { - "define-properties": "^1.1.3" - } - }, - "globby": { - "version": "11.1.0", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "gopd": { - "version": "1.0.1", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3" - } - }, - "graceful-fs": { - "version": "4.2.11", - "dev": true - }, - "graphemer": { - "version": "1.4.0", - "dev": true - }, - "has": { - "version": "1.0.3", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-bigints": { - "version": "1.0.2", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-proto": { - "version": "1.0.1", - "dev": true - }, - "has-symbols": { - "version": "1.0.3", - "dev": true - }, - "has-tostringtag": { - "version": "1.0.0", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "ignore": { - "version": "5.2.4", - "dev": true - }, - "immutable": { - "version": "4.3.1", - "dev": true, - "peer": true - }, - "import-fresh": { - "version": "3.3.0", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "dev": true - }, - "internal-slot": { - "version": "1.0.5", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "is-array-buffer": { - "version": "3.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - } - }, - "is-bigint": { - "version": "1.0.4", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "dev": true, - "peer": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-callable": { - "version": "1.2.7", - "dev": true - }, - "is-core-module": { - "version": "2.12.1", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-date-object": { - "version": "1.0.5", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-extglob": { - "version": "2.1.1", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-negative-zero": { - "version": "2.0.2", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "dev": true - }, - "is-number-object": { - "version": "1.0.7", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-path-inside": { - "version": "3.0.3", - "dev": true - }, - "is-regex": { - "version": "1.1.4", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "2.0.1", - "dev": true - }, - "is-string": { - "version": "1.0.7", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "is-typed-array": { - "version": "1.1.12", - "dev": true, - "requires": { - "which-typed-array": "^1.1.11" - } - }, - "is-weakref": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "isarray": { - "version": "2.0.5", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "json-schema-traverse": { - "version": "0.4.1", - "dev": true - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "dev": true - }, - "json5": { - "version": "1.0.2", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "jsonfile": { - "version": "6.1.0", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "levn": { - "version": "0.4.1", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "locate-path": { - "version": "6.0.0", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "lodash.merge": { - "version": "4.6.2", - "dev": true - }, - "lru-cache": { - "version": "6.0.0", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "magic-string": { - "version": "0.27.0", - "dev": true, - "requires": { - "@jridgewell/sourcemap-codec": "^1.4.13" - } - }, - "make-dir": { - "version": "3.1.0", - "dev": true, - "requires": { - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "dev": true - } - } - }, - "merge2": { - "version": "1.4.1", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "min-indent": { - "version": "1.0.1", - "dev": true - }, - "minimatch": { - "version": "3.1.2", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.8", - "dev": true - }, - "mkdirp": { - "version": "0.5.6", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "ms": { - "version": "2.1.2", - "dev": true - }, - "natural-compare": { - "version": "1.4.0", - "dev": true - }, - "natural-compare-lite": { - "version": "1.4.0", - "dev": true - }, - "normalize-path": { - "version": "3.0.0", - "dev": true, - "peer": true - }, - "object-inspect": { - "version": "1.12.3", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "dev": true - }, - "object.assign": { - "version": "4.1.4", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "object.fromentries": { - "version": "2.0.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "object.groupby": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.21.2", - "get-intrinsic": "^1.2.1" - } - }, - "object.values": { - "version": "1.1.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "once": { - "version": "1.4.0", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "optimal-select": { - "version": "4.0.1" - }, - "optionator": { - "version": "0.9.3", - "dev": true, - "requires": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - } - }, - "p-limit": { - "version": "3.1.0", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "parent-module": { - "version": "1.0.1", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "path-exists": { - "version": "4.0.0", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "dev": true - }, - "prelude-ls": { - "version": "1.2.1", - "dev": true - }, - "punycode": { - "version": "2.3.0", - "dev": true - }, - "queue-microtask": { - "version": "1.2.3", - "dev": true - }, - "readdirp": { - "version": "3.6.0", - "dev": true, - "peer": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "regenerator-runtime": { - "version": "0.13.11" - }, - "regexp.prototype.flags": { - "version": "1.5.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "functions-have-names": "^1.2.3" - } - }, - "regexpp": { - "version": "3.2.0", - "dev": true - }, - "require-directory": { - "version": "2.1.1", - "dev": true - }, - "resolve": { - "version": "1.22.3", - "dev": true, - "requires": { - "is-core-module": "^2.12.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "4.0.0", - "dev": true - }, - "reusify": { - "version": "1.0.4", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "run-parallel": { - "version": "1.2.0", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "safe-array-concat": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - } - }, - "safe-regex-test": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - } - }, - "sander": { - "version": "0.5.1", - "dev": true, - "requires": { - "es6-promise": "^3.1.2", - "graceful-fs": "^4.1.3", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "sass": { - "version": "1.64.1", - "dev": true, - "peer": true, - "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - } - }, - "semver": { - "version": "7.5.4", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "shebang-command": { - "version": "2.0.0", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "dev": true - }, - "side-channel": { - "version": "1.0.4", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "slash": { - "version": "3.0.0", - "dev": true - }, - "sorcery": { - "version": "0.11.0", - "dev": true, - "requires": { - "@jridgewell/sourcemap-codec": "^1.4.14", - "buffer-crc32": "^0.2.5", - "minimist": "^1.2.0", - "sander": "^0.5.0" - } - }, - "source-map": { - "version": "0.6.1", - "dev": true - }, - "source-map-js": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "source-map-support": { - "version": "0.5.19", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "string-width": { - "version": "4.2.3", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "string.prototype.trim": { - "version": "1.2.7", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimend": { - "version": "1.0.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimstart": { - "version": "1.0.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "strip-ansi": { - "version": "6.0.1", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-bom": { - "version": "3.0.0", - "dev": true - }, - "strip-indent": { - "version": "3.0.0", - "dev": true, - "requires": { - "min-indent": "^1.0.0" - } - }, - "strip-json-comments": { - "version": "3.1.1", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "dev": true - }, - "svelte": { - "version": "3.59.2", - "dev": true - }, - "svelte-preprocess": { - "version": "5.0.4", - "dev": true, - "requires": { - "@types/pug": "^2.0.6", - "detect-indent": "^6.1.0", - "magic-string": "^0.27.0", - "sorcery": "^0.11.0", - "strip-indent": "^3.0.0" - } - }, - "temp-dir": { - "version": "1.0.0", - "dev": true - }, - "temp-write": { - "version": "4.0.0", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "is-stream": "^2.0.0", - "make-dir": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^3.3.2" - } - }, - "text-table": { - "version": "0.2.0", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "tsconfig-paths": { - "version": "3.14.2", - "dev": true, - "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "tslib": { - "version": "2.3.1", - "dev": true - }, - "tsutils": { - "version": "3.21.0", - "dev": true, - "requires": { - "tslib": "^1.8.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "dev": true - } - } - }, - "type-check": { - "version": "0.4.0", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-fest": { - "version": "0.20.2", - "dev": true - }, - "typed-array-buffer": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" - } - }, - "typed-array-byte-length": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - } - }, - "typed-array-byte-offset": { - "version": "1.0.0", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - } - }, - "typed-array-length": { - "version": "1.0.4", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - } - }, - "typescript": { - "version": "4.9.5", - "dev": true - }, - "unbox-primitive": { - "version": "1.0.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - } - }, - "universalify": { - "version": "2.0.0", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "uuid": { - "version": "3.4.0", - "dev": true - }, - "which": { - "version": "2.0.2", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-boxed-primitive": { - "version": "1.0.2", - "dev": true, - "requires": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - } - }, - "which-typed-array": { - "version": "1.1.11", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - } - }, - "wrap-ansi": { - "version": "7.0.0", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "dev": true - }, - "yargs": { - "version": "17.7.2", - "dev": true, - "requires": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - } - }, - "yargs-parser": { - "version": "21.1.1", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "dev": true - } } } diff --git a/inception/inception-html-editor/src/main/ts_template/package-lock.json b/inception/inception-html-editor/src/main/ts_template/package-lock.json index 2ece5a98d49..8b7a313d085 100644 --- a/inception/inception-html-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-html-editor/src/main/ts_template/package-lock.json @@ -17,8 +17,8 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", - "esbuild-sass-plugin": "~2.5.0", + "esbuild": "~0.18.19", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -44,14 +44,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -59,8 +59,8 @@ "eslint-plugin-n": "^15.6.0", "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -77,14 +77,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -94,9 +94,9 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "mocha-junit-reporter": "^2.2.1", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -111,7 +111,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -273,7 +273,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -1138,7 +1138,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1149,28 +1149,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1190,16 +1190,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -2071,8 +2070,7 @@ "../../../../inception-js-api/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -3216,7 +3214,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -3317,7 +3314,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -3959,7 +3955,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -4359,7 +4355,6 @@ "version": "3.1.3", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -4502,7 +4497,6 @@ "version": "2.2.0", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=8" } @@ -4580,7 +4574,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -4601,7 +4594,6 @@ "version": "5.1.2", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -4826,7 +4818,7 @@ } }, "node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4837,41 +4829,40 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/escalade": { @@ -5453,7 +5444,6 @@ "os": [ "darwin" ], - "peer": true, "engines": { "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } @@ -5708,8 +5698,7 @@ "node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/import-fresh": { "version": "3.3.0", @@ -5789,7 +5778,6 @@ "version": "2.1.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -6152,7 +6140,6 @@ "version": "3.0.0", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -6388,7 +6375,6 @@ "version": "3.6.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -6534,7 +6520,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -6605,7 +6590,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } diff --git a/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json b/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json index 16f15f42409..701ca7ec21e 100644 --- a/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json @@ -18,8 +18,8 @@ "devDependencies": { "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", - "esbuild": "~0.16.17", - "esbuild-sass-plugin": "~2.5.0", + "esbuild": "~0.18.19", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -43,14 +43,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -58,8 +58,8 @@ "eslint-plugin-n": "^15.6.0", "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -76,14 +76,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -93,9 +93,9 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "mocha-junit-reporter": "^2.2.1", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -110,7 +110,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -272,7 +272,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -1137,7 +1137,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1148,28 +1148,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1189,16 +1189,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -2070,8 +2069,7 @@ "../../../../inception-js-api/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -3215,7 +3213,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -3316,7 +3313,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -4237,7 +4233,7 @@ "license": "MIT" }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -4754,7 +4750,6 @@ "version": "3.1.3", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -4929,7 +4924,6 @@ "version": "2.2.0", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=8" } @@ -5005,7 +4999,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -5026,7 +5019,6 @@ "version": "5.1.2", "dev": true, "license": "ISC", - "peer": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -5288,7 +5280,7 @@ } }, "node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -5299,41 +5291,40 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/escalade": { @@ -5890,7 +5881,6 @@ "os": [ "darwin" ], - "peer": true, "engines": { "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } @@ -6139,8 +6129,7 @@ "node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/import-fresh": { "version": "3.3.0", @@ -6220,7 +6209,6 @@ "version": "2.1.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -6613,7 +6601,6 @@ "version": "3.0.0", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -6979,7 +6966,6 @@ "version": "3.6.0", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -7124,7 +7110,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -7210,7 +7195,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } diff --git a/inception/inception-js-api/src/main/ts/index.ts b/inception/inception-js-api/src/main/ts/index.ts index 8a65e126162..0f3b49a6389 100644 --- a/inception/inception-js-api/src/main/ts/index.ts +++ b/inception/inception-js-api/src/main/ts/index.ts @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import './src/style/InceptionEditorColors.scss' +//import './src/style/InceptionEditorColors.scss' export * from './src/diam' export * from './src/editor' diff --git a/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte b/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte index 95eb20c43c4..3b2bb30044e 100644 --- a/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte +++ b/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte @@ -50,10 +50,8 @@ root.addEventListener( AnnotationOverEvent.eventType, (e: AnnotationOverEvent) => { - if ( - !(e.originalEvent instanceof MouseEvent) || - !(e.target instanceof HTMLElement) - ) + const originalEvent = e.originalEvent; + if (!(originalEvent instanceof MouseEvent)) return; if (popoverTimeoutId) window.clearTimeout(popoverTimeoutId); @@ -67,7 +65,7 @@ popoverTimeoutId = undefined; annotation = e.annotation; popoverTimeoutId = window.setTimeout(() => { - movePopover(e.originalEvent); + movePopover(originalEvent); popoverTimeoutId = undefined; }, renderDelay); }, showDelay); @@ -79,10 +77,7 @@ root.addEventListener( AnnotationOutEvent.eventType, (e: AnnotationOutEvent) => { - if ( - !(e.originalEvent instanceof MouseEvent) || - !(e.target instanceof HTMLElement) - ) + if (!(e.originalEvent instanceof MouseEvent)) return; // console.log("Popover out", e.target) if (popoverTimeoutId) { @@ -165,9 +160,11 @@
{#if annotation}
- {#each annotation.comments as comment} -
{comment.comment}
- {/each} + {#if annotation.comments} + {#each annotation.comments as comment} +
{comment.comment}
+ {/each} + {/if} {#if detailGroups} {#each detailGroups as detailGroup} {#if detailGroup.title} diff --git a/inception/inception-js-api/src/main/ts_template/package-lock.json b/inception/inception-js-api/src/main/ts_template/package-lock.json index 8eed1782c76..bc2e458de46 100644 --- a/inception/inception-js-api/src/main/ts_template/package-lock.json +++ b/inception/inception-js-api/src/main/ts_template/package-lock.json @@ -15,14 +15,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -32,9 +32,9 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "mocha-junit-reporter": "^2.2.1", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -50,9 +50,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz", - "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", "cpu": [ "arm" ], @@ -66,9 +66,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", - "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", "cpu": [ "arm64" ], @@ -82,9 +82,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz", - "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", "cpu": [ "x64" ], @@ -98,9 +98,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", - "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", "cpu": [ "arm64" ], @@ -114,9 +114,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", - "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", "cpu": [ "x64" ], @@ -130,9 +130,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", - "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", "cpu": [ "arm64" ], @@ -146,9 +146,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", - "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", "cpu": [ "x64" ], @@ -162,9 +162,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", - "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", "cpu": [ "arm" ], @@ -178,9 +178,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", - "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", "cpu": [ "arm64" ], @@ -194,9 +194,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", - "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", "cpu": [ "ia32" ], @@ -210,9 +210,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", - "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", "cpu": [ "loong64" ], @@ -226,9 +226,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", - "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", "cpu": [ "mips64el" ], @@ -242,9 +242,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", - "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", "cpu": [ "ppc64" ], @@ -258,9 +258,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", - "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", "cpu": [ "riscv64" ], @@ -274,9 +274,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", - "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", "cpu": [ "s390x" ], @@ -290,9 +290,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", - "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", "cpu": [ "x64" ], @@ -306,9 +306,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", - "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", "cpu": [ "x64" ], @@ -322,9 +322,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", - "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", "cpu": [ "x64" ], @@ -338,9 +338,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", - "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", "cpu": [ "x64" ], @@ -354,9 +354,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", - "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", "cpu": [ "arm64" ], @@ -370,9 +370,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", - "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", "cpu": [ "ia32" ], @@ -386,9 +386,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", - "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", "cpu": [ "x64" ], @@ -565,9 +565,9 @@ "dev": true }, "node_modules/@types/mocha": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz", - "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.1.tgz", + "integrity": "sha512-/fvYntiO1GeICvqbQ3doGDIP97vWmvFt83GKguJ6prmQM2iXZfFcq6YE8KteFyRtX2/h5Hf91BYvPodJKFYv5Q==", "dev": true }, "node_modules/@types/node": { @@ -1500,9 +1500,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", - "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, "hasInstallScript": true, "bin": { @@ -1512,28 +1512,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-runner-plugins": { @@ -1554,17 +1554,16 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.5.0.tgz", - "integrity": "sha512-SKWcvZwB+3/3eLhSCscJfb9AEOgL3oYlwOaItnXpXNPVj9Hc1Iwf5Cx4muUd+H+6zKyUwviAtVdRwcUsocUYgA==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", + "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", "dev": true, "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/esbuild-svelte": { @@ -2511,8 +2510,7 @@ "version": "4.3.2", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", - "dev": true, - "peer": true + "dev": true }, "node_modules/import-fresh": { "version": "3.3.0", @@ -3761,7 +3759,6 @@ "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", "dev": true, - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -3871,7 +3868,6 @@ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "dev": true, - "peer": true, "engines": { "node": ">=0.10.0" } diff --git a/inception/inception-js-api/src/main/ts_template/package.json b/inception/inception-js-api/src/main/ts_template/package.json index 0f24a393673..e6984b6e05e 100644 --- a/inception/inception-js-api/src/main/ts_template/package.json +++ b/inception/inception-js-api/src/main/ts_template/package.json @@ -32,11 +32,11 @@ "eslint-plugin-n": "${eslint-plugin-n.version}", "eslint-plugin-promise": "${eslint-plugin-promise.version}", "fs-extra": "${fs-extra.version}", - "mocha": "${mocha.version}", + "mocha": "${ts-mocha.version}", "mocha-junit-reporter": "${mocha-junit-reporter.version}", "svelte": "${svelte.version}", "svelte-preprocess": "${svelte-preprocess.version}", - "ts-mocha": "${mocha.version}", + "ts-mocha": "${ts-mocha.version}", "typescript": "${typescript.version}", "@typescript-eslint/eslint-plugin": "${typescript-eslint-eslint-plugin.version}", "@typescript-eslint/parser": "${typescript-eslint-parser.version}", diff --git a/inception/inception-pdf-editor/src/main/ts_template/package-lock.json b/inception/inception-pdf-editor/src/main/ts_template/package-lock.json index ebe5a74bc6c..37441d60b35 100644 --- a/inception/inception-pdf-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-pdf-editor/src/main/ts_template/package-lock.json @@ -20,7 +20,7 @@ "@types/urijs": "^1.19.19", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -44,14 +44,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -59,8 +59,8 @@ "eslint-plugin-n": "^15.6.0", "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -77,14 +77,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -94,9 +94,9 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "mocha-junit-reporter": "^2.2.1", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -111,7 +111,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -273,7 +273,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -1138,7 +1138,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1149,28 +1149,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1190,16 +1190,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -2071,8 +2070,7 @@ "../../../../inception-js-api/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -3216,7 +3214,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -3317,7 +3314,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -3959,7 +3955,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -4749,7 +4745,7 @@ } }, "node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4760,28 +4756,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/escalade": { diff --git a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts index a544238b29c..0c6759e4186 100644 --- a/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts +++ b/inception/inception-pdf-editor2/src/main/ts/src/pdfanno/pdfanno.ts @@ -82,7 +82,7 @@ export async function initPdfAnno (ajax: DiamAjax): Promise { installSpanSelection() installRelationSelection() - this.popover = new AnnotationDetailPopOver({ + new AnnotationDetailPopOver({ target: document.body, props: { root: document.body, diff --git a/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json b/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json index b0dd750a5dc..9bba3679ffa 100644 --- a/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json +++ b/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json @@ -18,15 +18,15 @@ "@types/chai": "^4.3.1", "@types/events": "^3.0.0", "@types/jquery": "^3.5.14", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@types/urijs": "^1.19.19", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -35,10 +35,10 @@ "eslint-plugin-n": "^15.6.0", "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", + "mocha": "^10.2.0", "sass": "~1.64.2", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -57,14 +57,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", + "esbuild-sass-plugin": "~2.10.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -72,8 +72,8 @@ "eslint-plugin-n": "^15.6.0", "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -90,14 +90,14 @@ }, "devDependencies": { "@types/chai": "^4.3.1", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -107,9 +107,9 @@ "eslint-plugin-promise": "^6.1.1", "fs-extra": "^10.1.0", "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "mocha-junit-reporter": "^2.2.1", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "ts-mocha": "^10.0.0", "typescript": "^4.9.4", "yargs": "^17.6.0" @@ -124,7 +124,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -286,7 +286,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -1151,7 +1151,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1162,28 +1162,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1203,16 +1203,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -2084,8 +2083,7 @@ "../../../../inception-js-api/src/main/ts/node_modules/immutable": { "version": "4.3.2", "dev": true, - "license": "MIT", - "peer": true + "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/import-fresh": { "version": "3.3.0", @@ -3229,7 +3227,6 @@ "version": "1.65.1", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", "immutable": "^4.0.0", @@ -3330,7 +3327,6 @@ "version": "1.0.2", "dev": true, "license": "BSD-3-Clause", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -3972,7 +3968,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -4138,7 +4134,7 @@ "license": "MIT" }, "node_modules/@types/mocha": { - "version": "9.1.1", + "version": "10.0.1", "dev": true, "license": "MIT" }, @@ -4965,7 +4961,7 @@ "license": "MIT" }, "node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4976,28 +4972,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-runner-plugins": { @@ -5017,16 +5013,15 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/esbuild-svelte": { diff --git a/inception/inception-project-export/src/main/ts_template/package-lock.json b/inception/inception-project-export/src/main/ts_template/package-lock.json index 6e994d79a41..60be9199d0b 100644 --- a/inception/inception-project-export/src/main/ts_template/package-lock.json +++ b/inception/inception-project-export/src/main/ts_template/package-lock.json @@ -15,14 +15,14 @@ "@testing-library/svelte": "^3.1.3", "@types/chai": "^4.3.1", "@types/events": "^3.0.0", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -34,10 +34,10 @@ "fs-extra": "^10.1.0", "jsdom": "^20.0.0", "jsdom-global": "^3.0.2", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "sass": "~1.64.2", - "svelte-preprocess": "^5.0.0", + "svelte-preprocess": "^5.0.4", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -243,9 +243,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz", - "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", "cpu": [ "arm" ], @@ -259,9 +259,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", - "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", "cpu": [ "arm64" ], @@ -275,9 +275,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz", - "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", "cpu": [ "x64" ], @@ -291,9 +291,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", - "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", "cpu": [ "arm64" ], @@ -307,9 +307,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", - "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", "cpu": [ "x64" ], @@ -323,9 +323,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", - "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", "cpu": [ "arm64" ], @@ -339,9 +339,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", - "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", "cpu": [ "x64" ], @@ -355,9 +355,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", - "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", "cpu": [ "arm" ], @@ -371,9 +371,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", - "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", "cpu": [ "arm64" ], @@ -387,9 +387,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", - "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", "cpu": [ "ia32" ], @@ -403,9 +403,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", - "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", "cpu": [ "loong64" ], @@ -419,9 +419,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", - "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", "cpu": [ "mips64el" ], @@ -435,9 +435,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", - "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", "cpu": [ "ppc64" ], @@ -451,9 +451,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", - "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", "cpu": [ "riscv64" ], @@ -467,9 +467,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", - "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", "cpu": [ "s390x" ], @@ -483,9 +483,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", - "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", "cpu": [ "x64" ], @@ -499,9 +499,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", - "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", "cpu": [ "x64" ], @@ -515,9 +515,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", - "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", "cpu": [ "x64" ], @@ -531,9 +531,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", - "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", "cpu": [ "x64" ], @@ -547,9 +547,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", - "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", "cpu": [ "arm64" ], @@ -563,9 +563,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", - "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", "cpu": [ "ia32" ], @@ -579,9 +579,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", - "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", "cpu": [ "x64" ], @@ -803,9 +803,9 @@ "dev": true }, "node_modules/@types/mocha": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz", - "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.1.tgz", + "integrity": "sha512-/fvYntiO1GeICvqbQ3doGDIP97vWmvFt83GKguJ6prmQM2iXZfFcq6YE8KteFyRtX2/h5Hf91BYvPodJKFYv5Q==", "dev": true }, "node_modules/@types/pug": { @@ -1894,9 +1894,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", - "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, "hasInstallScript": true, "bin": { @@ -1906,28 +1906,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-runner-plugins": { @@ -1948,17 +1948,16 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.5.0.tgz", - "integrity": "sha512-SKWcvZwB+3/3eLhSCscJfb9AEOgL3oYlwOaItnXpXNPVj9Hc1Iwf5Cx4muUd+H+6zKyUwviAtVdRwcUsocUYgA==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", + "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", "dev": true, "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/esbuild-svelte": { diff --git a/inception/inception-recommendation/src/main/ts_template/package-lock.json b/inception/inception-recommendation/src/main/ts_template/package-lock.json index f2fc2724402..de7cc78c23c 100644 --- a/inception/inception-recommendation/src/main/ts_template/package-lock.json +++ b/inception/inception-recommendation/src/main/ts_template/package-lock.json @@ -15,14 +15,14 @@ "@testing-library/svelte": "^3.1.3", "@types/chai": "^4.3.1", "@types/events": "^3.0.0", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -34,11 +34,11 @@ "fs-extra": "^10.1.0", "jsdom": "^20.0.0", "jsdom-global": "^3.0.2", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "sass": "~1.64.2", - "svelte": "^3.55.0", - "svelte-preprocess": "^5.0.0", + "svelte": "^3.59.2", + "svelte-preprocess": "^5.0.4", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -244,9 +244,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz", - "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", "cpu": [ "arm" ], @@ -260,9 +260,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", - "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", "cpu": [ "arm64" ], @@ -276,9 +276,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz", - "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", "cpu": [ "x64" ], @@ -292,9 +292,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", - "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", "cpu": [ "arm64" ], @@ -308,9 +308,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", - "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", "cpu": [ "x64" ], @@ -324,9 +324,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", - "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", "cpu": [ "arm64" ], @@ -340,9 +340,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", - "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", "cpu": [ "x64" ], @@ -356,9 +356,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", - "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", "cpu": [ "arm" ], @@ -372,9 +372,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", - "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", "cpu": [ "arm64" ], @@ -388,9 +388,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", - "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", "cpu": [ "ia32" ], @@ -404,9 +404,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", - "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", "cpu": [ "loong64" ], @@ -420,9 +420,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", - "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", "cpu": [ "mips64el" ], @@ -436,9 +436,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", - "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", "cpu": [ "ppc64" ], @@ -452,9 +452,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", - "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", "cpu": [ "riscv64" ], @@ -468,9 +468,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", - "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", "cpu": [ "s390x" ], @@ -484,9 +484,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", - "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", "cpu": [ "x64" ], @@ -500,9 +500,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", - "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", "cpu": [ "x64" ], @@ -516,9 +516,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", - "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", "cpu": [ "x64" ], @@ -532,9 +532,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", - "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", "cpu": [ "x64" ], @@ -548,9 +548,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", - "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", "cpu": [ "arm64" ], @@ -564,9 +564,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", - "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", "cpu": [ "ia32" ], @@ -580,9 +580,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", - "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", "cpu": [ "x64" ], @@ -804,9 +804,9 @@ "dev": true }, "node_modules/@types/mocha": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz", - "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.1.tgz", + "integrity": "sha512-/fvYntiO1GeICvqbQ3doGDIP97vWmvFt83GKguJ6prmQM2iXZfFcq6YE8KteFyRtX2/h5Hf91BYvPodJKFYv5Q==", "dev": true }, "node_modules/@types/pug": { @@ -1895,9 +1895,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", - "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, "hasInstallScript": true, "bin": { @@ -1907,28 +1907,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-runner-plugins": { @@ -1949,17 +1949,16 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.5.0.tgz", - "integrity": "sha512-SKWcvZwB+3/3eLhSCscJfb9AEOgL3oYlwOaItnXpXNPVj9Hc1Iwf5Cx4muUd+H+6zKyUwviAtVdRwcUsocUYgA==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", + "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", "dev": true, "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/esbuild-svelte": { diff --git a/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json b/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json index b41a3adb626..b2116e6797a 100644 --- a/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json @@ -15,14 +15,14 @@ "@testing-library/svelte": "^3.1.3", "@types/chai": "^4.3.1", "@types/events": "^3.0.0", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -34,10 +34,10 @@ "fs-extra": "^10.1.0", "jsdom": "^20.0.0", "jsdom-global": "^3.0.2", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", "sass": "~1.64.2", - "svelte-preprocess": "^5.0.0", + "svelte-preprocess": "^5.0.4", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -243,9 +243,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz", - "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", "cpu": [ "arm" ], @@ -259,9 +259,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", - "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", "cpu": [ "arm64" ], @@ -275,9 +275,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz", - "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", "cpu": [ "x64" ], @@ -291,9 +291,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", - "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", "cpu": [ "arm64" ], @@ -307,9 +307,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", - "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", "cpu": [ "x64" ], @@ -323,9 +323,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", - "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", "cpu": [ "arm64" ], @@ -339,9 +339,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", - "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", "cpu": [ "x64" ], @@ -355,9 +355,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", - "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", "cpu": [ "arm" ], @@ -371,9 +371,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", - "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", "cpu": [ "arm64" ], @@ -387,9 +387,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", - "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", "cpu": [ "ia32" ], @@ -403,9 +403,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", - "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", "cpu": [ "loong64" ], @@ -419,9 +419,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", - "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", "cpu": [ "mips64el" ], @@ -435,9 +435,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", - "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", "cpu": [ "ppc64" ], @@ -451,9 +451,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", - "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", "cpu": [ "riscv64" ], @@ -467,9 +467,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", - "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", "cpu": [ "s390x" ], @@ -483,9 +483,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", - "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", "cpu": [ "x64" ], @@ -499,9 +499,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", - "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", "cpu": [ "x64" ], @@ -515,9 +515,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", - "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", "cpu": [ "x64" ], @@ -531,9 +531,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", - "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", "cpu": [ "x64" ], @@ -547,9 +547,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", - "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", "cpu": [ "arm64" ], @@ -563,9 +563,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", - "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", "cpu": [ "ia32" ], @@ -579,9 +579,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", - "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", "cpu": [ "x64" ], @@ -798,9 +798,9 @@ "dev": true }, "node_modules/@types/mocha": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz", - "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.1.tgz", + "integrity": "sha512-/fvYntiO1GeICvqbQ3doGDIP97vWmvFt83GKguJ6prmQM2iXZfFcq6YE8KteFyRtX2/h5Hf91BYvPodJKFYv5Q==", "dev": true }, "node_modules/@types/pug": { @@ -1894,9 +1894,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", - "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, "hasInstallScript": true, "bin": { @@ -1906,28 +1906,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-runner-plugins": { @@ -1948,17 +1948,16 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.5.0.tgz", - "integrity": "sha512-SKWcvZwB+3/3eLhSCscJfb9AEOgL3oYlwOaItnXpXNPVj9Hc1Iwf5Cx4muUd+H+6zKyUwviAtVdRwcUsocUYgA==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", + "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", "dev": true, "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/esbuild-svelte": { diff --git a/inception/inception-ui-kb/src/main/ts_template/package-lock.json b/inception/inception-ui-kb/src/main/ts_template/package-lock.json index 21987b03b27..46e43544149 100644 --- a/inception/inception-ui-kb/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-kb/src/main/ts_template/package-lock.json @@ -22,13 +22,13 @@ "devDependencies": { "bootstrap": "5.3.1", "cross-env": "^7.0.3", - "esbuild": "~0.16.17", - "esbuild-sass-plugin": "~2.5.0", + "esbuild": "~0.18.19", + "esbuild-sass-plugin": "~2.10.0", "sass": "~1.64.2" } }, "../../../../inception-bootstrap/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", + "version": "0.18.20", "cpu": [ "arm64" ], @@ -158,7 +158,7 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/esbuild": { - "version": "0.16.17", + "version": "0.18.20", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -169,41 +169,40 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "../../../../inception-bootstrap/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.5.0", + "version": "2.10.0", "dev": true, "license": "MIT", "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "../../../../inception-bootstrap/src/main/ts/node_modules/fill-range": { diff --git a/inception/inception-ui-scheduling/src/main/ts_template/package-lock.json b/inception/inception-ui-scheduling/src/main/ts_template/package-lock.json index 1ac0c17a00e..60be9199d0b 100644 --- a/inception/inception-ui-scheduling/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-scheduling/src/main/ts_template/package-lock.json @@ -15,14 +15,14 @@ "@testing-library/svelte": "^3.1.3", "@types/chai": "^4.3.1", "@types/events": "^3.0.0", - "@types/mocha": "^9.1.1", + "@types/mocha": "^10.0.1", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.16.17", + "esbuild": "~0.18.19", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.5.0", - "esbuild-svelte": "^0.7.3", + "esbuild-sass-plugin": "~2.10.0", + "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -34,10 +34,10 @@ "fs-extra": "^10.1.0", "jsdom": "^20.0.0", "jsdom-global": "^3.0.2", - "mocha": "^10.0.0", - "mocha-junit-reporter": "^2.1.0", - "sass": "^1.57.1", - "svelte-preprocess": "^5.0.0", + "mocha": "^10.2.0", + "mocha-junit-reporter": "^2.2.1", + "sass": "~1.64.2", + "svelte-preprocess": "^5.0.4", "typescript": "^4.9.4", "uuid": "^8.3.2", "yargs": "^17.6.0" @@ -53,17 +53,89 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", - "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", + "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", "dev": true, "dependencies": { - "@babel/highlight": "^7.22.5" + "@babel/highlight": "^7.22.10", + "chalk": "^2.4.2" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/helper-validator-identifier": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", @@ -74,13 +146,13 @@ } }, "node_modules/@babel/highlight": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", - "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", + "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.0.0", + "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, "engines": { @@ -159,21 +231,21 @@ } }, "node_modules/@babel/runtime": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", - "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "version": "7.22.10", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.10.tgz", + "integrity": "sha512-21t/fkKLMZI4pqP2wlmsQAWnYW1PDyKyyUV4vCi+B25ydmdaYTKXPwCj0BzSUnZf4seIiYvSA3jcZ3gdsMFkLQ==", "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@esbuild/android-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.17.tgz", - "integrity": "sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", "cpu": [ "arm" ], @@ -187,9 +259,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz", - "integrity": "sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", "cpu": [ "arm64" ], @@ -203,9 +275,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.17.tgz", - "integrity": "sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", "cpu": [ "x64" ], @@ -219,9 +291,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz", - "integrity": "sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", "cpu": [ "arm64" ], @@ -235,9 +307,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz", - "integrity": "sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", "cpu": [ "x64" ], @@ -251,9 +323,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz", - "integrity": "sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", "cpu": [ "arm64" ], @@ -267,9 +339,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz", - "integrity": "sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", "cpu": [ "x64" ], @@ -283,9 +355,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz", - "integrity": "sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", "cpu": [ "arm" ], @@ -299,9 +371,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz", - "integrity": "sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", "cpu": [ "arm64" ], @@ -315,9 +387,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz", - "integrity": "sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", "cpu": [ "ia32" ], @@ -331,9 +403,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz", - "integrity": "sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", "cpu": [ "loong64" ], @@ -347,9 +419,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz", - "integrity": "sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", "cpu": [ "mips64el" ], @@ -363,9 +435,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz", - "integrity": "sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", "cpu": [ "ppc64" ], @@ -379,9 +451,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz", - "integrity": "sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", "cpu": [ "riscv64" ], @@ -395,9 +467,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz", - "integrity": "sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", "cpu": [ "s390x" ], @@ -411,9 +483,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz", - "integrity": "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", "cpu": [ "x64" ], @@ -427,9 +499,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz", - "integrity": "sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", "cpu": [ "x64" ], @@ -443,9 +515,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz", - "integrity": "sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", "cpu": [ "x64" ], @@ -459,9 +531,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz", - "integrity": "sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", "cpu": [ "x64" ], @@ -475,9 +547,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz", - "integrity": "sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", "cpu": [ "arm64" ], @@ -491,9 +563,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz", - "integrity": "sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", "cpu": [ "ia32" ], @@ -507,9 +579,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz", - "integrity": "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", "cpu": [ "x64" ], @@ -538,18 +610,18 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.0.tgz", - "integrity": "sha512-uiPeRISaglZnaZk8vwrjQZ1CxogZeY/4IYft6gBOTqu1WhVXWmCmZMWxUv2Q/pxSvPdp1JPaO62kLOcOkMqWrw==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", + "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", - "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -570,9 +642,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", - "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.47.0.tgz", + "integrity": "sha512-P6omY1zv5MItm93kLM8s2vr1HICJH8v0dvddDhysbIuZ+vcjOHg5Zbkf1mTkcmi2JA9oBG2anOkRnW8WJTS8Og==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -731,9 +803,9 @@ "dev": true }, "node_modules/@types/mocha": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz", - "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.1.tgz", + "integrity": "sha512-/fvYntiO1GeICvqbQ3doGDIP97vWmvFt83GKguJ6prmQM2iXZfFcq6YE8KteFyRtX2/h5Hf91BYvPodJKFYv5Q==", "dev": true }, "node_modules/@types/pug": { @@ -1112,6 +1184,25 @@ "node": ">=8" } }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.2.tgz", + "integrity": "sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flat": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", @@ -1803,9 +1894,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.16.17", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.16.17.tgz", - "integrity": "sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, "hasInstallScript": true, "bin": { @@ -1815,28 +1906,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.16.17", - "@esbuild/android-arm64": "0.16.17", - "@esbuild/android-x64": "0.16.17", - "@esbuild/darwin-arm64": "0.16.17", - "@esbuild/darwin-x64": "0.16.17", - "@esbuild/freebsd-arm64": "0.16.17", - "@esbuild/freebsd-x64": "0.16.17", - "@esbuild/linux-arm": "0.16.17", - "@esbuild/linux-arm64": "0.16.17", - "@esbuild/linux-ia32": "0.16.17", - "@esbuild/linux-loong64": "0.16.17", - "@esbuild/linux-mips64el": "0.16.17", - "@esbuild/linux-ppc64": "0.16.17", - "@esbuild/linux-riscv64": "0.16.17", - "@esbuild/linux-s390x": "0.16.17", - "@esbuild/linux-x64": "0.16.17", - "@esbuild/netbsd-x64": "0.16.17", - "@esbuild/openbsd-x64": "0.16.17", - "@esbuild/sunos-x64": "0.16.17", - "@esbuild/win32-arm64": "0.16.17", - "@esbuild/win32-ia32": "0.16.17", - "@esbuild/win32-x64": "0.16.17" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/esbuild-runner-plugins": { @@ -1857,17 +1948,16 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.5.0.tgz", - "integrity": "sha512-SKWcvZwB+3/3eLhSCscJfb9AEOgL3oYlwOaItnXpXNPVj9Hc1Iwf5Cx4muUd+H+6zKyUwviAtVdRwcUsocUYgA==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", + "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", "dev": true, "dependencies": { - "resolve": "^1.22.1" + "resolve": "^1.22.2", + "sass": "^1.63.0" }, "peerDependencies": { - "esbuild": "^0.16.17", - "resolve": "^1.22.1", - "sass": "^1.56.1" + "esbuild": "^0.18.0" } }, "node_modules/esbuild-svelte": { @@ -1935,27 +2025,27 @@ } }, "node_modules/eslint": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", - "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", + "version": "8.47.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz", + "integrity": "sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "^8.47.0", "@humanwhocodes/config-array": "^0.11.10", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -2018,14 +2108,14 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz", - "integrity": "sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==", + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dev": true, "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { @@ -2119,26 +2209,29 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.27.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz", - "integrity": "sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==", + "version": "2.28.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", + "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", "dev": true, "dependencies": { "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", "array.prototype.flat": "^1.3.1", "array.prototype.flatmap": "^1.3.1", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", + "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.11.0", + "is-core-module": "^2.12.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" + "resolve": "^1.22.3", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" }, "engines": { "node": ">=4" @@ -2281,9 +2374,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2293,9 +2386,9 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz", - "integrity": "sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -2702,9 +2795,9 @@ } }, "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.21.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", + "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -2926,9 +3019,9 @@ } }, "node_modules/immutable": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", - "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", + "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", "dev": true }, "node_modules/import-fresh": { @@ -3075,9 +3168,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dev": true, "dependencies": { "has": "^1.0.3" @@ -3899,6 +3992,35 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.groupby": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.0.tgz", + "integrity": "sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.21.2", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/object.values": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", @@ -4169,9 +4291,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==", "dev": true }, "node_modules/regexp.prototype.flags": { @@ -4219,12 +4341,12 @@ "dev": true }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz", + "integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==", "dev": true, "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -4387,9 +4509,9 @@ } }, "node_modules/sass": { - "version": "1.64.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", - "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "version": "1.64.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.2.tgz", + "integrity": "sha512-TnDlfc+CRnUAgLO9D8cQLFu/GIjJIzJCGkE7o4ekIGQOH7T3GetiRR/PsTWJUHhkzcSPrARkPI+gNWn5alCzDg==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/inception/update-package-lock.sh b/inception/update-package-lock.sh index d95e36a2a39..a14ba21e48b 100755 --- a/inception/update-package-lock.sh +++ b/inception/update-package-lock.sh @@ -2,21 +2,26 @@ set -e MVN=${MVN:-'mvn'} -TS_MODULES="./inception-js-api/src/main/ts +# Do not change the order without a good reason - modules that imported by other modules must come before them! +TS_MODULES=" +./inception-bootstrap/src/main/ts +./inception-js-api/src/main/ts ./inception-diam/src/main/ts +./inception-brat-editor/src/main/ts ./inception-diam-editor/src/main/ts -./inception-ui-kb/src/main/ts -./inception-html-recogito-editor/src/main/ts -./inception-bootstrap/src/main/ts ./inception-external-editor/src/main/ts +./inception-html-apache-annotator-editor/src/main/ts ./inception-html-editor/src/main/ts +./inception-html-recogito-editor/src/main/ts ./inception-pdf-editor/src/main/ts ./inception-pdf-editor2/src/main/ts +./inception-project-export/src/main/ts +./inception-recommendation/src/main/ts ./inception-ui-dashboard-activity/src/main/ts -./inception-brat-editor/src/main/ts +./inception-ui-kb/src/main/ts ./inception-ui-search/src/main/ts -./inception-recommendation/src/main/ts -./inception-project-export/src/main/ts" +./inception-ui-scheduling/src/main/ts +" for module in $TS_MODULES ; do pushd "$module" diff --git a/pom.xml b/pom.xml index 3cad14ada2d..e3fdbe21ed8 100644 --- a/pom.xml +++ b/pom.xml @@ -156,9 +156,9 @@ ^7.0.3 ^2.0.1 ^1.11.4 - ~0.16.17 - ~2.5.0 - ^0.7.3 + ~0.18.19 + ~2.10.0 + ^0.7.4 ^2.3.0-plugins.0 ^8.31.0 ^0.7.2 @@ -177,26 +177,27 @@ ^3.0.2 3.7.0 1.13.2 - ^10.0.0 - ^2.1.0 + ^10.2.0 + ^2.2.1 2.14.305 - 2.11.7 + 2.11.8 1.8.2 0.1.11 1.7.7 ~1.64.2 ^6.1.2 - ^3.55.0 - ^5.0.0 + ^3.59.2 + ^5.0.4 ^3.1.2 ^3.0.8 ^3.1.3 + ^10.0.0 ^4.9.4 ^5.47.1 ^5.47.1 ^3.0.0 ^3.5.14 - ^9.1.1 + ^10.0.1 ^2.3.5 ^1.19.19 ^8.3.2 From 059e7dfbb925ddd5501f17d63d903ec6c7dd4cf9 Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Mon, 21 Aug 2023 12:50:53 +0200 Subject: [PATCH 09/17] #4139 - Reusable popover component for annotation editors - Remove "Yield" as a separate comment type - it is just a regular info comment --- .../layer/relation/RelationRenderer.java | 91 ++++++++++--------- .../layer/relation/RelationRendererTest.java | 13 +-- .../rendering/vmodel/VCommentType.java | 2 +- .../brat/render/BratSerializerImpl.java | 3 - .../brat/render/model/AnnotationComment.java | 3 - .../src/main/ts/src/protocol/Protocol.ts | 3 - .../compactv2/CompactSerializerV2Impl.java | 3 - .../src/main/ts/src/diam/DiamAjax.ts | 82 ++++++++++++++--- 8 files changed, 125 insertions(+), 75 deletions(-) diff --git a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java index 991bb0f9655..af3aa2ca1b0 100644 --- a/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java +++ b/inception/inception-api-annotation/src/main/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRenderer.java @@ -20,6 +20,7 @@ import static java.util.Arrays.asList; import static java.util.Collections.emptyList; import static java.util.Comparator.comparingInt; +import static org.apache.commons.lang3.StringUtils.abbreviate; import static org.apache.uima.fit.util.CasUtil.selectCovered; import java.util.ArrayList; @@ -39,6 +40,7 @@ import org.apache.uima.cas.Type; import org.apache.uima.cas.TypeSystem; import org.apache.uima.cas.text.AnnotationFS; +import org.apache.uima.jcas.tcas.Annotation; import org.apache.wicket.Page; import org.apache.wicket.core.request.handler.IPageRequestHandler; import org.apache.wicket.request.cycle.PageRequestHandlerTracker; @@ -157,27 +159,24 @@ public void render(final CAS aCas, List aFeatures, VDocument } } - private Optional renderYield(AnnotationFS fs, Map> relationLinks, - List yieldDeps) + private Optional renderYield(AnnotationFS fs) { FeatureStructure dependentFs = getDependentFs(fs); - if (relationLinks.keySet().contains(ICasUtil.getAddr(dependentFs)) - && !yieldDeps.contains(ICasUtil.getAddr(dependentFs))) { - yieldDeps.add(ICasUtil.getAddr(dependentFs)); + var relationLinks = getRelationLinks(fs.getCAS()); - // sort the annotations (begin, end) - List sortedDepFs = new ArrayList<>( - relationLinks.get(ICasUtil.getAddr(dependentFs))); - sortedDepFs.sort(comparingInt( - arg0 -> ICasUtil.selectAnnotationByAddr(fs.getCAS(), arg0).getBegin())); + if (!relationLinks.keySet().contains(ICasUtil.getAddr(dependentFs))) { + return Optional.empty(); + } - String cm = getYieldMessage(fs.getCAS(), sortedDepFs); + // sort the annotations (begin, end) + var sortedDepFs = new ArrayList<>(relationLinks.get(ICasUtil.getAddr(dependentFs))); + sortedDepFs.sort(comparingInt( + arg0 -> ICasUtil.selectAnnotationByAddr(fs.getCAS(), arg0).getBegin())); - return Optional.of(cm); - } + var cm = getYieldMessage(fs.getCAS(), sortedDepFs); - return Optional.empty(); + return Optional.of(cm); } @Override @@ -188,9 +187,9 @@ public List render(VDocument aVDocument, AnnotationFS aFS, return Collections.emptyList(); } - RelationAdapter typeAdapter = getTypeAdapter(); - FeatureStructure dependentFs = getDependentFs(aFS); - FeatureStructure governorFs = getGovernorFs(aFS); + var typeAdapter = getTypeAdapter(); + var dependentFs = getDependentFs(aFS); + var governorFs = getGovernorFs(aFS); if (dependentFs == null || governorFs == null) { StringBuilder message = new StringBuilder(); @@ -259,23 +258,29 @@ public List lookupLazyDetails(CAS aCas, VID aVid, int aWindowB return Collections.emptyList(); } - // FIXME Should also handle relations that are only partially visible using - // selectAnnotationsInWindow() - var relationLinks = getRelationLinks(aCas, aWindowBeginOffset, aWindowEndOffset); - - // if this is a governor for more than one dependent, avoid duplicate yield - var yieldDeps = new ArrayList(); - var fs = ICasUtil.selectByAddr(aCas, AnnotationFS.class, aVid.getId()); - var yield = renderYield(fs, relationLinks, yieldDeps); + var group = new VLazyDetailGroup(); - var details = super.lookupLazyDetails(aCas, aVid, aWindowBeginOffset, aWindowEndOffset); + var dependentFs = getDependentFs(fs); + if (dependentFs instanceof AnnotationFS) { + group.addDetail(new VLazyDetail("Target", + abbreviate(((AnnotationFS) dependentFs).getCoveredText(), 300))); + } - if (yield.isPresent()) { - details.add(new VLazyDetailGroup(new VLazyDetail("Yield", yield.get()))); + var governorFs = getGovernorFs(fs); + if (governorFs instanceof AnnotationFS) { + group.addDetail(new VLazyDetail("Origin", + abbreviate(((AnnotationFS) governorFs).getCoveredText(), 300))); } + renderYield(fs).ifPresent( + yield -> group.addDetail(new VLazyDetail("Yield", abbreviate(yield, "...", 300)))); + + var details = super.lookupLazyDetails(aCas, aVid, aWindowBeginOffset, aWindowEndOffset); + if (!group.getDetails().isEmpty()) { + details.add(0, group); + } return details; } @@ -314,46 +319,48 @@ else if (end + 1 != ICasUtil.selectAnnotationByAddr(aCas, depFs).getBegin()) { /** * Get relation links to display in relation yield */ - private Map> getRelationLinks(CAS aCas, int aWindowBegin, int aWindowEnd) + private Map> getRelationLinks(CAS aCas) { - RelationAdapter typeAdapter = getTypeAdapter(); - Map> relations = new ConcurrentHashMap<>(); + var typeAdapter = getTypeAdapter(); + var relations = new ConcurrentHashMap>(); - for (AnnotationFS fs : selectCovered(aCas, type, aWindowBegin, aWindowEnd)) { - FeatureStructure dependentFs = getGovernorFs(fs); - FeatureStructure governorFs = getDependentFs(fs); + for (var fs : aCas. select(type)) { + var govFs = getGovernorFs(fs); + var depFs = getDependentFs(fs); - if (dependentFs == null || governorFs == null) { + if (govFs == null || depFs == null) { log.warn("Relation [" + typeAdapter.getLayer().getName() + "] with id [" - + ICasUtil.getAddr(fs) + "] has loose ends - cannot render."); + + VID.of(fs) + "] has loose ends - cannot render."); continue; } - Set links = relations.get(ICasUtil.getAddr(governorFs)); + var links = relations.get(ICasUtil.getAddr(depFs)); if (links == null) { links = new ConcurrentSkipListSet<>(); } - links.add(ICasUtil.getAddr(dependentFs)); - relations.put(ICasUtil.getAddr(governorFs), links); + links.add(ICasUtil.getAddr(govFs)); + relations.put(ICasUtil.getAddr(depFs), links); } // Update other subsequent links for (int i = 0; i < relations.keySet().size(); i++) { - for (Integer fs : relations.keySet()) { + for (var fs : relations.keySet()) { updateLinks(relations, fs); } } + // to start displaying the text from the governor, include it - for (Integer fs : relations.keySet()) { + for (var fs : relations.keySet()) { relations.get(fs).add(fs); } + return relations; } private void updateLinks(Map> aRelLinks, Integer aGov) { - for (Integer dep : aRelLinks.get(aGov)) { + for (var dep : aRelLinks.get(aGov)) { if (aRelLinks.containsKey(dep) && !aRelLinks.get(aGov).containsAll(aRelLinks.get(dep))) { aRelLinks.get(aGov).addAll(aRelLinks.get(dep)); diff --git a/inception/inception-api-annotation/src/test/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRendererTest.java b/inception/inception-api-annotation/src/test/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRendererTest.java index cefb415ec3d..133d4685199 100644 --- a/inception/inception-api-annotation/src/test/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRendererTest.java +++ b/inception/inception-api-annotation/src/test/java/de/tudarmstadt/ukp/inception/annotation/layer/relation/RelationRendererTest.java @@ -27,7 +27,6 @@ import static de.tudarmstadt.ukp.clarin.webanno.support.WebAnnoConst.RELATION_TYPE; import static de.tudarmstadt.ukp.clarin.webanno.support.WebAnnoConst.SPAN_TYPE; import static de.tudarmstadt.ukp.inception.rendering.vmodel.VCommentType.ERROR; -import static de.tudarmstadt.ukp.inception.rendering.vmodel.VCommentType.YIELD; import static java.util.Arrays.asList; import static org.apache.uima.fit.util.JCasUtil.select; import static org.assertj.core.api.Assertions.assertThat; @@ -201,8 +200,7 @@ public void thatRelationOverlapBehaviorOnRenderGeneratesErrors() throws Exceptio VDocument vdoc = new VDocument(); sut.render(jcas.getCas(), asList(), vdoc, 0, jcas.getDocumentText().length()); - assertThat(vdoc.comments()).filteredOn(c -> !YIELD.equals(c.getCommentType())) - .isEmpty(); + assertThat(vdoc.comments()).filteredOn(c -> ERROR.equals(c.getCommentType())).isEmpty(); } { @@ -210,8 +208,7 @@ public void thatRelationOverlapBehaviorOnRenderGeneratesErrors() throws Exceptio VDocument vdoc = new VDocument(); sut.render(jcas.getCas(), asList(), vdoc, 0, jcas.getDocumentText().length()); - assertThat(vdoc.comments()).filteredOn(c -> !YIELD.equals(c.getCommentType())) - .isEmpty(); + assertThat(vdoc.comments()).filteredOn(c -> ERROR.equals(c.getCommentType())).isEmpty(); } @@ -221,7 +218,7 @@ public void thatRelationOverlapBehaviorOnRenderGeneratesErrors() throws Exceptio sut.render(jcas.getCas(), asList(), vdoc, 0, jcas.getDocumentText().length()); assertThat(vdoc.comments()) // - .filteredOn(c -> !YIELD.equals(c.getCommentType())) + .filteredOn(c -> ERROR.equals(c.getCommentType())) .usingRecursiveFieldByFieldElementComparator().contains( // new VComment(dep1, ERROR, "Stacking is not permitted."), new VComment(dep2, ERROR, "Stacking is not permitted.")); @@ -233,7 +230,7 @@ public void thatRelationOverlapBehaviorOnRenderGeneratesErrors() throws Exceptio sut.render(jcas.getCas(), asList(), vdoc, 0, jcas.getDocumentText().length()); assertThat(vdoc.comments()) // - .filteredOn(c -> !YIELD.equals(c.getCommentType())) + .filteredOn(c -> ERROR.equals(c.getCommentType())) .usingRecursiveFieldByFieldElementComparator().contains( // new VComment(dep1, ERROR, "Stacking is not permitted."), new VComment(dep2, ERROR, "Stacking is not permitted.")); @@ -251,7 +248,7 @@ public void thatRelationOverlapBehaviorOnRenderGeneratesErrors() throws Exceptio sut.render(jcas.getCas(), asList(), vdoc, 0, jcas.getDocumentText().length()); assertThat(vdoc.comments()) // - .filteredOn(c -> !YIELD.equals(c.getCommentType())) + .filteredOn(c -> ERROR.equals(c.getCommentType())) .usingRecursiveFieldByFieldElementComparator().contains( // new VComment(dep1, ERROR, "Overlap is not permitted."), new VComment(dep3, ERROR, "Overlap is not permitted.")); diff --git a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VCommentType.java b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VCommentType.java index 9214f9bbc90..3a88f3aa989 100644 --- a/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VCommentType.java +++ b/inception/inception-api-render/src/main/java/de/tudarmstadt/ukp/inception/rendering/vmodel/VCommentType.java @@ -19,5 +19,5 @@ public enum VCommentType { - INFO, ERROR, YIELD + INFO, ERROR } diff --git a/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/BratSerializerImpl.java b/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/BratSerializerImpl.java index 5fcc44c337e..3b0ba0aa434 100644 --- a/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/BratSerializerImpl.java +++ b/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/BratSerializerImpl.java @@ -193,9 +193,6 @@ private void renderComments(GetDocumentResponse aResponse, VDocument aVDoc, case INFO: type = AnnotationComment.ANNOTATOR_NOTES; break; - case YIELD: - type = "Yield"; - break; default: type = AnnotationComment.ANNOTATOR_NOTES; break; diff --git a/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/model/AnnotationComment.java b/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/model/AnnotationComment.java index 56d7fb215fb..9398def687a 100644 --- a/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/model/AnnotationComment.java +++ b/inception/inception-brat-editor/src/main/java/de/tudarmstadt/ukp/clarin/webanno/brat/render/model/AnnotationComment.java @@ -23,9 +23,6 @@ import de.tudarmstadt.ukp.inception.rendering.vmodel.VID; import de.tudarmstadt.ukp.inception.support.json.BeanAsArraySerializer; -/** - * Use this "comments" to highlight "yield" of relation nodes - */ @JsonSerialize(using = BeanAsArraySerializer.class) @JsonPropertyOrder(value = { "vid", "commentType", "comment" }) public class AnnotationComment diff --git a/inception/inception-brat-editor/src/main/ts/src/protocol/Protocol.ts b/inception/inception-brat-editor/src/main/ts/src/protocol/Protocol.ts index 178a5b18349..2ecc8b7a965 100644 --- a/inception/inception-brat-editor/src/main/ts/src/protocol/Protocol.ts +++ b/inception/inception-brat-editor/src/main/ts/src/protocol/Protocol.ts @@ -40,9 +40,6 @@ export type EntityAttributesDto = { cl: ClippedState; } -/** - * Use this "comments" to highlight "yield" of relation nodes - */ export type AnnotationCommentDto = [ id: VID, commentType: CommentType, diff --git a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/model/compactv2/CompactSerializerV2Impl.java b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/model/compactv2/CompactSerializerV2Impl.java index 4d1bd13009d..c560ba3553e 100644 --- a/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/model/compactv2/CompactSerializerV2Impl.java +++ b/inception/inception-diam/src/main/java/de/tudarmstadt/ukp/inception/diam/model/compactv2/CompactSerializerV2Impl.java @@ -195,9 +195,6 @@ private void renderComments(VDocument aVDoc, HashMap vid case INFO: code = CompactComment.INFO; break; - case YIELD: - code = CompactComment.INFO; - break; default: throw new IllegalStateException( "Unsupported comment type [" + comment.getCommentType() + "]"); diff --git a/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts b/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts index 46cc916c91a..6cc5fa5197b 100644 --- a/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts +++ b/inception/inception-js-api/src/main/ts/src/diam/DiamAjax.ts @@ -15,7 +15,6 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { LazyDetail } from '@inception-project/inception-js-api/src/model/LazyDetail' import { Annotation, LazyDetailGroup, Offsets, VID } from '../model' export type DiamLoadAnnotationsOptions = { @@ -30,6 +29,14 @@ export type DiamSelectAnnotationOptions = { } export interface DiamAjax { + /** + * Select the given annotation. + * + * This will generally trigger a re-rendering of the annotation detail sidebar by the server. + * + * @param id the annotation ID + * @param options options like whether to scroll the annotation into view + */ selectAnnotation(id: VID, options?: DiamSelectAnnotationOptions): void; /** @@ -39,47 +46,98 @@ export interface DiamAjax { scrollTo(args: { id?: VID, offset?: Offsets }): void; /** - * Delete the annotation with the given VID. + * Delete the given annotation. + * + * This will generally trigger a re-rendering of the document triggered by the server. * - * @param id the VID of the annotation to delete. + * @param id the annotation ID */ deleteAnnotation(id: VID): void; /** - * Create a new span annotation at the given location. + * Create a new span annotation at the given loction. * - * @param offsets the offsets of the annotation. + * This will generally trigger a re-rendering of the document triggered by the server. * - * NOTE: Currently only a single element is supported in the offsets array. + * @param offsets the position of the new annotation. Note that currently only a single offset is + * supported. + * @param spanText the text of the new annotation. This is deprecated and will be removed in the + * future. */ createSpanAnnotation(offsets: Array, spanText?: string): void; /** - * Move a new span annotation to a new location. + * Move the given span annotation to a new location. * - * @param offsets the offsets of the annotation. + * This will generally trigger a re-rendering of the document triggered by the server. * - * NOTE: Currently only a single element is supported in the offsets array. + * @param id the annotation ID + * @param offsets the position of the new annotation. Note that currently only a single offset is supported. */ moveSpanAnnotation(id: VID, offsets: Array): void; + /** + * Create a new relation annotation between the two given spans. + * + * @param originSpanId the ID of the origin span + * @param targetSpanId the ID of the target span + */ createRelationAnnotation(originSpanId: VID, targetSpanId: VID): void; + /** + * Load annotations from the server. In the options, you can specify the format of the annotations. + * The controls the kind of data that is provided to the promise. + * + * This method can be used by the editor e.g. to load an entire document or only the currently + * visible annotations when scrolling through a document. + * + * @param options options controlling e.g. the format of the annotations + * @returns a promise that resolves to the loaded annotations in the specified format + */ loadAnnotations(options?: DiamLoadAnnotationsOptions): Promise; /** - * Loads the lazy details for the given annotation + * Load the lazy details of the given annotation. * * @param ann either the VID or the annotation itself * @param layerId the layer ID of the annnotation if the annotation is specified as a VID */ loadLazyDetails(ann: VID | Annotation, layerId?: number): Promise; - loadPreferences (key: string): Promise; + /** + * Load the preferences stored under the given key. This must be a key assigned to the editor + * by the server during initialization. + * + * @param key the key of the preferences + * @see {@link ../editor/AnnotationEditorProperties.ts} + * @returns a promise that resolves to a JSON-fiable object with the preferences + */ + loadPreferences(key: string): Promise; - savePreferences (key: string, data: Record): Promise; + /** + * Store preferences under the given key. This must be a key assigned to the editor by the + * server during initialization. + * + * @param key the key of the preferences + * @param data a JSON-fiable object with the preferences + */ + savePreferences(key: string, data: Record): Promise; + /** + * Trigger an extension action with the given ID. This is typically bound to left-double-click + * events on an annotation. + * + * @param id the ID of the extension action + */ triggerExtensionAction(id: VID): void; + /** + * Open the context menu for the given annotation. The implementation of this context menu is + * on the server side. + * + * @param id the ID of the annotation + * @param evt the mouse event that triggered the context menu. The mouse position from the event + * is used by the server to determine where to display the context menu. + */ openContextMenu(id: VID, evt: MouseEvent): void; } From c1a59cedfdca008a34487a4abe743f042641e7f2 Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Tue, 22 Aug 2023 23:35:04 +0200 Subject: [PATCH 10/17] #4155 - Better annotation suggestion IDs - Defer setting annotation suggestion IDs until they are added to the predictions object - If an extracted suggestion matches an existing one, inherit the existing suggestion (and its ID) instead - Inherit the ID counter across prediction generations - Upgrade to Java 17 (so we can use records) --- .../api/model/AnnotationSuggestion.java | 38 ++-- .../recommendation/api/model/ExtendedId.java | 27 ++- .../recommendation/api/model/Predictions.java | 67 ++++--- .../api/model/RelationSuggestion.java | 36 ++-- .../api/model/SpanSuggestion.java | 30 ++- .../api/model/PredictionsTest.java | 29 +++ .../service/RecommendationServiceImpl.java | 179 +++++++++++++----- ...ommendationServiceImplIntegrationTest.java | 22 +-- .../RecommendationServiceImplTest.java | 60 ++++++ inception/pom.xml | 2 +- 10 files changed, 334 insertions(+), 156 deletions(-) diff --git a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/AnnotationSuggestion.java b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/AnnotationSuggestion.java index 0e8d779bd3a..777653f78a5 100644 --- a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/AnnotationSuggestion.java +++ b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/AnnotationSuggestion.java @@ -33,6 +33,8 @@ public abstract class AnnotationSuggestion { private static final long serialVersionUID = -7137765759688480950L; + public static final int NEW_ID = -1; + public static final String EXTENSION_ID = "rec"; /** @@ -84,6 +86,7 @@ public abstract class AnnotationSuggestion private AutoAcceptMode autoAcceptMode; private int hidingFlags = 0; + private int age = 0; public AnnotationSuggestion(int aId, long aRecommenderId, String aRecommenderName, long aLayerId, String aFeature, String aDocumentName, String aLabel, String aUiLabel, @@ -102,21 +105,6 @@ public AnnotationSuggestion(int aId, long aRecommenderId, String aRecommenderNam autoAcceptMode = aAutoAcceptMode; } - public AnnotationSuggestion(AnnotationSuggestion aObject) - { - label = aObject.label; - uiLabel = aObject.uiLabel; - id = aObject.id; - layerId = aObject.layerId; - feature = aObject.feature; - recommenderName = aObject.recommenderName; - score = aObject.score; - scoreExplanation = aObject.scoreExplanation; - recommenderId = aObject.recommenderId; - documentName = aObject.documentName; - autoAcceptMode = aObject.autoAcceptMode; - } - public int getId() { return id; @@ -297,4 +285,24 @@ public boolean hideSuggestion(LearningRecordType aAction) return false; } } + + public int incrementAge() + { + age++; + return age; + } + + public int getAge() + { + return age; + } + + /** + * @return a clone of the current suggestion with the new ID. This is used when adding a + * suggestion to {@link Predictions} if the ID of the suggestion is set to + * {@link #NEW_ID}. + * @param aId + * the ID of the suggestion. + */ + abstract public AnnotationSuggestion assignId(int aId); } diff --git a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/ExtendedId.java b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/ExtendedId.java index ff46d1c02eb..361305ee39d 100644 --- a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/ExtendedId.java +++ b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/ExtendedId.java @@ -25,22 +25,21 @@ class ExtendedId { private static final long serialVersionUID = -5214683455382881005L; - private final String documentName; + private final int suggestionId; + private final long recommenderId; private final long layerId; + private final String documentName; private final Position position; - private final int annotationId; - private final long recommenderId; private final int hash; - public ExtendedId(String documentName, long layerId, Position aPosition, long recommenderId, - int annotationId) + public ExtendedId(AnnotationSuggestion aSuggestion) { - this.documentName = documentName; - this.layerId = layerId; - this.annotationId = annotationId; - this.recommenderId = recommenderId; - this.position = aPosition; - hash = Objects.hash(annotationId, documentName, layerId, position, recommenderId); + documentName = aSuggestion.getDocumentName(); + layerId = aSuggestion.getLayerId(); + suggestionId = aSuggestion.getId(); + recommenderId = aSuggestion.getRecommenderId(); + position = aSuggestion.getPosition(); + hash = Objects.hash(suggestionId, documentName, layerId, position, recommenderId); } public String getDocumentName() @@ -58,9 +57,9 @@ public Position getPosition() return position; } - public int getAnnotationId() + public int getSuggestionId() { - return annotationId; + return suggestionId; } public long getRecommenderId() @@ -91,7 +90,7 @@ public boolean equals(Object obj) ExtendedId other = (ExtendedId) obj; return Objects.equals(position, other.position) // - && annotationId == other.annotationId // + && suggestionId == other.suggestionId // && Objects.equals(documentName, other.documentName) // && layerId == other.layerId // && recommenderId == other.recommenderId; diff --git a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Predictions.java b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Predictions.java index b0e25f40cf5..6c4dd61f920 100644 --- a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Predictions.java +++ b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Predictions.java @@ -59,19 +59,32 @@ public class Predictions private final Map> idxDocuments = new HashMap<>(); - private final Object predictions = new Object(); + private final Object predictionsLock = new Object(); private final Set seenDocumentsForPrediction = new HashSet<>(); private final List log = new ArrayList<>(); + // Predictions are (currently) scoped to a user session. We assume that within a single user + // session, the pool of IDs of positive integer values is never exhausted. + private int nextId; + public Predictions(User aSessionOwner, String aDataOwner, Project aProject) { Validate.notNull(aProject, "Project must be specified"); Validate.notNull(aSessionOwner, "Session owner must be specified"); - Validate.notNull(aSessionOwner, "Data owner must be specified"); + Validate.notNull(aDataOwner, "Data owner must be specified"); project = aProject; sessionOwner = aSessionOwner; dataOwner = aDataOwner; + nextId = 0; + } + + public Predictions(Predictions aPredecessor) + { + project = aPredecessor.project; + sessionOwner = aPredecessor.sessionOwner; + dataOwner = aPredecessor.dataOwner; + nextId = aPredecessor.nextId; } public User getSessionOwner() @@ -151,7 +164,7 @@ public SuggestionDocumentGroup getGroupedPre private List getFlattenedPredictions(Class type, String aDocumentName, AnnotationLayer aLayer, int aWindowBegin, int aWindowEnd) { - synchronized (predictions) { + synchronized (predictionsLock) { var byDocument = idxDocuments.getOrDefault(aDocumentName, emptyMap()); return byDocument.entrySet().stream() // .filter(f -> type.isInstance(f.getValue())) // @@ -180,11 +193,11 @@ private List getFlattenedPredictions(Class getPredictionByVID(SourceDocument aDocument, VID aVID) { - synchronized (predictions) { + synchronized (predictionsLock) { var byDocument = idxDocuments.getOrDefault(aDocument.getName(), emptyMap()); return byDocument.values().stream() // - .filter(f -> f.getId() == aVID.getSubId()) // - .filter(f -> f.getRecommenderId() == aVID.getId()) // + .filter(suggestion -> suggestion.getId() == aVID.getSubId()) // + .filter(suggestion -> suggestion.getRecommenderId() == aVID.getId()) // .findFirst(); } } @@ -195,11 +208,19 @@ public Optional getPredictionByVID(SourceDocument aDocumen */ public void putPredictions(List aPredictions) { - synchronized (predictions) { + synchronized (predictionsLock) { for (var prediction : aPredictions) { - var xid = new ExtendedId(prediction.getDocumentName(), prediction.getLayerId(), - prediction.getPosition(), prediction.getRecommenderId(), - prediction.getId()); + // Assign ID to predictions that do not have an ID yet + if (prediction.getId() == AnnotationSuggestion.NEW_ID) { + prediction = prediction.assignId(nextId); + nextId++; + if (nextId < 0) { + throw new IllegalStateException( + "Annotation suggestion ID overflow. Restart session."); + } + } + + var xid = new ExtendedId(prediction); var byDocument = idxDocuments.computeIfAbsent(prediction.getDocumentName(), $ -> new HashMap<>()); byDocument.put(xid, prediction); @@ -212,35 +233,23 @@ public Project getProject() return project; } - /** - * @return whether there are any predictions. - * @deprecated Use {@link #isEmpty()} instead. - */ - @Deprecated - public boolean hasPredictions() - { - synchronized (predictions) { - return !idxDocuments.isEmpty(); - } - } - public boolean isEmpty() { - synchronized (predictions) { + synchronized (predictionsLock) { return idxDocuments.values().stream().allMatch(Map::isEmpty); } } public int size() { - synchronized (predictions) { + synchronized (predictionsLock) { return idxDocuments.values().stream().mapToInt(Map::size).sum(); } } public void removePredictions(Long recommenderId) { - synchronized (predictions) { + synchronized (predictionsLock) { idxDocuments.values().forEach(docGroup -> docGroup.entrySet() // .removeIf((p) -> p.getKey().getRecommenderId() == recommenderId)); } @@ -249,7 +258,7 @@ public void removePredictions(Long recommenderId) @SuppressWarnings({ "rawtypes", "unchecked" }) public List getAlternativeSuggestions(SpanSuggestion aSuggestion) { - synchronized (predictions) { + synchronized (predictionsLock) { var byDocument = idxDocuments.getOrDefault(aSuggestion.getDocumentName(), emptyMap()); return byDocument.entrySet().stream() // .filter(f -> f.getValue() instanceof SpanSuggestion) // @@ -284,7 +293,7 @@ public List getAlternativeSuggestions(SpanSuggestion aSuggestion public List getPredictionsByTokenAndFeature(String aDocumentName, AnnotationLayer aLayer, int aBegin, int aEnd, String aFeature) { - synchronized (predictions) { + synchronized (predictionsLock) { var byDocument = idxDocuments.getOrDefault(aDocumentName, emptyMap()); return byDocument.entrySet().stream() // .filter(f -> f.getValue() instanceof SpanSuggestion) // @@ -301,7 +310,7 @@ public List getPredictionsByTokenAndFeature(String aDocumentName public List getPredictionsByRecommenderAndDocument( Recommender aRecommender, String aDocumentName) { - synchronized (predictions) { + synchronized (predictionsLock) { var byDocument = idxDocuments.getOrDefault(aDocumentName, emptyMap()); return byDocument.entrySet().stream() // .filter(f -> f.getKey().getRecommenderId() == (long) aRecommender.getId()) @@ -312,7 +321,7 @@ public List getPredictionsByRecommenderAndDocument( public List getPredictionsByDocument(String aDocumentName) { - synchronized (predictions) { + synchronized (predictionsLock) { var byDocument = idxDocuments.getOrDefault(aDocumentName, emptyMap()); return byDocument.entrySet().stream() // .map(Map.Entry::getValue) // diff --git a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestion.java b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestion.java index f17133e6e5c..3c8ea29f0c8 100644 --- a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestion.java +++ b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestion.java @@ -60,19 +60,6 @@ public RelationSuggestion(int aId, long aRecommenderId, String aRecommenderName, position = new RelationPosition(aSourceBegin, aSourceEnd, aTargetBegin, aTargetEnd); } - /** - * Copy constructor. - * - * @param aObject - * The annotationObject to copy - */ - public RelationSuggestion(RelationSuggestion aObject) - { - super(aObject); - - position = new RelationPosition(aObject.position); - } - // Getter and setter @Override @@ -110,11 +97,34 @@ public String toString() .append("reasonForHiding", getReasonForHiding()).toString(); } + @Override + public AnnotationSuggestion assignId(int aId) + { + return toBuilder().withId(aId).build(); + } + public static Builder builder() { return new Builder(); } + public Builder toBuilder() + { + return builder() // + .withId(id) // + .withRecommenderId(recommenderId) // + .withRecommenderName(recommenderName) // + .withLayerId(layerId) // + .withFeature(feature) // + .withDocumentName(documentName) // + .withLabel(label) // + .withUiLabel(uiLabel) // + .withScore(score) // + .withScoreExplanation(scoreExplanation) // + .withPosition(position) // + .withAutoAcceptMode(getAutoAcceptMode()); + } + public static final class Builder { private int id; diff --git a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestion.java b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestion.java index 3524819a1b8..a06093a2276 100644 --- a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestion.java +++ b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestion.java @@ -62,20 +62,6 @@ public SpanSuggestion(int aId, long aRecommenderId, String aRecommenderName, lon coveredText = aCoveredText; } - /** - * Copy constructor. - * - * @param aObject - * The annotationObject to copy - */ - public SpanSuggestion(SpanSuggestion aObject) - { - super(aObject); - - position = new Offset(aObject.position.getBegin(), aObject.position.getEnd()); - coveredText = aObject.coveredText; - } - // Getter and setter public String getCoveredText() @@ -124,6 +110,17 @@ public String toString() .append("autoAcceptMode", getAutoAcceptMode()).toString(); } + @Override + public AnnotationSuggestion assignId(int aId) + { + return toBuilder().withId(aId).build(); + } + + public static Builder builder() + { + return new Builder(); + } + public Builder toBuilder() { return builder() // @@ -142,11 +139,6 @@ public Builder toBuilder() .withAutoAcceptMode(getAutoAcceptMode()); } - public static Builder builder() - { - return new Builder(); - } - public static final class Builder { private int id; diff --git a/inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/PredictionsTest.java b/inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/PredictionsTest.java index e1af2069d2e..d8659f3b67f 100644 --- a/inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/PredictionsTest.java +++ b/inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/PredictionsTest.java @@ -109,6 +109,35 @@ void timeGetGroupedPredictions() throws Exception } } + @Test + void thatIdsAreAssigned() throws Exception + { + var doc = "doc"; + sut = new Predictions(user, user.getUsername(), project); + sut.putPredictions(asList( // + SpanSuggestion.builder() // + .withId(AnnotationSuggestion.NEW_ID) // + .withDocumentName(doc) // + .build())); + + assertThat(sut.getPredictionsByDocument(doc)) // + .extracting(AnnotationSuggestion::getId) // + .containsExactly(0); + + var inheritedPredictions = sut.getPredictionsByDocument(doc); + sut = new Predictions(sut); + sut.putPredictions(asList( // + SpanSuggestion.builder() // + .withId(AnnotationSuggestion.NEW_ID) // + .withDocumentName(doc) // + .build())); + sut.putPredictions(inheritedPredictions); + + assertThat(sut.getPredictionsByDocument(doc)) // + .extracting(AnnotationSuggestion::getId) // + .containsExactlyInAnyOrder(0, 1); + } + private List generatePredictions(int aDocs, int aRecommenders, int aSuggestions) throws Exception diff --git a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImpl.java b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImpl.java index fa7e72568d6..d847cd9845a 100644 --- a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImpl.java +++ b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImpl.java @@ -40,9 +40,12 @@ import static de.tudarmstadt.ukp.inception.recommendation.api.model.SuggestionType.RELATION; import static de.tudarmstadt.ukp.inception.recommendation.api.model.SuggestionType.SPAN; import static de.tudarmstadt.ukp.inception.recommendation.api.recommender.TrainingCapability.TRAINING_NOT_SUPPORTED; +import static de.tudarmstadt.ukp.inception.rendering.model.Range.rangeCoveringDocument; import static java.lang.Math.max; import static java.lang.Math.min; +import static java.util.Collections.emptyList; import static java.util.Comparator.comparingInt; +import static java.util.stream.Collectors.groupingBy; import static java.util.stream.Collectors.toList; import static java.util.stream.Collectors.toMap; import static java.util.stream.Collectors.toUnmodifiableList; @@ -62,6 +65,7 @@ import java.util.Collections; import java.util.HashSet; import java.util.LinkedHashMap; +import java.util.LinkedHashSet; import java.util.List; import java.util.Map; import java.util.Objects; @@ -181,6 +185,7 @@ import de.tudarmstadt.ukp.inception.recommendation.tasks.SelectionTask; import de.tudarmstadt.ukp.inception.recommendation.tasks.TrainingTask; import de.tudarmstadt.ukp.inception.recommendation.util.OverlapIterator; +import de.tudarmstadt.ukp.inception.rendering.model.Range; import de.tudarmstadt.ukp.inception.scheduling.SchedulingService; import de.tudarmstadt.ukp.inception.scheduling.Task; import de.tudarmstadt.ukp.inception.scheduling.TaskMonitor; @@ -1538,14 +1543,14 @@ public void removeLearningRecords(LearningRecord aRecord) } private void computePredictions(LazyCas aOriginalCas, - EvaluatedRecommender aEvaluatedRecommender, Predictions aPredictions, CAS predictionCas, - SourceDocument aDocument, User aSessionOwner, int aPredictionBegin, int aPredictionEnd) + EvaluatedRecommender aEvaluatedRecommender, Predictions activePredictions, + Predictions aPredictions, CAS predictionCas, SourceDocument aDocument, + User aSessionOwner, int aPredictionBegin, int aPredictionEnd) throws IOException { - Project project = aDocument.getProject(); - Predictions activePredictions = getPredictions(aSessionOwner, project); - int predictionBegin = aPredictionBegin; - int predictionEnd = aPredictionEnd; + var project = aDocument.getProject(); + var predictionBegin = aPredictionBegin; + var predictionEnd = aPredictionEnd; // Make sure we have the latest recommender config from the DB - the one // from the active recommenders list may be outdated @@ -1685,8 +1690,9 @@ private void computePredictions(LazyCas aOriginalCas, * @param aDataOwner * the annotation data owner */ - private void computePredictions(Predictions aPredictions, CAS aPredictionCas, - SourceDocument aDocument, String aDataOwner, int aPredictionBegin, int aPredictionEnd) + private void computePredictions(Predictions aActivePredictions, Predictions aPredictions, + CAS aPredictionCas, SourceDocument aDocument, String aDataOwner, int aPredictionBegin, + int aPredictionEnd) { var aSessionOwner = aPredictions.getSessionOwner(); @@ -1699,14 +1705,14 @@ private void computePredictions(Predictions aPredictions, CAS aPredictionCas, } LazyCas originalCas = new LazyCas(aDocument, aDataOwner); - for (EvaluatedRecommender r : recommenders) { - var layer = schemaService.getLayer(r.getRecommender().getLayer().getId()); + for (var recommender : recommenders) { + var layer = schemaService.getLayer(recommender.getRecommender().getLayer().getId()); if (!layer.isEnabled()) { continue; } - computePredictions(originalCas, r, aPredictions, aPredictionCas, aDocument, - aSessionOwner, aPredictionBegin, aPredictionEnd); + computePredictions(originalCas, recommender, aActivePredictions, aPredictions, + aPredictionCas, aDocument, aSessionOwner, aPredictionBegin, aPredictionEnd); } } catch (IOException e) { @@ -1727,20 +1733,23 @@ private void computePredictions(Predictions aPredictions, CAS aPredictionCas, public Predictions computePredictions(User aSessionOwner, Project aProject, List aDocuments, String aDataOwner, TaskMonitor aMonitor) { + var activePredictions = getPredictions(aSessionOwner, aProject); + var predictions = activePredictions != null ? new Predictions(activePredictions) + : new Predictions(aSessionOwner, aDataOwner, aProject); + try (var casHolder = new PredictionCasHolder()) { - Predictions predictions = new Predictions(aSessionOwner, aDataOwner, aProject); // Generate new predictions or inherit at the recommender level aMonitor.setMaxProgress(aDocuments.size()); for (SourceDocument document : aDocuments) { aMonitor.addMessage(LogMessage.info(this, "%s", document.getName())); aMonitor.incrementProgress(); - computePredictions(predictions, casHolder.cas, document, aDataOwner, -1, -1); + computePredictions(activePredictions, predictions, casHolder.cas, document, + aDataOwner, -1, -1); } return predictions; } catch (ResourceInitializationException e) { - Predictions predictions = new Predictions(aSessionOwner, aDataOwner, aProject); predictions.log( LogMessage.error(this, "Cannot create prediction CAS, stopping predictions!")); LOG.error("Cannot create prediction CAS, stopping predictions!"); @@ -1755,13 +1764,14 @@ public Predictions computePredictions(User aSessionOwner, Project aProject, { aMonitor.setMaxProgress(1); - var predictions = new Predictions(aSessionOwner, aDataOwner, aProject); var activePredictions = getPredictions(aSessionOwner, aProject); + var predictions = activePredictions != null ? new Predictions(activePredictions) + : new Predictions(aSessionOwner, aDataOwner, aProject); // Inherit at the document level. If inheritance at a recommender level is possible, // this is done below. if (activePredictions != null) { - for (SourceDocument document : aInherit) { + for (var document : aInherit) { inheritSuggestionsAtDocumentLevel(aProject, document, aSessionOwner, activePredictions, predictions); } @@ -1771,8 +1781,8 @@ public Predictions computePredictions(User aSessionOwner, Project aProject, final CAS predictionCas = casHolder.cas; // Generate new predictions or inherit at the recommender level - computePredictions(predictions, predictionCas, aCurrentDocument, aDataOwner, - aPredictionBegin, aPredictionEnd); + computePredictions(activePredictions, predictions, predictionCas, aCurrentDocument, + aDataOwner, aPredictionBegin, aPredictionEnd); } catch (ResourceInitializationException e) { predictions.log( @@ -1793,8 +1803,8 @@ private void inheritSuggestionsAtRecommenderLevel(Predictions predictions, CAS a Recommender aRecommender, Predictions activePredictions, SourceDocument document, User aUser) { - List suggestions = activePredictions - .getPredictionsByRecommenderAndDocument(aRecommender, document.getName()); + var suggestions = activePredictions.getPredictionsByRecommenderAndDocument(aRecommender, + document.getName()); if (suggestions.isEmpty()) { LOG.debug("{} for user {} on document {} in project {} there " // @@ -1826,13 +1836,11 @@ private void inheritSuggestionsAtDocumentLevel(Project aProject, SourceDocument return; } - List suggestions1 = aOldPredictions - .getPredictionsByDocument(aDocument.getName()); + var suggestions = aOldPredictions.getPredictionsByDocument(aDocument.getName()); LOG.debug("[{}]({}) for user [{}] on document {} in project {} inherited {} predictions", - "ALL", "--", aUser.getUsername(), aDocument, aProject, suggestions1.size()); + "ALL", "--", aUser.getUsername(), aDocument, aProject, suggestions.size()); - List suggestions = suggestions1; aNewPredictions.putPredictions(suggestions); aNewPredictions.markDocumentAsPredictionCompleted(aDocument); } @@ -1848,31 +1856,41 @@ void generateSuggestions(Predictions aPredictions, RecommenderContext aCtx, var sessionOwner = aPredictions.getSessionOwner(); var recommender = aEngine.getRecommender(); + // Perform the actual prediction aPredictions.log(LogMessage.info(recommender.getName(), "Generating predictions for layer [%s]...", recommender.getLayer().getUiName())); LOG.trace("{}[{}]: Generating predictions for layer [{}]", sessionOwner, recommender.getName(), recommender.getLayer().getUiName()); - - // Perform the actual prediction var predictedRange = aEngine.predict(aCtx, aPredictionCas, aPredictionBegin, aPredictionEnd); // Extract the suggestions from the data which the recommender has written into the CAS - var suggestions = extractSuggestions(aOriginalCas, aPredictionCas, aDocument, recommender); + var generatedSuggestions = extractSuggestions(aOriginalCas, aPredictionCas, aDocument, + recommender); + // Reconcile new suggestions with suggestions from previous run + var reconciliationResult = reconcile(aActivePredictions, aDocument, recommender, + predictedRange, generatedSuggestions); LOG.debug( - "{} for user {} on document {} in project {} generated {} predictions within range {}", - recommender, sessionOwner, aDocument, recommender.getProject(), suggestions.size(), - predictedRange); + "{} for user {} on document {} in project {} generated {} predictions within range {} (+{}/-{}/={})", + recommender, sessionOwner, aDocument, recommender.getProject(), + generatedSuggestions.size(), predictedRange, reconciliationResult.added, + reconciliationResult.removed, reconciliationResult.aged); aPredictions.log(LogMessage.info(recommender.getName(), // - "Generated [%d] predictions within range %s", suggestions.size(), predictedRange)); - - if (aActivePredictions != null) { - // Inherit annotations that are outside the range which was predicted. Note that the - // engine might actually predict a different range from what was requested. - List inheritableSuggestions = aActivePredictions + "Generated [%d] predictions within range %s (+%d/-%d/=%d)", + generatedSuggestions.size(), predictedRange, reconciliationResult.added, + reconciliationResult.removed, reconciliationResult.aged)); + var suggestions = reconciliationResult.suggestions; + + // Inherit suggestions that are outside the range which was predicted. Note that the engine + // might actually predict a different range from what was requested. If the prediction + // covers the entire document, we can skip this. + if (aActivePredictions != null + && !predictedRange.equals(rangeCoveringDocument(aOriginalCas))) { + var inheritableSuggestions = aActivePredictions .getPredictionsByRecommenderAndDocument(recommender, aDocument.getName()) - .stream().filter(s -> !s.coveredBy(predictedRange)) // + .stream() // + .filter(s -> !s.coveredBy(predictedRange)) // .collect(toList()); LOG.debug("{} for user {} on document {} in project {} inherited {} " // @@ -1890,10 +1908,68 @@ void generateSuggestions(Predictions aPredictions, RecommenderContext aCtx, calculateSpanSuggestionVisibility(sessionOwner.getUsername(), aDocument, aOriginalCas, aPredictions.getDataOwner(), aEngine.getRecommender().getLayer(), groupedSuggestions, 0, aOriginalCas.getDocumentText().length()); + // FIXME calculateRelationSuggestionVisibility? aPredictions.putPredictions(suggestions); } + static ReconciliationResult reconcile(Predictions aActivePredictions, SourceDocument aDocument, + Recommender recommender, Range predictedRange, + List aNewProtoSuggesitons) + { + if (aActivePredictions == null) { + return new ReconciliationResult(aNewProtoSuggesitons.size(), 0, 0, + aNewProtoSuggesitons); + } + + var reconciledSuggestions = new LinkedHashSet(); + var addedSuggestions = new ArrayList(); + int agedSuggestionsCount = 0; + + var predictionsByRecommenderAndDocument = aActivePredictions + .getPredictionsByRecommenderAndDocument(recommender, aDocument.getName()); + + var existingSuggestionsByPosition = predictionsByRecommenderAndDocument.stream() // + .filter(s -> s.coveredBy(predictedRange)) // + .collect(groupingBy(AnnotationSuggestion::getPosition)); + + for (var newSuggestion : aNewProtoSuggesitons) { + var existingSuggestions = existingSuggestionsByPosition + .getOrDefault(newSuggestion.getPosition(), emptyList()).stream() // + .filter(s -> Objects.equals(s.getLabel(), newSuggestion.getLabel()) && // + s.getScore() == newSuggestion.getScore() && // + Objects.equals(s.getScoreExplanation(), + newSuggestion.getScoreExplanation())) + .collect(toList()); + + if (existingSuggestions.isEmpty()) { + addedSuggestions.add(newSuggestion); + reconciledSuggestions.add(newSuggestion); + continue; + } + + if (existingSuggestions.size() > 1) { + LOG.debug("Recommender produced more than one suggestion with the same " + + "label, score and score explanation - reconciling with first one"); + } + + var existingSuggestion = existingSuggestions.get(0); + existingSuggestion.incrementAge(); + // Not sure if unhiding is necessary... + existingSuggestion.show(AnnotationSuggestion.FLAG_ALL); + agedSuggestionsCount++; + reconciledSuggestions.add(existingSuggestion); + } + + var removedSuggestions = predictionsByRecommenderAndDocument.stream() // + .filter(s -> s.coveredBy(predictedRange)) // + .filter(s -> !reconciledSuggestions.contains(s)) // + .collect(toList()); + + return new ReconciliationResult(addedSuggestions.size(), removedSuggestions.size(), + agedSuggestionsCount, new ArrayList<>(reconciledSuggestions)); + } + static List extractSuggestions(CAS aOriginalCas, CAS aPredictionCas, SourceDocument aDocument, Recommender aRecommender) { @@ -1915,7 +1991,6 @@ static List extractSuggestions(CAS aOriginalCas, CAS aPred var isMultiLabels = TYPE_NAME_STRING_ARRAY.equals(labelFeature.getRange().getName()); var result = new ArrayList(); - int id = 0; var documentText = aOriginalCas.getDocumentText(); for (var predictedFS : aPredictionCas.select(predictedType)) { @@ -1943,7 +2018,7 @@ static List extractSuggestions(CAS aOriginalCas, CAS aPred for (var label : labels) { var suggestion = SpanSuggestion.builder() // - .withId(id) // + .withId(RelationSuggestion.NEW_ID) // .withRecommender(aRecommender) // .withDocumentName(aDocument.getName()) // .withPosition(offsets) // @@ -1955,7 +2030,6 @@ static List extractSuggestions(CAS aOriginalCas, CAS aPred .withAutoAcceptMode(autoAcceptMode) // .build(); result.add(suggestion); - id++; } break; } @@ -1973,7 +2047,7 @@ static List extractSuggestions(CAS aOriginalCas, CAS aPred for (var label : labels) { var suggestion = RelationSuggestion.builder() // - .withId(id) // + .withId(RelationSuggestion.NEW_ID) // .withRecommender(aRecommender) // .withDocumentName(aDocument.getName()) // .withPosition(position).withLabel(label) // @@ -1983,7 +2057,6 @@ static List extractSuggestions(CAS aOriginalCas, CAS aPred .withAutoAcceptMode(autoAcceptMode) // .build(); result.add(suggestion); - id++; } break; } @@ -2011,14 +2084,11 @@ private static AutoAcceptMode getAutoAcceptMode(FeatureStructure aFS, Feature aM private static String[] getPredictedLabels(FeatureStructure predictedFS, Feature predictedFeature, boolean isStringMultiValue) { - String[] labels; if (isStringMultiValue) { - labels = FSUtil.getFeature(predictedFS, predictedFeature, String[].class); - } - else { - labels = new String[] { predictedFS.getFeatureValueAsString(predictedFeature) }; + return FSUtil.getFeature(predictedFS, predictedFeature, String[].class); } - return labels; + + return new String[] { predictedFS.getFeatureValueAsString(predictedFeature) }; } /** @@ -2917,8 +2987,9 @@ public void deleteSkippedSuggestions(String aSessionOwner, User aDataOwner, { var state = getState(aSessionOwner, aLayer.getProject()); synchronized (state) { - state.learningRecords.getOrDefault(aLayer, Collections.emptyList()).removeIf( - r -> Objects.equals(r.getUser(), aDataOwner) && r.getUserAction() == SKIPPED); + state.learningRecords.getOrDefault(aLayer, Collections.emptyList()) + .removeIf(r -> Objects.equals(r.getUser(), aDataOwner.getUsername()) + && r.getUserAction() == SKIPPED); } String sql = String.join("\n", // @@ -2960,7 +3031,6 @@ public CAS get() throws IOException private static class PredictionCasHolder implements AutoCloseable { - private final CAS cas; public PredictionCasHolder() throws ResourceInitializationException @@ -2975,4 +3045,9 @@ public void close() CasStorageSession.get().remove(cas); } } + + final record ReconciliationResult(int added, int removed, int aged, + List suggestions) + { + } } diff --git a/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplIntegrationTest.java b/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplIntegrationTest.java index 632e1d48faf..1b2bc655bca 100644 --- a/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplIntegrationTest.java +++ b/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplIntegrationTest.java @@ -39,7 +39,6 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -import java.util.List; import java.util.Optional; import org.apache.uima.cas.CAS; @@ -146,10 +145,11 @@ public void listRecommenders_WithOneEnabledRecommender_ShouldReturnStoredRecomme { sut.createOrUpdateRecommender(rec); - List enabledRecommenders = sut.listEnabledRecommenders(rec.getLayer()); + var enabledRecommenders = sut.listEnabledRecommenders(rec.getLayer()); - assertThat(enabledRecommenders).as("Check that the previously created recommender is found") - .hasSize(1).contains(rec); + assertThat(enabledRecommenders) // + .as("Check that the previously created recommender is found") // + .containsExactly(rec); } @SuppressWarnings("unchecked") @@ -174,16 +174,13 @@ public void getNumOfEnabledRecommenders_WithNoEnabledRecommender() rec.setEnabled(false); testEntityManager.persist(rec); - long numOfRecommenders = sut.countEnabledRecommenders(); - assertThat(numOfRecommenders).isEqualTo(0); + assertThat(sut.countEnabledRecommenders()).isEqualTo(0); } @Test public void getRecommenders_WithOneEnabledRecommender_ShouldReturnStoredRecommender() { - Optional enabledRecommenders = sut.getEnabledRecommender(rec.getId()); - - assertThat(enabledRecommenders) + assertThat(sut.getEnabledRecommender(rec.getId())) .as("Check that only the previously created recommender is found").isPresent() .contains(rec); } @@ -194,15 +191,14 @@ public void getRecommenders_WithOnlyDisabledRecommender_ShouldReturnEmptyList() rec.setEnabled(false); testEntityManager.persist(rec); - Optional enabledRecommenders = sut.getEnabledRecommender(rec.getId()); - - assertThat(enabledRecommenders).as("Check that no recommender is found").isEmpty(); + assertThat(sut.getEnabledRecommender(rec.getId())) // + .as("Check that no recommender is found") // + .isEmpty(); } @Test public void getRecommenders_WithOtherRecommenderId_ShouldReturnEmptyList() { - long otherId = 9999L; Optional enabledRecommenders = sut.getEnabledRecommender(otherId); diff --git a/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplTest.java b/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplTest.java index 2aa41efbb4a..3086be29c68 100644 --- a/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplTest.java +++ b/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplTest.java @@ -43,6 +43,8 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.tuple; +import java.util.Arrays; + import org.apache.uima.UIMAFramework; import org.apache.uima.fit.factory.CasFactory; import org.apache.uima.fit.factory.JCasFactory; @@ -53,15 +55,19 @@ import de.tudarmstadt.ukp.clarin.webanno.model.AnnotationFeature; import de.tudarmstadt.ukp.clarin.webanno.model.AnnotationLayer; +import de.tudarmstadt.ukp.clarin.webanno.model.Project; import de.tudarmstadt.ukp.clarin.webanno.model.SourceDocument; +import de.tudarmstadt.ukp.clarin.webanno.security.model.User; import de.tudarmstadt.ukp.clarin.webanno.support.WebAnnoConst; import de.tudarmstadt.ukp.dkpro.core.api.segmentation.type.Sentence; import de.tudarmstadt.ukp.dkpro.core.api.segmentation.type.Token; import de.tudarmstadt.ukp.inception.recommendation.api.model.AnnotationSuggestion; import de.tudarmstadt.ukp.inception.recommendation.api.model.LearningRecord; import de.tudarmstadt.ukp.inception.recommendation.api.model.Offset; +import de.tudarmstadt.ukp.inception.recommendation.api.model.Predictions; import de.tudarmstadt.ukp.inception.recommendation.api.model.Recommender; import de.tudarmstadt.ukp.inception.recommendation.api.model.SpanSuggestion; +import de.tudarmstadt.ukp.inception.rendering.model.Range; class RecommendationServiceImplTest { @@ -87,6 +93,60 @@ void setup() feature2 = AnnotationFeature.builder().withName("feat2").build(); } + @Test + void testReconciliation() throws Exception + { + var sessionOwner = User.builder().withUsername("user").build(); + var doc = SourceDocument.builder().withName("doc1").build(); + var layer = AnnotationLayer.builder().withId(1l).build(); + var feature = AnnotationFeature.builder().withName("feature").withLayer(layer).build(); + var rec = Recommender.builder().withId(1l).withName("rec").withLayer(layer) + .withFeature(feature).build(); + var project = Project.builder().withId(1l).build(); + + var existingSuggestions = Arrays. asList( // + SpanSuggestion.builder() // + .withId(0) // + .withPosition(new Offset(0, 10)) // + .withDocumentName(doc.getName()) // + .withLabel("aged") // + .withRecommender(rec) // + .build(), + SpanSuggestion.builder() // + .withId(1) // + .withPosition(new Offset(0, 10)) // + .withDocumentName(doc.getName()) // + .withLabel("removed") // + .withRecommender(rec) // + .build()); + var activePredictions = new Predictions(sessionOwner, sessionOwner.getUsername(), project); + activePredictions.putPredictions(existingSuggestions); + + var newSuggestions = Arrays. asList( // + SpanSuggestion.builder() // + .withId(2) // + .withPosition(new Offset(0, 10)) // + .withDocumentName(doc.getName()) // + .withLabel("aged") // + .withRecommender(rec) // + .build(), + SpanSuggestion.builder() // + .withId(3) // + .withPosition(new Offset(0, 10)) // + .withDocumentName(doc.getName()) // + .withLabel("added") // + .withRecommender(rec) // + .build()); + + var result = RecommendationServiceImpl.reconcile(activePredictions, doc, rec, + new Range(0, 10), newSuggestions); + + assertThat(result.suggestions()) // + .extracting(AnnotationSuggestion::getId, AnnotationSuggestion::getLabel, + AnnotationSuggestion::getAge) // + .containsExactlyInAnyOrder(tuple(0, "aged", 1), tuple(3, "added", 0)); + } + @Test void thatRejectedSuggestionIsHidden() { diff --git a/inception/pom.xml b/inception/pom.xml index 8e54ef05aee..15ff48787e6 100644 --- a/inception/pom.xml +++ b/inception/pom.xml @@ -28,7 +28,7 @@ 6g - 11 + 17 ${maven.compiler.release} ${maven.compiler.release} yyyy-MM-dd HH:mm From af71ae57a92c751396d7ef01c9f95e02e67579b4 Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Wed, 23 Aug 2023 17:19:26 +0200 Subject: [PATCH 11/17] #4155 - Better annotation suggestion IDs - Fix issue with suggestion visibility not being handled after previous commit - Improve display of evaluation result in recommendation sidebar - If evaluation is optional due to the threshold score being 0 do still trigger training - Handle a zero-threshold directly in the recommender service instead of in each engine - Remove some deprecated methods - Add generation and age information to suggestions and prediction sets - Using more var everywhere - Using more static loggers --- .../learning/ActiveLearningService.java | 14 +- .../learning/ActiveLearningServiceImpl.java | 89 +++++------- .../sidebar/ActiveLearningSidebar.java | 90 ++++++------ .../strategy/UncertaintySamplingStrategy.java | 4 +- .../doccat/OpenNlpDoccatRecommender.java | 95 +++++++------ .../opennlp/ner/OpenNlpNerRecommender.java | 91 ++++++------ .../opennlp/pos/OpenNlpPosRecommender.java | 130 +++++++++--------- .../api/model/AnnotationSuggestion.java | 16 ++- .../recommendation/api/model/Predictions.java | 8 ++ .../recommendation/api/model/Recommender.java | 5 + .../api/model/RelationSuggestion.java | 77 +++++++---- .../api/model/SpanSuggestion.java | 78 +++++++---- .../api/model/RelationSuggestionTest.java | 49 +++++++ .../api/model/SpanSuggestionTest.java | 50 +++++++ .../service/RecommendationServiceImpl.java | 82 +++++++---- .../recommendation/sidebar/LogDialog.java | 2 +- .../sidebar/RecommenderInfoPanel.java | 17 +-- .../recommendation/tasks/SelectionTask.java | 23 ++-- .../RecommendationServiceImplTest.java | 2 +- .../detail/AnnotationDetailEditorPanel.java | 15 +- .../detail/AnnotationInfoPanel.java | 6 +- 21 files changed, 565 insertions(+), 378 deletions(-) create mode 100644 inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestionTest.java create mode 100644 inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestionTest.java diff --git a/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/ActiveLearningService.java b/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/ActiveLearningService.java index 4cd7e362f4c..2549de5f2a4 100644 --- a/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/ActiveLearningService.java +++ b/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/ActiveLearningService.java @@ -25,7 +25,6 @@ import de.tudarmstadt.ukp.clarin.webanno.model.SourceDocument; import de.tudarmstadt.ukp.clarin.webanno.security.model.User; import de.tudarmstadt.ukp.inception.active.learning.ActiveLearningServiceImpl.ActiveLearningUserState; -import de.tudarmstadt.ukp.inception.recommendation.api.model.LearningRecord; import de.tudarmstadt.ukp.inception.recommendation.api.model.LearningRecordType; import de.tudarmstadt.ukp.inception.recommendation.api.model.SpanSuggestion; import de.tudarmstadt.ukp.inception.recommendation.api.model.SuggestionGroup; @@ -44,15 +43,6 @@ public interface ActiveLearningService */ List> getSuggestions(User aDataOwner, AnnotationLayer aLayer); - /** - * @param aRecord - * record to check - * @return if the suggestions from which the given record was created (or an equivalent one) is - * visible to the user. This is useful to check if the suggestion can be highlighted - * when clicking on a history record. - */ - boolean isSuggestionVisible(LearningRecord aRecord); - /** * @return if the are any records of type {@link LearningRecordType#SKIPPED} in the history of * the given layer for the given user. @@ -64,8 +54,8 @@ public interface ActiveLearningService */ boolean hasSkippedSuggestions(String aSessionOwner, User aDataOwner, AnnotationLayer aLayer); - void hideRejectedOrSkippedAnnotations(String aSessionOwner, User aDataOwner, AnnotationLayer aLayer, - boolean aFilterSkippedRecommendation, + void hideRejectedOrSkippedAnnotations(String aSessionOwner, User aDataOwner, + AnnotationLayer aLayer, boolean aFilterSkippedRecommendation, List> aSuggestionGroups); Optional> generateNextSuggestion(String aSessionOwner, User aDataOwner, diff --git a/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/ActiveLearningServiceImpl.java b/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/ActiveLearningServiceImpl.java index 5a9dffbc25f..df12932ac33 100644 --- a/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/ActiveLearningServiceImpl.java +++ b/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/ActiveLearningServiceImpl.java @@ -27,8 +27,8 @@ import java.io.IOException; import java.io.Serializable; +import java.lang.invoke.MethodHandles; import java.util.List; -import java.util.Map; import java.util.Optional; import org.slf4j.Logger; @@ -49,10 +49,7 @@ import de.tudarmstadt.ukp.inception.recommendation.api.LearningRecordService; import de.tudarmstadt.ukp.inception.recommendation.api.RecommendationService; import de.tudarmstadt.ukp.inception.recommendation.api.model.AnnotationSuggestion; -import de.tudarmstadt.ukp.inception.recommendation.api.model.LearningRecord; -import de.tudarmstadt.ukp.inception.recommendation.api.model.Predictions; import de.tudarmstadt.ukp.inception.recommendation.api.model.SpanSuggestion; -import de.tudarmstadt.ukp.inception.recommendation.api.model.SuggestionDocumentGroup; import de.tudarmstadt.ukp.inception.recommendation.api.model.SuggestionGroup; import de.tudarmstadt.ukp.inception.recommendation.api.model.SuggestionGroup.Delta; import de.tudarmstadt.ukp.inception.schema.AnnotationSchemaService; @@ -68,7 +65,7 @@ public class ActiveLearningServiceImpl implements ActiveLearningService { - private final Logger log = LoggerFactory.getLogger(getClass()); + private static final Logger LOG = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); private final ApplicationEventPublisher applicationEventPublisher; private final DocumentService documentService; @@ -97,39 +94,20 @@ public ActiveLearningServiceImpl(DocumentService aDocumentService, @Override public List> getSuggestions(User aUser, AnnotationLayer aLayer) { - Predictions predictions = recommendationService.getPredictions(aUser, aLayer.getProject()); + var predictions = recommendationService.getPredictions(aUser, aLayer.getProject()); if (predictions == null) { return emptyList(); } - Map> recommendationsMap = predictions - .getPredictionsForWholeProject(SpanSuggestion.class, aLayer, documentService); + var recommendationsMap = predictions.getPredictionsForWholeProject(SpanSuggestion.class, + aLayer, documentService); return recommendationsMap.values().stream() // .flatMap(docMap -> docMap.stream()) // .collect(toList()); } - @Override - public boolean isSuggestionVisible(LearningRecord aRecord) - { - var aSessionOwner = userService.get(aRecord.getUser()); - var suggestionGroups = getSuggestions(aSessionOwner, aRecord.getLayer()); - for (var suggestionGroup : suggestionGroups) { - if (suggestionGroup.stream().anyMatch(suggestion -> suggestion.getDocumentName() - .equals(aRecord.getSourceDocument().getName()) - && suggestion.getFeature().equals(aRecord.getAnnotationFeature().getName()) - && suggestion.labelEquals(aRecord.getAnnotation()) - && suggestion.getBegin() == aRecord.getOffsetBegin() - && suggestion.getEnd() == aRecord.getOffsetEnd() // - && suggestion.isVisible())) { - return true; - } - } - return false; - } - @Override public boolean hasSkippedSuggestions(String aSessionOwner, User aDataOwner, AnnotationLayer aLayer) @@ -174,27 +152,31 @@ public Optional> generateNextSuggestion(String aSessionOwn long startTimer = System.currentTimeMillis(); var suggestionGroups = alState.getSuggestions(); long getRecommendationsFromRecommendationService = System.currentTimeMillis(); - log.trace("Getting recommendations from recommender system took {} ms.", + LOG.trace("Getting recommendations from recommender system took {} ms.", (getRecommendationsFromRecommendationService - startTimer)); - // remove duplicate recommendations - suggestionGroups = suggestionGroups.stream() // - .map(it -> removeDuplicateRecommendations(it)) // - .collect(toList()); - long removeDuplicateRecommendation = System.currentTimeMillis(); - log.trace("Removing duplicate recommendations took {} ms.", - (removeDuplicateRecommendation - getRecommendationsFromRecommendationService)); - // hide rejected recommendations hideRejectedOrSkippedAnnotations(aSessionOwner, aDataOwner, alState.getLayer(), true, suggestionGroups); long removeRejectedSkippedRecommendation = System.currentTimeMillis(); - log.trace("Removing rejected or skipped ones took {} ms.", - (removeRejectedSkippedRecommendation - removeDuplicateRecommendation)); + LOG.trace("Hiding rejected or skipped ones took {} ms.", + (removeRejectedSkippedRecommendation + - getRecommendationsFromRecommendationService)); + + // remove duplicate recommendations + suggestionGroups = suggestionGroups.stream() // + .map(it -> removeDuplicatesAndHiddenSuggestions(it)) // + .filter(it -> !it.isEmpty()) // + .collect(toList()); + long removeDuplicateRecommendation = System.currentTimeMillis(); + LOG.trace("Removing duplicate recommendations took {} ms.", + (removeDuplicateRecommendation - removeRejectedSkippedRecommendation)); var pref = recommendationService.getPreferences(aDataOwner, alState.getLayer().getProject()); - return alState.getStrategy().generateNextSuggestion(pref, suggestionGroups); + var nextSuggestion = alState.getStrategy().generateNextSuggestion(pref, suggestionGroups); + assert nextSuggestion.get().getFirst().isVisible() : "Generated suggestion must be visible"; + return nextSuggestion; } @Override @@ -296,35 +278,40 @@ public void skipSpanSuggestion(String aSessionOwner, User aDataOwner, Annotation alternativeSuggestions)); } - private static SuggestionGroup removeDuplicateRecommendations( - SuggestionGroup unmodifiedRecommendationList) + private static SuggestionGroup removeDuplicatesAndHiddenSuggestions( + SuggestionGroup aSuggestionGroup) { - SuggestionGroup cleanRecommendationList = new SuggestionGroup<>(); + var cleanSuggestionGroup = new SuggestionGroup(); - unmodifiedRecommendationList.forEach(recommendationItem -> { - if (!isAlreadyInCleanList(cleanRecommendationList, recommendationItem)) { - cleanRecommendationList.add(recommendationItem); + aSuggestionGroup.forEach(suggestion -> { + if (!suggestion.isVisible()) { + return; + } + + if (!isAlreadyInCleanList(cleanSuggestionGroup, suggestion)) { + cleanSuggestionGroup.add(suggestion); } }); - return cleanRecommendationList; + return cleanSuggestionGroup; } private static boolean isAlreadyInCleanList( SuggestionGroup cleanRecommendationList, AnnotationSuggestion recommendationItem) { - String source = recommendationItem.getRecommenderName(); - String annotation = recommendationItem.getLabel(); - String documentName = recommendationItem.getDocumentName(); + var source = recommendationItem.getRecommenderName(); + var annotation = recommendationItem.getLabel(); + var documentName = recommendationItem.getDocumentName(); - for (AnnotationSuggestion existingRecommendation : cleanRecommendationList) { - boolean areLabelsEqual = existingRecommendation.labelEquals(annotation); + for (var existingRecommendation : cleanRecommendationList) { + var areLabelsEqual = existingRecommendation.labelEquals(annotation); if (existingRecommendation.getRecommenderName().equals(source) && areLabelsEqual && existingRecommendation.getDocumentName().equals(documentName)) { return true; } } + return false; } diff --git a/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/sidebar/ActiveLearningSidebar.java b/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/sidebar/ActiveLearningSidebar.java index c5b026063d0..60f8a33aea1 100644 --- a/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/sidebar/ActiveLearningSidebar.java +++ b/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/sidebar/ActiveLearningSidebar.java @@ -75,7 +75,6 @@ import de.tudarmstadt.ukp.clarin.webanno.model.ReorderableTag; import de.tudarmstadt.ukp.clarin.webanno.model.SourceDocument; import de.tudarmstadt.ukp.clarin.webanno.security.UserDao; -import de.tudarmstadt.ukp.clarin.webanno.security.model.User; import de.tudarmstadt.ukp.clarin.webanno.support.bootstrap.BootstrapModalDialog; import de.tudarmstadt.ukp.clarin.webanno.support.lambda.LambdaAjaxButton; import de.tudarmstadt.ukp.clarin.webanno.support.lambda.LambdaAjaxLink; @@ -302,10 +301,10 @@ private List listLayersWithRecommenders() private void actionStartSession(AjaxRequestTarget aTarget, Form form) { - ActiveLearningUserState alState = alStateModel.getObject(); - AnnotatorState state = getModelObject(); - String userName = state.getUser().getUsername(); - Project project = state.getProject(); + var alState = alStateModel.getObject(); + var state = getModelObject(); + var userName = state.getUser().getUsername(); + var project = state.getProject(); recommendationService.setPredictForAllDocuments(userName, project, true); recommendationService.triggerPrediction(userName, "ActionStartActiveLearningSession", @@ -333,6 +332,7 @@ private void actionStartSession(AjaxRequestTarget aTarget, Form form) */ private void requestClearningSelectionAndJumpingToSuggestion() { + LOG.trace("Requesting clearing and jumping"); RequestCycle.get().setMetaData(ClearSelectionAndJumpToSuggestionKey.INSTANCE, true); } @@ -365,7 +365,7 @@ private void actionStopSession(AjaxRequestTarget aTarget) private void setActiveLearningHighlight(SpanSuggestion aSuggestion) { - assert aSuggestion.isVisible(); + assert aSuggestion.isVisible() : "Cannot highlight hidden suggestions"; if (protectHighlight) { LOG.trace("Active learning sidebar not updating protected highlights"); @@ -519,12 +519,18 @@ private LambdaAjaxLink createJumpToSuggestionLink() private void actionJumpToSuggestion(AjaxRequestTarget aTarget) throws IOException { - ActiveLearningUserState alState = alStateModel.getObject(); - SpanSuggestion suggestion = alState.getSuggestion().get(); + var alState = alStateModel.getObject(); + var suggestion = alState.getSuggestion().get(); + + if (!suggestion.isVisible()) { + error("Cannot jump to hidden suggestion"); + aTarget.addChildren(getPage(), IFeedback.class); + return; + } if (LOG.isDebugEnabled()) { LOG.debug("Active suggestion: {}", suggestion); - Optional updatedSuggestion = getMatchingSuggestion(activeLearningService + var updatedSuggestion = getMatchingSuggestion(activeLearningService .getSuggestions(getModelObject().getUser(), alState.getLayer()), suggestion) .stream().findFirst(); updatedSuggestion.ifPresent(s -> LOG.debug("Update suggestion: {}", s)); @@ -732,13 +738,14 @@ private void moveToNextSuggestion(AjaxRequestTarget aTarget) var sessionOwner = userService.getCurrentUser(); // Generate the next recommendation but remember the current one - Optional prevSuggestion = alState.getSuggestion(); - alState.setCurrentDifference(activeLearningService - .generateNextSuggestion(sessionOwner.getUsername(), dataOwner, alState)); + var currentSuggestion = alState.getSuggestion(); + var nextSuggestion = activeLearningService + .generateNextSuggestion(sessionOwner.getUsername(), dataOwner, alState); + alState.setCurrentDifference(nextSuggestion); // If there is no new suggestion, nothing left to do here if (!alState.getSuggestion().isPresent()) { - if (prevSuggestion.isPresent()) { + if (currentSuggestion.isPresent()) { infoOnce(aTarget, "There are no more recommendations right now."); } @@ -749,10 +756,11 @@ private void moveToNextSuggestion(AjaxRequestTarget aTarget) } // If the active suggestion has changed, inform the user - if (prevSuggestion.isPresent() - && !alState.getSuggestion().get().equals(prevSuggestion.get())) { + if (currentSuggestion.isPresent() + && !alState.getSuggestion().get().equals(currentSuggestion.get())) { // infoOnce(aTarget, "Active learning has moved to next best suggestion."); - LOG.trace("Moving from {} to {}", prevSuggestion.get(), alState.getSuggestion().get()); + LOG.trace("Moving from {} to {}", currentSuggestion.get(), + alState.getSuggestion().get()); } // If there is a suggestion, open it in the sidebar and take the main editor to its location @@ -778,7 +786,7 @@ private void moveToNextSuggestion(AjaxRequestTarget aTarget) private void clearSelectedAnnotationAndJumpToSuggestion(AjaxRequestTarget aTarget) { - ActiveLearningUserState alState = alStateModel.getObject(); + var alState = alStateModel.getObject(); if (!alState.getSuggestion().isPresent()) { return; } @@ -787,11 +795,11 @@ private void clearSelectedAnnotationAndJumpToSuggestion(AjaxRequestTarget aTarge // I.e. we must not make the editor/feature details jump to the next suggestion but rather // keep the view and selected annotation that the user has chosen to provide the opportunity // to the user to continue editing on it - SpanSuggestion suggestion = alState.getSuggestion().get(); - AnnotatorState state = getModelObject(); - Project project = state.getProject(); - User user = state.getUser(); - SourceDocument sourceDocument = documentService.getSourceDocument(project, + var suggestion = alState.getSuggestion().get(); + var state = getModelObject(); + var project = state.getProject(); + var user = state.getUser(); + var sourceDocument = documentService.getSourceDocument(project, suggestion.getDocumentName()); LOG.trace("Jumping to {}", suggestion); @@ -829,12 +837,12 @@ private void loadSuggestionInActiveLearningSidebar(AjaxRequestTarget aTarget, // Obtain some left and right context of the active suggestion while we have easy // access to the document which contains the current suggestion try { - CAS cas = documentService.readAnnotationCas(sourceDocument, + var cas = documentService.readAnnotationCas(sourceDocument, getModelObject().getUser().getUsername(), AUTO_CAS_UPGRADE, SHARED_READ_ONLY_ACCESS); - String text = cas.getDocumentText(); + var text = cas.getDocumentText(); - ActiveLearningUserState alState = alStateModel.getObject(); + var alState = alStateModel.getObject(); alState.setLeftContext( text.substring(Math.max(0, suggestion.getBegin() - 20), suggestion.getBegin())); alState.setRightContext(text.substring(suggestion.getEnd(), @@ -872,8 +880,8 @@ private ListView createLearningHistoryListView() @Override protected void populateItem(ListItem item) { - LearningRecord rec = item.getModelObject(); - AnnotationFeature recAnnotationFeature = rec.getAnnotationFeature(); + var rec = item.getModelObject(); + var recAnnotationFeature = rec.getAnnotationFeature(); String recFeatureValue; if (recAnnotationFeature != null) { FeatureSupport featureSupport = featureSupportRegistry @@ -885,7 +893,7 @@ protected void populateItem(ListItem item) recFeatureValue = rec.getAnnotation(); } - LambdaAjaxLink textLink = new LambdaAjaxLink(CID_JUMP_TO_ANNOTATION, + var textLink = new LambdaAjaxLink(CID_JUMP_TO_ANNOTATION, _target -> actionSelectHistoryItem(_target, item.getModelObject())); textLink.setBody(rec::getTokenText); item.add(textLink); @@ -923,10 +931,10 @@ private void actionSelectHistoryItem(AjaxRequestTarget aTarget, LearningRecord a // Since we have switched documents above (if it was necessary), the editor CAS should // now point to the correct one - CAS cas = getCasProvider().get(); + var cas = getCasProvider().get(); // ... if a matching annotation exists, highlight the annotaiton - Optional annotation = getMatchingAnnotation(cas, aRecord); + var annotation = getMatchingAnnotation(cas, aRecord); if (annotation.isPresent()) { setActiveLearningHighlight(aRecord.getSourceDocument(), annotation.get()); @@ -976,7 +984,8 @@ private List getMatchingSuggestion( && (aFeature == null || aFeature.equals(group.getFeature())) && (aBegin == -1 || aBegin == ((Offset) group.getPosition()).getBegin()) && (aEnd == -1 || aEnd == ((Offset) group.getPosition()).getEnd())) - .flatMap(group -> group.stream()) + .flatMap(group -> group.stream()) // + .filter(suggestion -> suggestion.isVisible()) // .filter(suggestion -> aLabel == null || aLabel.equals(suggestion.getLabel())) .collect(toList()); } @@ -1360,10 +1369,10 @@ private void refreshAvailableSuggestions() { LOG.trace("refreshAvailableSuggestions()"); - AnnotatorState state = getModelObject(); - ActiveLearningUserState alState = alStateModel.getObject(); - alState.setSuggestions( - activeLearningService.getSuggestions(state.getUser(), alState.getLayer())); + var state = getModelObject(); + var alState = alStateModel.getObject(); + var suggestions = activeLearningService.getSuggestions(state.getUser(), alState.getLayer()); + alState.setSuggestions(suggestions); } @OnEvent @@ -1420,11 +1429,11 @@ private void refreshCurrentSuggestionOrMoveToNextSuggestion(AjaxRequestTarget aT // is still relevant - if yes, we need to replace it with its current counterpart since. // if no counterpart exists in the current suggestions, then we need to load a // suggestion from the current list. - ActiveLearningUserState alState = alStateModel.getObject(); - SpanSuggestion activeSuggestion = alState.getSuggestion().get(); + var alState = alStateModel.getObject(); + var activeSuggestion = alState.getSuggestion().get(); // Find the groups which matches the active recommendation - Optional updatedSuggestion = getMatchingSuggestion(alState.getSuggestions(), - activeSuggestion).stream().findFirst(); + var updatedSuggestion = getMatchingSuggestion(alState.getSuggestions(), activeSuggestion) + .stream().findFirst(); if (updatedSuggestion.isEmpty()) { moveToNextSuggestion(aTarget); @@ -1432,8 +1441,7 @@ private void refreshCurrentSuggestionOrMoveToNextSuggestion(AjaxRequestTarget aT } LOG.debug("Replacing outdated suggestion {} with new suggestion {}", - alState.getCurrentDifference().get().getFirst().getId(), - updatedSuggestion.get().getId()); + alState.getCurrentDifference().get().getFirst(), updatedSuggestion.get()); // Update the highlight if (alState.getSuggestion().get().getVID().equals(highlightVID)) { diff --git a/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/strategy/UncertaintySamplingStrategy.java b/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/strategy/UncertaintySamplingStrategy.java index a35a5f092e0..79eec16243e 100644 --- a/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/strategy/UncertaintySamplingStrategy.java +++ b/inception/inception-active-learning/src/main/java/de/tudarmstadt/ukp/inception/active/learning/strategy/UncertaintySamplingStrategy.java @@ -34,9 +34,9 @@ public class UncertaintySamplingStrategy @Override public Optional> generateNextSuggestion(Preferences aPreferences, - List> suggestions) + List> aSuggestions) { - return suggestions.stream() + return aSuggestions.stream() // Fetch the top deltas per recommender .flatMap(group -> group.getTopDeltas(aPreferences).values().stream()) // ... sort them in ascending order (smallest delta first) diff --git a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommender.java b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommender.java index f246427a4f3..879ec7cac49 100644 --- a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommender.java +++ b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommender.java @@ -19,6 +19,7 @@ import static de.tudarmstadt.ukp.clarin.webanno.api.annotation.util.WebAnnoCasUtil.selectOverlapping; import static de.tudarmstadt.ukp.inception.recommendation.api.evaluation.EvaluationResult.toEvaluationResult; +import static de.tudarmstadt.ukp.inception.rendering.model.Range.rangeCoveringAnnotations; import static org.apache.commons.lang3.StringUtils.isBlank; import static org.apache.uima.fit.util.CasUtil.getType; import static org.apache.uima.fit.util.CasUtil.indexCovered; @@ -72,6 +73,9 @@ public class OpenNlpDoccatRecommender private static final Class SAMPLE_UNIT = Sentence.class; private static final Class DATAPOINT_UNIT = Sentence.class; + private static final int MIN_TRAINING_SET_SIZE = 2; + private static final int MIN_TEST_SET_SIZE = 2; + private final OpenNlpDoccatRecommenderTraits traits; public OpenNlpDoccatRecommender(Recommender aRecommender, @@ -91,7 +95,7 @@ public boolean isReadyForPrediction(RecommenderContext aContext) @Override public void train(RecommenderContext aContext, List aCasses) throws RecommendationException { - List docSamples = extractSamples(aCasses); + var docSamples = extractSamples(aCasses); if (docSamples.size() < 2) { aContext.warn("Not enough training data: [%d] items", docSamples.size()); @@ -109,10 +113,10 @@ public void train(RecommenderContext aContext, List aCasses) throws Recomme // OpenNLP int beamSize = Math.max(maxRecommendations, NameFinderME.DEFAULT_BEAM_SIZE); - TrainingParameters params = traits.getParameters(); + var params = traits.getParameters(); params.put(BeamSearch.BEAM_SIZE_PARAMETER, Integer.toString(beamSize)); - DoccatModel model = train(docSamples, params); + var model = train(docSamples, params); aContext.put(KEY_MODEL, model); } @@ -127,43 +131,42 @@ public TrainingCapability getTrainingCapability() public Range predict(RecommenderContext aContext, CAS aCas, int aBegin, int aEnd) throws RecommendationException { - DoccatModel model = aContext.get(KEY_MODEL).orElseThrow( + var model = aContext.get(KEY_MODEL).orElseThrow( () -> new RecommendationException("Key [" + KEY_MODEL + "] not found in context")); - DocumentCategorizerME finder = new DocumentCategorizerME(model); + var finder = new DocumentCategorizerME(model); - Type sampleUnitType = getType(aCas, SAMPLE_UNIT); - Type predictedType = getPredictedType(aCas); - Type tokenType = getType(aCas, Token.class); - Feature scoreFeature = getScoreFeature(aCas); - Feature predictedFeature = getPredictedFeature(aCas); - Feature isPredictionFeature = getIsPredictionFeature(aCas); + var sampleUnitType = getType(aCas, SAMPLE_UNIT); + var predictedType = getPredictedType(aCas); + var tokenType = getType(aCas, Token.class); + var scoreFeature = getScoreFeature(aCas); + var predictedFeature = getPredictedFeature(aCas); + var isPredictionFeature = getIsPredictionFeature(aCas); var units = selectOverlapping(aCas, sampleUnitType, aBegin, aEnd); - int predictionCount = 0; - for (AnnotationFS sampleUnit : units) { + var predictionCount = 0; + for (var unit : units) { if (predictionCount >= traits.getPredictionLimit()) { break; } predictionCount++; - List tokenAnnotations = selectCovered(tokenType, sampleUnit); - String[] tokens = tokenAnnotations.stream() // + var tokenAnnotations = selectCovered(tokenType, unit); + var tokens = tokenAnnotations.stream() // .map(AnnotationFS::getCoveredText) // .toArray(String[]::new); - double[] outcome = finder.categorize(tokens); - String label = finder.getBestCategory(outcome); + var outcome = finder.categorize(tokens); + var label = finder.getBestCategory(outcome); - AnnotationFS annotation = aCas.createAnnotation(predictedType, sampleUnit.getBegin(), - sampleUnit.getEnd()); + var annotation = aCas.createAnnotation(predictedType, unit.getBegin(), unit.getEnd()); annotation.setStringValue(predictedFeature, label); annotation.setDoubleValue(scoreFeature, NumberUtils.max(outcome)); annotation.setBooleanValue(isPredictionFeature, true); aCas.addFsToIndexes(annotation); } - return new Range(units); + return rangeCoveringAnnotations(units); } @Override @@ -176,9 +179,9 @@ public int estimateSampleCount(List aCasses) public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) throws RecommendationException { - List data = extractSamples(aCasses); - List trainingSet = new ArrayList<>(); - List testSet = new ArrayList<>(); + var data = extractSamples(aCasses); + var trainingSet = new ArrayList(); + var testSet = new ArrayList(); for (DocumentSample nameSample : data) { switch (aDataSplitter.getTargetSet(nameSample)) { @@ -194,39 +197,33 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) } } - int testSetSize = testSet.size(); - int trainingSetSize = trainingSet.size(); - double overallTrainingSize = data.size() - testSetSize; - double trainRatio = (overallTrainingSize > 0) ? trainingSetSize / overallTrainingSize : 0.0; - - final int minTrainingSetSize = 2; - final int minTestSetSize = 2; - if (trainingSetSize < minTrainingSetSize || testSetSize < minTestSetSize) { - if ((getRecommender().getThreshold() <= 0.0d)) { - return new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), - SAMPLE_UNIT.getSimpleName()); - } + var testSetSize = testSet.size(); + var trainingSetSize = trainingSet.size(); + var overallTrainingSize = data.size() - testSetSize; + var trainRatio = (overallTrainingSize > 0) ? trainingSetSize / overallTrainingSize : 0.0; - String info = String.format( - "Not enough evaluation data: training set [%s] items, test set [%s] of total [%s]", - trainingSetSize, testSetSize, data.size()); - LOG.info(info); + if (trainingSetSize < MIN_TRAINING_SET_SIZE || testSetSize < MIN_TEST_SET_SIZE) { + String msg = String.format( + "Not enough evaluation data: training set size [%d] (min. %d), test set size [%d] (min. %d) of total [%d] (min. %d)", + trainingSetSize, MIN_TRAINING_SET_SIZE, testSetSize, MIN_TEST_SET_SIZE, + data.size(), (MIN_TRAINING_SET_SIZE + MIN_TEST_SET_SIZE)); + LOG.info(msg); - EvaluationResult result = new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), + var result = new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), SAMPLE_UNIT.getSimpleName(), trainingSetSize, testSetSize, trainRatio); result.setEvaluationSkipped(true); - result.setErrorMsg(info); + result.setErrorMsg(msg); return result; } if (trainingSet.stream().map(DocumentSample::getCategory).distinct().count() <= 1) { - String info = String.format("Training data requires at least two different labels"); - LOG.info(info); + var msg = String.format("Training data requires at least two different labels"); + LOG.info(msg); - EvaluationResult result = new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), + var result = new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), SAMPLE_UNIT.getSimpleName(), trainingSetSize, testSetSize, trainRatio); result.setEvaluationSkipped(true); - result.setErrorMsg(info); + result.setErrorMsg(msg); return result; } @@ -234,11 +231,11 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) trainingSet.size(), testSet.size()); // Train model - DoccatModel model = train(trainingSet, traits.getParameters()); - DocumentCategorizerME doccat = new DocumentCategorizerME(model); + var model = train(trainingSet, traits.getParameters()); + var doccat = new DocumentCategorizerME(model); // Evaluate - EvaluationResult result = testSet.stream() + var result = testSet.stream() .map(sample -> new LabelPair(sample.getCategory(), doccat.getBestCategory(doccat.categorize(sample.getText())))) .collect(toEvaluationResult(DATAPOINT_UNIT.getSimpleName(), @@ -250,7 +247,7 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) private List extractSamples(List aCasses) { - List samples = new ArrayList<>(); + var samples = new ArrayList(); casses: for (CAS cas : aCasses) { Type sampleUnitType = getType(cas, SAMPLE_UNIT); Type tokenType = getType(cas, Token.class); diff --git a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommender.java b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommender.java index b1f9dc4a060..31f24694533 100644 --- a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommender.java +++ b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommender.java @@ -19,6 +19,7 @@ import static de.tudarmstadt.ukp.clarin.webanno.api.annotation.util.WebAnnoCasUtil.selectOverlapping; import static de.tudarmstadt.ukp.inception.recommendation.api.evaluation.EvaluationResult.toEvaluationResult; +import static de.tudarmstadt.ukp.inception.rendering.model.Range.rangeCoveringAnnotations; import static org.apache.commons.lang3.StringUtils.isBlank; import static org.apache.commons.lang3.StringUtils.isNotBlank; import static org.apache.uima.fit.util.CasUtil.getType; @@ -73,6 +74,9 @@ public class OpenNlpNerRecommender private static final Class SAMPLE_UNIT = Sentence.class; private static final Class DATAPOINT_UNIT = Token.class; + private static final int MIN_TRAINING_SET_SIZE = 2; + private static final int MIN_TEST_SET_SIZE = 2; + private final OpenNlpNerRecommenderTraits traits; public OpenNlpNerRecommender(Recommender aRecommender, OpenNlpNerRecommenderTraits aTraits) @@ -121,40 +125,41 @@ public TrainingCapability getTrainingCapability() public Range predict(RecommenderContext aContext, CAS aCas, int aBegin, int aEnd) throws RecommendationException { - TokenNameFinderModel model = aContext.get(KEY_MODEL).orElseThrow( + var model = aContext.get(KEY_MODEL).orElseThrow( () -> new RecommendationException("Key [" + KEY_MODEL + "] not found in context")); - NameFinderME finder = new NameFinderME(model); + var finder = new NameFinderME(model); - Type sampleUnitType = getType(aCas, SAMPLE_UNIT); - Type tokenType = getType(aCas, Token.class); - Type predictedType = getPredictedType(aCas); + var sampleUnitType = getType(aCas, SAMPLE_UNIT); + var tokenType = getType(aCas, Token.class); + var predictedType = getPredictedType(aCas); - Feature predictedFeature = getPredictedFeature(aCas); - Feature isPredictionFeature = getIsPredictionFeature(aCas); - Feature scoreFeature = getScoreFeature(aCas); + var predictedFeature = getPredictedFeature(aCas); + var isPredictionFeature = getIsPredictionFeature(aCas); + var scoreFeature = getScoreFeature(aCas); var units = selectOverlapping(aCas, sampleUnitType, aBegin, aEnd); - int predictionCount = 0; - for (AnnotationFS sampleUnit : units) { + var predictionCount = 0; + + for (var unit : units) { if (predictionCount >= traits.getPredictionLimit()) { break; } predictionCount++; - List tokenAnnotations = selectCovered(tokenType, sampleUnit); - String[] tokens = tokenAnnotations.stream() // + var tokenAnnotations = selectCovered(tokenType, unit); + var tokens = tokenAnnotations.stream() // .map(AnnotationFS::getCoveredText) // .toArray(String[]::new); - for (Span prediction : finder.find(tokens)) { - String label = prediction.getType(); + for (var prediction : finder.find(tokens)) { + var label = prediction.getType(); if (NameSample.DEFAULT_TYPE.equals(label)) { continue; } int begin = tokenAnnotations.get(prediction.getStart()).getBegin(); int end = tokenAnnotations.get(prediction.getEnd() - 1).getEnd(); - AnnotationFS annotation = aCas.createAnnotation(predictedType, begin, end); + var annotation = aCas.createAnnotation(predictedType, begin, end); annotation.setStringValue(predictedFeature, label); if (scoreFeature != null) { annotation.setDoubleValue(scoreFeature, prediction.getProb()); @@ -167,7 +172,7 @@ public Range predict(RecommenderContext aContext, CAS aCas, int aBegin, int aEnd } } - return new Range(units); + return rangeCoveringAnnotations(units); } @Override @@ -180,11 +185,11 @@ public int estimateSampleCount(List aCasses) public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) throws RecommendationException { - List data = extractNameSamples(aCasses); - List trainingSet = new ArrayList<>(); - List testSet = new ArrayList<>(); + var data = extractNameSamples(aCasses); + var trainingSet = new ArrayList(); + var testSet = new ArrayList(); - for (NameSample nameSample : data) { + for (var nameSample : data) { switch (aDataSplitter.getTargetSet(nameSample)) { case TRAIN: trainingSet.add(nameSample); @@ -198,28 +203,22 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) } } - int testSetSize = testSet.size(); - int trainingSetSize = trainingSet.size(); - double overallTrainingSize = data.size() - testSetSize; - double trainRatio = (overallTrainingSize > 0) ? trainingSetSize / overallTrainingSize : 0.0; - - final int minTrainingSetSize = 2; - final int minTestSetSize = 2; - if (trainingSetSize < minTrainingSetSize || testSetSize < minTestSetSize) { - if ((getRecommender().getThreshold() <= 0.0d)) { - return new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), - SAMPLE_UNIT.getSimpleName()); - } + var testSetSize = testSet.size(); + var trainingSetSize = trainingSet.size(); + var overallTrainingSize = data.size() - testSetSize; + var trainRatio = (overallTrainingSize > 0) ? trainingSetSize / overallTrainingSize : 0.0; - String info = String.format( - "Not enough evaluation data: training set [%s] sentences, test set [%s] of total [%s]", - trainingSetSize, testSetSize, data.size()); - LOG.info(info); + if (trainingSetSize < MIN_TRAINING_SET_SIZE || testSetSize < MIN_TEST_SET_SIZE) { + String msg = String.format( + "Not enough evaluation data: training set size [%d] (min. %d), test set size [%d] (min. %d) of total [%d] (min. %d)", + trainingSetSize, MIN_TRAINING_SET_SIZE, testSetSize, MIN_TEST_SET_SIZE, + data.size(), (MIN_TRAINING_SET_SIZE + MIN_TEST_SET_SIZE)); + LOG.info(msg); - EvaluationResult result = new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), + var result = new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), SAMPLE_UNIT.getSimpleName(), trainingSetSize, testSetSize, trainRatio); result.setEvaluationSkipped(true); - result.setErrorMsg(info); + result.setErrorMsg(msg); return result; } @@ -227,21 +226,21 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) testSet.size(), data.size()); // Train model - TokenNameFinderModel model = train(trainingSet, traits.getParameters()); - NameFinderME nameFinder = new NameFinderME(model); + var model = train(trainingSet, traits.getParameters()); + var nameFinder = new NameFinderME(model); // Evaluate - List labelPairs = new ArrayList<>(); - for (NameSample sample : testSet) { + var labelPairs = new ArrayList(); + for (var sample : testSet) { // clear adaptive data from feature generators if necessary if (sample.isClearAdaptiveDataSet()) { nameFinder.clearAdaptiveData(); } // Span contains one NE, Array of them all in one sentence - String[] sentence = sample.getSentence(); - Span[] predictedNames = nameFinder.find(sentence); - Span[] goldNames = sample.getNames(); + var sentence = sample.getSentence(); + var predictedNames = nameFinder.find(sentence); + var goldNames = sample.getNames(); labelPairs.addAll(determineLabelsForASentence(sentence, predictedNames, goldNames)); } @@ -309,7 +308,7 @@ private String determineLabel(Span aName, int aTokenIdx) private List extractNameSamples(List aCasses) { - List nameSamples = new ArrayList<>(); + var nameSamples = new ArrayList(); casses: for (CAS cas : aCasses) { Type sampleUnitType = getType(cas, SAMPLE_UNIT); diff --git a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/pos/OpenNlpPosRecommender.java b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/pos/OpenNlpPosRecommender.java index b4601283b9f..ef7dd0d7230 100644 --- a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/pos/OpenNlpPosRecommender.java +++ b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/pos/OpenNlpPosRecommender.java @@ -59,7 +59,6 @@ import opennlp.tools.postag.POSSample; import opennlp.tools.postag.POSTaggerFactory; import opennlp.tools.postag.POSTaggerME; -import opennlp.tools.util.Sequence; import opennlp.tools.util.TrainingParameters; public class OpenNlpPosRecommender @@ -73,6 +72,9 @@ public class OpenNlpPosRecommender private static final Class SAMPLE_UNIT = Sentence.class; private static final Class DATAPOINT_UNIT = Token.class; + private static final int MIN_TRAINING_SET_SIZE = 2; + private static final int MIN_TEST_SET_SIZE = 2; + private final OpenNlpPosRecommenderTraits traits; public OpenNlpPosRecommender(Recommender aRecommender, OpenNlpPosRecommenderTraits aTraits) @@ -91,7 +93,7 @@ public boolean isReadyForPrediction(RecommenderContext aContext) @Override public void train(RecommenderContext aContext, List aCasses) throws RecommendationException { - List posSamples = extractPosSamples(aCasses); + var posSamples = extractPosSamples(aCasses); if (posSamples.size() < 2) { aContext.warn("Not enough training data: [%d] items", posSamples.size()); @@ -101,9 +103,9 @@ public void train(RecommenderContext aContext, List aCasses) throws Recomme // The beam size controls how many results are returned at most. But even if the user // requests only few results, we always use at least the default bean size recommended by // OpenNLP - int beamSize = Math.max(maxRecommendations, POSTaggerME.DEFAULT_BEAM_SIZE); + var beamSize = Math.max(maxRecommendations, POSTaggerME.DEFAULT_BEAM_SIZE); - TrainingParameters params = traits.getParameters(); + var params = traits.getParameters(); params.put(BeamSearch.BEAM_SIZE_PARAMETER, Integer.toString(beamSize)); POSModel model = train(posSamples, params); @@ -120,60 +122,60 @@ public TrainingCapability getTrainingCapability() public Range predict(RecommenderContext aContext, CAS aCas, int aBegin, int aEnd) throws RecommendationException { - POSModel model = aContext.get(KEY_MODEL).orElseThrow( + var model = aContext.get(KEY_MODEL).orElseThrow( () -> new RecommendationException("Key [" + KEY_MODEL + "] not found in context")); - POSTaggerME tagger = new POSTaggerME(model); + var tagger = new POSTaggerME(model); - Type sampleUnitType = getType(aCas, SAMPLE_UNIT); - Type predictedType = getPredictedType(aCas); - Type tokenType = getType(aCas, Token.class); + var sampleUnitType = getType(aCas, SAMPLE_UNIT); + var predictedType = getPredictedType(aCas); + var tokenType = getType(aCas, Token.class); - Feature scoreFeature = getScoreFeature(aCas); - Feature predictedFeature = getPredictedFeature(aCas); - Feature isPredictionFeature = getIsPredictionFeature(aCas); + var scoreFeature = getScoreFeature(aCas); + var predictedFeature = getPredictedFeature(aCas); + var isPredictionFeature = getIsPredictionFeature(aCas); var units = selectOverlapping(aCas, sampleUnitType, aBegin, aEnd); int predictionCount = 0; - for (AnnotationFS sampleUnit : units) { + for (var unit : units) { if (predictionCount >= traits.getPredictionLimit()) { break; } predictionCount++; - List tokenAnnotations = selectCovered(tokenType, sampleUnit); - String[] tokens = tokenAnnotations.stream() // + var tokenAnnotations = selectCovered(tokenType, unit); + var tokens = tokenAnnotations.stream() // .map(AnnotationFS::getCoveredText) // .toArray(String[]::new); - Sequence[] bestSequences = tagger.topKSequences(tokens); + var bestSequences = tagger.topKSequences(tokens); // LOG.debug("Total number of sequences predicted: {}", bestSequences.length); for (int s = 0; s < Math.min(bestSequences.length, maxRecommendations); s++) { - Sequence sequence = bestSequences[s]; - List outcomes = sequence.getOutcomes(); - double[] probabilities = sequence.getProbs(); + var sequence = bestSequences[s]; + var outcomes = sequence.getOutcomes(); + var probabilities = sequence.getProbs(); // LOG.debug("Sequence {} score {}", s, sequence.getScore()); // LOG.debug("Outcomes: {}", outcomes); // LOG.debug("Probabilities: {}", asList(probabilities)); for (int i = 0; i < outcomes.size(); i++) { - String label = outcomes.get(i); + var label = outcomes.get(i); // Do not return PADded tokens if (PAD.equals(label)) { continue; } - AnnotationFS token = tokenAnnotations.get(i); + var token = tokenAnnotations.get(i); int begin = token.getBegin(); int end = token.getEnd(); double score = probabilities[i]; // Create the prediction - AnnotationFS annotation = aCas.createAnnotation(predictedType, begin, end); + var annotation = aCas.createAnnotation(predictedType, begin, end); annotation.setStringValue(predictedFeature, label); annotation.setDoubleValue(scoreFeature, score); annotation.setBooleanValue(isPredictionFeature, true); @@ -182,7 +184,7 @@ public Range predict(RecommenderContext aContext, CAS aCas, int aBegin, int aEnd } } - return new Range(units); + return Range.rangeCoveringAnnotations(units); } @Override @@ -195,11 +197,11 @@ public int estimateSampleCount(List aCasses) public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) throws RecommendationException { - List data = extractPosSamples(aCasses); - List trainingSet = new ArrayList<>(); - List testSet = new ArrayList<>(); + var data = extractPosSamples(aCasses); + var trainingSet = new ArrayList(); + var testSet = new ArrayList(); - for (POSSample posSample : data) { + for (var posSample : data) { switch (aDataSplitter.getTargetSet(posSample)) { case TRAIN: trainingSet.add(posSample); @@ -213,29 +215,22 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) } } - int testSetSize = testSet.size(); - int trainingSetSize = trainingSet.size(); - double overallTrainingSize = data.size() - testSetSize; - double trainRatio = (overallTrainingSize > 0) ? trainingSetSize / overallTrainingSize : 0.0; - - final int minTrainingSetSize = 2; - final int minTestSetSize = 2; - if (trainingSetSize < minTrainingSetSize || testSetSize < minTestSetSize) { - if ((getRecommender().getThreshold() <= 0.0d)) { - return new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), - SAMPLE_UNIT.getSimpleName()); - } + var testSetSize = testSet.size(); + var trainingSetSize = trainingSet.size(); + var overallTrainingSize = data.size() - testSetSize; + var trainRatio = (overallTrainingSize > 0) ? trainingSetSize / overallTrainingSize : 0.0; - String info = String.format( + if (trainingSetSize < MIN_TRAINING_SET_SIZE || testSetSize < MIN_TEST_SET_SIZE) { + var msg = String.format( "Not enough evaluation data: training set size [%d] (min. %d), test set size [%d] (min. %d) of total [%d] (min. %d)", - trainingSetSize, minTrainingSetSize, testSetSize, minTestSetSize, data.size(), - (minTrainingSetSize + minTestSetSize)); - LOG.info(info); + trainingSetSize, MIN_TRAINING_SET_SIZE, testSetSize, MIN_TEST_SET_SIZE, + data.size(), (MIN_TRAINING_SET_SIZE + MIN_TEST_SET_SIZE)); + LOG.info(msg); - EvaluationResult result = new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), + var result = new EvaluationResult(DATAPOINT_UNIT.getSimpleName(), SAMPLE_UNIT.getSimpleName(), trainingSetSize, testSetSize, trainRatio); result.setEvaluationSkipped(true); - result.setErrorMsg(info); + result.setErrorMsg(msg); return result; } @@ -243,7 +238,7 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) testSet.size(), data.size()); // Train model - POSModel model = train(trainingSet, traits.getParameters()); + var model = train(trainingSet, traits.getParameters()); if (model == null) { throw new RecommendationException("Model is null, cannot evaluate!"); } @@ -251,8 +246,8 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) POSTaggerME tagger = new POSTaggerME(model); // Evaluate - List labelPairs = new ArrayList<>(); - for (POSSample sample : testSet) { + var labelPairs = new ArrayList(); + for (var sample : testSet) { String[] predictedTags = tagger.tag(sample.getSentence()); String[] goldTags = sample.getTags(); for (int i = 0; i < predictedTags.length; i++) { @@ -266,13 +261,13 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) private List extractPosSamples(List aCasses) { - List posSamples = new ArrayList<>(); + var posSamples = new ArrayList(); casses: for (CAS cas : aCasses) { - Type sampleUnitType = getType(cas, SAMPLE_UNIT); - Type tokenType = getType(cas, Token.class); + var sampleUnitType = getType(cas, SAMPLE_UNIT); + var tokenType = getType(cas, Token.class); - for (Annotation sampleUnit : cas. select(sampleUnitType)) { + for (var sampleUnit : cas. select(sampleUnitType)) { if (posSamples.size() >= traits.getTrainingSetSizeLimit()) { break casses; } @@ -281,8 +276,7 @@ private List extractPosSamples(List aCasses) continue; } - List tokens = cas. select(tokenType).coveredBy(sampleUnit) - .asList(); + var tokens = cas. select(tokenType).coveredBy(sampleUnit).asList(); createPosSample(cas, sampleUnit, tokens).map(posSamples::add); } @@ -296,19 +290,19 @@ private List extractPosSamples(List aCasses) private Optional createPosSample(CAS aCas, AnnotationFS aSentence, Collection aTokens) { - Type annotationType = getType(aCas, layerName); - Feature feature = annotationType.getFeatureByBaseName(featureName); + var annotationType = getType(aCas, layerName); + var feature = annotationType.getFeatureByBaseName(featureName); - int numberOfTokens = aTokens.size(); - String[] tokens = new String[numberOfTokens]; - String[] tags = new String[numberOfTokens]; + var numberOfTokens = aTokens.size(); + var tokens = new String[numberOfTokens]; + var tags = new String[numberOfTokens]; - int withTagCount = 0; + var withTagCount = 0; - int i = 0; - for (AnnotationFS token : aTokens) { + var i = 0; + for (var token : aTokens) { tokens[i] = token.getCoveredText(); - String tag = getFeatureValueCovering(aCas, token, annotationType, feature); + var tag = getFeatureValueCovering(aCas, token, annotationType, feature); tags[i] = tag; // If the tag is neither PAD nor null, then there is at @@ -322,7 +316,7 @@ private Optional createPosSample(CAS aCas, AnnotationFS aSentence, // Require at least X percent of the sentence to have tags to avoid class imbalance on PAD // tag. - double coverage = ((double) withTagCount * 100) / (double) numberOfTokens; + var coverage = ((double) withTagCount * 100) / (double) numberOfTokens; if (coverage >= traits.getTaggedTokensThreshold()) { return Optional.of(new POSSample(tokens, tags)); } @@ -334,13 +328,13 @@ private Optional createPosSample(CAS aCas, AnnotationFS aSentence, private String getFeatureValueCovering(CAS aCas, AnnotationFS aToken, Type aType, Feature aFeature) { - List annotations = CasUtil.selectCovered(aType, aToken); + var annotations = CasUtil.selectCovered(aType, aToken); if (annotations.isEmpty()) { return PAD; } - String value = annotations.get(0).getFeatureValueAsString(aFeature); + var value = annotations.get(0).getFeatureValueAsString(aFeature); return isNoneBlank(value) ? value : PAD; } @@ -352,8 +346,8 @@ private POSModel train(List aPosSamples, TrainingParameters aParamete return null; } - try (POSSampleStream stream = new POSSampleStream(aPosSamples)) { - POSTaggerFactory taggerFactory = new POSTaggerFactory(); + try (var stream = new POSSampleStream(aPosSamples)) { + var taggerFactory = new POSTaggerFactory(); return POSTaggerME.train("unknown", stream, aParameters, taggerFactory); } catch (IOException e) { diff --git a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/AnnotationSuggestion.java b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/AnnotationSuggestion.java index 777653f78a5..f2dad5f6335 100644 --- a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/AnnotationSuggestion.java +++ b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/AnnotationSuggestion.java @@ -73,6 +73,7 @@ public abstract class AnnotationSuggestion public static final int FLAG_ALL = FLAG_OVERLAP | FLAG_SKIPPED | FLAG_REJECTED | FLAG_TRANSIENT_ACCEPTED | FLAG_TRANSIENT_REJECTED | FLAG_TRANSIENT_CORRECTED; + protected final int generation; protected final int id; protected final long recommenderId; protected final String recommenderName; @@ -88,10 +89,13 @@ public abstract class AnnotationSuggestion private int hidingFlags = 0; private int age = 0; - public AnnotationSuggestion(int aId, long aRecommenderId, String aRecommenderName, - long aLayerId, String aFeature, String aDocumentName, String aLabel, String aUiLabel, - double aScore, String aScoreExplanation, AutoAcceptMode aAutoAcceptMode) + public AnnotationSuggestion(int aId, int aGeneration, int aAge, long aRecommenderId, + String aRecommenderName, long aLayerId, String aFeature, String aDocumentName, + String aLabel, String aUiLabel, double aScore, String aScoreExplanation, + AutoAcceptMode aAutoAcceptMode, int aHidingFlags) { + generation = aGeneration; + age = aAge; label = aLabel; uiLabel = aUiLabel; id = aId; @@ -103,6 +107,7 @@ public AnnotationSuggestion(int aId, long aRecommenderId, String aRecommenderNam recommenderId = aRecommenderId; documentName = aDocumentName; autoAcceptMode = aAutoAcceptMode; + hidingFlags = aHidingFlags; } public int getId() @@ -172,6 +177,11 @@ public void show(int aFlags) hidingFlags &= ~aFlags; } + protected int getHidingFlags() + { + return hidingFlags; + } + public String getReasonForHiding() { StringBuilder sb = new StringBuilder(); diff --git a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Predictions.java b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Predictions.java index 6c4dd61f920..d62fa1ff715 100644 --- a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Predictions.java +++ b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Predictions.java @@ -53,6 +53,7 @@ public class Predictions { private static final long serialVersionUID = -1598768729246662885L; + private final int generation; private final Project project; private final User sessionOwner; private final String dataOwner; @@ -77,6 +78,7 @@ public Predictions(User aSessionOwner, String aDataOwner, Project aProject) sessionOwner = aSessionOwner; dataOwner = aDataOwner; nextId = 0; + generation = 1; } public Predictions(Predictions aPredecessor) @@ -85,6 +87,7 @@ public Predictions(Predictions aPredecessor) sessionOwner = aPredecessor.sessionOwner; dataOwner = aPredecessor.dataOwner; nextId = aPredecessor.nextId; + generation = aPredecessor.generation + 1; } public User getSessionOwner() @@ -362,6 +365,11 @@ public void inheritLog(List aLogMessages) } } + public int getGeneration() + { + return generation; + } + public List getLog() { synchronized (log) { diff --git a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Recommender.java b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Recommender.java index 7e458f0fef1..6d1dbf94e41 100644 --- a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Recommender.java +++ b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/Recommender.java @@ -195,6 +195,11 @@ public double getThreshold() return threshold; } + /** + * Activation score threshold. + * + * @param aThreshold + */ public void setThreshold(double aThreshold) { threshold = aThreshold; diff --git a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestion.java b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestion.java index 3c8ea29f0c8..ca1a7d22730 100644 --- a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestion.java +++ b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestion.java @@ -20,7 +20,6 @@ import java.io.Serializable; import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.uima.cas.text.AnnotationFS; public class RelationSuggestion extends AnnotationSuggestion @@ -32,30 +31,25 @@ public class RelationSuggestion private RelationSuggestion(Builder builder) { - super(builder.id, builder.recommenderId, builder.recommenderName, builder.layerId, - builder.feature, builder.documentName, builder.label, builder.uiLabel, - builder.score, builder.scoreExplanation, builder.autoAcceptMode); + super(builder.id, builder.generation, builder.age, builder.recommenderId, + builder.recommenderName, builder.layerId, builder.feature, builder.documentName, + builder.label, builder.uiLabel, builder.score, builder.scoreExplanation, + builder.autoAcceptMode, builder.hidingFlags); this.position = builder.position; } - public RelationSuggestion(int aId, Recommender aRecommender, long aLayerId, String aFeature, - String aDocumentName, AnnotationFS aSource, AnnotationFS aTarget, String aLabel, - String aUiLabel, double aScore, String aScoreExplanation, - AutoAcceptMode aAutoAcceptMode) - { - this(aId, aRecommender.getId(), aRecommender.getName(), aLayerId, aFeature, aDocumentName, - aSource.getBegin(), aSource.getEnd(), aTarget.getBegin(), aTarget.getEnd(), aLabel, - aUiLabel, aScore, aScoreExplanation, aAutoAcceptMode); - } - + /** + * @deprecated Use builder instead + */ + @Deprecated public RelationSuggestion(int aId, long aRecommenderId, String aRecommenderName, long aLayerId, String aFeature, String aDocumentName, int aSourceBegin, int aSourceEnd, int aTargetBegin, int aTargetEnd, String aLabel, String aUiLabel, double aScore, String aScoreExplanation, AutoAcceptMode aAutoAcceptMode) { - super(aId, aRecommenderId, aRecommenderName, aLayerId, aFeature, aDocumentName, aLabel, - aUiLabel, aScore, aScoreExplanation, aAutoAcceptMode); + super(aId, 0, 0, aRecommenderId, aRecommenderName, aLayerId, aFeature, aDocumentName, + aLabel, aUiLabel, aScore, aScoreExplanation, aAutoAcceptMode, 0); position = new RelationPosition(aSourceBegin, aSourceEnd, aTargetBegin, aTargetEnd); } @@ -87,14 +81,25 @@ public int getWindowEnd() @Override public String toString() { - return new ToStringBuilder(this).append("id", id).append("recommenderId", recommenderId) - .append("recommenderName", recommenderName).append("layerId", layerId) - .append("feature", feature).append("documentName", documentName) + return new ToStringBuilder(this) // + .append("id", id) // + .append("generation", generation) // + .append("age", getAge()) // + .append("recommenderId", recommenderId) // + .append("recommenderName", recommenderName) // + .append("layerId", layerId) // + .append("feature", feature) // + .append("documentName", documentName) // .append("position", position) // - .append("windowBegin", getWindowBegin()).append("windowEnd", getWindowEnd()) // - .append("label", label).append("uiLabel", uiLabel).append("score", score) - .append("confindenceExplanation", scoreExplanation).append("visible", isVisible()) - .append("reasonForHiding", getReasonForHiding()).toString(); + .append("windowBegin", getWindowBegin()) // + .append("windowEnd", getWindowEnd()) // + .append("label", label) // + .append("uiLabel", uiLabel) // + .append("score", score) // + .append("confindenceExplanation", scoreExplanation) // + .append("visible", isVisible()) // + .append("reasonForHiding", getReasonForHiding()) // + .toString(); } @Override @@ -112,6 +117,8 @@ public Builder toBuilder() { return builder() // .withId(id) // + .withGeneration(generation) // + .withAge(getAge()) // .withRecommenderId(recommenderId) // .withRecommenderName(recommenderName) // .withLayerId(layerId) // @@ -122,11 +129,14 @@ public Builder toBuilder() .withScore(score) // .withScoreExplanation(scoreExplanation) // .withPosition(position) // - .withAutoAcceptMode(getAutoAcceptMode()); + .withAutoAcceptMode(getAutoAcceptMode()) // + .withHidingFlags(getHidingFlags()); } public static final class Builder { + private int generation; + private int age; private int id; private long recommenderId; private String recommenderName; @@ -139,6 +149,7 @@ public static final class Builder private String scoreExplanation; private RelationPosition position; private AutoAcceptMode autoAcceptMode; + private int hidingFlags; private Builder() { @@ -150,6 +161,18 @@ public Builder withId(int aId) return this; } + public Builder withGeneration(int aGeneration) + { + this.generation = aGeneration; + return this; + } + + public Builder withAge(int aAge) + { + this.age = aAge; + return this; + } + public Builder withRecommender(Recommender aRecommender) { this.recommenderId = aRecommender.getId(); @@ -225,6 +248,12 @@ public Builder withAutoAcceptMode(AutoAcceptMode aAutoAcceptMode) return this; } + public Builder withHidingFlags(int aFlags) + { + this.hidingFlags = aFlags; + return this; + } + public RelationSuggestion build() { return new RelationSuggestion(this); diff --git a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestion.java b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestion.java index a06093a2276..d6041865c59 100644 --- a/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestion.java +++ b/inception/inception-recommendation-api/src/main/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestion.java @@ -32,31 +32,26 @@ public class SpanSuggestion private SpanSuggestion(Builder builder) { - super(builder.id, builder.recommenderId, builder.recommenderName, builder.layerId, - builder.feature, builder.documentName, builder.label, builder.uiLabel, - builder.score, builder.scoreExplanation, builder.autoAcceptMode); + super(builder.id, builder.generation, builder.age, builder.recommenderId, + builder.recommenderName, builder.layerId, builder.feature, builder.documentName, + builder.label, builder.uiLabel, builder.score, builder.scoreExplanation, + builder.autoAcceptMode, builder.hidingFlags); position = builder.position; coveredText = builder.coveredText; } - public SpanSuggestion(int aId, Recommender aRecommender, long aLayerId, String aFeature, - String aDocumentName, Offset aOffset, String aCoveredText, String aLabel, - String aUiLabel, double aScore, String aScoreExplanation, - AutoAcceptMode aAutoAcceptMode) - { - this(aId, aRecommender.getId(), aRecommender.getName(), aLayerId, aFeature, aDocumentName, - aOffset.getBegin(), aOffset.getEnd(), aCoveredText, aLabel, aUiLabel, aScore, - aScoreExplanation, aAutoAcceptMode); - } - + /** + * @deprecated Use builder instead. + */ + @Deprecated public SpanSuggestion(int aId, long aRecommenderId, String aRecommenderName, long aLayerId, String aFeature, String aDocumentName, int aBegin, int aEnd, String aCoveredText, String aLabel, String aUiLabel, double aScore, String aScoreExplanation, AutoAcceptMode aAutoAcceptMode) { - super(aId, aRecommenderId, aRecommenderName, aLayerId, aFeature, aDocumentName, aLabel, - aUiLabel, aScore, aScoreExplanation, aAutoAcceptMode); + super(aId, 0, 0, aRecommenderId, aRecommenderName, aLayerId, aFeature, aDocumentName, + aLabel, aUiLabel, aScore, aScoreExplanation, aAutoAcceptMode, 0); position = new Offset(aBegin, aEnd); coveredText = aCoveredText; @@ -100,14 +95,25 @@ public Offset getPosition() @Override public String toString() { - return new ToStringBuilder(this).append("id", id).append("recommenderId", recommenderId) - .append("recommenderName", recommenderName).append("layerId", layerId) - .append("feature", feature).append("documentName", documentName) - .append("position", position).append("coveredText", coveredText) - .append("label", label).append("uiLabel", uiLabel).append("score", score) - .append("confindenceExplanation", scoreExplanation).append("visible", isVisible()) - .append("reasonForHiding", getReasonForHiding()) - .append("autoAcceptMode", getAutoAcceptMode()).toString(); + return new ToStringBuilder(this) // + .append("id", id) // + .append("generation", generation) // + .append("age", getAge()) // + .append("recommenderId", recommenderId) // + .append("recommenderName", recommenderName) // + .append("layerId", layerId) // + .append("feature", feature) // + .append("documentName", documentName) // + .append("position", position) // + .append("coveredText", coveredText) // + .append("label", label) // + .append("uiLabel", uiLabel) // + .append("score", score) // + .append("confindenceExplanation", scoreExplanation) // + .append("visible", isVisible()) // + .append("reasonForHiding", getReasonForHiding()) // + .append("autoAcceptMode", getAutoAcceptMode()) // + .toString(); } @Override @@ -125,6 +131,8 @@ public Builder toBuilder() { return builder() // .withId(id) // + .withGeneration(generation) // + .withAge(getAge()) // .withRecommenderId(recommenderId) // .withRecommenderName(recommenderName) // .withLayerId(layerId) // @@ -136,12 +144,15 @@ public Builder toBuilder() .withScoreExplanation(scoreExplanation) // .withPosition(position) // .withCoveredText(coveredText) // - .withAutoAcceptMode(getAutoAcceptMode()); + .withAutoAcceptMode(getAutoAcceptMode()) // + .withHidingFlags(getHidingFlags()); } public static final class Builder { private int id; + private int generation; + private int age; private long recommenderId; private String recommenderName; private long layerId; @@ -154,6 +165,7 @@ public static final class Builder private Offset position; private String coveredText; private AutoAcceptMode autoAcceptMode; + private int hidingFlags; private Builder() { @@ -165,6 +177,18 @@ public Builder withId(int aId) return this; } + public Builder withAge(int aAge) + { + this.age = aAge; + return this; + } + + public Builder withGeneration(int aGeneration) + { + this.generation = aGeneration; + return this; + } + public Builder withRecommender(Recommender aRecommender) { this.recommenderId = aRecommender.getId(); @@ -246,6 +270,12 @@ public Builder withAutoAcceptMode(AutoAcceptMode aAutoAcceptMode) return this; } + public Builder withHidingFlags(int aFlags) + { + this.hidingFlags = aFlags; + return this; + } + public SpanSuggestion build() { return new SpanSuggestion(this); diff --git a/inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestionTest.java b/inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestionTest.java new file mode 100644 index 00000000000..8dec84b08d6 --- /dev/null +++ b/inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/RelationSuggestionTest.java @@ -0,0 +1,49 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package de.tudarmstadt.ukp.inception.recommendation.api.model; + +import static org.assertj.core.api.Assertions.assertThat; + +import org.junit.jupiter.api.Test; + +class RelationSuggestionTest +{ + @Test + void thatCloningRetainsAllInformation() + { + var s = RelationSuggestion.builder() // + .withId(1) // + .withGeneration(2) // + .withAge(3) // + .withRecommenderId(4) // + .withRecommenderName("rec") // + .withLayerId(5) // + .withFeature("feature") // + .withDocumentName("document") // + .withLabel("label") // + .withUiLabel("uiLabel") // + .withScore(6.0) // + .withScoreExplanation("scoreExplanation") // + .withPosition(new RelationPosition(1, 2, 3, 4)) // + .withAutoAcceptMode(AutoAcceptMode.ON_FIRST_ACCESS) // + .withHidingFlags(7) // + .build(); + + assertThat(s.toBuilder().build()).usingRecursiveComparison().isEqualTo(s); + } +} diff --git a/inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestionTest.java b/inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestionTest.java new file mode 100644 index 00000000000..e21c1cb7ff5 --- /dev/null +++ b/inception/inception-recommendation-api/src/test/java/de/tudarmstadt/ukp/inception/recommendation/api/model/SpanSuggestionTest.java @@ -0,0 +1,50 @@ +/* + * Licensed to the Technische Universität Darmstadt under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The Technische Universität Darmstadt + * licenses this file to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package de.tudarmstadt.ukp.inception.recommendation.api.model; + +import static org.assertj.core.api.Assertions.assertThat; + +import org.junit.jupiter.api.Test; + +class SpanSuggestionTest +{ + @Test + void thatCloningRetainsAllInformation() + { + var s = SpanSuggestion.builder() // + .withId(1) // + .withGeneration(2) // + .withAge(3) // + .withRecommenderId(4) // + .withRecommenderName("rec") // + .withLayerId(5) // + .withFeature("feature") // + .withDocumentName("document") // + .withLabel("label") // + .withUiLabel("uiLabel") // + .withScore(6.0) // + .withScoreExplanation("scoreExplanation") // + .withPosition(new Offset(1, 2)) // + .withCoveredText("coveredText") // + .withAutoAcceptMode(AutoAcceptMode.ON_FIRST_ACCESS) // + .withHidingFlags(7) // + .build(); + + assertThat(s.toBuilder().build()).usingRecursiveComparison().isEqualTo(s); + } +} diff --git a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImpl.java b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImpl.java index d847cd9845a..16028889b9e 100644 --- a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImpl.java +++ b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImpl.java @@ -135,6 +135,7 @@ import de.tudarmstadt.ukp.clarin.webanno.security.UserDao; import de.tudarmstadt.ukp.clarin.webanno.security.model.User; import de.tudarmstadt.ukp.clarin.webanno.support.StopWatch; +import de.tudarmstadt.ukp.clarin.webanno.support.WebAnnoConst; import de.tudarmstadt.ukp.clarin.webanno.support.logging.LogMessage; import de.tudarmstadt.ukp.clarin.webanno.support.logging.LogMessageGroup; import de.tudarmstadt.ukp.clarin.webanno.support.uima.ICasUtil; @@ -896,17 +897,21 @@ private void triggerRun(String aSessionOwner, Project aProject, String aEventNam @Override public List getLog(String aUser, Project aProject) { - Predictions activePredictions = getState(aUser, aProject).getActivePredictions(); - Predictions incomingPredictions = getState(aUser, aProject).getIncomingPredictions(); + var activePredictions = getState(aUser, aProject).getActivePredictions(); + var incomingPredictions = getState(aUser, aProject).getIncomingPredictions(); - List messageSets = new ArrayList<>(); + var messageSets = new ArrayList(); if (activePredictions != null) { - messageSets.add(new LogMessageGroup("Active", activePredictions.getLog())); + messageSets.add( + new LogMessageGroup("Active (gen. " + activePredictions.getGeneration() + ")", + activePredictions.getLog())); } if (incomingPredictions != null) { - messageSets.add(new LogMessageGroup("Incoming", incomingPredictions.getLog())); + messageSets.add(new LogMessageGroup( + "Incoming (gen. " + incomingPredictions.getGeneration() + ")", + incomingPredictions.getLog())); } return messageSets; @@ -1848,16 +1853,16 @@ private void inheritSuggestionsAtDocumentLevel(Project aProject, SourceDocument /** * Invokes the engine to produce new suggestions. */ - void generateSuggestions(Predictions aPredictions, RecommenderContext aCtx, + void generateSuggestions(Predictions aIncomingPredictions, RecommenderContext aCtx, RecommendationEngine aEngine, Predictions aActivePredictions, SourceDocument aDocument, CAS aOriginalCas, CAS aPredictionCas, int aPredictionBegin, int aPredictionEnd) throws RecommendationException { - var sessionOwner = aPredictions.getSessionOwner(); + var sessionOwner = aIncomingPredictions.getSessionOwner(); var recommender = aEngine.getRecommender(); // Perform the actual prediction - aPredictions.log(LogMessage.info(recommender.getName(), + aIncomingPredictions.log(LogMessage.info(recommender.getName(), "Generating predictions for layer [%s]...", recommender.getLayer().getUiName())); LOG.trace("{}[{}]: Generating predictions for layer [{}]", sessionOwner, recommender.getName(), recommender.getLayer().getUiName()); @@ -1865,8 +1870,8 @@ void generateSuggestions(Predictions aPredictions, RecommenderContext aCtx, aPredictionEnd); // Extract the suggestions from the data which the recommender has written into the CAS - var generatedSuggestions = extractSuggestions(aOriginalCas, aPredictionCas, aDocument, - recommender); + var generatedSuggestions = extractSuggestions(aIncomingPredictions.getGeneration(), + aOriginalCas, aPredictionCas, aDocument, recommender); // Reconcile new suggestions with suggestions from previous run var reconciliationResult = reconcile(aActivePredictions, aDocument, recommender, @@ -1876,7 +1881,7 @@ void generateSuggestions(Predictions aPredictions, RecommenderContext aCtx, recommender, sessionOwner, aDocument, recommender.getProject(), generatedSuggestions.size(), predictedRange, reconciliationResult.added, reconciliationResult.removed, reconciliationResult.aged); - aPredictions.log(LogMessage.info(recommender.getName(), // + aIncomingPredictions.log(LogMessage.info(recommender.getName(), // "Generated [%d] predictions within range %s (+%d/-%d/=%d)", generatedSuggestions.size(), predictedRange, reconciliationResult.added, reconciliationResult.removed, reconciliationResult.aged)); @@ -1896,7 +1901,7 @@ void generateSuggestions(Predictions aPredictions, RecommenderContext aCtx, LOG.debug("{} for user {} on document {} in project {} inherited {} " // + "predictions", recommender, sessionOwner, aDocument, recommender.getProject(), inheritableSuggestions.size()); - aPredictions.log(LogMessage.info(recommender.getName(), + aIncomingPredictions.log(LogMessage.info(recommender.getName(), "Inherited [%d] predictions from previous run", inheritableSuggestions.size())); suggestions.addAll(inheritableSuggestions); @@ -1906,11 +1911,11 @@ void generateSuggestions(Predictions aPredictions, RecommenderContext aCtx, // contains only the manually created annotations and *not* the suggestions. var groupedSuggestions = groupsOfType(SpanSuggestion.class, suggestions); calculateSpanSuggestionVisibility(sessionOwner.getUsername(), aDocument, aOriginalCas, - aPredictions.getDataOwner(), aEngine.getRecommender().getLayer(), + aIncomingPredictions.getDataOwner(), aEngine.getRecommender().getLayer(), groupedSuggestions, 0, aOriginalCas.getDocumentText().length()); // FIXME calculateRelationSuggestionVisibility? - aPredictions.putPredictions(suggestions); + aIncomingPredictions.putPredictions(suggestions); } static ReconciliationResult reconcile(Predictions aActivePredictions, SourceDocument aDocument, @@ -1955,8 +1960,6 @@ static ReconciliationResult reconcile(Predictions aActivePredictions, SourceDocu var existingSuggestion = existingSuggestions.get(0); existingSuggestion.incrementAge(); - // Not sure if unhiding is necessary... - existingSuggestion.show(AnnotationSuggestion.FLAG_ALL); agedSuggestionsCount++; reconciledSuggestions.add(existingSuggestion); } @@ -1970,8 +1973,8 @@ static ReconciliationResult reconcile(Predictions aActivePredictions, SourceDocu agedSuggestionsCount, new ArrayList<>(reconciledSuggestions)); } - static List extractSuggestions(CAS aOriginalCas, CAS aPredictionCas, - SourceDocument aDocument, Recommender aRecommender) + static List extractSuggestions(int aGeneration, CAS aOriginalCas, + CAS aPredictionCas, SourceDocument aDocument, Recommender aRecommender) { var layer = aRecommender.getLayer(); var featureName = aRecommender.getFeature().getName(); @@ -2019,6 +2022,7 @@ static List extractSuggestions(CAS aOriginalCas, CAS aPred for (var label : labels) { var suggestion = SpanSuggestion.builder() // .withId(RelationSuggestion.NEW_ID) // + .withGeneration(aGeneration) // .withRecommender(aRecommender) // .withDocumentName(aDocument.getName()) // .withPosition(offsets) // @@ -2048,6 +2052,7 @@ static List extractSuggestions(CAS aOriginalCas, CAS aPred for (var label : labels) { var suggestion = RelationSuggestion.builder() // .withId(RelationSuggestion.NEW_ID) // + .withGeneration(aGeneration) // .withRecommender(aRecommender) // .withDocumentName(aDocument.getName()) // .withPosition(position).withLabel(label) // @@ -2256,7 +2261,11 @@ public void calculateSpanSuggestionVisibility(String aSessionOwner, SourceDocume Collection> aRecommendations, int aWindowBegin, int aWindowEnd) { - Type type = getAnnotationType(aCas, aLayer); + LOG.trace( + "calculateSpanSuggestionVisibility() for layer {} on document {} in range [{}, {}]", + aLayer, aDocument, aWindowBegin, aWindowEnd); + + var type = getAnnotationType(aCas, aLayer); if (type == null) { // The type does not exist in the type system of the CAS. Probably it has not // been upgraded to the latest version of the type system yet. If this is the case, @@ -2292,7 +2301,7 @@ public void calculateSpanSuggestionVisibility(String aSessionOwner, SourceDocume // Reduce the suggestions to the ones for the given feature. We can use the tree here // since we only have a single SuggestionGroup for every position - Map> suggestions = new TreeMap<>( + var suggestions = new TreeMap>( comparingInt(Offset::getBegin).thenComparingInt(Offset::getEnd)); suggestionsInWindow.stream() .filter(group -> group.getFeature().equals(feature.getName())) // @@ -2302,8 +2311,8 @@ public void calculateSpanSuggestionVisibility(String aSessionOwner, SourceDocume }) // .forEach(group -> suggestions.put((Offset) group.getPosition(), group)); - hideSpanSuggestionsThatOverlapWithAnnotations(annotationsInWindow, suggestionsInWindow, - feature, feat, suggestions); + hideSpanSuggestionsThatOverlapWithAnnotations(annotationsInWindow, feature, feat, + suggestions); // Anything that was not hidden so far might still have been rejected suggestions.values().stream() // @@ -2315,9 +2324,8 @@ public void calculateSpanSuggestionVisibility(String aSessionOwner, SourceDocume } private void hideSpanSuggestionsThatOverlapWithAnnotations( - List annotationsInWindow, - List> suggestionsInWindow, AnnotationFeature feature, - Feature feat, Map> suggestions) + List annotationsInWindow, AnnotationFeature feature, Feature feat, + Map> suggestions) { // If there are no suggestions or annotations, there is nothing to do here if (annotationsInWindow.isEmpty() || suggestions.isEmpty()) { @@ -2327,12 +2335,12 @@ private void hideSpanSuggestionsThatOverlapWithAnnotations( // Reduce the annotations to the ones which have a non-null feature value. We need to // use a multi-valued map here because there may be multiple annotations at a // given position. - MultiValuedMap annotations = new ArrayListValuedHashMap<>(); + var annotations = new ArrayListValuedHashMap(); annotationsInWindow .forEach(fs -> annotations.put(new Offset(fs.getBegin(), fs.getEnd()), fs)); // We need to constructed a sorted list of the keys for the OverlapIterator below - List sortedAnnotationKeys = new ArrayList<>(annotations.keySet()); + var sortedAnnotationKeys = new ArrayList(annotations.keySet()); sortedAnnotationKeys.sort(comparingInt(Offset::getBegin).thenComparingInt(Offset::getEnd)); // This iterator gives us pairs of annotations and suggestions. Note that both lists @@ -2342,6 +2350,7 @@ private void hideSpanSuggestionsThatOverlapWithAnnotations( // Bulk-hide any groups that overlap with existing annotations on the current layer // and for the current feature + var hiddenForOverlap = new ArrayList(); while (oi.hasNext()) { if (oi.getA().overlaps(oi.getB())) { // Fetch the current suggestion and annotation @@ -2360,6 +2369,7 @@ private void hideSpanSuggestionsThatOverlapWithAnnotations( // or not. if (colocated) { suggestion.hide(FLAG_OVERLAP); + hiddenForOverlap.add(suggestion); continue; } @@ -2367,6 +2377,7 @@ private void hideSpanSuggestionsThatOverlapWithAnnotations( // annotation with no label, but only if the offsets differ if (feature.getLayer().isAllowStacking() && !colocated) { suggestion.hide(FLAG_OVERLAP); + hiddenForOverlap.add(suggestion); continue; } } @@ -2385,6 +2396,7 @@ private void hideSpanSuggestionsThatOverlapWithAnnotations( // at the same position then we hide if (label != null && label.equals(suggestion.getLabel()) && colocated) { suggestion.hide(FLAG_OVERLAP); + hiddenForOverlap.add(suggestion); continue; } @@ -2392,6 +2404,7 @@ private void hideSpanSuggestionsThatOverlapWithAnnotations( // stacking is not enabled - then we need to hide if (!feature.getLayer().isAllowStacking()) { suggestion.hide(FLAG_OVERLAP); + hiddenForOverlap.add(suggestion); continue; } } @@ -2405,6 +2418,13 @@ private void hideSpanSuggestionsThatOverlapWithAnnotations( oi.step(); } + + if (LOG.isTraceEnabled()) { + LOG.trace("Hidden due to overlapping: {}", hiddenForOverlap.size()); + for (var s : hiddenForOverlap) { + LOG.trace("- {}", s); + } + } } @Override @@ -2556,8 +2576,12 @@ CAS cloneAndMonkeyPatchCAS(Project aProject, CAS aSourceCas, CAS aTargetCas) for (var feature : features) { var td = tsd.getType(feature.getLayer().getName()); if (td == null) { - LOG.trace("Could not monkey patch feature {} because type for layer {} was not " - + "found in the type system", feature, feature.getLayer()); + if (!WebAnnoConst.CHAIN_TYPE.equals(feature.getLayer().getType())) { + LOG.trace( + "Could not monkey patch feature {} because type for layer {} was not " + + "found in the type system", + feature, feature.getLayer()); + } continue; } diff --git a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/sidebar/LogDialog.java b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/sidebar/LogDialog.java index fd619d98dc4..6ccbb2fded1 100644 --- a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/sidebar/LogDialog.java +++ b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/sidebar/LogDialog.java @@ -66,7 +66,7 @@ public void show(AjaxRequestTarget aTarget) model = new ListModel<>(asList(group)); } - LogDialogContent content = new LogDialogContent(ModalDialog.CONTENT_ID, model); + var content = new LogDialogContent(ModalDialog.CONTENT_ID, model); open(content, aTarget); aTarget.focusComponent(content.getFocusComponent()); } diff --git a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/sidebar/RecommenderInfoPanel.java b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/sidebar/RecommenderInfoPanel.java index f471f1df7f2..3202793a85c 100644 --- a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/sidebar/RecommenderInfoPanel.java +++ b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/sidebar/RecommenderInfoPanel.java @@ -106,7 +106,7 @@ public RecommenderInfoPanel(String aId, IModel aModel) + repeat(" ", p.getTodo()); })).setEscapeModelStrings(false)); // SAFE - RENDERING ONLY SPECIFIC ICONS - WebMarkupContainer recommenderContainer = new WebMarkupContainer("recommenderContainer"); + var recommenderContainer = new WebMarkupContainer("recommenderContainer"); add(recommenderContainer); ListView searchResultGroups = new ListView("recommender") @@ -116,12 +116,12 @@ public RecommenderInfoPanel(String aId, IModel aModel) @Override protected void populateItem(ListItem item) { - Recommender recommender = item.getModelObject(); + var recommender = item.getModelObject(); Optional evaluatedRecommender = recommendationService .getEvaluatedRecommender(sessionOwner, recommender); item.add(new Label("name", recommender.getName())); - WebMarkupContainer state = new WebMarkupContainer("state"); + var state = new WebMarkupContainer("state"); if (evaluatedRecommender.isPresent()) { EvaluatedRecommender evalRec = evaluatedRecommender.get(); if (evalRec.isActive()) { @@ -147,7 +147,7 @@ protected void populateItem(ListItem item) Optional evalResult = evaluatedRecommender .map(EvaluatedRecommender::getEvaluationResult); - WebMarkupContainer resultsContainer = new WebMarkupContainer("resultsContainer"); + var resultsContainer = new WebMarkupContainer("resultsContainer"); // Show results only if the evaluation was not skipped (and of course only if the // result is actually present). resultsContainer.setVisible(evalResult.map(r -> !r.isEvaluationSkipped()) @@ -189,10 +189,11 @@ protected void populateItem(ListItem item) .isModelExportSupported())); item.add(exportModel); - item.add(new Label("noEvaluationMessage", - evaluatedRecommender.map(EvaluatedRecommender::getReasonForState) - .orElse("Waiting for evalation...")) - .add(visibleWhen(() -> !resultsContainer.isVisible()))); + item.add(new Label("noEvaluationMessage", evaluatedRecommender // + .flatMap(r -> r.getEvaluationResult().getErrorMsg()) + // .map(EvaluatedRecommender::getReasonForState) + .orElse("Waiting for evalation...")) + .add(visibleWhen(() -> !resultsContainer.isVisible()))); } }; IModel> recommenders = LoadableDetachableModel diff --git a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/tasks/SelectionTask.java b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/tasks/SelectionTask.java index daabdb12d04..5506258ff2d 100644 --- a/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/tasks/SelectionTask.java +++ b/inception/inception-recommendation/src/main/java/de/tudarmstadt/ukp/inception/recommendation/tasks/SelectionTask.java @@ -46,12 +46,10 @@ import de.tudarmstadt.ukp.clarin.webanno.support.logging.LogMessage; import de.tudarmstadt.ukp.inception.annotation.storage.CasStorageSession; import de.tudarmstadt.ukp.inception.recommendation.api.RecommendationService; -import de.tudarmstadt.ukp.inception.recommendation.api.evaluation.DataSplitter; import de.tudarmstadt.ukp.inception.recommendation.api.evaluation.EvaluationResult; import de.tudarmstadt.ukp.inception.recommendation.api.evaluation.PercentageBasedSplitter; import de.tudarmstadt.ukp.inception.recommendation.api.model.EvaluatedRecommender; import de.tudarmstadt.ukp.inception.recommendation.api.model.Recommender; -import de.tudarmstadt.ukp.inception.recommendation.api.recommender.RecommendationEngine; import de.tudarmstadt.ukp.inception.recommendation.api.recommender.RecommendationException; import de.tudarmstadt.ukp.inception.recommendation.event.RecommenderEvaluationResultEvent; import de.tudarmstadt.ukp.inception.recommendation.event.RecommenderTaskNotificationEvent; @@ -60,8 +58,11 @@ /** * This task evaluates all available classification tools for all annotation layers of the current - * project. If a classifier exceeds its specific activation f-score limit during the evaluation it - * is selected for active prediction. + * project. If a classifier exceeds its specific activation score limit during the evaluation it is + * selected for active prediction. + * + * If the threshold is 0 (or less), the evaluation should be considered optional. That is, if the + * evaluation fails (e.g. because of too little data), then the training should still be scheduled. */ public class SelectionTask extends RecommendationTask_ImplBase @@ -301,17 +302,23 @@ private Optional evaluate(User user, Recommender recommend } log.info("[{}][{}]: Evaluating...", userName, recommender.getName()); - DataSplitter splitter = new PercentageBasedSplitter(0.8, 10); - RecommendationEngine recommendationEngine = factory.build(recommender); + var splitter = new PercentageBasedSplitter(0.8, 10); + var recommendationEngine = factory.build(recommender); - EvaluationResult result = recommendationEngine.evaluate(aCasses.get(), splitter); + var result = recommendationEngine.evaluate(aCasses.get(), splitter); + double threshold = recommender.getThreshold(); if (result.isEvaluationSkipped()) { + var evaluationIsOptional = recommender.getThreshold() <= 0.0d; + if (evaluationIsOptional) { + return Optional.of( + activateRecommenderAboveThreshold(user, recommender, result, 0, threshold)); + } + return Optional.of(skipRecommenderDueToFailedEvaluation(user, recommender, result)); } double score = result.computeF1Score(); - double threshold = recommender.getThreshold(); if (score >= threshold) { return Optional.of( activateRecommenderAboveThreshold(user, recommender, result, score, threshold)); diff --git a/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplTest.java b/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplTest.java index 3086be29c68..5fad7e40318 100644 --- a/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplTest.java +++ b/inception/inception-recommendation/src/test/java/de/tudarmstadt/ukp/inception/recommendation/service/RecommendationServiceImplTest.java @@ -385,7 +385,7 @@ void testExtractSuggestionsWithSpanSuggestions() throws Exception .withFeature(FEATURE_NAME_IS_PREDICTION, true) // .buildAndAddToIndexes(); - var suggestions = extractSuggestions(targetCas, suggestionCas, doc1, recommender); + var suggestions = extractSuggestions(0, targetCas, suggestionCas, doc1, recommender); assertThat(suggestions) // .extracting( // diff --git a/inception/inception-ui-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/annotation/detail/AnnotationDetailEditorPanel.java b/inception/inception-ui-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/annotation/detail/AnnotationDetailEditorPanel.java index bb97e38facc..09eb537f3c2 100644 --- a/inception/inception-ui-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/annotation/detail/AnnotationDetailEditorPanel.java +++ b/inception/inception-ui-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/annotation/detail/AnnotationDetailEditorPanel.java @@ -195,15 +195,14 @@ public void renderHead(IHeaderResponse aResponse) private LambdaAjaxLink createNextAnnotationButton() { - LambdaAjaxLink link = new LambdaAjaxLink("nextAnnotation", this::actionNextAnnotation); + var link = new LambdaAjaxLink("nextAnnotation", this::actionNextAnnotation); link.add(new InputBehavior(new KeyType[] { Shift, Right }, click)); return link; } private LambdaAjaxLink createPreviousAnnotationButton() { - LambdaAjaxLink link = new LambdaAjaxLink("previousAnnotation", - this::actionPreviousAnnotation); + var link = new LambdaAjaxLink("previousAnnotation", this::actionPreviousAnnotation); link.add(new InputBehavior(new KeyType[] { Shift, Left }, click)); return link; } @@ -1042,13 +1041,13 @@ private void loadFeatureEditorModels(AjaxRequestTarget aTarget) { LOG.trace("loadFeatureEditorModels()"); - CAS aCas = getEditorCas(); + var aCas = getEditorCas(); - AnnotatorState state = getModelObject(); - Selection selection = state.getSelection(); + var state = getModelObject(); + var selection = state.getSelection(); - List featureStates = state.getFeatureStates(); - for (FeatureState featureState : featureStates) { + var featureStates = state.getFeatureStates(); + for (var featureState : featureStates) { if (StringUtils.isNotBlank(featureState.feature.getLinkTypeName())) { featureState.value = new ArrayList<>(); } diff --git a/inception/inception-ui-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/annotation/detail/AnnotationInfoPanel.java b/inception/inception-ui-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/annotation/detail/AnnotationInfoPanel.java index c709aca7223..c5a7beaa0d1 100644 --- a/inception/inception-ui-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/annotation/detail/AnnotationInfoPanel.java +++ b/inception/inception-ui-annotation/src/main/java/de/tudarmstadt/ukp/clarin/webanno/ui/annotation/detail/AnnotationInfoPanel.java @@ -23,6 +23,7 @@ import java.lang.invoke.MethodHandles; +import org.apache.commons.lang3.exception.ExceptionUtils; import org.apache.wicket.markup.html.WebMarkupContainer; import org.apache.wicket.markup.html.basic.Label; import org.apache.wicket.markup.html.panel.Panel; @@ -104,14 +105,13 @@ private Label createSelectedAnnotationTypeLabel() { Label label = new Label("selectedAnnotationType", LoadableDetachableModel.of(() -> { try { - AnnotationDetailEditorPanel editorPanel = findParent( - AnnotationDetailEditorPanel.class); + var editorPanel = findParent(AnnotationDetailEditorPanel.class); return String.valueOf(selectFsByAddr(editorPanel.getEditorCas(), getModelObject().getSelection().getAnnotation().getId())).trim(); } catch (Exception e) { LOG.warn("Unable to render selected annotation type", e); - return ""; + return ExceptionUtils.getRootCauseMessage(e); } })); label.setOutputMarkupPlaceholderTag(true); From 941fc6a4a02d3e83982197ac0e342bcc952e4c2b Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Tue, 22 Aug 2023 18:21:54 +0200 Subject: [PATCH 12/17] #1861 - Add viewport offsets to external recommender - Send viewport offsets to external recommender - Bit of cleaning up --- inception/inception-imls-external/pom.xml | 4 - .../imls/external/v1/ExternalRecommender.java | 96 +++++++++---------- .../imls/external/v1/model/Metadata.java | 13 ++- .../ExternalRecommenderIntegrationTest.java | 58 ++++++----- ...ckRemoteStringMatchingNerRecommender.java} | 62 ++++-------- 5 files changed, 106 insertions(+), 127 deletions(-) rename inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/{RemoteStringMatchingNerRecommender.java => MockRemoteStringMatchingNerRecommender.java} (66%) diff --git a/inception/inception-imls-external/pom.xml b/inception/inception-imls-external/pom.xml index 9de05bf4fd3..189304f0b84 100644 --- a/inception/inception-imls-external/pom.xml +++ b/inception/inception-imls-external/pom.xml @@ -104,10 +104,6 @@ com.fasterxml.jackson.core jackson-core - - com.fasterxml.jackson.core - jackson-databind - com.fasterxml.jackson.core jackson-annotations diff --git a/inception/inception-imls-external/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/ExternalRecommender.java b/inception/inception-imls-external/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/ExternalRecommender.java index 8d553e8d731..2963e1febf4 100644 --- a/inception/inception-imls-external/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/ExternalRecommender.java +++ b/inception/inception-imls-external/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/ExternalRecommender.java @@ -27,8 +27,8 @@ import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE; import java.io.IOException; -import java.io.InputStream; import java.io.StringWriter; +import java.lang.invoke.MethodHandles; import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; @@ -52,11 +52,8 @@ import org.springframework.http.HttpHeaders; import org.xml.sax.SAXException; -import com.fasterxml.jackson.databind.ObjectMapper; - import de.tudarmstadt.ukp.clarin.webanno.api.annotation.util.WebAnnoCasUtil; import de.tudarmstadt.ukp.clarin.webanno.api.type.CASMetadata; -import de.tudarmstadt.ukp.clarin.webanno.model.AnnotationLayer; import de.tudarmstadt.ukp.clarin.webanno.support.JSONUtil; import de.tudarmstadt.ukp.inception.recommendation.api.evaluation.DataSplitter; import de.tudarmstadt.ukp.inception.recommendation.api.evaluation.EvaluationResult; @@ -80,7 +77,7 @@ public class ExternalRecommender { public static final Key KEY_TRAINING_COMPLETE = new Key<>("training_complete"); - private static final Logger LOG = LoggerFactory.getLogger(ExternalRecommender.class); + private static final Logger LOG = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); private static final int HTTP_TOO_MANY_REQUESTS = 429; private static final int HTTP_BAD_REQUEST = 400; @@ -96,7 +93,9 @@ public ExternalRecommender(ExternalRecommenderProperties aProperties, Recommende properties = aProperties; traits = aTraits; - client = HttpClient.newBuilder().connectTimeout(properties.getConnectTimeout()).build(); + client = HttpClient.newBuilder() // + .connectTimeout(properties.getConnectTimeout()) // + .build(); } @Override @@ -105,18 +104,18 @@ public boolean isReadyForPrediction(RecommenderContext aContext) if (traits.isTrainable()) { return aContext.get(KEY_TRAINING_COMPLETE).orElse(false); } - else { - return true; - } + + return true; } @Override public void train(RecommenderContext aContext, List aCasses) throws RecommendationException { - TrainingRequest trainingRequest = new TrainingRequest(); + var trainingRequest = new TrainingRequest(); // We assume that the type system for all CAS are the same - String typeSystem = serializeTypeSystem(aCasses.get(0)); + var representativeCas = aCasses.get(0); + var typeSystem = serializeTypeSystem(representativeCas); trainingRequest.setTypeSystem(typeSystem); // Fill in metadata. We use the type system of the first CAS in the list @@ -126,21 +125,22 @@ public void train(RecommenderContext aContext, List aCasses) throws Recomme // of the other CAS. This should happen really rarely, therefore this potential // error is neglected. - trainingRequest.setMetadata(buildMetadata(aCasses.get(0))); + trainingRequest.setMetadata( + buildMetadata(representativeCas, Range.rangeCoveringDocument(representativeCas))); - List documents = new ArrayList<>(); + var documents = new ArrayList(); for (CAS cas : aCasses) { documents.add(buildDocument(cas)); } trainingRequest.setDocuments(documents); - HttpRequest request = HttpRequest.newBuilder() // + var request = HttpRequest.newBuilder() // .uri(URI.create(appendIfMissing(traits.getRemoteUrl(), "/")).resolve("train")) // .header(HttpHeaders.CONTENT_TYPE, APPLICATION_JSON_VALUE) // .timeout(properties.getReadTimeout()) .POST(BodyPublishers.ofString(toJson(trainingRequest), UTF_8)).build(); - HttpResponse response = sendRequest(request); + var response = sendRequest(request); if (response.statusCode() == HTTP_TOO_MANY_REQUESTS) { LOG.info("External recommender is already training"); } @@ -148,8 +148,8 @@ public void train(RecommenderContext aContext, List aCasses) throws Recomme // If the response indicates that the request was not successful, // then it does not make sense to go on and try to decode the XMI else if (response.statusCode() >= HTTP_BAD_REQUEST) { - String responseBody = getResponseBody(response); - String msg = format("Request was not successful: [%d] - [%s]", response.statusCode(), + var responseBody = getResponseBody(response); + var msg = format("Request was not successful: [%d] - [%s]", response.statusCode(), responseBody); throw new RecommendationException(msg); } @@ -161,35 +161,35 @@ else if (response.statusCode() >= HTTP_BAD_REQUEST) { public Range predict(RecommenderContext aContext, CAS aCas, int aBegin, int aEnd) throws RecommendationException { - String typeSystem = serializeTypeSystem(aCas); + var typeSystem = serializeTypeSystem(aCas); - PredictionRequest predictionRequest = new PredictionRequest(); + var predictionRequest = new PredictionRequest(); predictionRequest.setTypeSystem(typeSystem); predictionRequest.setDocument(buildDocument(aCas)); // Fill in metadata - predictionRequest.setMetadata(buildMetadata(aCas)); + predictionRequest.setMetadata(buildMetadata(aCas, new Range(aBegin, aEnd))); - HttpRequest request = HttpRequest.newBuilder() // + var request = HttpRequest.newBuilder() // .uri(URI.create(appendIfMissing(traits.getRemoteUrl(), "/")).resolve("predict")) // .header(HttpHeaders.CONTENT_TYPE, APPLICATION_JSON_VALUE) // .timeout(properties.getReadTimeout()) // .POST(BodyPublishers.ofString(toJson(predictionRequest), UTF_8)) // .build(); - HttpResponse response = sendRequest(request); + var response = sendRequest(request); // If the response indicates that the request was not successful, // then it does not make sense to go on and try to decode the XMI if (response.statusCode() >= HTTP_BAD_REQUEST) { - String responseBody = getResponseBody(response); - String msg = format("Request was not successful: [%d] - [%s]", response.statusCode(), + var responseBody = getResponseBody(response); + var msg = format("Request was not successful: [%d] - [%s]", response.statusCode(), responseBody); throw new RecommendationException(msg); } - PredictionResponse predictionResponse = deserializePredictionResponse(response); + var predictionResponse = deserializePredictionResponse(response); - try (InputStream is = IOUtils.toInputStream(predictionResponse.getDocument(), UTF_8)) { + try (var is = IOUtils.toInputStream(predictionResponse.getDocument(), UTF_8)) { XmiCasDeserializer.deserialize(is, WebAnnoCasUtil.getRealCas(aCas), true); } catch (SAXException | IOException e) { @@ -226,7 +226,7 @@ private String serializeCas(CAS aCas) throws RecommendationException try (var out = new StringWriter()) { // Passing "null" as the type system to the XmiCasSerializer means that we want // to serialize all types (i.e. no filtering for a specific target type system). - XmiCasSerializer xmiCasSerializer = new XmiCasSerializer(null); + var xmiCasSerializer = new XmiCasSerializer(null); var contentHandler = new XMLSerializer(out, true).getContentHandler(); contentHandler = new IllegalXmlCharacterSanitizingContentHandler(contentHandler); xmiCasSerializer.serialize(getRealCas(aCas), contentHandler, null, null, null); @@ -239,10 +239,10 @@ private String serializeCas(CAS aCas) throws RecommendationException private Document buildDocument(CAS aCas) throws RecommendationException { - CASMetadata casMetadata = getCasMetadata(aCas); - String xmi = serializeCas(aCas); - long documentId = casMetadata.getSourceDocumentId(); - String userId = casMetadata.getUsername(); + var casMetadata = getCasMetadata(aCas); + var xmi = serializeCas(aCas); + var documentId = casMetadata.getSourceDocumentId(); + var userId = casMetadata.getUsername(); return new Document(xmi, documentId, userId); } @@ -257,21 +257,20 @@ private CASMetadata getCasMetadata(CAS aCas) throws RecommendationException } } - private Metadata buildMetadata(CAS aCas) throws RecommendationException + private Metadata buildMetadata(CAS aCas, Range aRange) throws RecommendationException { - CASMetadata casMetadata = getCasMetadata(aCas); - AnnotationLayer layer = recommender.getLayer(); + var casMetadata = getCasMetadata(aCas); + var layer = recommender.getLayer(); return new Metadata(layer.getName(), recommender.getFeature().getName(), casMetadata.getProjectId(), layer.getAnchoringMode().getId(), - layer.isCrossSentence()); + layer.isCrossSentence(), aRange); } private PredictionResponse deserializePredictionResponse(HttpResponse response) throws RecommendationException { - ObjectMapper objectMapper = new ObjectMapper(); try { - return objectMapper.readValue(response.body(), PredictionResponse.class); + return JSONUtil.fromJsonString(PredictionResponse.class, response.body()); } catch (IOException e) { throw new RecommendationException("Error while deserializing prediction response!", e); @@ -298,14 +297,13 @@ private HttpResponse sendRequest(HttpRequest aRequest) throws Recommenda } } - private String getResponseBody(HttpResponse response) throws RecommendationException + private String getResponseBody(HttpResponse response) { - if (response.body() != null) { - return response.body(); - } - else { + if (response.body() == null) { return ""; } + + return response.body(); } @Override @@ -317,7 +315,7 @@ public int estimateSampleCount(List aCasses) @Override public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) { - EvaluationResult result = new EvaluationResult(); + var result = new EvaluationResult(); result.setEvaluationSkipped(true); result.setErrorMsg("ExternalRecommender does not support evaluation."); return result; @@ -326,14 +324,12 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) @Override public TrainingCapability getTrainingCapability() { - if (traits.isTrainable()) { - // - // return TRAINING_SUPPORTED; - // We need to get at least one training CAS because we need to extract the type system - return TRAINING_REQUIRED; - } - else { + if (!traits.isTrainable()) { return TRAINING_NOT_SUPPORTED; } + + // return TRAINING_SUPPORTED; + // We need to get at least one training CAS because we need to extract the type system + return TRAINING_REQUIRED; } } diff --git a/inception/inception-imls-external/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/model/Metadata.java b/inception/inception-imls-external/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/model/Metadata.java index 0d06d31056e..dedd7f7ad1e 100644 --- a/inception/inception-imls-external/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/model/Metadata.java +++ b/inception/inception-imls-external/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/model/Metadata.java @@ -19,9 +19,11 @@ import com.fasterxml.jackson.annotation.JsonProperty; +import de.tudarmstadt.ukp.inception.rendering.model.Range; + public class Metadata { - + private final Range range; private final String layer; private final String feature; private final long projectId; @@ -32,13 +34,15 @@ public Metadata(@JsonProperty(value = "layer", required = true) String aLayer, @JsonProperty(value = "feature", required = true) String aFeature, @JsonProperty(value = "projectId", required = true) long aProjectId, @JsonProperty(value = "anchoringMode", required = true) String aAnchoringMode, - @JsonProperty(value = "crossSentence", required = true) boolean aCrossSentence) + @JsonProperty(value = "crossSentence", required = true) boolean aCrossSentence, + @JsonProperty(value = "range", required = true) Range aRange) { layer = aLayer; feature = aFeature; projectId = aProjectId; anchoringMode = aAnchoringMode; crossSentence = aCrossSentence; + range = aRange; } public String getLayer() @@ -65,4 +69,9 @@ public boolean isCrossSentence() { return crossSentence; } + + public Range getRange() + { + return range; + } } diff --git a/inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/ExternalRecommenderIntegrationTest.java b/inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/ExternalRecommenderIntegrationTest.java index 37217d7a571..ff51b7c146f 100644 --- a/inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/ExternalRecommenderIntegrationTest.java +++ b/inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/ExternalRecommenderIntegrationTest.java @@ -38,7 +38,6 @@ import org.apache.uima.UIMAException; import org.apache.uima.cas.CAS; -import org.apache.uima.collection.CollectionReader; import org.apache.uima.fit.factory.JCasFactory; import org.apache.uima.jcas.JCas; import org.apache.uima.resource.metadata.TypeSystemDescription; @@ -62,7 +61,6 @@ import de.tudarmstadt.ukp.inception.recommendation.imls.external.v1.config.ExternalRecommenderPropertiesImpl; import de.tudarmstadt.ukp.inception.recommendation.imls.external.v1.messages.PredictionRequest; import de.tudarmstadt.ukp.inception.recommendation.imls.external.v1.messages.TrainingRequest; -import de.tudarmstadt.ukp.inception.recommendation.imls.external.v1.model.Document; import de.tudarmstadt.ukp.inception.support.test.recommendation.DkproTestHelper; import de.tudarmstadt.ukp.inception.support.test.recommendation.RecommenderTestHelper; import okhttp3.mockwebserver.MockResponse; @@ -85,7 +83,7 @@ public class ExternalRecommenderIntegrationTest private RecommenderContext context; private ExternalRecommender sut; private ExternalRecommenderTraits traits; - private RemoteStringMatchingNerRecommender remoteRecommender; + private MockRemoteStringMatchingNerRecommender remoteRecommender; private MockWebServer server; private List requestBodies; private CasStorageSession casStorageSession; @@ -100,7 +98,7 @@ public void setUp() throws Exception traits = new ExternalRecommenderTraits(); sut = new ExternalRecommender(new ExternalRecommenderPropertiesImpl(), recommender, traits); - remoteRecommender = new RemoteStringMatchingNerRecommender(recommender); + remoteRecommender = new MockRemoteStringMatchingNerRecommender(recommender); server = new MockWebServer(); server.setDispatcher(buildDispatcher()); @@ -122,7 +120,7 @@ public void tearDown() throws Exception @Test public void thatTrainingWorks() throws Exception { - List data = loadDevelopmentData(); + var data = loadDevelopmentData(); assertThatCode(() -> sut.train(context, data)).doesNotThrowAnyException(); } @@ -130,14 +128,14 @@ public void thatTrainingWorks() throws Exception @Test public void thatPredictingWorks() throws Exception { - List casses = loadDevelopmentData(); + var casses = loadDevelopmentData(); sut.train(context, casses); - CAS cas = casses.get(0); + var cas = casses.get(0); RecommenderTestHelper.addScoreFeature(cas, NamedEntity.class, "value"); sut.predict(context, cas); - List predictions = getPredictions(cas, NamedEntity.class); + var predictions = getPredictions(cas, NamedEntity.class); assertThat(predictions).as("Predictions are not empty").isNotEmpty(); @@ -151,22 +149,25 @@ public void thatPredictingWorks() throws Exception @Test public void thatTrainingSendsCorrectRequest() throws Exception { - List casses = loadDevelopmentData(); + var casses = loadDevelopmentData(); sut.train(context, casses); - TrainingRequest request = fromJsonString(TrainingRequest.class, requestBodies.get(0)); + var request = fromJsonString(TrainingRequest.class, requestBodies.get(0)); assertThat(request.getMetadata()) // .hasNoNullFieldsOrProperties() // .hasFieldOrPropertyWithValue("projectId", PROJECT_ID) .hasFieldOrPropertyWithValue("layer", recommender.getLayer().getName()) .hasFieldOrPropertyWithValue("feature", recommender.getFeature().getName()) + .hasFieldOrPropertyWithValue("range.begin", 0) + .hasFieldOrPropertyWithValue("range.end", 263034) .hasFieldOrPropertyWithValue("crossSentence", CROSS_SENTENCE) .hasFieldOrPropertyWithValue("anchoringMode", ANCHORING_MODE.getId()); for (int i = 0; i < request.getDocuments().size(); i++) { - Document doc = request.getDocuments().get(i); - assertThat(doc).hasFieldOrPropertyWithValue("documentId", (long) i) + var doc = request.getDocuments().get(i); + assertThat(doc) // + .hasFieldOrPropertyWithValue("documentId", (long) i) // .hasFieldOrPropertyWithValue("userId", USER_NAME); } } @@ -174,33 +175,38 @@ public void thatTrainingSendsCorrectRequest() throws Exception @Test public void thatPredictingSendsCorrectRequest() throws Exception { - List casses = loadDevelopmentData(); + var casses = loadDevelopmentData(); sut.train(context, casses); - CAS cas = casses.get(0); + + var cas = casses.get(0); RecommenderTestHelper.addScoreFeature(cas, NamedEntity.class, "value"); sut.predict(context, cas); - PredictionRequest request = fromJsonString(PredictionRequest.class, requestBodies.get(1)); + var request = fromJsonString(PredictionRequest.class, requestBodies.get(1)); assertThat(request.getMetadata()) // .hasNoNullFieldsOrProperties() // .hasFieldOrPropertyWithValue("projectId", PROJECT_ID) .hasFieldOrPropertyWithValue("layer", recommender.getLayer().getName()) .hasFieldOrPropertyWithValue("feature", recommender.getFeature().getName()) + .hasFieldOrPropertyWithValue("range.begin", 0) + .hasFieldOrPropertyWithValue("range.end", 263034) .hasFieldOrPropertyWithValue("crossSentence", CROSS_SENTENCE) .hasFieldOrPropertyWithValue("anchoringMode", ANCHORING_MODE.getId()); - assertThat(request.getDocument()).hasFieldOrPropertyWithValue("userId", USER_NAME) + + assertThat(request.getDocument()) // + .hasFieldOrPropertyWithValue("userId", USER_NAME) // .hasFieldOrPropertyWithValue("documentId", 0L); } private List loadDevelopmentData() throws Exception { try { - Dataset ds = loader.load("germeval2014-de", CONTINUE); - List data = loadData(ds, ds.getDefaultSplit().getDevelopmentFiles()); + var ds = loader.load("germeval2014-de", CONTINUE); + var data = loadData(ds, ds.getDefaultSplit().getDevelopmentFiles()); for (int i = 0; i < data.size(); i++) { - CAS cas = data.get(i); + var cas = data.get(i); addCasMetadata(cas.getJCas(), i); casStorageSession.add("testDataCas" + i, EXCLUSIVE_WRITE_ACCESS, cas); } @@ -215,7 +221,7 @@ private List loadDevelopmentData() throws Exception private List loadData(Dataset ds, File... files) throws UIMAException, IOException { - CollectionReader reader = createReader( // + var reader = createReader( // Conll2002Reader.class, // Conll2002Reader.PARAM_PATTERNS, files, // Conll2002Reader.PARAM_LANGUAGE, ds.getLanguage(), // @@ -239,15 +245,15 @@ private List loadData(Dataset ds, File... files) throws UIMAException, IOEx private static Recommender buildRecommender() { - AnnotationLayer layer = new AnnotationLayer(); + var layer = new AnnotationLayer(); layer.setName(TYPE); layer.setCrossSentence(CROSS_SENTENCE); layer.setAnchoringMode(ANCHORING_MODE); - AnnotationFeature feature = new AnnotationFeature(); + var feature = new AnnotationFeature(); feature.setName("value"); - Recommender recommender = new Recommender(); + var recommender = new Recommender(); recommender.setLayer(layer); recommender.setFeature(feature); recommender.setMaxRecommendations(3); @@ -263,7 +269,7 @@ private QueueDispatcher buildDispatcher() public MockResponse dispatch(RecordedRequest request) { try { - String body = request.getBody().readUtf8(); + var body = request.getBody().readUtf8(); requestBodies.add(body); if (Objects.equals(request.getPath(), "/train")) { @@ -271,7 +277,7 @@ public MockResponse dispatch(RecordedRequest request) return new MockResponse().setResponseCode(204); } else if (request.getPath().equals("/predict")) { - String response = remoteRecommender.predict(body); + var response = remoteRecommender.predict(body); return new MockResponse().setResponseCode(200).setBody(response); } } @@ -287,7 +293,7 @@ else if (request.getPath().equals("/predict")) { private void addCasMetadata(JCas aJCas, long aDocumentId) { - CASMetadata cmd = new CASMetadata(aJCas); + var cmd = new CASMetadata(aJCas); cmd.setUsername(USER_NAME); cmd.setProjectId(PROJECT_ID); cmd.setSourceDocumentId(aDocumentId); diff --git a/inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/RemoteStringMatchingNerRecommender.java b/inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/MockRemoteStringMatchingNerRecommender.java similarity index 66% rename from inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/RemoteStringMatchingNerRecommender.java rename to inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/MockRemoteStringMatchingNerRecommender.java index eedf7986ea7..6b4ecee37dd 100644 --- a/inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/RemoteStringMatchingNerRecommender.java +++ b/inception/inception-imls-external/src/test/java/de/tudarmstadt/ukp/inception/recommendation/imls/external/v1/MockRemoteStringMatchingNerRecommender.java @@ -17,13 +17,13 @@ */ package de.tudarmstadt.ukp.inception.recommendation.imls.external.v1; +import static de.tudarmstadt.ukp.clarin.webanno.support.JSONUtil.fromJsonString; import static de.tudarmstadt.ukp.inception.recommendation.api.RecommendationService.FEATURE_NAME_IS_PREDICTION; import static java.nio.charset.StandardCharsets.UTF_8; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; -import java.io.InputStream; import java.util.ArrayList; import java.util.List; @@ -31,80 +31,61 @@ import org.apache.uima.UIMAException; import org.apache.uima.UIMAFramework; import org.apache.uima.cas.CAS; -import org.apache.uima.cas.Feature; -import org.apache.uima.cas.Type; import org.apache.uima.cas.impl.XmiCasDeserializer; import org.apache.uima.cas.impl.XmiCasSerializer; import org.apache.uima.cas.text.AnnotationFS; import org.apache.uima.fit.factory.JCasFactory; import org.apache.uima.fit.util.CasUtil; -import org.apache.uima.jcas.JCas; -import org.apache.uima.resource.metadata.TypeSystemDescription; import org.apache.uima.util.XMLInputSource; import org.xml.sax.SAXException; -import com.fasterxml.jackson.core.JsonParseException; -import com.fasterxml.jackson.databind.JsonMappingException; -import com.fasterxml.jackson.databind.ObjectMapper; - +import de.tudarmstadt.ukp.clarin.webanno.support.JSONUtil; import de.tudarmstadt.ukp.inception.recommendation.api.model.Recommender; import de.tudarmstadt.ukp.inception.recommendation.api.recommender.RecommendationException; import de.tudarmstadt.ukp.inception.recommendation.api.recommender.RecommenderContext; import de.tudarmstadt.ukp.inception.recommendation.imls.external.v1.messages.PredictionRequest; import de.tudarmstadt.ukp.inception.recommendation.imls.external.v1.messages.PredictionResponse; import de.tudarmstadt.ukp.inception.recommendation.imls.external.v1.messages.TrainingRequest; -import de.tudarmstadt.ukp.inception.recommendation.imls.external.v1.model.Document; import de.tudarmstadt.ukp.inception.recommendation.imls.stringmatch.span.StringMatchingRecommender; import de.tudarmstadt.ukp.inception.recommendation.imls.stringmatch.span.StringMatchingRecommenderTraits; -public class RemoteStringMatchingNerRecommender +public class MockRemoteStringMatchingNerRecommender { private final Recommender recommender; private final RecommenderContext context; private final StringMatchingRecommender recommendationEngine; - public RemoteStringMatchingNerRecommender(Recommender aRecommender) + public MockRemoteStringMatchingNerRecommender(Recommender aRecommender) { recommender = aRecommender; context = new RecommenderContext(); - StringMatchingRecommenderTraits traits = new StringMatchingRecommenderTraits(); + var traits = new StringMatchingRecommenderTraits(); recommendationEngine = new StringMatchingRecommender(recommender, traits); } public void train(String aTrainingRequestJson) throws UIMAException, SAXException, IOException, RecommendationException { - TrainingRequest request = deserializeTrainingRequest(aTrainingRequestJson); + var request = fromJsonString(TrainingRequest.class, aTrainingRequestJson); List casses = new ArrayList<>(); - for (Document doc : request.getDocuments()) { - CAS cas = deserializeCas(doc.getXmi(), request.getTypeSystem()); + for (var doc : request.getDocuments()) { + var cas = deserializeCas(doc.getXmi(), request.getTypeSystem()); casses.add(cas); } recommendationEngine.train(context, casses); } - private TrainingRequest deserializeTrainingRequest(String aRequestJson) - { - try { - ObjectMapper objectMapper = new ObjectMapper(); - return objectMapper.readValue(aRequestJson, TrainingRequest.class); - } - catch (IOException e) { - throw new RuntimeException(e); - } - } - public String predict(String aPredictionRequestJson) throws IOException, UIMAException, SAXException, RecommendationException { - PredictionRequest request = deserializePredictionRequest(aPredictionRequestJson); - CAS cas = deserializeCas(request.getDocument().getXmi(), request.getTypeSystem()); + var request = fromJsonString(PredictionRequest.class, aPredictionRequestJson); + var cas = deserializeCas(request.getDocument().getXmi(), request.getTypeSystem()); // Only work on real annotations, not on predictions - Type predictedType = CasUtil.getType(cas, recommender.getLayer().getName()); - Feature feature = predictedType.getFeatureByBaseName(FEATURE_NAME_IS_PREDICTION); + var predictedType = CasUtil.getType(cas, recommender.getLayer().getName()); + var feature = predictedType.getFeatureByBaseName(FEATURE_NAME_IS_PREDICTION); for (AnnotationFS fs : CasUtil.select(cas, predictedType)) { if (fs.getBooleanValue(feature)) { @@ -117,20 +98,13 @@ public String predict(String aPredictionRequestJson) return buildPredictionResponse(cas); } - private PredictionRequest deserializePredictionRequest(String aPredictionRequestJson) - throws JsonParseException, JsonMappingException, IOException - { - ObjectMapper objectMapper = new ObjectMapper(); - return objectMapper.readValue(aPredictionRequestJson, PredictionRequest.class); - } - // CAS handling private CAS deserializeCas(String xmi, String typeSystem) throws SAXException, IOException, UIMAException { CAS cas = buildCas(typeSystem); - try (InputStream bais = new ByteArrayInputStream(xmi.getBytes(UTF_8))) { + try (var bais = new ByteArrayInputStream(xmi.getBytes(UTF_8))) { XmiCasDeserializer.deserialize(bais, cas); } return cas; @@ -140,20 +114,18 @@ private CAS buildCas(String typeSystem) throws IOException, UIMAException { // We need to save the typeSystem XML to disk as the // JCasFactory needs a file and not a string - TypeSystemDescription tsd = UIMAFramework.getXMLParser().parseTypeSystemDescription( + var tsd = UIMAFramework.getXMLParser().parseTypeSystemDescription( new XMLInputSource(IOUtils.toInputStream(typeSystem, UTF_8), null)); - JCas jCas = JCasFactory.createJCas(tsd); - return jCas.getCas(); + return JCasFactory.createJCas(tsd).getCas(); } private String buildPredictionResponse(CAS aCas) throws SAXException, IOException { try (ByteArrayOutputStream out = new ByteArrayOutputStream()) { XmiCasSerializer.serialize(aCas, null, out, true, null); - PredictionResponse response = new PredictionResponse(); + var response = new PredictionResponse(); response.setDocument(new String(out.toByteArray(), UTF_8)); - ObjectMapper mapper = new ObjectMapper(); - return mapper.writeValueAsString(response); + return JSONUtil.toJsonString(response); } } } From d9ee98cbedcba02102530027bfecf2699ca32530 Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Wed, 23 Aug 2023 19:30:58 +0200 Subject: [PATCH 13/17] #4150 - Upgrade dependencies - esbuild 0.18.19 -> 0.19.2 - esbuild-sass-plugin 2.10.0 -> 2.12.0 --- .../src/main/ts_template/package-lock.json | 225 ++++++++-------- .../src/main/ts/build.mjs | 48 ++-- .../src/main/ts_template/package-lock.json | 233 +++++++++-------- .../src/main/ts/build.mjs | 28 +- .../src/main/ts_template/package-lock.json | 231 +++++++++-------- .../inception-diam/src/main/ts/build.mjs | 29 +-- .../src/main/ts_template/package-lock.json | 146 ++++++----- .../src/main/ts_template/package-lock.json | 217 ++++++++-------- .../src/main/ts/build.mjs | 27 +- .../src/main/ts_template/package-lock.json | 150 ++++++----- .../src/main/ts_template/package-lock.json | 150 ++++++----- .../src/main/ts/build.mjs | 29 +-- .../src/main/ts_template/package-lock.json | 154 ++++++----- .../inception-js-api/src/main/ts/build.mjs | 27 +- .../src/main/ts/src/model/LazyDetailGroup.ts | 2 +- .../src/widget/AnnotationDetailPopOver.svelte | 9 +- .../src/main/ts_template/package-lock.json | 235 +++++++++-------- .../src/main/ts_template/package-lock.json | 134 +++++----- .../src/main/ts/build.mjs | 32 +-- .../src/main/ts_template/package-lock.json | 164 ++++++------ .../src/main/ts/build.mjs | 28 +- .../src/main/ts_template/package-lock.json | 240 ++++++++++-------- .../src/main/ts/build.mjs | 28 +- .../src/main/ts_template/package-lock.json | 240 ++++++++++-------- .../src/main/ts/build.mjs | 30 +-- .../src/main/ts_template/package-lock.json | 240 ++++++++++-------- .../src/main/ts_template/package-lock.json | 82 +++--- .../src/main/ts/build.mjs | 28 +- .../src/main/ts_template/package-lock.json | 240 ++++++++++-------- .../src/main/ts_template/package-lock.json | 12 +- pom.xml | 4 +- 31 files changed, 1768 insertions(+), 1674 deletions(-) diff --git a/inception/inception-bootstrap/src/main/ts_template/package-lock.json b/inception/inception-bootstrap/src/main/ts_template/package-lock.json index 05c4b5bd977..6859ba88348 100644 --- a/inception/inception-bootstrap/src/main/ts_template/package-lock.json +++ b/inception/inception-bootstrap/src/main/ts_template/package-lock.json @@ -11,15 +11,15 @@ "devDependencies": { "bootstrap": "5.3.1", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", - "esbuild-sass-plugin": "~2.10.0", + "esbuild": "~0.19.2", + "esbuild-sass-plugin": "~2.12.0", "sass": "~1.64.2" } }, "node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.2.tgz", + "integrity": "sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==", "cpu": [ "arm" ], @@ -33,9 +33,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.2.tgz", + "integrity": "sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==", "cpu": [ "arm64" ], @@ -49,9 +49,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.2.tgz", + "integrity": "sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==", "cpu": [ "x64" ], @@ -65,9 +65,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.2.tgz", + "integrity": "sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==", "cpu": [ "arm64" ], @@ -81,9 +81,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.2.tgz", + "integrity": "sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==", "cpu": [ "x64" ], @@ -97,9 +97,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.2.tgz", + "integrity": "sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==", "cpu": [ "arm64" ], @@ -113,9 +113,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.2.tgz", + "integrity": "sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==", "cpu": [ "x64" ], @@ -129,9 +129,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.2.tgz", + "integrity": "sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==", "cpu": [ "arm" ], @@ -145,9 +145,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.2.tgz", + "integrity": "sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==", "cpu": [ "arm64" ], @@ -161,9 +161,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.2.tgz", + "integrity": "sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==", "cpu": [ "ia32" ], @@ -177,9 +177,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.2.tgz", + "integrity": "sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==", "cpu": [ "loong64" ], @@ -193,9 +193,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.2.tgz", + "integrity": "sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==", "cpu": [ "mips64el" ], @@ -209,9 +209,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.2.tgz", + "integrity": "sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==", "cpu": [ "ppc64" ], @@ -225,9 +225,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.2.tgz", + "integrity": "sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==", "cpu": [ "riscv64" ], @@ -241,9 +241,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.2.tgz", + "integrity": "sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==", "cpu": [ "s390x" ], @@ -257,9 +257,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.2.tgz", + "integrity": "sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==", "cpu": [ "x64" ], @@ -273,9 +273,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.2.tgz", + "integrity": "sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==", "cpu": [ "x64" ], @@ -289,9 +289,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.2.tgz", + "integrity": "sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==", "cpu": [ "x64" ], @@ -305,9 +305,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.2.tgz", + "integrity": "sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==", "cpu": [ "x64" ], @@ -321,9 +321,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.2.tgz", + "integrity": "sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==", "cpu": [ "arm64" ], @@ -337,9 +337,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.2.tgz", + "integrity": "sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==", "cpu": [ "ia32" ], @@ -353,9 +353,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.2.tgz", + "integrity": "sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==", "cpu": [ "x64" ], @@ -492,9 +492,9 @@ } }, "node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.2.tgz", + "integrity": "sha512-G6hPax8UbFakEj3hWO0Vs52LQ8k3lnBhxZWomUJDxfz3rZTLqF5k/FCzuNdLx2RbpBiQQF9H9onlDDH1lZsnjg==", "dev": true, "hasInstallScript": true, "bin": { @@ -504,41 +504,58 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", - "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.12.0.tgz", + "integrity": "sha512-+k/5WM/Yf/Ur7ahn6XXxEPwa/lmuacLO7vrCIAJuvQapX1CiIHtlX/nc2eiMoJ6P6RvqZhKpQvIiwgYJonzHtw==", "dev": true, "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" + } + }, + "node_modules/esbuild-sass-plugin/node_modules/sass": { + "version": "1.66.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.66.1.tgz", + "integrity": "sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" } }, "node_modules/fill-range": { @@ -554,9 +571,9 @@ } }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "optional": true, @@ -598,9 +615,9 @@ } }, "node_modules/immutable": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", - "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.3.tgz", + "integrity": "sha512-808ZFYMsIRAjLAu5xkKo0TsbY9LBy9H5MazTKIEHerNkg0ymgilGfBPMR/3G7d/ihGmuK2Hw8S1izY2d3kd3wA==", "dev": true }, "node_modules/is-binary-path": { diff --git a/inception/inception-brat-editor/src/main/ts/build.mjs b/inception/inception-brat-editor/src/main/ts/build.mjs index a09912fff6a..c349825c0c6 100644 --- a/inception/inception-brat-editor/src/main/ts/build.mjs +++ b/inception/inception-brat-editor/src/main/ts/build.mjs @@ -28,6 +28,9 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = 'de/tudarmstadt/ukp/clarin/webanno/brat/resource' let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { bundle: true, @@ -53,27 +56,30 @@ const defaults = { ] } +fs.mkdirsSync(`${outbase}`) +fs.emptyDirSync(outbase) + if (argv.live) { - defaults.watch = { - onRebuild (error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` + const context1 = await esbuild.context(Object.assign({ + entryPoints: ['src/brat.ts'], + outfile: `${outbase}/brat.min.js`, + globalName: 'Brat' + }, defaults)) + const context2 = await esbuild.context(Object.assign({ + entryPoints: ['src/brat_curation.ts'], + outfile: `${outbase}/brat_curation.min.js`, + globalName: 'BratCuration' + }, defaults)) + await Promise.all([context1.watch(), context2.watch()]) } else { - fs.emptyDirSync(outbase) + esbuild.build(Object.assign({ + entryPoints: ['src/brat.ts'], + outfile: `${outbase}/brat.min.js`, + globalName: 'Brat' + }, defaults)) + esbuild.build(Object.assign({ + entryPoints: ['src/brat_curation.ts'], + outfile: `${outbase}/brat_curation.min.js`, + globalName: 'BratCuration' + }, defaults)) } -fs.mkdirsSync(`${outbase}`) - -esbuild.build(Object.assign({ - entryPoints: ['src/brat.ts'], - outfile: `${outbase}/brat.min.js`, - globalName: 'Brat' -}, defaults)) - -esbuild.build(Object.assign({ - entryPoints: ['src/brat_curation.ts'], - outfile: `${outbase}/brat_curation.min.js`, - globalName: 'BratCuration' -}, defaults)) diff --git a/inception/inception-brat-editor/src/main/ts_template/package-lock.json b/inception/inception-brat-editor/src/main/ts_template/package-lock.json index 6014e63f85e..6dbc8c12871 100644 --- a/inception/inception-brat-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-brat-editor/src/main/ts_template/package-lock.json @@ -25,9 +25,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -64,9 +64,9 @@ "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -90,7 +90,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -119,7 +119,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -247,7 +247,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/semver": { @@ -1073,7 +1073,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1084,28 +1084,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1125,15 +1125,15 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-diam/src/main/ts/node_modules/escalade": { @@ -1319,7 +1319,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -1332,13 +1332,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -1709,7 +1708,7 @@ "license": "ISC" }, "../../../../inception-diam/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -1984,7 +1983,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -3070,7 +3069,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -3666,9 +3665,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -3696,7 +3695,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -3725,7 +3724,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -3863,7 +3862,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -4723,7 +4722,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4734,28 +4733,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -4775,15 +4774,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -4992,7 +4991,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -5005,13 +5004,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -5378,7 +5376,7 @@ "license": "ISC" }, "../../../../inception-js-api/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -5653,7 +5651,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -6796,7 +6794,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -7540,7 +7538,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -7569,7 +7567,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -7719,7 +7717,7 @@ "license": "MIT" }, "node_modules/@types/jquery": { - "version": "3.5.16", + "version": "3.5.17", "dev": true, "license": "MIT", "dependencies": { @@ -8593,7 +8591,7 @@ "license": "MIT" }, "node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -8604,28 +8602,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-runner-plugins": { @@ -8645,15 +8643,31 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" + } + }, + "node_modules/esbuild-sass-plugin/node_modules/sass": { + "version": "1.66.1", + "dev": true, + "license": "MIT", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" } }, "node_modules/esbuild-svelte": { @@ -8862,7 +8876,7 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -8875,13 +8889,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -9246,7 +9259,7 @@ "license": "ISC" }, "node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -9521,7 +9534,7 @@ } }, "node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, diff --git a/inception/inception-diam-editor/src/main/ts/build.mjs b/inception/inception-diam-editor/src/main/ts/build.mjs index e2b6e8e1588..090881357a1 100644 --- a/inception/inception-diam-editor/src/main/ts/build.mjs +++ b/inception/inception-diam-editor/src/main/ts/build.mjs @@ -29,8 +29,13 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = 'de/tudarmstadt/ukp/inception/diam/sidebar' let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { + entryPoints: ['src/DiamAnnotationBrowser.svelte'], + outfile: `${outbase}/DiamAnnotationBrowser.min.js`, mainFields: ['svelte', 'browser', 'module', 'main'], format: 'esm', plugins: [ @@ -43,26 +48,17 @@ const defaults = { bundle: true, sourcemap: true, minify: !argv.live, - target: 'es6', + target: 'es2018', loader: { '.ts': 'ts' }, logLevel: 'info' } +fs.mkdirsSync(`${outbase}`) +fs.emptyDirSync(outbase) + if (argv.live) { - defaults.watch = { - onRebuild(error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` + const context = await esbuild.context(defaults) + await context.watch() } else { - fs.emptyDirSync(outbase) + esbuild.build(defaults) } -fs.mkdirsSync(`${outbase}`) - -esbuild.build(Object.assign({ - entryPoints: ['src/DiamAnnotationBrowser.svelte'], - outfile: `${outbase}/DiamAnnotationBrowser.min.js` -}, defaults)) - .catch(() => process.exit(1)) diff --git a/inception/inception-diam-editor/src/main/ts_template/package-lock.json b/inception/inception-diam-editor/src/main/ts_template/package-lock.json index 391a7c69f38..4eaa4673f9b 100644 --- a/inception/inception-diam-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-diam-editor/src/main/ts_template/package-lock.json @@ -21,9 +21,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -63,9 +63,9 @@ "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -89,7 +89,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -118,7 +118,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -246,7 +246,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/semver": { @@ -1072,7 +1072,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1083,28 +1083,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1124,15 +1124,15 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-diam/src/main/ts/node_modules/escalade": { @@ -1318,7 +1318,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -1331,13 +1331,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -1708,7 +1707,7 @@ "license": "ISC" }, "../../../../inception-diam/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -1983,7 +1982,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -3069,7 +3068,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -3665,9 +3664,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -3695,7 +3694,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -3724,7 +3723,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -3862,7 +3861,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -4722,7 +4721,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4733,28 +4732,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -4774,15 +4773,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -4991,7 +4990,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -5004,13 +5003,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -5377,7 +5375,7 @@ "license": "ISC" }, "../../../../inception-js-api/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -5652,7 +5650,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -6795,7 +6793,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -7711,7 +7709,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -7740,7 +7738,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -8925,7 +8923,7 @@ "license": "MIT" }, "node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -8936,28 +8934,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-runner-plugins": { @@ -8977,15 +8975,31 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" + } + }, + "node_modules/esbuild-sass-plugin/node_modules/sass": { + "version": "1.66.1", + "dev": true, + "license": "MIT", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" } }, "node_modules/esbuild-svelte": { @@ -9222,7 +9236,7 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -9235,13 +9249,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -9646,7 +9659,7 @@ "license": "ISC" }, "node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -9968,7 +9981,7 @@ } }, "node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, diff --git a/inception/inception-diam/src/main/ts/build.mjs b/inception/inception-diam/src/main/ts/build.mjs index 00431aecfa5..9b14013bf15 100644 --- a/inception/inception-diam/src/main/ts/build.mjs +++ b/inception/inception-diam/src/main/ts/build.mjs @@ -25,31 +25,28 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = 'de/tudarmstadt/ukp/inception/diam/editor' let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { + entryPoints: ['src/index.ts'], + outfile: `${outbase}/Diam.min.js`, + globalName: 'Diam', bundle: true, sourcemap: true, minify: !argv.live, - target: 'es6', + target: 'es2018', loader: { '.ts': 'ts' }, logLevel: 'info' } +fs.mkdirsSync(`${outbase}`) +fs.emptyDirSync(outbase) + if (argv.live) { - defaults.watch = { - onRebuild (error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` + const context = await esbuild.context(defaults) + await context.watch() } else { - fs.emptyDirSync(outbase) + esbuild.build(defaults) } -fs.mkdirsSync(`${outbase}`) - -esbuild.build(Object.assign({ - entryPoints: ['src/index.ts'], - outfile: `${outbase}/Diam.min.js`, - globalName: 'Diam' -}, defaults)) diff --git a/inception/inception-diam/src/main/ts_template/package-lock.json b/inception/inception-diam/src/main/ts_template/package-lock.json index 3c9819aadd9..9b3ed69d998 100644 --- a/inception/inception-diam/src/main/ts_template/package-lock.json +++ b/inception/inception-diam/src/main/ts_template/package-lock.json @@ -21,9 +21,9 @@ "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -53,9 +53,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -83,7 +83,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -112,7 +112,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -250,7 +250,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -1110,7 +1110,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1121,28 +1121,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1162,15 +1162,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -1379,7 +1379,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -1392,13 +1392,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -1765,7 +1764,7 @@ "license": "ISC" }, "../../../../inception-js-api/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -2040,7 +2039,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -3183,7 +3182,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -3927,7 +3926,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -3956,7 +3955,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -4084,7 +4083,7 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "node_modules/@types/semver": { @@ -4910,7 +4909,7 @@ } }, "node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4921,28 +4920,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-runner-plugins": { @@ -4962,15 +4961,15 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "node_modules/escalade": { @@ -5156,7 +5155,7 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -5169,13 +5168,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -5546,7 +5544,7 @@ "license": "ISC" }, "node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -5821,7 +5819,7 @@ } }, "node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -6907,7 +6905,7 @@ } }, "node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-external-editor/src/main/ts_template/package-lock.json b/inception/inception-external-editor/src/main/ts_template/package-lock.json index 973090b1be6..825a55bc368 100644 --- a/inception/inception-external-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-external-editor/src/main/ts_template/package-lock.json @@ -16,8 +16,8 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", - "esbuild-sass-plugin": "~2.10.0", + "esbuild": "~0.19.2", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -47,9 +47,9 @@ "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -73,7 +73,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -102,7 +102,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -230,7 +230,7 @@ "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-diam/src/main/ts/node_modules/@types/semver": { @@ -1056,7 +1056,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1067,28 +1067,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1108,15 +1108,15 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-diam/src/main/ts/node_modules/escalade": { @@ -1302,7 +1302,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -1315,13 +1315,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -1692,7 +1691,7 @@ "license": "ISC" }, "../../../../inception-diam/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -1967,7 +1966,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -3053,7 +3052,7 @@ } }, "../../../../inception-diam/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -3649,9 +3648,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -3679,7 +3678,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -3708,7 +3707,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -3846,7 +3845,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -4706,7 +4705,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4717,28 +4716,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -4758,15 +4757,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -4975,7 +4974,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -4988,13 +4987,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -5361,7 +5359,7 @@ "license": "ISC" }, "../../../../inception-js-api/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -5636,7 +5634,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -6779,7 +6777,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -7523,7 +7521,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -7552,7 +7550,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -8377,7 +8375,7 @@ } }, "node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -8388,40 +8386,40 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "node_modules/escalade": { @@ -8618,7 +8616,7 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -8631,13 +8629,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -8996,7 +8993,7 @@ "license": "ISC" }, "node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -9255,7 +9252,7 @@ } }, "node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -10072,7 +10069,7 @@ } }, "node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts/build.mjs b/inception/inception-html-apache-annotator-editor/src/main/ts/build.mjs index b6d2dbb9c15..e1f28b49a7a 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts/build.mjs +++ b/inception/inception-html-apache-annotator-editor/src/main/ts/build.mjs @@ -28,8 +28,14 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = 'de/tudarmstadt/ukp/inception/apacheannotatoreditor/resources' let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { + entryPoints: ['src/main.ts'], + outfile: `${outbase}/ApacheAnnotatorEditor.min.js`, + globalName: 'ApacheAnnotatorEditor', bundle: true, sourcemap: true, minify: !argv.live, @@ -53,21 +59,12 @@ const defaults = { ] } +fs.mkdirsSync(`${outbase}`) +fs.emptyDirSync(outbase) + if (argv.live) { - defaults.watch = { - onRebuild (error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` + const context = await esbuild.context(defaults) + await context.watch() } else { - fs.emptyDirSync(outbase) + esbuild.build(defaults) } -fs.mkdirsSync(`${outbase}`) - -esbuild.build(Object.assign({ - entryPoints: ['src/main.ts'], - outfile: `${outbase}/ApacheAnnotatorEditor.min.js`, - globalName: 'ApacheAnnotatorEditor' -}, defaults)) diff --git a/inception/inception-html-apache-annotator-editor/src/main/ts_template/package-lock.json b/inception/inception-html-apache-annotator-editor/src/main/ts_template/package-lock.json index 10a879e2b9a..cd49f76552f 100644 --- a/inception/inception-html-apache-annotator-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-html-apache-annotator-editor/src/main/ts_template/package-lock.json @@ -17,9 +17,9 @@ "devDependencies": { "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -52,9 +52,9 @@ "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -84,9 +84,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -114,7 +114,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -143,7 +143,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -281,7 +281,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -1141,7 +1141,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1152,28 +1152,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1193,15 +1193,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -1410,7 +1410,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -1423,13 +1423,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -1796,7 +1795,7 @@ "license": "ISC" }, "../../../../inception-js-api/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -2071,7 +2070,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -3214,7 +3213,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -3990,7 +3989,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -4019,7 +4018,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -4718,7 +4717,7 @@ "license": "MIT" }, "node_modules/core-js-pure": { - "version": "3.32.0", + "version": "3.32.1", "hasInstallScript": true, "license": "MIT", "funding": { @@ -4905,7 +4904,7 @@ "license": "MIT" }, "node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4916,28 +4915,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-runner-plugins": { @@ -4957,15 +4956,15 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "node_modules/esbuild-svelte": { @@ -5163,7 +5162,7 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -5176,13 +5175,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -5535,7 +5533,7 @@ "license": "ISC" }, "node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -5794,7 +5792,7 @@ } }, "node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -6699,7 +6697,7 @@ } }, "node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-html-editor/src/main/ts_template/package-lock.json b/inception/inception-html-editor/src/main/ts_template/package-lock.json index 8b7a313d085..2f8c8dd54bf 100644 --- a/inception/inception-html-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-html-editor/src/main/ts_template/package-lock.json @@ -17,8 +17,8 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", - "esbuild-sass-plugin": "~2.10.0", + "esbuild": "~0.19.2", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-chai-friendly": "^0.7.2", @@ -49,9 +49,9 @@ "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -81,9 +81,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -111,7 +111,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -140,7 +140,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -278,7 +278,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -1138,7 +1138,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1149,28 +1149,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1190,15 +1190,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -1407,7 +1407,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -1420,13 +1420,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -1793,7 +1792,7 @@ "license": "ISC" }, "../../../../inception-js-api/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -2068,7 +2067,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -3211,7 +3210,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -3955,7 +3954,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -3984,7 +3983,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -4088,7 +4087,7 @@ } }, "node_modules/@types/jquery": { - "version": "3.5.16", + "version": "3.5.17", "dev": true, "license": "MIT", "dependencies": { @@ -4818,7 +4817,7 @@ } }, "node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4829,40 +4828,40 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "node_modules/escalade": { @@ -5059,7 +5058,7 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -5072,13 +5071,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -5437,7 +5435,7 @@ "license": "ISC" }, "node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -5696,7 +5694,7 @@ } }, "node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -6517,7 +6515,7 @@ } }, "node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-html-recogito-editor/src/main/ts/build.mjs b/inception/inception-html-recogito-editor/src/main/ts/build.mjs index d01c7aa9f04..259e99d4c25 100644 --- a/inception/inception-html-recogito-editor/src/main/ts/build.mjs +++ b/inception/inception-html-recogito-editor/src/main/ts/build.mjs @@ -26,32 +26,29 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = 'de/tudarmstadt/ukp/inception/recogitojseditor/resources' let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { + entryPoints: ['src/main.ts'], + outfile: `${outbase}/RecogitoEditor.min.js`, + globalName: 'RecogitoEditor', bundle: true, sourcemap: true, minify: !argv.live, - target: 'es6', + target: 'es2018', loader: { '.ts': 'ts' }, logLevel: 'info', plugins: [sassPlugin()] } +fs.mkdirsSync(`${outbase}`) +fs.emptyDirSync(outbase) + if (argv.live) { - defaults.watch = { - onRebuild (error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` + const context = await esbuild.context(defaults) + await context.watch() } else { - fs.emptyDirSync(outbase) + esbuild.build(defaults) } -fs.mkdirsSync(`${outbase}`) - -esbuild.build(Object.assign({ - entryPoints: ['src/main.ts'], - outfile: `${outbase}/RecogitoEditor.min.js`, - globalName: 'RecogitoEditor' -}, defaults)) diff --git a/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json b/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json index 701ca7ec21e..d7a0675d6f1 100644 --- a/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-html-recogito-editor/src/main/ts_template/package-lock.json @@ -18,8 +18,8 @@ "devDependencies": { "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", - "esbuild": "~0.18.19", - "esbuild-sass-plugin": "~2.10.0", + "esbuild": "~0.19.2", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -48,9 +48,9 @@ "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -80,9 +80,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -110,7 +110,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -139,7 +139,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -277,7 +277,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -1137,7 +1137,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1148,28 +1148,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1189,15 +1189,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -1406,7 +1406,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -1419,13 +1419,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -1792,7 +1791,7 @@ "license": "ISC" }, "../../../../inception-js-api/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -2067,7 +2066,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -3210,7 +3209,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -4233,7 +4232,7 @@ "license": "MIT" }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -4262,7 +4261,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -4300,7 +4299,7 @@ } }, "node_modules/@flatten-js/core": { - "version": "1.4.0", + "version": "1.4.1", "license": "MIT", "dependencies": { "@flatten-js/interval-tree": "^1.0.21" @@ -5073,7 +5072,7 @@ "license": "MIT" }, "node_modules/core-js": { - "version": "3.32.0", + "version": "3.32.1", "hasInstallScript": true, "license": "MIT", "funding": { @@ -5280,7 +5279,7 @@ } }, "node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -5291,40 +5290,40 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "node_modules/escalade": { @@ -5509,7 +5508,7 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -5522,13 +5521,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -5874,7 +5872,7 @@ "license": "ISC" }, "node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -6127,7 +6125,7 @@ } }, "node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -6829,7 +6827,7 @@ } }, "node_modules/preact": { - "version": "10.16.0", + "version": "10.17.1", "license": "MIT", "funding": { "type": "opencollective", @@ -7107,7 +7105,7 @@ } }, "node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { diff --git a/inception/inception-js-api/src/main/ts/build.mjs b/inception/inception-js-api/src/main/ts/build.mjs index e0668afabf3..574f372ba52 100644 --- a/inception/inception-js-api/src/main/ts/build.mjs +++ b/inception/inception-js-api/src/main/ts/build.mjs @@ -28,8 +28,14 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = 'de/tudarmstadt/ukp/inception/diam/editor/api/resources/' let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { + entryPoints: ['index.ts'], + outfile: `${outbase}/InceptionJsAPI.min.js`, + globalName: 'InceptionJsAPI', bundle: true, sourcemap: true, minify: !argv.live, @@ -53,21 +59,12 @@ const defaults = { ] } +fs.mkdirsSync(`${outbase}`) +fs.emptyDirSync(outbase) + if (argv.live) { - defaults.watch = { - onRebuild (error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` + const context = await esbuild.context(defaults) + await context.watch() } else { - fs.emptyDirSync(outbase) + esbuild.build(defaults) } -fs.mkdirsSync(`${outbase}`) - -esbuild.build(Object.assign({ - entryPoints: ['index.ts'], - outfile: `${outbase}/InceptionJsAPI.min.js`, - globalName: 'InceptionJsAPI' -}, defaults)) diff --git a/inception/inception-js-api/src/main/ts/src/model/LazyDetailGroup.ts b/inception/inception-js-api/src/main/ts/src/model/LazyDetailGroup.ts index 180432faeb8..70bfad8548b 100644 --- a/inception/inception-js-api/src/main/ts/src/model/LazyDetailGroup.ts +++ b/inception/inception-js-api/src/main/ts/src/model/LazyDetailGroup.ts @@ -15,7 +15,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { LazyDetail } from "@inception-project/inception-js-api/src/model/LazyDetail" +import { LazyDetail } from "./LazyDetail" export interface LazyDetailGroup { title: string diff --git a/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte b/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte index 3b2bb30044e..529b05264e8 100644 --- a/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte +++ b/inception/inception-js-api/src/main/ts/src/widget/AnnotationDetailPopOver.svelte @@ -111,9 +111,12 @@ $: { if (annotation) { - ajax.loadLazyDetails(annotation).then((response) => { - detailGroups = response; - }); + ajax.loadLazyDetails(annotation) + .then((response) => detailGroups = response) + .catch(() => detailGroups = [{ + title: "Error", + details: [{label: "", value: "Unable to load details." + }]}]) } } diff --git a/inception/inception-js-api/src/main/ts_template/package-lock.json b/inception/inception-js-api/src/main/ts_template/package-lock.json index bc2e458de46..27b0bcd7529 100644 --- a/inception/inception-js-api/src/main/ts_template/package-lock.json +++ b/inception/inception-js-api/src/main/ts_template/package-lock.json @@ -19,9 +19,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -50,9 +50,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.2.tgz", + "integrity": "sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==", "cpu": [ "arm" ], @@ -66,9 +66,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.2.tgz", + "integrity": "sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==", "cpu": [ "arm64" ], @@ -82,9 +82,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.2.tgz", + "integrity": "sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==", "cpu": [ "x64" ], @@ -98,9 +98,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.2.tgz", + "integrity": "sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==", "cpu": [ "arm64" ], @@ -114,9 +114,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.2.tgz", + "integrity": "sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==", "cpu": [ "x64" ], @@ -130,9 +130,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.2.tgz", + "integrity": "sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==", "cpu": [ "arm64" ], @@ -146,9 +146,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.2.tgz", + "integrity": "sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==", "cpu": [ "x64" ], @@ -162,9 +162,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.2.tgz", + "integrity": "sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==", "cpu": [ "arm" ], @@ -178,9 +178,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.2.tgz", + "integrity": "sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==", "cpu": [ "arm64" ], @@ -194,9 +194,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.2.tgz", + "integrity": "sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==", "cpu": [ "ia32" ], @@ -210,9 +210,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.2.tgz", + "integrity": "sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==", "cpu": [ "loong64" ], @@ -226,9 +226,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.2.tgz", + "integrity": "sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==", "cpu": [ "mips64el" ], @@ -242,9 +242,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.2.tgz", + "integrity": "sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==", "cpu": [ "ppc64" ], @@ -258,9 +258,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.2.tgz", + "integrity": "sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==", "cpu": [ "riscv64" ], @@ -274,9 +274,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.2.tgz", + "integrity": "sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==", "cpu": [ "s390x" ], @@ -290,9 +290,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.2.tgz", + "integrity": "sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==", "cpu": [ "x64" ], @@ -306,9 +306,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.2.tgz", + "integrity": "sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==", "cpu": [ "x64" ], @@ -322,9 +322,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.2.tgz", + "integrity": "sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==", "cpu": [ "x64" ], @@ -338,9 +338,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.2.tgz", + "integrity": "sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==", "cpu": [ "x64" ], @@ -354,9 +354,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.2.tgz", + "integrity": "sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==", "cpu": [ "arm64" ], @@ -370,9 +370,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.2.tgz", + "integrity": "sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==", "cpu": [ "ia32" ], @@ -386,9 +386,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.2.tgz", + "integrity": "sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==", "cpu": [ "x64" ], @@ -417,9 +417,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", - "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.7.0.tgz", + "integrity": "sha512-+HencqxU7CFJnQb7IKtuNBqS6Yx3Tz4kOL8BJXo+JyeiBm5MEX6pO8onXDkjrkCRlfYXS1Axro15ZjVFe9YgsA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -571,9 +571,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.4.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.10.tgz", - "integrity": "sha512-vwzFiiy8Rn6E0MtA13/Cxxgpan/N6UeNYR9oUu6kuJWxu6zCk98trcDp8CBhbtaeuq9SykCmXkFr2lWLoPcvLg==" + "version": "20.5.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.5.3.tgz", + "integrity": "sha512-ITI7rbWczR8a/S6qjAW7DMqxqFMjjTo61qZVWJ1ubPvbIQsL5D/TvwjYEalM8Kthpe3hTzOGrF2TGbAu2uyqeA==" }, "node_modules/@types/pug": { "version": "2.0.6", @@ -1500,9 +1500,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.2.tgz", + "integrity": "sha512-G6hPax8UbFakEj3hWO0Vs52LQ8k3lnBhxZWomUJDxfz3rZTLqF5k/FCzuNdLx2RbpBiQQF9H9onlDDH1lZsnjg==", "dev": true, "hasInstallScript": true, "bin": { @@ -1512,28 +1512,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-runner-plugins": { @@ -1554,16 +1554,16 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", - "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.12.0.tgz", + "integrity": "sha512-+k/5WM/Yf/Ur7ahn6XXxEPwa/lmuacLO7vrCIAJuvQapX1CiIHtlX/nc2eiMoJ6P6RvqZhKpQvIiwgYJonzHtw==", "dev": true, "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "node_modules/esbuild-svelte": { @@ -1785,9 +1785,9 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", - "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", + "version": "2.28.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", + "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", "dev": true, "dependencies": { "array-includes": "^3.1.6", @@ -1799,13 +1799,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -2206,9 +2205,9 @@ "dev": true }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "optional": true, @@ -2507,9 +2506,9 @@ } }, "node_modules/immutable": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", - "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.3.tgz", + "integrity": "sha512-808ZFYMsIRAjLAu5xkKo0TsbY9LBy9H5MazTKIEHerNkg0ymgilGfBPMR/3G7d/ihGmuK2Hw8S1izY2d3kd3wA==", "dev": true }, "node_modules/import-fresh": { @@ -3755,9 +3754,9 @@ } }, "node_modules/sass": { - "version": "1.65.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.65.1.tgz", - "integrity": "sha512-9DINwtHmA41SEd36eVPQ9BJKpn7eKDQmUHmpI0y5Zv2Rcorrh0zS+cFrt050hdNbmmCNKTW3hV5mWfuegNRsEA==", + "version": "1.66.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.66.1.tgz", + "integrity": "sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", diff --git a/inception/inception-pdf-editor/src/main/ts_template/package-lock.json b/inception/inception-pdf-editor/src/main/ts_template/package-lock.json index 37441d60b35..f10a33ca5a7 100644 --- a/inception/inception-pdf-editor/src/main/ts_template/package-lock.json +++ b/inception/inception-pdf-editor/src/main/ts_template/package-lock.json @@ -20,7 +20,7 @@ "@types/urijs": "^1.19.19", "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -49,9 +49,9 @@ "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -81,9 +81,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -111,7 +111,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -140,7 +140,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -278,7 +278,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -1138,7 +1138,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1149,28 +1149,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1190,15 +1190,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -1407,7 +1407,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -1420,13 +1420,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -1793,7 +1792,7 @@ "license": "ISC" }, "../../../../inception-js-api/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -2068,7 +2067,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -3211,7 +3210,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -3955,7 +3954,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -3984,7 +3983,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -4745,7 +4744,7 @@ } }, "node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4756,28 +4755,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/escalade": { @@ -4963,7 +4962,7 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -4976,13 +4975,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, diff --git a/inception/inception-pdf-editor2/src/main/ts/build.mjs b/inception/inception-pdf-editor2/src/main/ts/build.mjs index d8de9ae4751..c10e578a98a 100644 --- a/inception/inception-pdf-editor2/src/main/ts/build.mjs +++ b/inception/inception-pdf-editor2/src/main/ts/build.mjs @@ -28,8 +28,14 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = 'de/tudarmstadt/ukp/inception/pdfeditor2/resources/' let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { + entryPoints: ['src/main.ts'], + globalName: 'PdfAnnotationEditor', + outfile: `${outbase}/PdfAnnotationEditor.min.js`, bundle: true, sourcemap: true, minify: !argv.live, @@ -53,26 +59,16 @@ const defaults = { ] } -if (argv.live) { - defaults.watch = { - onRebuild (error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` -} else { - fs.emptyDirSync(outbase) -} fs.mkdirsSync(`${outbase}`) - -esbuild.build(Object.assign({ - entryPoints: ['src/main.ts'], - outfile: `${outbase}/PdfAnnotationEditor.min.js`, - globalName: 'PdfAnnotationEditor' -}, defaults)) - +fs.emptyDirSync(outbase) fs.copySync('pdfjs-web', `${outbase}`) fs.copySync('node_modules/pdfjs-dist/build', `${outbase}`) fs.copySync('node_modules/pdfjs-dist/cmaps', `${outbase}/cmaps`) fs.copySync('node_modules/pdfjs-dist/standard_fonts', `${outbase}/standard_fonts`) + +if (argv.live) { + const context = await esbuild.context(defaults) + await context.watch() +} else { + esbuild.build(defaults) +} diff --git a/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json b/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json index 9bba3679ffa..89a1f5b2770 100644 --- a/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json +++ b/inception/inception-pdf-editor2/src/main/ts_template/package-lock.json @@ -23,9 +23,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -62,9 +62,9 @@ "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", "eslint-plugin-import": "^2.26.0", @@ -94,9 +94,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -124,7 +124,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -153,7 +153,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -291,7 +291,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/node": { - "version": "20.4.10", + "version": "20.5.3", "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/@types/pug": { @@ -1151,7 +1151,7 @@ "license": "MIT" }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -1162,28 +1162,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-runner-plugins": { @@ -1203,15 +1203,15 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" } }, "../../../../inception-js-api/src/main/ts/node_modules/esbuild-svelte": { @@ -1420,7 +1420,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -1433,13 +1433,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -1806,7 +1805,7 @@ "license": "ISC" }, "../../../../inception-js-api/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -2081,7 +2080,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -3224,7 +3223,7 @@ } }, "../../../../inception-js-api/src/main/ts/node_modules/sass": { - "version": "1.65.1", + "version": "1.66.1", "dev": true, "license": "MIT", "dependencies": { @@ -3968,7 +3967,7 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -3997,7 +3996,7 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", + "version": "4.7.0", "dev": true, "license": "MIT", "engines": { @@ -4116,7 +4115,7 @@ "license": "MIT" }, "node_modules/@types/jquery": { - "version": "3.5.16", + "version": "3.5.17", "dev": true, "license": "MIT", "dependencies": { @@ -4961,7 +4960,7 @@ "license": "MIT" }, "node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -4972,28 +4971,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-runner-plugins": { @@ -5013,15 +5012,31 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" + } + }, + "node_modules/esbuild-sass-plugin/node_modules/sass": { + "version": "1.66.1", + "dev": true, + "license": "MIT", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" } }, "node_modules/esbuild-svelte": { @@ -5230,7 +5245,7 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", + "version": "2.28.1", "dev": true, "license": "MIT", "dependencies": { @@ -5243,13 +5258,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -5623,7 +5637,7 @@ "license": "ISC" }, "node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -5898,7 +5912,7 @@ } }, "node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, diff --git a/inception/inception-project-export/src/main/ts/build.mjs b/inception/inception-project-export/src/main/ts/build.mjs index 9a699c9cddb..8c5854490d6 100644 --- a/inception/inception-project-export/src/main/ts/build.mjs +++ b/inception/inception-project-export/src/main/ts/build.mjs @@ -28,8 +28,13 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = 'de/tudarmstadt/ukp/inception/project/export/settings' let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { + entryPoints: ['src/RunningExportsPanel.svelte'], + outfile: `${outbase}/RunningExportsPanel.min.js`, mainFields: ['svelte', 'browser', 'module', 'main'], format: 'esm', plugins: [ @@ -40,26 +45,17 @@ const defaults = { bundle: true, sourcemap: false, minify: !argv.live, - target: 'es6', + target: 'es2018', loader: { '.ts': 'ts' }, logLevel: 'info' } +fs.mkdirsSync(`${outbase}`) +fs.emptyDirSync(outbase) + if (argv.live) { - defaults.watch = { - onRebuild (error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` + const context = await esbuild.context(defaults) + await context.watch() } else { - fs.emptyDirSync(outbase) + esbuild.build(defaults) } -fs.mkdirsSync(`${outbase}`) - -esbuild.build(Object.assign({ - entryPoints: ['src/RunningExportsPanel.svelte'], - outfile: `${outbase}/RunningExportsPanel.min.js` -}, defaults)) -.catch(() => process.exit(1)) diff --git a/inception/inception-project-export/src/main/ts_template/package-lock.json b/inception/inception-project-export/src/main/ts_template/package-lock.json index 60be9199d0b..2eaa99c6fd3 100644 --- a/inception/inception-project-export/src/main/ts_template/package-lock.json +++ b/inception/inception-project-export/src/main/ts_template/package-lock.json @@ -19,9 +19,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -243,9 +243,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.2.tgz", + "integrity": "sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==", "cpu": [ "arm" ], @@ -259,9 +259,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.2.tgz", + "integrity": "sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==", "cpu": [ "arm64" ], @@ -275,9 +275,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.2.tgz", + "integrity": "sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==", "cpu": [ "x64" ], @@ -291,9 +291,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.2.tgz", + "integrity": "sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==", "cpu": [ "arm64" ], @@ -307,9 +307,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.2.tgz", + "integrity": "sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==", "cpu": [ "x64" ], @@ -323,9 +323,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.2.tgz", + "integrity": "sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==", "cpu": [ "arm64" ], @@ -339,9 +339,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.2.tgz", + "integrity": "sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==", "cpu": [ "x64" ], @@ -355,9 +355,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.2.tgz", + "integrity": "sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==", "cpu": [ "arm" ], @@ -371,9 +371,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.2.tgz", + "integrity": "sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==", "cpu": [ "arm64" ], @@ -387,9 +387,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.2.tgz", + "integrity": "sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==", "cpu": [ "ia32" ], @@ -403,9 +403,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.2.tgz", + "integrity": "sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==", "cpu": [ "loong64" ], @@ -419,9 +419,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.2.tgz", + "integrity": "sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==", "cpu": [ "mips64el" ], @@ -435,9 +435,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.2.tgz", + "integrity": "sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==", "cpu": [ "ppc64" ], @@ -451,9 +451,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.2.tgz", + "integrity": "sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==", "cpu": [ "riscv64" ], @@ -467,9 +467,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.2.tgz", + "integrity": "sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==", "cpu": [ "s390x" ], @@ -483,9 +483,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.2.tgz", + "integrity": "sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==", "cpu": [ "x64" ], @@ -499,9 +499,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.2.tgz", + "integrity": "sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==", "cpu": [ "x64" ], @@ -515,9 +515,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.2.tgz", + "integrity": "sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==", "cpu": [ "x64" ], @@ -531,9 +531,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.2.tgz", + "integrity": "sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==", "cpu": [ "x64" ], @@ -547,9 +547,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.2.tgz", + "integrity": "sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==", "cpu": [ "arm64" ], @@ -563,9 +563,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.2.tgz", + "integrity": "sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==", "cpu": [ "ia32" ], @@ -579,9 +579,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.2.tgz", + "integrity": "sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==", "cpu": [ "x64" ], @@ -610,9 +610,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", - "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.7.0.tgz", + "integrity": "sha512-+HencqxU7CFJnQb7IKtuNBqS6Yx3Tz4kOL8BJXo+JyeiBm5MEX6pO8onXDkjrkCRlfYXS1Axro15ZjVFe9YgsA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -1894,9 +1894,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.2.tgz", + "integrity": "sha512-G6hPax8UbFakEj3hWO0Vs52LQ8k3lnBhxZWomUJDxfz3rZTLqF5k/FCzuNdLx2RbpBiQQF9H9onlDDH1lZsnjg==", "dev": true, "hasInstallScript": true, "bin": { @@ -1906,28 +1906,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-runner-plugins": { @@ -1948,16 +1948,33 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", - "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.12.0.tgz", + "integrity": "sha512-+k/5WM/Yf/Ur7ahn6XXxEPwa/lmuacLO7vrCIAJuvQapX1CiIHtlX/nc2eiMoJ6P6RvqZhKpQvIiwgYJonzHtw==", "dev": true, "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" + } + }, + "node_modules/esbuild-sass-plugin/node_modules/sass": { + "version": "1.66.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.66.1.tgz", + "integrity": "sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" } }, "node_modules/esbuild-svelte": { @@ -2209,9 +2226,9 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", - "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", + "version": "2.28.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", + "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", "dev": true, "dependencies": { "array-includes": "^3.1.6", @@ -2223,13 +2240,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -2667,9 +2683,9 @@ "dev": true }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "optional": true, @@ -3019,9 +3035,9 @@ } }, "node_modules/immutable": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", - "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.3.tgz", + "integrity": "sha512-808ZFYMsIRAjLAu5xkKo0TsbY9LBy9H5MazTKIEHerNkg0ymgilGfBPMR/3G7d/ihGmuK2Hw8S1izY2d3kd3wA==", "dev": true }, "node_modules/import-fresh": { diff --git a/inception/inception-recommendation/src/main/ts/build.mjs b/inception/inception-recommendation/src/main/ts/build.mjs index c170df01de2..efada916c76 100644 --- a/inception/inception-recommendation/src/main/ts/build.mjs +++ b/inception/inception-recommendation/src/main/ts/build.mjs @@ -28,8 +28,13 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = 'de/tudarmstadt/ukp/inception/recommendation/footer' let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { + entryPoints: ['src/RecommendationEventFooterPanel.svelte'], + outfile: `${outbase}/RecommendationEventFooterPanel.min.js`, mainFields: ['svelte', 'browser', 'module', 'main'], format: 'esm', plugins: [ @@ -41,26 +46,17 @@ const defaults = { bundle: true, sourcemap: false, minify: !argv.live, - target: 'es6', + target: 'es2018', loader: { '.ts': 'ts' }, logLevel: 'info' } +fs.mkdirsSync(`${outbase}`) +fs.emptyDirSync(outbase) + if (argv.live) { - defaults.watch = { - onRebuild (error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` + const context = await esbuild.context(defaults) + await context.watch() } else { - fs.emptyDirSync(outbase) + esbuild.build(defaults) } -fs.mkdirsSync(`${outbase}`) - -esbuild.build(Object.assign({ - entryPoints: ['src/RecommendationEventFooterPanel.svelte'], - outfile: `${outbase}/RecommendationEventFooterPanel.min.js` -}, defaults)) -.catch(() => process.exit(1)) diff --git a/inception/inception-recommendation/src/main/ts_template/package-lock.json b/inception/inception-recommendation/src/main/ts_template/package-lock.json index de7cc78c23c..28a983636f6 100644 --- a/inception/inception-recommendation/src/main/ts_template/package-lock.json +++ b/inception/inception-recommendation/src/main/ts_template/package-lock.json @@ -19,9 +19,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -244,9 +244,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.2.tgz", + "integrity": "sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==", "cpu": [ "arm" ], @@ -260,9 +260,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.2.tgz", + "integrity": "sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==", "cpu": [ "arm64" ], @@ -276,9 +276,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.2.tgz", + "integrity": "sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==", "cpu": [ "x64" ], @@ -292,9 +292,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.2.tgz", + "integrity": "sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==", "cpu": [ "arm64" ], @@ -308,9 +308,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.2.tgz", + "integrity": "sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==", "cpu": [ "x64" ], @@ -324,9 +324,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.2.tgz", + "integrity": "sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==", "cpu": [ "arm64" ], @@ -340,9 +340,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.2.tgz", + "integrity": "sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==", "cpu": [ "x64" ], @@ -356,9 +356,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.2.tgz", + "integrity": "sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==", "cpu": [ "arm" ], @@ -372,9 +372,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.2.tgz", + "integrity": "sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==", "cpu": [ "arm64" ], @@ -388,9 +388,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.2.tgz", + "integrity": "sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==", "cpu": [ "ia32" ], @@ -404,9 +404,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.2.tgz", + "integrity": "sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==", "cpu": [ "loong64" ], @@ -420,9 +420,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.2.tgz", + "integrity": "sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==", "cpu": [ "mips64el" ], @@ -436,9 +436,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.2.tgz", + "integrity": "sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==", "cpu": [ "ppc64" ], @@ -452,9 +452,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.2.tgz", + "integrity": "sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==", "cpu": [ "riscv64" ], @@ -468,9 +468,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.2.tgz", + "integrity": "sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==", "cpu": [ "s390x" ], @@ -484,9 +484,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.2.tgz", + "integrity": "sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==", "cpu": [ "x64" ], @@ -500,9 +500,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.2.tgz", + "integrity": "sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==", "cpu": [ "x64" ], @@ -516,9 +516,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.2.tgz", + "integrity": "sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==", "cpu": [ "x64" ], @@ -532,9 +532,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.2.tgz", + "integrity": "sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==", "cpu": [ "x64" ], @@ -548,9 +548,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.2.tgz", + "integrity": "sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==", "cpu": [ "arm64" ], @@ -564,9 +564,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.2.tgz", + "integrity": "sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==", "cpu": [ "ia32" ], @@ -580,9 +580,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.2.tgz", + "integrity": "sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==", "cpu": [ "x64" ], @@ -611,9 +611,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", - "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.7.0.tgz", + "integrity": "sha512-+HencqxU7CFJnQb7IKtuNBqS6Yx3Tz4kOL8BJXo+JyeiBm5MEX6pO8onXDkjrkCRlfYXS1Axro15ZjVFe9YgsA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -1895,9 +1895,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.2.tgz", + "integrity": "sha512-G6hPax8UbFakEj3hWO0Vs52LQ8k3lnBhxZWomUJDxfz3rZTLqF5k/FCzuNdLx2RbpBiQQF9H9onlDDH1lZsnjg==", "dev": true, "hasInstallScript": true, "bin": { @@ -1907,28 +1907,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-runner-plugins": { @@ -1949,16 +1949,33 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", - "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.12.0.tgz", + "integrity": "sha512-+k/5WM/Yf/Ur7ahn6XXxEPwa/lmuacLO7vrCIAJuvQapX1CiIHtlX/nc2eiMoJ6P6RvqZhKpQvIiwgYJonzHtw==", "dev": true, "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" + } + }, + "node_modules/esbuild-sass-plugin/node_modules/sass": { + "version": "1.66.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.66.1.tgz", + "integrity": "sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" } }, "node_modules/esbuild-svelte": { @@ -2210,9 +2227,9 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", - "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", + "version": "2.28.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", + "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", "dev": true, "dependencies": { "array-includes": "^3.1.6", @@ -2224,13 +2241,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -2668,9 +2684,9 @@ "dev": true }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "optional": true, @@ -3020,9 +3036,9 @@ } }, "node_modules/immutable": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", - "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.3.tgz", + "integrity": "sha512-808ZFYMsIRAjLAu5xkKo0TsbY9LBy9H5MazTKIEHerNkg0ymgilGfBPMR/3G7d/ihGmuK2Hw8S1izY2d3kd3wA==", "dev": true }, "node_modules/import-fresh": { diff --git a/inception/inception-ui-dashboard-activity/src/main/ts/build.mjs b/inception/inception-ui-dashboard-activity/src/main/ts/build.mjs index 83ffe395895..a5b9bfbe58e 100644 --- a/inception/inception-ui-dashboard-activity/src/main/ts/build.mjs +++ b/inception/inception-ui-dashboard-activity/src/main/ts/build.mjs @@ -28,8 +28,13 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = "de/tudarmstadt/ukp/inception/ui/core/dashboard/activity" let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { + entryPoints: ["src/ActivitiesDashlet.svelte"], + outfile: `${outbase}/ActivitiesDashlet.min.js`, mainFields: ["svelte", "browser", "module", "main"], format: "esm", plugins: [ @@ -40,28 +45,17 @@ const defaults = { bundle: true, sourcemap: true, minify: !argv.live, - target: 'es6', + target: 'es2018', loader: { '.ts': 'ts' }, logLevel: 'info' } +fs.mkdirsSync(`${outbase}`) +fs.emptyDirSync(outbase) + if (argv.live) { - defaults.watch = { - onRebuild (error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` + const context = await esbuild.context(defaults) + await context.watch() } else { - fs.emptyDirSync(outbase) + esbuild.build(defaults) } -fs.mkdirsSync(`${outbase}`) - -esbuild - .build(Object.assign({ - entryPoints: ["src/ActivitiesDashlet.svelte"], - outfile: `${outbase}/ActivitiesDashlet.min.js`, - }, defaults)) - .catch(() => process.exit(1)); - \ No newline at end of file diff --git a/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json b/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json index b2116e6797a..981bf3ef449 100644 --- a/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-dashboard-activity/src/main/ts_template/package-lock.json @@ -19,9 +19,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -243,9 +243,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.2.tgz", + "integrity": "sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==", "cpu": [ "arm" ], @@ -259,9 +259,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.2.tgz", + "integrity": "sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==", "cpu": [ "arm64" ], @@ -275,9 +275,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.2.tgz", + "integrity": "sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==", "cpu": [ "x64" ], @@ -291,9 +291,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.2.tgz", + "integrity": "sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==", "cpu": [ "arm64" ], @@ -307,9 +307,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.2.tgz", + "integrity": "sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==", "cpu": [ "x64" ], @@ -323,9 +323,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.2.tgz", + "integrity": "sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==", "cpu": [ "arm64" ], @@ -339,9 +339,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.2.tgz", + "integrity": "sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==", "cpu": [ "x64" ], @@ -355,9 +355,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.2.tgz", + "integrity": "sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==", "cpu": [ "arm" ], @@ -371,9 +371,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.2.tgz", + "integrity": "sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==", "cpu": [ "arm64" ], @@ -387,9 +387,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.2.tgz", + "integrity": "sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==", "cpu": [ "ia32" ], @@ -403,9 +403,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.2.tgz", + "integrity": "sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==", "cpu": [ "loong64" ], @@ -419,9 +419,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.2.tgz", + "integrity": "sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==", "cpu": [ "mips64el" ], @@ -435,9 +435,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.2.tgz", + "integrity": "sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==", "cpu": [ "ppc64" ], @@ -451,9 +451,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.2.tgz", + "integrity": "sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==", "cpu": [ "riscv64" ], @@ -467,9 +467,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.2.tgz", + "integrity": "sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==", "cpu": [ "s390x" ], @@ -483,9 +483,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.2.tgz", + "integrity": "sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==", "cpu": [ "x64" ], @@ -499,9 +499,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.2.tgz", + "integrity": "sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==", "cpu": [ "x64" ], @@ -515,9 +515,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.2.tgz", + "integrity": "sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==", "cpu": [ "x64" ], @@ -531,9 +531,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.2.tgz", + "integrity": "sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==", "cpu": [ "x64" ], @@ -547,9 +547,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.2.tgz", + "integrity": "sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==", "cpu": [ "arm64" ], @@ -563,9 +563,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.2.tgz", + "integrity": "sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==", "cpu": [ "ia32" ], @@ -579,9 +579,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.2.tgz", + "integrity": "sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==", "cpu": [ "x64" ], @@ -610,9 +610,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", - "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.7.0.tgz", + "integrity": "sha512-+HencqxU7CFJnQb7IKtuNBqS6Yx3Tz4kOL8BJXo+JyeiBm5MEX6pO8onXDkjrkCRlfYXS1Axro15ZjVFe9YgsA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -1894,9 +1894,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.2.tgz", + "integrity": "sha512-G6hPax8UbFakEj3hWO0Vs52LQ8k3lnBhxZWomUJDxfz3rZTLqF5k/FCzuNdLx2RbpBiQQF9H9onlDDH1lZsnjg==", "dev": true, "hasInstallScript": true, "bin": { @@ -1906,28 +1906,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-runner-plugins": { @@ -1948,16 +1948,33 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", - "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.12.0.tgz", + "integrity": "sha512-+k/5WM/Yf/Ur7ahn6XXxEPwa/lmuacLO7vrCIAJuvQapX1CiIHtlX/nc2eiMoJ6P6RvqZhKpQvIiwgYJonzHtw==", "dev": true, "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" + } + }, + "node_modules/esbuild-sass-plugin/node_modules/sass": { + "version": "1.66.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.66.1.tgz", + "integrity": "sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" } }, "node_modules/esbuild-svelte": { @@ -2209,9 +2226,9 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", - "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", + "version": "2.28.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", + "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", "dev": true, "dependencies": { "array-includes": "^3.1.6", @@ -2223,13 +2240,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -2667,9 +2683,9 @@ "dev": true }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "optional": true, @@ -3019,9 +3035,9 @@ } }, "node_modules/immutable": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", - "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.3.tgz", + "integrity": "sha512-808ZFYMsIRAjLAu5xkKo0TsbY9LBy9H5MazTKIEHerNkg0ymgilGfBPMR/3G7d/ihGmuK2Hw8S1izY2d3kd3wA==", "dev": true }, "node_modules/import-fresh": { diff --git a/inception/inception-ui-kb/src/main/ts_template/package-lock.json b/inception/inception-ui-kb/src/main/ts_template/package-lock.json index 46e43544149..41647e8948f 100644 --- a/inception/inception-ui-kb/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-kb/src/main/ts_template/package-lock.json @@ -22,13 +22,13 @@ "devDependencies": { "bootstrap": "5.3.1", "cross-env": "^7.0.3", - "esbuild": "~0.18.19", - "esbuild-sass-plugin": "~2.10.0", + "esbuild": "~0.19.2", + "esbuild-sass-plugin": "~2.12.0", "sass": "~1.64.2" } }, "../../../../inception-bootstrap/src/main/ts/node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", + "version": "0.19.2", "cpu": [ "arm64" ], @@ -158,7 +158,7 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/esbuild": { - "version": "0.18.20", + "version": "0.19.2", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -169,40 +169,56 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "../../../../inception-bootstrap/src/main/ts/node_modules/esbuild-sass-plugin": { - "version": "2.10.0", + "version": "2.12.0", "dev": true, "license": "MIT", "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" + } + }, + "../../../../inception-bootstrap/src/main/ts/node_modules/esbuild-sass-plugin/node_modules/sass": { + "version": "1.66.1", + "dev": true, + "license": "MIT", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" } }, "../../../../inception-bootstrap/src/main/ts/node_modules/fill-range": { @@ -217,7 +233,7 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -256,7 +272,7 @@ } }, "../../../../inception-bootstrap/src/main/ts/node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, @@ -553,7 +569,7 @@ } }, "node_modules/fsevents": { - "version": "2.3.2", + "version": "2.3.3", "dev": true, "license": "MIT", "optional": true, @@ -576,7 +592,7 @@ } }, "node_modules/immutable": { - "version": "4.3.2", + "version": "4.3.3", "dev": true, "license": "MIT" }, diff --git a/inception/inception-ui-scheduling/src/main/ts/build.mjs b/inception/inception-ui-scheduling/src/main/ts/build.mjs index d6278bc80dd..902d869e62e 100644 --- a/inception/inception-ui-scheduling/src/main/ts/build.mjs +++ b/inception/inception-ui-scheduling/src/main/ts/build.mjs @@ -28,8 +28,13 @@ const argv = yargs(hideBin(process.argv)).argv const packagePath = 'de/tudarmstadt/ukp/inception/ui/scheduling' let outbase = `../../../target/js/${packagePath}` +if (argv.live) { + outbase = `../../../target/classes/${packagePath}` +} const defaults = { + entryPoints: ['src/TaskMonitorPanel.svelte'], + outfile: `${outbase}/TaskMonitorPanel.min.js`, mainFields: ['svelte', 'browser', 'module', 'main'], format: 'esm', plugins: [ @@ -40,26 +45,17 @@ const defaults = { bundle: true, sourcemap: false, minify: !argv.live, - target: 'es6', + target: 'es2018', loader: { '.ts': 'ts' }, logLevel: 'info' } +fs.mkdirsSync(`${outbase}`) +fs.emptyDirSync(outbase) + if (argv.live) { - defaults.watch = { - onRebuild (error, result) { - if (error) console.error('watch build failed:', error) - else console.log('watch build succeeded:', result) - } - } - outbase = `../../../target/classes/${packagePath}` + const context = await esbuild.context(defaults) + await context.watch() } else { - fs.emptyDirSync(outbase) + esbuild.build(defaults) } -fs.mkdirsSync(`${outbase}`) - -esbuild.build(Object.assign({ - entryPoints: ['src/TaskMonitorPanel.svelte'], - outfile: `${outbase}/TaskMonitorPanel.min.js` -}, defaults)) -.catch(() => process.exit(1)) diff --git a/inception/inception-ui-scheduling/src/main/ts_template/package-lock.json b/inception/inception-ui-scheduling/src/main/ts_template/package-lock.json index 60be9199d0b..2eaa99c6fd3 100644 --- a/inception/inception-ui-scheduling/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-scheduling/src/main/ts_template/package-lock.json @@ -19,9 +19,9 @@ "@typescript-eslint/eslint-plugin": "^5.47.1", "@typescript-eslint/parser": "^5.47.1", "chai": "^4.3.6", - "esbuild": "~0.18.19", + "esbuild": "~0.19.2", "esbuild-runner-plugins": "^2.3.0-plugins.0", - "esbuild-sass-plugin": "~2.10.0", + "esbuild-sass-plugin": "~2.12.0", "esbuild-svelte": "^0.7.4", "eslint": "^8.31.0", "eslint-config-standard": "^17.0.0", @@ -243,9 +243,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", - "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.2.tgz", + "integrity": "sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==", "cpu": [ "arm" ], @@ -259,9 +259,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", - "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.2.tgz", + "integrity": "sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==", "cpu": [ "arm64" ], @@ -275,9 +275,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", - "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.2.tgz", + "integrity": "sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==", "cpu": [ "x64" ], @@ -291,9 +291,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", - "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.2.tgz", + "integrity": "sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==", "cpu": [ "arm64" ], @@ -307,9 +307,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", - "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.2.tgz", + "integrity": "sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==", "cpu": [ "x64" ], @@ -323,9 +323,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", - "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.2.tgz", + "integrity": "sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==", "cpu": [ "arm64" ], @@ -339,9 +339,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", - "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.2.tgz", + "integrity": "sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==", "cpu": [ "x64" ], @@ -355,9 +355,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", - "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.2.tgz", + "integrity": "sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==", "cpu": [ "arm" ], @@ -371,9 +371,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", - "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.2.tgz", + "integrity": "sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==", "cpu": [ "arm64" ], @@ -387,9 +387,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", - "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.2.tgz", + "integrity": "sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==", "cpu": [ "ia32" ], @@ -403,9 +403,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", - "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.2.tgz", + "integrity": "sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==", "cpu": [ "loong64" ], @@ -419,9 +419,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", - "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.2.tgz", + "integrity": "sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==", "cpu": [ "mips64el" ], @@ -435,9 +435,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", - "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.2.tgz", + "integrity": "sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==", "cpu": [ "ppc64" ], @@ -451,9 +451,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", - "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.2.tgz", + "integrity": "sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==", "cpu": [ "riscv64" ], @@ -467,9 +467,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", - "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.2.tgz", + "integrity": "sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==", "cpu": [ "s390x" ], @@ -483,9 +483,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", - "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.2.tgz", + "integrity": "sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==", "cpu": [ "x64" ], @@ -499,9 +499,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", - "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.2.tgz", + "integrity": "sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==", "cpu": [ "x64" ], @@ -515,9 +515,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", - "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.2.tgz", + "integrity": "sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==", "cpu": [ "x64" ], @@ -531,9 +531,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", - "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.2.tgz", + "integrity": "sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==", "cpu": [ "x64" ], @@ -547,9 +547,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", - "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.2.tgz", + "integrity": "sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==", "cpu": [ "arm64" ], @@ -563,9 +563,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", - "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.2.tgz", + "integrity": "sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==", "cpu": [ "ia32" ], @@ -579,9 +579,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", - "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.2.tgz", + "integrity": "sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==", "cpu": [ "x64" ], @@ -610,9 +610,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.6.2.tgz", - "integrity": "sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.7.0.tgz", + "integrity": "sha512-+HencqxU7CFJnQb7IKtuNBqS6Yx3Tz4kOL8BJXo+JyeiBm5MEX6pO8onXDkjrkCRlfYXS1Axro15ZjVFe9YgsA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -1894,9 +1894,9 @@ "dev": true }, "node_modules/esbuild": { - "version": "0.18.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", - "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.2.tgz", + "integrity": "sha512-G6hPax8UbFakEj3hWO0Vs52LQ8k3lnBhxZWomUJDxfz3rZTLqF5k/FCzuNdLx2RbpBiQQF9H9onlDDH1lZsnjg==", "dev": true, "hasInstallScript": true, "bin": { @@ -1906,28 +1906,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.18.20", - "@esbuild/android-arm64": "0.18.20", - "@esbuild/android-x64": "0.18.20", - "@esbuild/darwin-arm64": "0.18.20", - "@esbuild/darwin-x64": "0.18.20", - "@esbuild/freebsd-arm64": "0.18.20", - "@esbuild/freebsd-x64": "0.18.20", - "@esbuild/linux-arm": "0.18.20", - "@esbuild/linux-arm64": "0.18.20", - "@esbuild/linux-ia32": "0.18.20", - "@esbuild/linux-loong64": "0.18.20", - "@esbuild/linux-mips64el": "0.18.20", - "@esbuild/linux-ppc64": "0.18.20", - "@esbuild/linux-riscv64": "0.18.20", - "@esbuild/linux-s390x": "0.18.20", - "@esbuild/linux-x64": "0.18.20", - "@esbuild/netbsd-x64": "0.18.20", - "@esbuild/openbsd-x64": "0.18.20", - "@esbuild/sunos-x64": "0.18.20", - "@esbuild/win32-arm64": "0.18.20", - "@esbuild/win32-ia32": "0.18.20", - "@esbuild/win32-x64": "0.18.20" + "@esbuild/android-arm": "0.19.2", + "@esbuild/android-arm64": "0.19.2", + "@esbuild/android-x64": "0.19.2", + "@esbuild/darwin-arm64": "0.19.2", + "@esbuild/darwin-x64": "0.19.2", + "@esbuild/freebsd-arm64": "0.19.2", + "@esbuild/freebsd-x64": "0.19.2", + "@esbuild/linux-arm": "0.19.2", + "@esbuild/linux-arm64": "0.19.2", + "@esbuild/linux-ia32": "0.19.2", + "@esbuild/linux-loong64": "0.19.2", + "@esbuild/linux-mips64el": "0.19.2", + "@esbuild/linux-ppc64": "0.19.2", + "@esbuild/linux-riscv64": "0.19.2", + "@esbuild/linux-s390x": "0.19.2", + "@esbuild/linux-x64": "0.19.2", + "@esbuild/netbsd-x64": "0.19.2", + "@esbuild/openbsd-x64": "0.19.2", + "@esbuild/sunos-x64": "0.19.2", + "@esbuild/win32-arm64": "0.19.2", + "@esbuild/win32-ia32": "0.19.2", + "@esbuild/win32-x64": "0.19.2" } }, "node_modules/esbuild-runner-plugins": { @@ -1948,16 +1948,33 @@ } }, "node_modules/esbuild-sass-plugin": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", - "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.12.0.tgz", + "integrity": "sha512-+k/5WM/Yf/Ur7ahn6XXxEPwa/lmuacLO7vrCIAJuvQapX1CiIHtlX/nc2eiMoJ6P6RvqZhKpQvIiwgYJonzHtw==", "dev": true, "dependencies": { "resolve": "^1.22.2", - "sass": "^1.63.0" + "sass": "^1.65.1" }, "peerDependencies": { - "esbuild": "^0.18.0" + "esbuild": "^0.19.1" + } + }, + "node_modules/esbuild-sass-plugin/node_modules/sass": { + "version": "1.66.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.66.1.tgz", + "integrity": "sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" } }, "node_modules/esbuild-svelte": { @@ -2209,9 +2226,9 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", - "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", + "version": "2.28.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", + "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", "dev": true, "dependencies": { "array-includes": "^3.1.6", @@ -2223,13 +2240,12 @@ "eslint-import-resolver-node": "^0.3.7", "eslint-module-utils": "^2.8.0", "has": "^1.0.3", - "is-core-module": "^2.12.1", + "is-core-module": "^2.13.0", "is-glob": "^4.0.3", "minimatch": "^3.1.2", "object.fromentries": "^2.0.6", "object.groupby": "^1.0.0", "object.values": "^1.1.6", - "resolve": "^1.22.3", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -2667,9 +2683,9 @@ "dev": true }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "optional": true, @@ -3019,9 +3035,9 @@ } }, "node_modules/immutable": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", - "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.3.tgz", + "integrity": "sha512-808ZFYMsIRAjLAu5xkKo0TsbY9LBy9H5MazTKIEHerNkg0ymgilGfBPMR/3G7d/ihGmuK2Hw8S1izY2d3kd3wA==", "dev": true }, "node_modules/import-fresh": { diff --git a/inception/inception-ui-search/src/main/ts_template/package-lock.json b/inception/inception-ui-search/src/main/ts_template/package-lock.json index dd05b8694bc..7c95df2407c 100644 --- a/inception/inception-ui-search/src/main/ts_template/package-lock.json +++ b/inception/inception-ui-search/src/main/ts_template/package-lock.json @@ -86,9 +86,9 @@ } }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "optional": true, @@ -112,9 +112,9 @@ } }, "node_modules/immutable": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.2.tgz", - "integrity": "sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.3.tgz", + "integrity": "sha512-808ZFYMsIRAjLAu5xkKo0TsbY9LBy9H5MazTKIEHerNkg0ymgilGfBPMR/3G7d/ihGmuK2Hw8S1izY2d3kd3wA==", "dev": true }, "node_modules/is-binary-path": { diff --git a/pom.xml b/pom.xml index e3fdbe21ed8..32517fe821a 100644 --- a/pom.xml +++ b/pom.xml @@ -156,8 +156,8 @@ ^7.0.3 ^2.0.1 ^1.11.4 - ~0.18.19 - ~2.10.0 + ~0.19.2 + ~2.12.0 ^0.7.4 ^2.3.0-plugins.0 ^8.31.0 From 20aed6b6c8f7ef5a2771e588dfb23fd60525aef0 Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Wed, 23 Aug 2023 20:29:03 +0200 Subject: [PATCH 14/17] #4150 - Upgrade dependencies - Update Jenkinsfile with additional settings --- Jenkinsfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index a7e455fcdf8..f3cd94ad292 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -2,7 +2,7 @@ config = [ agentLabel: '', maven: 'Maven 3', jdk: 'Zulu 11', - extraMavenArguments: '', + extraMavenArguments: '-U -Ddkpro.core.testCachePath="${WORKSPACE}/cache/dkpro-core-datasets" -Dmaven.artifact.threads=15', wipeWorkspaceBeforeBuild: true, wipeWorkspaceAfterBuild: true ] @@ -97,7 +97,7 @@ pipeline { script { def mavenCommand = 'mvn ' + params.extraMavenArguments + - ' -B -Dmaven.test.failure.ignore=true clean verify'; + ' -B -Dmaven.test.failure.ignore=true -T 4 -Pjacoco clean verify javadoc:javadoc'; if (isUnix()) { sh script: mavenCommand @@ -130,7 +130,7 @@ pipeline { script { def mavenCommand = 'mvn ' + params.extraMavenArguments + - ' -B -Dmaven.test.failure.ignore=true clean verify' + ' -B -Dmaven.test.failure.ignore=true -Pjacoco,full-tests clean verify javadoc:javadoc' if (isUnix()) { sh script: mavenCommand From 0857f8bbda597db579d3c0b9f202596fed4c3bdd Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Fri, 25 Aug 2023 18:30:23 +0200 Subject: [PATCH 15/17] #4155 - Better annotation suggestion IDs - Configure build to run on Java 17 --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index f3cd94ad292..53e24818ee7 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,7 +1,7 @@ config = [ agentLabel: '', maven: 'Maven 3', - jdk: 'Zulu 11', + jdk: 'Zulu 17', extraMavenArguments: '-U -Ddkpro.core.testCachePath="${WORKSPACE}/cache/dkpro-core-datasets" -Dmaven.artifact.threads=15', wipeWorkspaceBeforeBuild: true, wipeWorkspaceAfterBuild: true From 48629ba40cb7a4bf4f23e78201271c4fee084ebe Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Fri, 25 Aug 2023 18:37:13 +0200 Subject: [PATCH 16/17] #4155 - Better annotation suggestion IDs - Fix bad variable reference in Jenkinsfile --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 53e24818ee7..3a2013a489f 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -28,7 +28,7 @@ pipeline { } agent { - label agentLabel + label params.agentLabel } tools { From 72bf21e5ff3c7a325c4024918c9883681a524b6f Mon Sep 17 00:00:00 2001 From: Richard Eckart de Castilho Date: Fri, 1 Sep 2023 21:14:44 +0200 Subject: [PATCH 17/17] #4150 - Upgrade dependencies - opennlp 1.9.3 -> 2.3.0 - improve handling of adaptive features during prediction --- inception/inception-imls-opennlp/pom.xml | 2 +- .../doccat/OpenNlpDoccatRecommender.java | 4 +- .../OpenNlpDoccatRecommenderTraits.java | 2 - .../opennlp/ner/OpenNlpNerRecommender.java | 91 +++++++++---------- .../ner/OpenNlpNerRecommenderTraits.java | 2 - .../pos/OpenNlpPosRecommenderTraits.java | 2 - 6 files changed, 44 insertions(+), 59 deletions(-) diff --git a/inception/inception-imls-opennlp/pom.xml b/inception/inception-imls-opennlp/pom.xml index 8b468bee99f..a1be63d6750 100644 --- a/inception/inception-imls-opennlp/pom.xml +++ b/inception/inception-imls-opennlp/pom.xml @@ -25,7 +25,7 @@ inception-imls-opennlp INCEpTION - ML - OpenNLP (v ${opennlp.version}) - 1.9.3 + 2.3.0 diff --git a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommender.java b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommender.java index 879ec7cac49..d04591bfdf9 100644 --- a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommender.java +++ b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommender.java @@ -29,7 +29,6 @@ import java.util.ArrayList; import java.util.Collection; import java.util.List; -import java.util.Map; import java.util.Map.Entry; import java.util.Objects; @@ -252,8 +251,7 @@ private List extractSamples(List aCasses) Type sampleUnitType = getType(cas, SAMPLE_UNIT); Type tokenType = getType(cas, Token.class); - Map> sampleUnits = indexCovered(cas, sampleUnitType, - tokenType); + var sampleUnits = indexCovered(cas, sampleUnitType, tokenType); for (Entry> e : sampleUnits.entrySet()) { AnnotationFS sampleUnit = e.getKey(); Collection tokens = e.getValue(); diff --git a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommenderTraits.java b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommenderTraits.java index ccb7ff572dc..6ce7f1d2292 100644 --- a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommenderTraits.java +++ b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/doccat/OpenNlpDoccatRecommenderTraits.java @@ -21,7 +21,6 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import opennlp.tools.ml.AbstractTrainer; import opennlp.tools.util.TrainingParameters; @JsonIgnoreProperties(ignoreUnknown = true) @@ -90,7 +89,6 @@ public void setPredictionLimit(int aPredictionLimit) public TrainingParameters getParameters() { TrainingParameters parameters = TrainingParameters.defaultParams(); - parameters.put(AbstractTrainer.VERBOSE_PARAM, false); parameters.put(TrainingParameters.ITERATIONS_PARAM, iterations); parameters.put(TrainingParameters.CUTOFF_PARAM, cutoff); parameters.put(TrainingParameters.THREADS_PARAM, numThreads); diff --git a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommender.java b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommender.java index 31f24694533..5f6ff523c70 100644 --- a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommender.java +++ b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommender.java @@ -32,8 +32,6 @@ import java.util.Objects; import org.apache.uima.cas.CAS; -import org.apache.uima.cas.Feature; -import org.apache.uima.cas.Type; import org.apache.uima.cas.text.AnnotationFS; import org.apache.uima.jcas.tcas.Annotation; import org.slf4j.Logger; @@ -51,9 +49,7 @@ import de.tudarmstadt.ukp.inception.recommendation.api.recommender.RecommenderContext.Key; import de.tudarmstadt.ukp.inception.recommendation.api.recommender.TrainingCapability; import de.tudarmstadt.ukp.inception.rendering.model.Range; -import it.unimi.dsi.fastutil.ints.Int2ObjectMap; import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; -import it.unimi.dsi.fastutil.objects.Object2IntMap; import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap; import opennlp.tools.ml.BeamSearch; import opennlp.tools.namefind.NameFinderME; @@ -95,7 +91,7 @@ public boolean isReadyForPrediction(RecommenderContext aContext) @Override public void train(RecommenderContext aContext, List aCasses) throws RecommendationException { - List nameSamples = extractNameSamples(aCasses); + var nameSamples = extractNameSamples(aCasses); if (nameSamples.size() < 2) { aContext.warn("Not enough training data: [%d] items", nameSamples.size()); @@ -232,10 +228,11 @@ public EvaluationResult evaluate(List aCasses, DataSplitter aDataSplitter) // Evaluate var labelPairs = new ArrayList(); for (var sample : testSet) { - // clear adaptive data from feature generators if necessary - if (sample.isClearAdaptiveDataSet()) { - nameFinder.clearAdaptiveData(); - } + // During evaluation, we sample data across documents and shuffle them into training and + // tests sets. Thus, we consider every sample as coming from a unique document and + // always clear the adaptive data between samples. clear adaptive data from feature + // generators if necessary + nameFinder.clearAdaptiveData(); // Span contains one NE, Array of them all in one sentence var sentence = sample.getSentence(); @@ -259,14 +256,14 @@ private List determineLabelsForASentence(String[] sentence, Span[] pr int predictedNameIdx = 0; int goldNameIdx = 0; - List labelPairs = new ArrayList<>(); + var labelPairs = new ArrayList(); // Spans store which tokens are part of it as [begin,end). // Tokens are counted 0 to length of sentence. // Therefore go through all tokens, determine which span they are part of // for predictions and gold ones. Assign label accordingly to the annotated-token. for (int i = 0; i < sentence.length; i++) { - String predictedLabel = NO_NE_TAG; + var predictedLabel = NO_NE_TAG; if (predictedNameIdx < predictedNames.length) { Span predictedName = predictedNames[predictedNameIdx]; predictedLabel = determineLabel(predictedName, i); @@ -276,7 +273,7 @@ private List determineLabelsForASentence(String[] sentence, Span[] pr } } - String goldLabel = NO_NE_TAG; + var goldLabel = NO_NE_TAG; if (goldNameIdx < goldNames.length) { Span goldName = goldNames[goldNameIdx]; goldLabel = determineLabel(goldName, i); @@ -297,7 +294,7 @@ private List determineLabelsForASentence(String[] sentence, Span[] pr */ private String determineLabel(Span aName, int aTokenIdx) { - String label = NO_NE_TAG; + var label = NO_NE_TAG; if (aName.getStart() <= aTokenIdx && aName.getEnd() > aTokenIdx) { label = aName.getType(); @@ -310,58 +307,54 @@ private List extractNameSamples(List aCasses) { var nameSamples = new ArrayList(); - casses: for (CAS cas : aCasses) { - Type sampleUnitType = getType(cas, SAMPLE_UNIT); - Type tokenType = getType(cas, Token.class); + nextCas: for (CAS cas : aCasses) { + var sampleUnitType = getType(cas, SAMPLE_UNIT); + var tokenType = getType(cas, Token.class); - for (AnnotationFS sampleUnit : cas. select(sampleUnitType)) { + var firstSampleInCas = true; + for (var sampleUnit : cas. select(sampleUnitType)) { if (nameSamples.size() >= traits.getTrainingSetSizeLimit()) { - break casses; + break nextCas; } if (isBlank(sampleUnit.getCoveredText())) { continue; } - Collection tokens = cas. select(tokenType) - .coveredBy(sampleUnit).asList(); - - NameSample nameSample = createNameSample(cas, sampleUnit, tokens); - if (nameSample.getNames().length > 0) { - nameSamples.add(nameSample); + var tokens = cas. select(tokenType).coveredBy(sampleUnit).asList(); + var tokenTexts = tokens.stream().map(AnnotationFS::getCoveredText) + .toArray(String[]::new); + var annotatedSpans = extractAnnotatedSpans(cas, sampleUnit, tokens); + if (annotatedSpans.length == 0) { + continue; } + + var nameSample = new NameSample(tokenTexts, annotatedSpans, firstSampleInCas); + nameSamples.add(nameSample); + firstSampleInCas = false; } } return nameSamples; } - private NameSample createNameSample(CAS aCas, AnnotationFS aSampleUnit, - Collection aTokens) - { - String[] tokenTexts = aTokens.stream().map(AnnotationFS::getCoveredText) - .toArray(String[]::new); - Span[] annotatedSpans = extractAnnotatedSpans(aCas, aSampleUnit, aTokens); - return new NameSample(tokenTexts, annotatedSpans, true); - } - private Span[] extractAnnotatedSpans(CAS aCas, AnnotationFS aSampleUnit, Collection aTokens) { // Create spans from target annotations - Type annotationType = getType(aCas, layerName); - Feature feature = annotationType.getFeatureByBaseName(featureName); - List annotations = selectCovered(annotationType, aSampleUnit); + var annotationType = getType(aCas, layerName); + var feature = annotationType.getFeatureByBaseName(featureName); + var annotations = selectCovered(annotationType, aSampleUnit); if (annotations.isEmpty()) { return new Span[0]; } // Convert character offsets to token indices - Int2ObjectMap idxTokenBeginOffset = new Int2ObjectOpenHashMap<>(); - Int2ObjectMap idxTokenEndOffset = new Int2ObjectOpenHashMap<>(); - Object2IntMap idxToken = new Object2IntOpenHashMap<>(); - int idx = 0; + var idxTokenBeginOffset = new Int2ObjectOpenHashMap(); + var idxTokenEndOffset = new Int2ObjectOpenHashMap(); + var idxToken = new Object2IntOpenHashMap(); + var idx = 0; for (AnnotationFS t : aTokens) { idxTokenBeginOffset.put(t.getBegin(), t); idxTokenEndOffset.put(t.getEnd(), t); @@ -369,23 +362,23 @@ private Span[] extractAnnotatedSpans(CAS aCas, AnnotationFS aSampleUnit, idx++; } - List result = new ArrayList<>(); - int highestEndTokenPositionObserved = 0; - int numberOfAnnotations = annotations.size(); + var result = new ArrayList(); + var highestEndTokenPositionObserved = 0; + var numberOfAnnotations = annotations.size(); for (int i = 0; i < numberOfAnnotations; i++) { - AnnotationFS annotation = annotations.get(i); - String label = annotation.getFeatureValueAsString(feature); + var annotation = annotations.get(i); + var label = annotation.getFeatureValueAsString(feature); - AnnotationFS beginToken = idxTokenBeginOffset.get(annotation.getBegin()); - AnnotationFS endToken = idxTokenEndOffset.get(annotation.getEnd()); + var beginToken = idxTokenBeginOffset.get(annotation.getBegin()); + var endToken = idxTokenEndOffset.get(annotation.getEnd()); if (beginToken == null || endToken == null) { LOG.warn("Skipping annotation not starting/ending at token boundaries: [{}-{}, {}]", annotation.getBegin(), annotation.getEnd(), label); continue; } - int begin = idxToken.getInt(beginToken); - int end = idxToken.getInt(endToken); + var begin = idxToken.getInt(beginToken); + var end = idxToken.getInt(endToken); // If the begin offset of the current annotation is lower than the highest offset so far // observed, then it is overlapping with some annotation that we have seen before. diff --git a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommenderTraits.java b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommenderTraits.java index a4557ed33ec..136dab4752f 100644 --- a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommenderTraits.java +++ b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/ner/OpenNlpNerRecommenderTraits.java @@ -22,7 +22,6 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import opennlp.tools.ml.AbstractTrainer; import opennlp.tools.util.TrainingParameters; @JsonIgnoreProperties(ignoreUnknown = true) @@ -70,7 +69,6 @@ public void setPredictionLimit(int aPredictionLimit) public TrainingParameters getParameters() { TrainingParameters parameters = TrainingParameters.defaultParams(); - parameters.put(AbstractTrainer.VERBOSE_PARAM, "false"); parameters.put(TrainingParameters.THREADS_PARAM, numThreads); return parameters; } diff --git a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/pos/OpenNlpPosRecommenderTraits.java b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/pos/OpenNlpPosRecommenderTraits.java index f3d2b192602..61482e23906 100644 --- a/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/pos/OpenNlpPosRecommenderTraits.java +++ b/inception/inception-imls-opennlp/src/main/java/de/tudarmstadt/ukp/inception/recommendation/imls/opennlp/pos/OpenNlpPosRecommenderTraits.java @@ -22,7 +22,6 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; -import opennlp.tools.ml.AbstractTrainer; import opennlp.tools.util.TrainingParameters; @JsonIgnoreProperties(ignoreUnknown = true) @@ -88,7 +87,6 @@ public void setTaggedTokensThreshold(double aTaggedTokensThreshold) public TrainingParameters getParameters() { TrainingParameters parameters = TrainingParameters.defaultParams(); - parameters.put(AbstractTrainer.VERBOSE_PARAM, "false"); parameters.put(TrainingParameters.THREADS_PARAM, numThreads); return parameters; }