aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package-lock.json7793
-rw-r--r--package.json8
-rw-r--r--src/ClientUtils.ts5
-rw-r--r--src/client/Network.ts4
-rw-r--r--src/client/documents/DocUtils.ts75
-rw-r--r--src/client/documents/DocumentTypes.ts2
-rw-r--r--src/client/documents/Documents.ts13
-rw-r--r--src/client/util/CaptureManager.tsx2
-rw-r--r--src/client/util/CurrentUserUtils.ts116
-rw-r--r--src/client/util/DictationManager.ts2
-rw-r--r--src/client/util/DocumentManager.ts2
-rw-r--r--src/client/util/DragManager.ts40
-rw-r--r--src/client/util/DropConverter.ts6
-rw-r--r--src/client/util/Import & Export/ImageUtils.ts2
-rw-r--r--src/client/util/LinkFollower.ts32
-rw-r--r--src/client/util/LinkManager.ts43
-rw-r--r--src/client/util/SearchUtil.ts6
-rw-r--r--src/client/util/SettingsManager.tsx4
-rw-r--r--src/client/util/request-image-size.ts38
-rw-r--r--src/client/views/DocComponent.tsx8
-rw-r--r--src/client/views/DocumentButtonBar.tsx10
-rw-r--r--src/client/views/DocumentDecorations.tsx4
-rw-r--r--src/client/views/FilterPanel.tsx4
-rw-r--r--src/client/views/GlobalKeyHandler.ts6
-rw-r--r--src/client/views/InkStrokeProperties.ts2
-rw-r--r--src/client/views/InkTranscription.tsx6
-rw-r--r--src/client/views/LightboxView.tsx4
-rw-r--r--src/client/views/Main.tsx4
-rw-r--r--src/client/views/MainView.tsx42
-rw-r--r--src/client/views/PinFuncs.ts8
-rw-r--r--src/client/views/PropertiesButtons.tsx2
-rw-r--r--src/client/views/PropertiesView.tsx8
-rw-r--r--src/client/views/SidebarAnnos.tsx3
-rw-r--r--src/client/views/StyleProvider.tsx12
-rw-r--r--src/client/views/StyleProviderQuiz.tsx2
-rw-r--r--src/client/views/TagsView.tsx6
-rw-r--r--src/client/views/TemplateMenu.scss4
-rw-r--r--src/client/views/animationtimeline/Timeline.tsx2
-rw-r--r--src/client/views/collections/CollectionCarouselView.tsx3
-rw-r--r--src/client/views/collections/CollectionDockingView.tsx18
-rw-r--r--src/client/views/collections/CollectionNoteTakingView.tsx11
-rw-r--r--src/client/views/collections/CollectionStackingView.tsx14
-rw-r--r--src/client/views/collections/CollectionStackingViewFieldColumn.tsx4
-rw-r--r--src/client/views/collections/CollectionSubView.tsx37
-rw-r--r--src/client/views/collections/CollectionTreeView.tsx2
-rw-r--r--src/client/views/collections/TabDocView.tsx14
-rw-r--r--src/client/views/collections/TreeView.tsx20
-rw-r--r--src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx31
-rw-r--r--src/client/views/collections/collectionFreeForm/FaceCollectionBox.tsx2
-rw-r--r--src/client/views/collections/collectionFreeForm/ImageLabelBox.tsx4
-rw-r--r--src/client/views/collections/collectionFreeForm/MarqueeView.tsx6
-rw-r--r--src/client/views/collections/collectionLinear/CollectionLinearView.tsx4
-rw-r--r--src/client/views/collections/collectionSchema/CollectionSchemaView.tsx4
-rw-r--r--src/client/views/collections/collectionSchema/SchemaTableCell.tsx2
-rw-r--r--src/client/views/global/globalScripts.ts37
-rw-r--r--src/client/views/newlightbox/NewLightboxView.tsx2
-rw-r--r--src/client/views/nodes/AudioBox.tsx2
-rw-r--r--src/client/views/nodes/CollectionFreeFormDocumentView.tsx4
-rw-r--r--src/client/views/nodes/DataVizBox/DataVizBox.tsx2
-rw-r--r--src/client/views/nodes/DocumentContentsView.tsx4
-rw-r--r--src/client/views/nodes/DocumentView.tsx174
-rw-r--r--src/client/views/nodes/FieldView.tsx2
-rw-r--r--src/client/views/nodes/IconTagBox.tsx2
-rw-r--r--src/client/views/nodes/ImageBox.tsx24
-rw-r--r--src/client/views/nodes/KeyValueBox.tsx10
-rw-r--r--src/client/views/nodes/KeyValuePair.tsx4
-rw-r--r--src/client/views/nodes/PDFBox.tsx2
-rw-r--r--src/client/views/nodes/RecordingBox/RecordingBox.tsx2
-rw-r--r--src/client/views/nodes/ScreenshotBox.tsx2
-rw-r--r--src/client/views/nodes/ScriptingBox.tsx13
-rw-r--r--src/client/views/nodes/WebBox.tsx20
-rw-r--r--src/client/views/nodes/chatbot/chatboxcomponents/ChatBox.tsx2
-rw-r--r--src/client/views/nodes/chatbot/vectorstore/Vectorstore.ts3
-rw-r--r--src/client/views/nodes/formattedText/DashFieldView.scss4
-rw-r--r--src/client/views/nodes/formattedText/DashFieldView.tsx5
-rw-r--r--src/client/views/nodes/formattedText/FormattedTextBox.tsx235
-rw-r--r--src/client/views/nodes/formattedText/RichTextMenu.tsx17
-rw-r--r--src/client/views/nodes/formattedText/RichTextRules.ts52
-rw-r--r--src/client/views/nodes/formattedText/SummaryView.tsx7
-rw-r--r--src/client/views/nodes/formattedText/marks_rts.ts27
-rw-r--r--src/client/views/nodes/formattedText/nodes_rts.ts1
-rw-r--r--src/client/views/nodes/trails/PresBox.tsx187
-rw-r--r--src/client/views/nodes/trails/PresSlideBox.scss (renamed from src/client/views/nodes/trails/PresElementBox.scss)0
-rw-r--r--src/client/views/nodes/trails/PresSlideBox.tsx (renamed from src/client/views/nodes/trails/PresElementBox.tsx)34
-rw-r--r--src/client/views/nodes/trails/index.ts2
-rw-r--r--src/client/views/pdf/GPTPopup/GPTPopup.tsx2
-rw-r--r--src/client/views/pdf/PDFViewer.tsx15
-rw-r--r--src/client/views/search/FaceRecognitionHandler.tsx4
-rw-r--r--src/client/views/search/SearchBox.tsx2
-rw-r--r--src/client/views/smartdraw/DrawingFillHandler.tsx8
-rw-r--r--src/client/views/smartdraw/StickerPalette.tsx13
-rw-r--r--src/debug/Repl.tsx6
-rw-r--r--src/fields/Doc.ts492
-rw-r--r--src/fields/List.ts6
-rw-r--r--src/fields/Proxy.ts64
-rw-r--r--src/fields/Schema.ts21
-rw-r--r--src/fields/ScriptField.ts12
-rw-r--r--src/fields/Types.ts91
-rw-r--r--src/fields/util.ts10
-rw-r--r--src/server/ApiManagers/FireflyManager.ts164
-rw-r--r--src/server/DashUploadUtils.ts7
101 files changed, 4995 insertions, 5310 deletions
diff --git a/package-lock.json b/package-lock.json
index 9acca90ee..990f03462 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -49,7 +49,7 @@
"@types/d3-color": "^3.1.3",
"@types/d3-scale": "^4.0.8",
"@types/d3-selection": "^3.0.10",
- "@types/dom-speech-recognition": "0.0.4",
+ "@types/dom-speech-recognition": "^0.0.6",
"@types/find-in-files": "^0.5.3",
"@types/fluent-ffmpeg": "^2.1.24",
"@types/formidable": "3.4.5",
@@ -61,7 +61,7 @@
"@types/reveal": "^4.2.0",
"@types/supercluster": "^7.1.3",
"@types/textfit": "^2.4.4",
- "@types/web": "^0.0.213",
+ "@types/web": "^0.0.219",
"@types/webpack-hot-middleware": "^2.25.9",
"@webscopeio/react-textarea-autocomplete": "^4.9.2",
"adm-zip": "^0.5.10",
@@ -137,7 +137,7 @@
"gl-matrix": "^3.4.3",
"golden-layout": "^2.6.0",
"google-auth-library": "^9.4.1",
- "googleapis": "^146.0.0",
+ "googleapis": "^148.0.0",
"googlephotos": "^0.3.5",
"got": "^14.4.5",
"howler": "^2.2.4",
@@ -180,7 +180,7 @@
"node-stream-zip": "^1.15.0",
"nodemailer": "^6.9.7",
"nodemon": "^3.0.2",
- "npm": "^11.1.0",
+ "npm": "^11.3.0",
"openai": "^4.75.0",
"p-limit": "^6.1.0",
"parse-multipart-data": "^1.5.0",
@@ -358,74 +358,74 @@
"license": "MIT"
},
"node_modules/@adobe/react-spectrum": {
- "version": "3.40.1",
- "resolved": "https://registry.npmjs.org/@adobe/react-spectrum/-/react-spectrum-3.40.1.tgz",
- "integrity": "sha512-BoUUuHeRvKYeLbH1gLCe3HM2W4UEKQYiRchfVWVikv0nyEQCBnHo/NR2YXOqin52DUQdpLfe9tkuVuGdMz3hng==",
- "license": "Apache-2.0",
- "dependencies": {
- "@internationalized/string": "^3.2.5",
- "@react-aria/collections": "3.0.0-beta.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/ssr": "^3.9.7",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/visually-hidden": "^3.8.21",
- "@react-spectrum/accordion": "^3.0.4",
- "@react-spectrum/actionbar": "^3.6.5",
- "@react-spectrum/actiongroup": "^3.10.13",
- "@react-spectrum/avatar": "^3.0.20",
- "@react-spectrum/badge": "^3.1.21",
- "@react-spectrum/breadcrumbs": "^3.9.15",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/buttongroup": "^3.6.20",
- "@react-spectrum/calendar": "^3.6.2",
- "@react-spectrum/checkbox": "^3.9.14",
- "@react-spectrum/color": "^3.0.5",
- "@react-spectrum/combobox": "^3.15.1",
- "@react-spectrum/contextualhelp": "^3.6.19",
- "@react-spectrum/datepicker": "^3.13.1",
- "@react-spectrum/dialog": "^3.8.19",
- "@react-spectrum/divider": "^3.5.21",
- "@react-spectrum/dnd": "^3.5.3",
- "@react-spectrum/dropzone": "^3.0.9",
- "@react-spectrum/filetrigger": "^3.0.9",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/icon": "^3.8.3",
- "@react-spectrum/illustratedmessage": "^3.5.8",
- "@react-spectrum/image": "^3.5.9",
- "@react-spectrum/inlinealert": "^3.2.13",
- "@react-spectrum/labeledvalue": "^3.2.1",
- "@react-spectrum/layout": "^3.6.13",
- "@react-spectrum/link": "^3.6.15",
- "@react-spectrum/list": "^3.9.3",
- "@react-spectrum/listbox": "^3.14.3",
- "@react-spectrum/menu": "^3.21.3",
- "@react-spectrum/meter": "^3.5.8",
- "@react-spectrum/numberfield": "^3.9.11",
- "@react-spectrum/overlays": "^5.7.3",
- "@react-spectrum/picker": "^3.15.7",
- "@react-spectrum/progress": "^3.7.14",
- "@react-spectrum/provider": "^3.10.3",
- "@react-spectrum/radio": "^3.7.14",
- "@react-spectrum/searchfield": "^3.8.14",
- "@react-spectrum/slider": "^3.7.3",
- "@react-spectrum/statuslight": "^3.5.20",
- "@react-spectrum/switch": "^3.5.13",
- "@react-spectrum/table": "^3.16.1",
- "@react-spectrum/tabs": "^3.8.18",
- "@react-spectrum/tag": "^3.2.14",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/textfield": "^3.13.1",
- "@react-spectrum/theme-dark": "^3.5.16",
- "@react-spectrum/theme-default": "^3.5.16",
- "@react-spectrum/theme-light": "^3.4.16",
- "@react-spectrum/toast": "^3.0.1",
- "@react-spectrum/tooltip": "^3.7.3",
- "@react-spectrum/tree": "^3.0.1",
- "@react-spectrum/view": "^3.6.17",
- "@react-spectrum/well": "^3.4.21",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/data": "^3.12.2",
- "@react-types/shared": "^3.28.0",
+ "version": "3.41.0",
+ "resolved": "https://registry.npmjs.org/@adobe/react-spectrum/-/react-spectrum-3.41.0.tgz",
+ "integrity": "sha512-hueQDTZK89OgptjHZb1TbDKSi6urafOQDvHj0ZKkdGThsKEePoVhAvpaz6l2w+dBNNUL5XlYFUc1qrE+sgdK2w==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@internationalized/string": "^3.2.6",
+ "@react-aria/collections": "3.0.0-rc.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/ssr": "^3.9.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/visually-hidden": "^3.8.22",
+ "@react-spectrum/accordion": "^3.0.5",
+ "@react-spectrum/actionbar": "^3.6.6",
+ "@react-spectrum/actiongroup": "^3.10.14",
+ "@react-spectrum/avatar": "^3.0.21",
+ "@react-spectrum/badge": "^3.1.22",
+ "@react-spectrum/breadcrumbs": "^3.9.16",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/buttongroup": "^3.6.21",
+ "@react-spectrum/calendar": "^3.7.0",
+ "@react-spectrum/checkbox": "^3.9.15",
+ "@react-spectrum/color": "^3.0.6",
+ "@react-spectrum/combobox": "^3.15.2",
+ "@react-spectrum/contextualhelp": "^3.6.20",
+ "@react-spectrum/datepicker": "^3.14.0",
+ "@react-spectrum/dialog": "^3.8.20",
+ "@react-spectrum/divider": "^3.5.22",
+ "@react-spectrum/dnd": "^3.5.4",
+ "@react-spectrum/dropzone": "^3.0.10",
+ "@react-spectrum/filetrigger": "^3.0.10",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/icon": "^3.8.4",
+ "@react-spectrum/illustratedmessage": "^3.5.9",
+ "@react-spectrum/image": "^3.5.10",
+ "@react-spectrum/inlinealert": "^3.2.14",
+ "@react-spectrum/labeledvalue": "^3.2.2",
+ "@react-spectrum/layout": "^3.6.14",
+ "@react-spectrum/link": "^3.6.16",
+ "@react-spectrum/list": "^3.10.0",
+ "@react-spectrum/listbox": "^3.15.0",
+ "@react-spectrum/menu": "^3.22.0",
+ "@react-spectrum/meter": "^3.5.9",
+ "@react-spectrum/numberfield": "^3.9.12",
+ "@react-spectrum/overlays": "^5.7.4",
+ "@react-spectrum/picker": "^3.15.8",
+ "@react-spectrum/progress": "^3.7.15",
+ "@react-spectrum/provider": "^3.10.4",
+ "@react-spectrum/radio": "^3.7.15",
+ "@react-spectrum/searchfield": "^3.8.15",
+ "@react-spectrum/slider": "^3.7.4",
+ "@react-spectrum/statuslight": "^3.5.21",
+ "@react-spectrum/switch": "^3.6.0",
+ "@react-spectrum/table": "^3.17.0",
+ "@react-spectrum/tabs": "^3.8.19",
+ "@react-spectrum/tag": "^3.2.15",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/textfield": "^3.13.2",
+ "@react-spectrum/theme-dark": "^3.5.17",
+ "@react-spectrum/theme-default": "^3.5.17",
+ "@react-spectrum/theme-light": "^3.4.17",
+ "@react-spectrum/toast": "^3.0.2",
+ "@react-spectrum/tooltip": "^3.7.4",
+ "@react-spectrum/tree": "^3.1.0",
+ "@react-spectrum/view": "^3.6.18",
+ "@react-spectrum/well": "^3.4.22",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/data": "^3.12.3",
+ "@react-types/shared": "^3.29.0",
"client-only": "^0.0.1"
},
"peerDependencies": {
@@ -433,6 +433,26 @@
"react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
+ "node_modules/@adobe/react-spectrum-ui": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@adobe/react-spectrum-ui/-/react-spectrum-ui-1.2.1.tgz",
+ "integrity": "sha512-wcrbEE2O/9WnEn6avBnaVRRx88S5PLFsPLr4wffzlbMfXeQsy+RMQwaJd3cbzrn18/j04Isit7f7Emfn0dhrJA==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0"
+ }
+ },
+ "node_modules/@adobe/react-spectrum-workflow": {
+ "version": "2.3.5",
+ "resolved": "https://registry.npmjs.org/@adobe/react-spectrum-workflow/-/react-spectrum-workflow-2.3.5.tgz",
+ "integrity": "sha512-b53VIPwPWKb/T5gzE3qs+QlGP5gVrw/LnWV3xMksDU+CRl3rzOKUwxIGiZO8ICyYh1WiyqY4myGlPU/nAynBUg==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0"
+ }
+ },
"node_modules/@ampproject/remapping": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz",
@@ -469,9 +489,9 @@
}
},
"node_modules/@asamuzakjp/css-color": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.1.1.tgz",
- "integrity": "sha512-hpRD68SV2OMcZCsrbdkccTw5FXjNDLo5OuqSHyHZfwweGsDWZwDJ2+gONyNAbazZclobMirACLw0lk8WVxIqxA==",
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.1.2.tgz",
+ "integrity": "sha512-nwgc7jPn3LpZ4JWsoHtuwBsad1qSSLDDX634DdG0PBJofIuIEtSWk4KkRmuXyu178tjuHAbwiMNNzwqIyLYxZw==",
"license": "MIT",
"dependencies": {
"@csstools/css-calc": "^2.1.2",
@@ -641,48 +661,48 @@
}
},
"node_modules/@aws-sdk/client-cognito-identity": {
- "version": "3.768.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.768.0.tgz",
- "integrity": "sha512-h/WOvKhuXVIhNKjDcsF6oY2oJuBusspnmEaX20h+GUzIrNMlf6qkJrWziT58KzzESyzeYZcGNWjcOfbVRpH6NA==",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.787.0.tgz",
+ "integrity": "sha512-7v6nywZ5wcQxX7qdZ5M1ld15QdkzLU6fAKiEqbvJKu4dM8cFW6As+DbS990Mg46pp1xM/yvme+51xZDTfTfJZA==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/credential-provider-node": "3.758.0",
- "@aws-sdk/middleware-host-header": "3.734.0",
- "@aws-sdk/middleware-logger": "3.734.0",
- "@aws-sdk/middleware-recursion-detection": "3.734.0",
- "@aws-sdk/middleware-user-agent": "3.758.0",
- "@aws-sdk/region-config-resolver": "3.734.0",
- "@aws-sdk/types": "3.734.0",
- "@aws-sdk/util-endpoints": "3.743.0",
- "@aws-sdk/util-user-agent-browser": "3.734.0",
- "@aws-sdk/util-user-agent-node": "3.758.0",
- "@smithy/config-resolver": "^4.0.1",
- "@smithy/core": "^3.1.5",
- "@smithy/fetch-http-handler": "^5.0.1",
- "@smithy/hash-node": "^4.0.1",
- "@smithy/invalid-dependency": "^4.0.1",
- "@smithy/middleware-content-length": "^4.0.1",
- "@smithy/middleware-endpoint": "^4.0.6",
- "@smithy/middleware-retry": "^4.0.7",
- "@smithy/middleware-serde": "^4.0.2",
- "@smithy/middleware-stack": "^4.0.1",
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/node-http-handler": "^4.0.3",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/smithy-client": "^4.1.6",
- "@smithy/types": "^4.1.0",
- "@smithy/url-parser": "^4.0.1",
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/credential-provider-node": "3.787.0",
+ "@aws-sdk/middleware-host-header": "3.775.0",
+ "@aws-sdk/middleware-logger": "3.775.0",
+ "@aws-sdk/middleware-recursion-detection": "3.775.0",
+ "@aws-sdk/middleware-user-agent": "3.787.0",
+ "@aws-sdk/region-config-resolver": "3.775.0",
+ "@aws-sdk/types": "3.775.0",
+ "@aws-sdk/util-endpoints": "3.787.0",
+ "@aws-sdk/util-user-agent-browser": "3.775.0",
+ "@aws-sdk/util-user-agent-node": "3.787.0",
+ "@smithy/config-resolver": "^4.1.0",
+ "@smithy/core": "^3.2.0",
+ "@smithy/fetch-http-handler": "^5.0.2",
+ "@smithy/hash-node": "^4.0.2",
+ "@smithy/invalid-dependency": "^4.0.2",
+ "@smithy/middleware-content-length": "^4.0.2",
+ "@smithy/middleware-endpoint": "^4.1.0",
+ "@smithy/middleware-retry": "^4.1.0",
+ "@smithy/middleware-serde": "^4.0.3",
+ "@smithy/middleware-stack": "^4.0.2",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/node-http-handler": "^4.0.4",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/smithy-client": "^4.2.0",
+ "@smithy/types": "^4.2.0",
+ "@smithy/url-parser": "^4.0.2",
"@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0",
- "@smithy/util-defaults-mode-browser": "^4.0.7",
- "@smithy/util-defaults-mode-node": "^4.0.7",
- "@smithy/util-endpoints": "^3.0.1",
- "@smithy/util-middleware": "^4.0.1",
- "@smithy/util-retry": "^4.0.1",
+ "@smithy/util-defaults-mode-browser": "^4.0.8",
+ "@smithy/util-defaults-mode-node": "^4.0.8",
+ "@smithy/util-endpoints": "^3.0.2",
+ "@smithy/util-middleware": "^4.0.2",
+ "@smithy/util-retry": "^4.0.2",
"@smithy/util-utf8": "^4.0.0",
"tslib": "^2.6.2"
},
@@ -691,50 +711,50 @@
}
},
"node_modules/@aws-sdk/client-sagemaker": {
- "version": "3.760.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sagemaker/-/client-sagemaker-3.760.0.tgz",
- "integrity": "sha512-j8eUcrPcC6NrcJeMOy+AFnFJJXtJSy5P7+4JXsWcJKjXgdxQjDva1OQpgxweyMS4rDSDfIme3+gVxJKsjXuL7A==",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sagemaker/-/client-sagemaker-3.787.0.tgz",
+ "integrity": "sha512-uHmF6MiMus+OjFfVnkYs46CkExjUp6kZGB/gFjwiq5IU+DGnkIlmfbOlRuIlLflqPuADPcbiTiNi4IjluHGqVA==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/credential-provider-node": "3.758.0",
- "@aws-sdk/middleware-host-header": "3.734.0",
- "@aws-sdk/middleware-logger": "3.734.0",
- "@aws-sdk/middleware-recursion-detection": "3.734.0",
- "@aws-sdk/middleware-user-agent": "3.758.0",
- "@aws-sdk/region-config-resolver": "3.734.0",
- "@aws-sdk/types": "3.734.0",
- "@aws-sdk/util-endpoints": "3.743.0",
- "@aws-sdk/util-user-agent-browser": "3.734.0",
- "@aws-sdk/util-user-agent-node": "3.758.0",
- "@smithy/config-resolver": "^4.0.1",
- "@smithy/core": "^3.1.5",
- "@smithy/fetch-http-handler": "^5.0.1",
- "@smithy/hash-node": "^4.0.1",
- "@smithy/invalid-dependency": "^4.0.1",
- "@smithy/middleware-content-length": "^4.0.1",
- "@smithy/middleware-endpoint": "^4.0.6",
- "@smithy/middleware-retry": "^4.0.7",
- "@smithy/middleware-serde": "^4.0.2",
- "@smithy/middleware-stack": "^4.0.1",
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/node-http-handler": "^4.0.3",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/smithy-client": "^4.1.6",
- "@smithy/types": "^4.1.0",
- "@smithy/url-parser": "^4.0.1",
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/credential-provider-node": "3.787.0",
+ "@aws-sdk/middleware-host-header": "3.775.0",
+ "@aws-sdk/middleware-logger": "3.775.0",
+ "@aws-sdk/middleware-recursion-detection": "3.775.0",
+ "@aws-sdk/middleware-user-agent": "3.787.0",
+ "@aws-sdk/region-config-resolver": "3.775.0",
+ "@aws-sdk/types": "3.775.0",
+ "@aws-sdk/util-endpoints": "3.787.0",
+ "@aws-sdk/util-user-agent-browser": "3.775.0",
+ "@aws-sdk/util-user-agent-node": "3.787.0",
+ "@smithy/config-resolver": "^4.1.0",
+ "@smithy/core": "^3.2.0",
+ "@smithy/fetch-http-handler": "^5.0.2",
+ "@smithy/hash-node": "^4.0.2",
+ "@smithy/invalid-dependency": "^4.0.2",
+ "@smithy/middleware-content-length": "^4.0.2",
+ "@smithy/middleware-endpoint": "^4.1.0",
+ "@smithy/middleware-retry": "^4.1.0",
+ "@smithy/middleware-serde": "^4.0.3",
+ "@smithy/middleware-stack": "^4.0.2",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/node-http-handler": "^4.0.4",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/smithy-client": "^4.2.0",
+ "@smithy/types": "^4.2.0",
+ "@smithy/url-parser": "^4.0.2",
"@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0",
- "@smithy/util-defaults-mode-browser": "^4.0.7",
- "@smithy/util-defaults-mode-node": "^4.0.7",
- "@smithy/util-endpoints": "^3.0.1",
- "@smithy/util-middleware": "^4.0.1",
- "@smithy/util-retry": "^4.0.1",
+ "@smithy/util-defaults-mode-browser": "^4.0.8",
+ "@smithy/util-defaults-mode-node": "^4.0.8",
+ "@smithy/util-endpoints": "^3.0.2",
+ "@smithy/util-middleware": "^4.0.2",
+ "@smithy/util-retry": "^4.0.2",
"@smithy/util-utf8": "^4.0.0",
- "@smithy/util-waiter": "^4.0.2",
+ "@smithy/util-waiter": "^4.0.3",
"@types/uuid": "^9.0.1",
"tslib": "^2.6.2",
"uuid": "^9.0.1"
@@ -763,47 +783,47 @@
}
},
"node_modules/@aws-sdk/client-sso": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.758.0.tgz",
- "integrity": "sha512-BoGO6IIWrLyLxQG6txJw6RT2urmbtlwfggapNCrNPyYjlXpzTSJhBYjndg7TpDATFd0SXL0zm8y/tXsUXNkdYQ==",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.787.0.tgz",
+ "integrity": "sha512-L8R+Mh258G0DC73ktpSVrG4TT9i2vmDLecARTDR/4q5sRivdDQSL5bUp3LKcK80Bx+FRw3UETIlX6mYMLL9PJQ==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/middleware-host-header": "3.734.0",
- "@aws-sdk/middleware-logger": "3.734.0",
- "@aws-sdk/middleware-recursion-detection": "3.734.0",
- "@aws-sdk/middleware-user-agent": "3.758.0",
- "@aws-sdk/region-config-resolver": "3.734.0",
- "@aws-sdk/types": "3.734.0",
- "@aws-sdk/util-endpoints": "3.743.0",
- "@aws-sdk/util-user-agent-browser": "3.734.0",
- "@aws-sdk/util-user-agent-node": "3.758.0",
- "@smithy/config-resolver": "^4.0.1",
- "@smithy/core": "^3.1.5",
- "@smithy/fetch-http-handler": "^5.0.1",
- "@smithy/hash-node": "^4.0.1",
- "@smithy/invalid-dependency": "^4.0.1",
- "@smithy/middleware-content-length": "^4.0.1",
- "@smithy/middleware-endpoint": "^4.0.6",
- "@smithy/middleware-retry": "^4.0.7",
- "@smithy/middleware-serde": "^4.0.2",
- "@smithy/middleware-stack": "^4.0.1",
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/node-http-handler": "^4.0.3",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/smithy-client": "^4.1.6",
- "@smithy/types": "^4.1.0",
- "@smithy/url-parser": "^4.0.1",
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/middleware-host-header": "3.775.0",
+ "@aws-sdk/middleware-logger": "3.775.0",
+ "@aws-sdk/middleware-recursion-detection": "3.775.0",
+ "@aws-sdk/middleware-user-agent": "3.787.0",
+ "@aws-sdk/region-config-resolver": "3.775.0",
+ "@aws-sdk/types": "3.775.0",
+ "@aws-sdk/util-endpoints": "3.787.0",
+ "@aws-sdk/util-user-agent-browser": "3.775.0",
+ "@aws-sdk/util-user-agent-node": "3.787.0",
+ "@smithy/config-resolver": "^4.1.0",
+ "@smithy/core": "^3.2.0",
+ "@smithy/fetch-http-handler": "^5.0.2",
+ "@smithy/hash-node": "^4.0.2",
+ "@smithy/invalid-dependency": "^4.0.2",
+ "@smithy/middleware-content-length": "^4.0.2",
+ "@smithy/middleware-endpoint": "^4.1.0",
+ "@smithy/middleware-retry": "^4.1.0",
+ "@smithy/middleware-serde": "^4.0.3",
+ "@smithy/middleware-stack": "^4.0.2",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/node-http-handler": "^4.0.4",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/smithy-client": "^4.2.0",
+ "@smithy/types": "^4.2.0",
+ "@smithy/url-parser": "^4.0.2",
"@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0",
- "@smithy/util-defaults-mode-browser": "^4.0.7",
- "@smithy/util-defaults-mode-node": "^4.0.7",
- "@smithy/util-endpoints": "^3.0.1",
- "@smithy/util-middleware": "^4.0.1",
- "@smithy/util-retry": "^4.0.1",
+ "@smithy/util-defaults-mode-browser": "^4.0.8",
+ "@smithy/util-defaults-mode-node": "^4.0.8",
+ "@smithy/util-endpoints": "^3.0.2",
+ "@smithy/util-middleware": "^4.0.2",
+ "@smithy/util-retry": "^4.0.2",
"@smithy/util-utf8": "^4.0.0",
"tslib": "^2.6.2"
},
@@ -812,20 +832,20 @@
}
},
"node_modules/@aws-sdk/core": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.758.0.tgz",
- "integrity": "sha512-0RswbdR9jt/XKemaLNuxi2gGr4xGlHyGxkTdhSQzCyUe9A9OPCoLl3rIESRguQEech+oJnbHk/wuiwHqTuP9sg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@aws-sdk/types": "3.734.0",
- "@smithy/core": "^3.1.5",
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/signature-v4": "^5.0.1",
- "@smithy/smithy-client": "^4.1.6",
- "@smithy/types": "^4.1.0",
- "@smithy/util-middleware": "^4.0.1",
+ "version": "3.775.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.775.0.tgz",
+ "integrity": "sha512-8vpW4WihVfz0DX+7WnnLGm3GuQER++b0IwQG35JlQMlgqnc44M//KbJPsIHA0aJUJVwJAEShgfr5dUbY8WUzaA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/core": "^3.2.0",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/signature-v4": "^5.0.2",
+ "@smithy/smithy-client": "^4.2.0",
+ "@smithy/types": "^4.2.0",
+ "@smithy/util-middleware": "^4.0.2",
"fast-xml-parser": "4.4.1",
"tslib": "^2.6.2"
},
@@ -868,15 +888,15 @@
"license": "MIT"
},
"node_modules/@aws-sdk/credential-provider-cognito-identity": {
- "version": "3.768.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.768.0.tgz",
- "integrity": "sha512-nNBN+lb2N8Odi0abHln60HqA4z0+UsBw8j7XU+ElEi5E2qOBCJSkLIFDIcYfn+j88FP2oLiQlOPe7H8pav5ayQ==",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.787.0.tgz",
+ "integrity": "sha512-nF5XjgvZHFuyttOeTjMgfEsg6slZPQ6uI34yzq12Kq4icFgcD4bQsijnQClMN7A0u5qR8Ad8kume4b7+I2++Ig==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/client-cognito-identity": "3.768.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/client-cognito-identity": "3.787.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -884,15 +904,15 @@
}
},
"node_modules/@aws-sdk/credential-provider-env": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.758.0.tgz",
- "integrity": "sha512-N27eFoRrO6MeUNumtNHDW9WOiwfd59LPXPqDrIa3kWL/s+fOKFHb9xIcF++bAwtcZnAxKkgpDCUP+INNZskE+w==",
+ "version": "3.775.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.775.0.tgz",
+ "integrity": "sha512-6ESVxwCbGm7WZ17kY1fjmxQud43vzJFoLd4bmlR+idQSWdqlzGDYdcfzpjDKTcivdtNrVYmFvcH1JBUwCRAZhw==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -900,20 +920,20 @@
}
},
"node_modules/@aws-sdk/credential-provider-http": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.758.0.tgz",
- "integrity": "sha512-Xt9/U8qUCiw1hihztWkNeIR+arg6P+yda10OuCHX6kFVx3auTlU7+hCqs3UxqniGU4dguHuftf3mRpi5/GJ33Q==",
- "license": "Apache-2.0",
- "dependencies": {
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/fetch-http-handler": "^5.0.1",
- "@smithy/node-http-handler": "^4.0.3",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/smithy-client": "^4.1.6",
- "@smithy/types": "^4.1.0",
- "@smithy/util-stream": "^4.1.2",
+ "version": "3.775.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.775.0.tgz",
+ "integrity": "sha512-PjDQeDH/J1S0yWV32wCj2k5liRo0ssXMseCBEkCsD3SqsU8o5cU82b0hMX4sAib/RkglCSZqGO0xMiN0/7ndww==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/fetch-http-handler": "^5.0.2",
+ "@smithy/node-http-handler": "^4.0.4",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/smithy-client": "^4.2.0",
+ "@smithy/types": "^4.2.0",
+ "@smithy/util-stream": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -921,23 +941,23 @@
}
},
"node_modules/@aws-sdk/credential-provider-ini": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.758.0.tgz",
- "integrity": "sha512-cymSKMcP5d+OsgetoIZ5QCe1wnp2Q/tq+uIxVdh9MbfdBBEnl9Ecq6dH6VlYS89sp4QKuxHxkWXVnbXU3Q19Aw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/credential-provider-env": "3.758.0",
- "@aws-sdk/credential-provider-http": "3.758.0",
- "@aws-sdk/credential-provider-process": "3.758.0",
- "@aws-sdk/credential-provider-sso": "3.758.0",
- "@aws-sdk/credential-provider-web-identity": "3.758.0",
- "@aws-sdk/nested-clients": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/credential-provider-imds": "^4.0.1",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/shared-ini-file-loader": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.787.0.tgz",
+ "integrity": "sha512-hc2taRoDlXn2uuNuHWDJljVWYrp3r9JF1a/8XmOAZhVUNY+ImeeStylHXhXXKEA4JOjW+5PdJj0f1UDkVCHJiQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/credential-provider-env": "3.775.0",
+ "@aws-sdk/credential-provider-http": "3.775.0",
+ "@aws-sdk/credential-provider-process": "3.775.0",
+ "@aws-sdk/credential-provider-sso": "3.787.0",
+ "@aws-sdk/credential-provider-web-identity": "3.787.0",
+ "@aws-sdk/nested-clients": "3.787.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/credential-provider-imds": "^4.0.2",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/shared-ini-file-loader": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -945,22 +965,22 @@
}
},
"node_modules/@aws-sdk/credential-provider-node": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.758.0.tgz",
- "integrity": "sha512-+DaMv63wiq7pJrhIQzZYMn4hSarKiizDoJRvyR7WGhnn0oQ/getX9Z0VNCV3i7lIFoLNTb7WMmQ9k7+z/uD5EQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@aws-sdk/credential-provider-env": "3.758.0",
- "@aws-sdk/credential-provider-http": "3.758.0",
- "@aws-sdk/credential-provider-ini": "3.758.0",
- "@aws-sdk/credential-provider-process": "3.758.0",
- "@aws-sdk/credential-provider-sso": "3.758.0",
- "@aws-sdk/credential-provider-web-identity": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/credential-provider-imds": "^4.0.1",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/shared-ini-file-loader": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.787.0.tgz",
+ "integrity": "sha512-JioVi44B1vDMaK2CdzqimwvJD3uzvzbQhaEWXsGMBcMcNHajXAXf08EF50JG3ZhLrhhUsT1ObXpbTaPINOhh+g==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/credential-provider-env": "3.775.0",
+ "@aws-sdk/credential-provider-http": "3.775.0",
+ "@aws-sdk/credential-provider-ini": "3.787.0",
+ "@aws-sdk/credential-provider-process": "3.775.0",
+ "@aws-sdk/credential-provider-sso": "3.787.0",
+ "@aws-sdk/credential-provider-web-identity": "3.787.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/credential-provider-imds": "^4.0.2",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/shared-ini-file-loader": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -968,16 +988,16 @@
}
},
"node_modules/@aws-sdk/credential-provider-process": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.758.0.tgz",
- "integrity": "sha512-AzcY74QTPqcbXWVgjpPZ3HOmxQZYPROIBz2YINF0OQk0MhezDWV/O7Xec+K1+MPGQO3qS6EDrUUlnPLjsqieHA==",
+ "version": "3.775.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.775.0.tgz",
+ "integrity": "sha512-A6k68H9rQp+2+7P7SGO90Csw6nrUEm0Qfjpn9Etc4EboZhhCLs9b66umUsTsSBHus4FDIe5JQxfCUyt1wgNogg==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/shared-ini-file-loader": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/shared-ini-file-loader": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -985,18 +1005,18 @@
}
},
"node_modules/@aws-sdk/credential-provider-sso": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.758.0.tgz",
- "integrity": "sha512-x0FYJqcOLUCv8GLLFDYMXRAQKGjoM+L0BG4BiHYZRDf24yQWFCAZsCQAYKo6XZYh2qznbsW6f//qpyJ5b0QVKQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@aws-sdk/client-sso": "3.758.0",
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/token-providers": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/shared-ini-file-loader": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.787.0.tgz",
+ "integrity": "sha512-fHc08bsvwm4+dEMEQKnQ7c1irEQmmxbgS+Fq41y09pPvPh31nAhoMcjBSTWAaPHvvsRbTYvmP4Mf12ZGr8/nfg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/client-sso": "3.787.0",
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/token-providers": "3.787.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/shared-ini-file-loader": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -1004,16 +1024,16 @@
}
},
"node_modules/@aws-sdk/credential-provider-web-identity": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.758.0.tgz",
- "integrity": "sha512-XGguXhBqiCXMXRxcfCAVPlMbm3VyJTou79r/3mxWddHWF0XbhaQiBIbUz6vobVTD25YQRbWSmSch7VA8kI5Lrw==",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.787.0.tgz",
+ "integrity": "sha512-SobmCwNbk6TfEsF283mZPQEI5vV2j6eY5tOCj8Er4Lzraxu9fBPADV+Bib2A8F6jlB1lMPJzOuDCbEasSt/RIw==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/nested-clients": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/nested-clients": "3.787.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -1021,27 +1041,29 @@
}
},
"node_modules/@aws-sdk/credential-providers": {
- "version": "3.768.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.768.0.tgz",
- "integrity": "sha512-uEAtcdHArZxq7dbpgI4ofDclefNYnYWrT9bJn2Q6rf7VlQnoD37ptzVLQBLomXnRaBiQB/sRV2MJaugFqwOEQA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@aws-sdk/client-cognito-identity": "3.768.0",
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/credential-provider-cognito-identity": "3.768.0",
- "@aws-sdk/credential-provider-env": "3.758.0",
- "@aws-sdk/credential-provider-http": "3.758.0",
- "@aws-sdk/credential-provider-ini": "3.758.0",
- "@aws-sdk/credential-provider-node": "3.758.0",
- "@aws-sdk/credential-provider-process": "3.758.0",
- "@aws-sdk/credential-provider-sso": "3.758.0",
- "@aws-sdk/credential-provider-web-identity": "3.758.0",
- "@aws-sdk/nested-clients": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/core": "^3.1.5",
- "@smithy/credential-provider-imds": "^4.0.1",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.787.0.tgz",
+ "integrity": "sha512-kR3RtI7drOc9pho13vWbUC2Bvrx9A0G4iizBDGmTs08NOdg4w3c1I4kdLG9tyPiIMeVnH+wYrsli5CM7xIfqiA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-sdk/client-cognito-identity": "3.787.0",
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/credential-provider-cognito-identity": "3.787.0",
+ "@aws-sdk/credential-provider-env": "3.775.0",
+ "@aws-sdk/credential-provider-http": "3.775.0",
+ "@aws-sdk/credential-provider-ini": "3.787.0",
+ "@aws-sdk/credential-provider-node": "3.787.0",
+ "@aws-sdk/credential-provider-process": "3.775.0",
+ "@aws-sdk/credential-provider-sso": "3.787.0",
+ "@aws-sdk/credential-provider-web-identity": "3.787.0",
+ "@aws-sdk/nested-clients": "3.787.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/config-resolver": "^4.1.0",
+ "@smithy/core": "^3.2.0",
+ "@smithy/credential-provider-imds": "^4.0.2",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -1049,14 +1071,14 @@
}
},
"node_modules/@aws-sdk/middleware-host-header": {
- "version": "3.734.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.734.0.tgz",
- "integrity": "sha512-LW7RRgSOHHBzWZnigNsDIzu3AiwtjeI2X66v+Wn1P1u+eXssy1+up4ZY/h+t2sU4LU36UvEf+jrZti9c6vRnFw==",
+ "version": "3.775.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.775.0.tgz",
+ "integrity": "sha512-tkSegM0Z6WMXpLB8oPys/d+umYIocvO298mGvcMCncpRl77L9XkvSLJIFzaHes+o7djAgIduYw8wKIMStFss2w==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.734.0",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -1064,13 +1086,13 @@
}
},
"node_modules/@aws-sdk/middleware-logger": {
- "version": "3.734.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.734.0.tgz",
- "integrity": "sha512-mUMFITpJUW3LcKvFok176eI5zXAUomVtahb9IQBwLzkqFYOrMJvWAvoV4yuxrJ8TlQBG8gyEnkb9SnhZvjg67w==",
+ "version": "3.775.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.775.0.tgz",
+ "integrity": "sha512-FaxO1xom4MAoUJsldmR92nT1G6uZxTdNYOFYtdHfd6N2wcNaTuxgjIvqzg5y7QIH9kn58XX/dzf1iTjgqUStZw==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.734.0",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -1078,14 +1100,14 @@
}
},
"node_modules/@aws-sdk/middleware-recursion-detection": {
- "version": "3.734.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.734.0.tgz",
- "integrity": "sha512-CUat2d9ITsFc2XsmeiRQO96iWpxSKYFjxvj27Hc7vo87YUHRnfMfnc8jw1EpxEwMcvBD7LsRa6vDNky6AjcrFA==",
+ "version": "3.775.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.775.0.tgz",
+ "integrity": "sha512-GLCzC8D0A0YDG5u3F5U03Vb9j5tcOEFhr8oc6PDk0k0vm5VwtZOE6LvK7hcCSoAB4HXyOUM0sQuXrbaAh9OwXA==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.734.0",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -1093,17 +1115,17 @@
}
},
"node_modules/@aws-sdk/middleware-user-agent": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.758.0.tgz",
- "integrity": "sha512-iNyehQXtQlj69JCgfaOssgZD4HeYGOwxcaKeG6F+40cwBjTAi0+Ph1yfDwqk2qiBPIRWJ/9l2LodZbxiBqgrwg==",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.787.0.tgz",
+ "integrity": "sha512-Lnfj8SmPLYtrDFthNIaNj66zZsBCam+E4XiUDr55DIHTGstH6qZ/q6vg0GfbukxwSmUcGMwSR4Qbn8rb8yd77g==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@aws-sdk/util-endpoints": "3.743.0",
- "@smithy/core": "^3.1.5",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/types": "3.775.0",
+ "@aws-sdk/util-endpoints": "3.787.0",
+ "@smithy/core": "^3.2.0",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -1111,47 +1133,47 @@
}
},
"node_modules/@aws-sdk/nested-clients": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.758.0.tgz",
- "integrity": "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg==",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.787.0.tgz",
+ "integrity": "sha512-xk03q1xpKNHgbuo+trEf1dFrI239kuMmjKKsqLEsHlAZbuFq4yRGMlHBrVMnKYOPBhVFDS/VineM991XI52fKg==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.758.0",
- "@aws-sdk/middleware-host-header": "3.734.0",
- "@aws-sdk/middleware-logger": "3.734.0",
- "@aws-sdk/middleware-recursion-detection": "3.734.0",
- "@aws-sdk/middleware-user-agent": "3.758.0",
- "@aws-sdk/region-config-resolver": "3.734.0",
- "@aws-sdk/types": "3.734.0",
- "@aws-sdk/util-endpoints": "3.743.0",
- "@aws-sdk/util-user-agent-browser": "3.734.0",
- "@aws-sdk/util-user-agent-node": "3.758.0",
- "@smithy/config-resolver": "^4.0.1",
- "@smithy/core": "^3.1.5",
- "@smithy/fetch-http-handler": "^5.0.1",
- "@smithy/hash-node": "^4.0.1",
- "@smithy/invalid-dependency": "^4.0.1",
- "@smithy/middleware-content-length": "^4.0.1",
- "@smithy/middleware-endpoint": "^4.0.6",
- "@smithy/middleware-retry": "^4.0.7",
- "@smithy/middleware-serde": "^4.0.2",
- "@smithy/middleware-stack": "^4.0.1",
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/node-http-handler": "^4.0.3",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/smithy-client": "^4.1.6",
- "@smithy/types": "^4.1.0",
- "@smithy/url-parser": "^4.0.1",
+ "@aws-sdk/core": "3.775.0",
+ "@aws-sdk/middleware-host-header": "3.775.0",
+ "@aws-sdk/middleware-logger": "3.775.0",
+ "@aws-sdk/middleware-recursion-detection": "3.775.0",
+ "@aws-sdk/middleware-user-agent": "3.787.0",
+ "@aws-sdk/region-config-resolver": "3.775.0",
+ "@aws-sdk/types": "3.775.0",
+ "@aws-sdk/util-endpoints": "3.787.0",
+ "@aws-sdk/util-user-agent-browser": "3.775.0",
+ "@aws-sdk/util-user-agent-node": "3.787.0",
+ "@smithy/config-resolver": "^4.1.0",
+ "@smithy/core": "^3.2.0",
+ "@smithy/fetch-http-handler": "^5.0.2",
+ "@smithy/hash-node": "^4.0.2",
+ "@smithy/invalid-dependency": "^4.0.2",
+ "@smithy/middleware-content-length": "^4.0.2",
+ "@smithy/middleware-endpoint": "^4.1.0",
+ "@smithy/middleware-retry": "^4.1.0",
+ "@smithy/middleware-serde": "^4.0.3",
+ "@smithy/middleware-stack": "^4.0.2",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/node-http-handler": "^4.0.4",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/smithy-client": "^4.2.0",
+ "@smithy/types": "^4.2.0",
+ "@smithy/url-parser": "^4.0.2",
"@smithy/util-base64": "^4.0.0",
"@smithy/util-body-length-browser": "^4.0.0",
"@smithy/util-body-length-node": "^4.0.0",
- "@smithy/util-defaults-mode-browser": "^4.0.7",
- "@smithy/util-defaults-mode-node": "^4.0.7",
- "@smithy/util-endpoints": "^3.0.1",
- "@smithy/util-middleware": "^4.0.1",
- "@smithy/util-retry": "^4.0.1",
+ "@smithy/util-defaults-mode-browser": "^4.0.8",
+ "@smithy/util-defaults-mode-node": "^4.0.8",
+ "@smithy/util-endpoints": "^3.0.2",
+ "@smithy/util-middleware": "^4.0.2",
+ "@smithy/util-retry": "^4.0.2",
"@smithy/util-utf8": "^4.0.0",
"tslib": "^2.6.2"
},
@@ -1199,16 +1221,16 @@
}
},
"node_modules/@aws-sdk/region-config-resolver": {
- "version": "3.734.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.734.0.tgz",
- "integrity": "sha512-Lvj1kPRC5IuJBr9DyJ9T9/plkh+EfKLy+12s/mykOy1JaKHDpvj+XGy2YO6YgYVOb8JFtaqloid+5COtje4JTQ==",
+ "version": "3.775.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.775.0.tgz",
+ "integrity": "sha512-40iH3LJjrQS3LKUJAl7Wj0bln7RFPEvUYKFxtP8a+oKFDO0F65F52xZxIJbPn6sHkxWDAnZlGgdjZXM3p2g5wQ==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.734.0",
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"@smithy/util-config-provider": "^4.0.0",
- "@smithy/util-middleware": "^4.0.1",
+ "@smithy/util-middleware": "^4.0.2",
"tslib": "^2.6.2"
},
"engines": {
@@ -1335,16 +1357,16 @@
}
},
"node_modules/@aws-sdk/token-providers": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.758.0.tgz",
- "integrity": "sha512-ckptN1tNrIfQUaGWm/ayW1ddG+imbKN7HHhjFdS4VfItsP0QQOB0+Ov+tpgb4MoNR4JaUghMIVStjIeHN2ks1w==",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.787.0.tgz",
+ "integrity": "sha512-d7/NIqxq308Zg0RPMNrmn0QvzniL4Hx8Qdwzr6YZWLYAbUSvZYS2ppLR3BFWSkV6SsTJUx8BuDaj3P8vttkrog==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/nested-clients": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/shared-ini-file-loader": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/nested-clients": "3.787.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/shared-ini-file-loader": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -1352,12 +1374,12 @@
}
},
"node_modules/@aws-sdk/types": {
- "version": "3.734.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.734.0.tgz",
- "integrity": "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg==",
+ "version": "3.775.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz",
+ "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -1365,14 +1387,14 @@
}
},
"node_modules/@aws-sdk/util-endpoints": {
- "version": "3.743.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.743.0.tgz",
- "integrity": "sha512-sN1l559zrixeh5x+pttrnd0A3+r34r0tmPkJ/eaaMaAzXqsmKU/xYre9K3FNnsSS1J1k4PEfk/nHDTVUgFYjnw==",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.787.0.tgz",
+ "integrity": "sha512-fd3zkiOkwnbdbN0Xp9TsP5SWrmv0SpT70YEdbb8wAj2DWQwiCmFszaSs+YCvhoCdmlR3Wl9Spu0pGpSAGKeYvQ==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.734.0",
- "@smithy/types": "^4.1.0",
- "@smithy/util-endpoints": "^3.0.1",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/types": "^4.2.0",
+ "@smithy/util-endpoints": "^3.0.2",
"tslib": "^2.6.2"
},
"engines": {
@@ -1392,27 +1414,27 @@
}
},
"node_modules/@aws-sdk/util-user-agent-browser": {
- "version": "3.734.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.734.0.tgz",
- "integrity": "sha512-xQTCus6Q9LwUuALW+S76OL0jcWtMOVu14q+GoLnWPUM7QeUw963oQcLhF7oq0CtaLLKyl4GOUfcwc773Zmwwng==",
+ "version": "3.775.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.775.0.tgz",
+ "integrity": "sha512-txw2wkiJmZKVdDbscK7VBK+u+TJnRtlUjRTLei+elZg2ADhpQxfVAQl436FUeIv6AhB/oRHW6/K/EAGXUSWi0A==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.734.0",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/types": "^4.2.0",
"bowser": "^2.11.0",
"tslib": "^2.6.2"
}
},
"node_modules/@aws-sdk/util-user-agent-node": {
- "version": "3.758.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.758.0.tgz",
- "integrity": "sha512-A5EZw85V6WhoKMV2hbuFRvb9NPlxEErb4HPO6/SPXYY4QrjprIzScHxikqcWv1w4J3apB1wto9LPU3IMsYtfrw==",
+ "version": "3.787.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.787.0.tgz",
+ "integrity": "sha512-mG7Lz8ydfG4SF9e8WSXiPQ/Lsn3n8A5B5jtPROidafi06I3ckV2WxyMLdwG14m919NoS6IOfWHyRGSqWIwbVKA==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/middleware-user-agent": "3.758.0",
- "@aws-sdk/types": "3.734.0",
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@aws-sdk/middleware-user-agent": "3.787.0",
+ "@aws-sdk/types": "3.775.0",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -1591,9 +1613,9 @@
}
},
"node_modules/@azure/storage-blob": {
- "version": "12.26.0",
- "resolved": "https://registry.npmjs.org/@azure/storage-blob/-/storage-blob-12.26.0.tgz",
- "integrity": "sha512-SriLPKezypIsiZ+TtlFfE46uuBIap2HeaQVS78e1P7rz5OSbq0rsd52WE1mC5f7vAeLiXqv7I7oRhL3WFZEw3Q==",
+ "version": "12.27.0",
+ "resolved": "https://registry.npmjs.org/@azure/storage-blob/-/storage-blob-12.27.0.tgz",
+ "integrity": "sha512-IQjj9RIzAKatmNca3D6bT0qJ+Pkox1WZGOg2esJF2YLHb45pQKOwGPIAV+w3rfgkj7zV3RMxpn/c6iftzSOZJQ==",
"license": "MIT",
"dependencies": {
"@azure/abort-controller": "^2.1.2",
@@ -1668,13 +1690,13 @@
}
},
"node_modules/@babel/generator": {
- "version": "7.26.10",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.10.tgz",
- "integrity": "sha512-rRHT8siFIXQrAYOYqZQVsAr8vJ+cBNqcVAY6m5V8/4QqzaPl+zDBe6cLEPRDuNOUf3ww8RfJVlOyQMoSI+5Ang==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz",
+ "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==",
"license": "MIT",
"dependencies": {
- "@babel/parser": "^7.26.10",
- "@babel/types": "^7.26.10",
+ "@babel/parser": "^7.27.0",
+ "@babel/types": "^7.27.0",
"@jridgewell/gen-mapping": "^0.3.5",
"@jridgewell/trace-mapping": "^0.3.25",
"jsesc": "^3.0.2"
@@ -1696,12 +1718,12 @@
}
},
"node_modules/@babel/helper-compilation-targets": {
- "version": "7.26.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz",
- "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.0.tgz",
+ "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==",
"license": "MIT",
"dependencies": {
- "@babel/compat-data": "^7.26.5",
+ "@babel/compat-data": "^7.26.8",
"@babel/helper-validator-option": "^7.25.9",
"browserslist": "^4.24.0",
"lru-cache": "^5.1.1",
@@ -1712,9 +1734,9 @@
}
},
"node_modules/@babel/helper-create-class-features-plugin": {
- "version": "7.26.9",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.26.9.tgz",
- "integrity": "sha512-ubbUqCofvxPRurw5L8WTsCLSkQiVpov4Qx0WMA+jUN+nXBK8ADPlJO1grkFw5CWKC5+sZSOfuGMdX1aI1iT9Sg==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.0.tgz",
+ "integrity": "sha512-vSGCvMecvFCd/BdpGlhpXYNhhC4ccxyvQWpbGL4CWbvfEoLFWUZuSuf7s9Aw70flgQF+6vptvgK2IfOnKlRmBg==",
"license": "MIT",
"dependencies": {
"@babel/helper-annotate-as-pure": "^7.25.9",
@@ -1722,7 +1744,7 @@
"@babel/helper-optimise-call-expression": "^7.25.9",
"@babel/helper-replace-supers": "^7.26.5",
"@babel/helper-skip-transparent-expression-wrappers": "^7.25.9",
- "@babel/traverse": "^7.26.9",
+ "@babel/traverse": "^7.27.0",
"semver": "^6.3.1"
},
"engines": {
@@ -1733,9 +1755,9 @@
}
},
"node_modules/@babel/helper-create-regexp-features-plugin": {
- "version": "7.26.3",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.26.3.tgz",
- "integrity": "sha512-G7ZRb40uUgdKOQqPLjfD12ZmGA54PzqDFUv2BKImnC9QIfGhIHKvVML0oN8IUiDq4iRqpq74ABpvOaerfWdong==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.27.0.tgz",
+ "integrity": "sha512-fO8l08T76v48BhpNRW/nQ0MxfnSdoSKUJBMjubOAYffsVuGG5qOfMq7N6Es7UJvi7Y8goXXo07EfcHZXDPuELQ==",
"license": "MIT",
"dependencies": {
"@babel/helper-annotate-as-pure": "^7.25.9",
@@ -1750,9 +1772,9 @@
}
},
"node_modules/@babel/helper-define-polyfill-provider": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.3.tgz",
- "integrity": "sha512-HK7Bi+Hj6H+VTHA3ZvBis7V/6hu9QuTrnMXNybfUf2iiuU/N97I8VjB+KbhFF8Rld/Lx5MzoCwPCpPjfK+n8Cg==",
+ "version": "0.6.4",
+ "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.4.tgz",
+ "integrity": "sha512-jljfR1rGnXXNWnmQg2K3+bvhkxB51Rl32QRaOTuwwjviGrHzIbSc8+x9CpraDtbT7mfyjXObULP4w/adunNwAw==",
"license": "MIT",
"dependencies": {
"@babel/helper-compilation-targets": "^7.22.6",
@@ -1918,25 +1940,25 @@
}
},
"node_modules/@babel/helpers": {
- "version": "7.26.10",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.10.tgz",
- "integrity": "sha512-UPYc3SauzZ3JGgj87GgZ89JVdC5dj0AoetR5Bw6wj4niittNyFh6+eOGonYvJ1ao6B8lEa3Q3klS7ADZ53bc5g==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz",
+ "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==",
"license": "MIT",
"dependencies": {
- "@babel/template": "^7.26.9",
- "@babel/types": "^7.26.10"
+ "@babel/template": "^7.27.0",
+ "@babel/types": "^7.27.0"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/parser": {
- "version": "7.26.10",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.10.tgz",
- "integrity": "sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz",
+ "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==",
"license": "MIT",
"dependencies": {
- "@babel/types": "^7.26.10"
+ "@babel/types": "^7.27.0"
},
"bin": {
"parser": "bin/babel-parser.js"
@@ -2162,12 +2184,12 @@
}
},
"node_modules/@babel/plugin-transform-block-scoping": {
- "version": "7.25.9",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.9.tgz",
- "integrity": "sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.27.0.tgz",
+ "integrity": "sha512-u1jGphZ8uDI2Pj/HJj6YQ6XQLZCNjOlprjxB5SVz6rq2T6SwAR+CdrWK0CP7F+9rDVMXdB0+r6Am5G5aobOjAQ==",
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.25.9"
+ "@babel/helper-plugin-utils": "^7.26.5"
},
"engines": {
"node": ">=6.9.0"
@@ -2773,12 +2795,12 @@
}
},
"node_modules/@babel/plugin-transform-regenerator": {
- "version": "7.25.9",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.9.tgz",
- "integrity": "sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.27.0.tgz",
+ "integrity": "sha512-LX/vCajUJQDqE7Aum/ELUMZAY19+cDpghxrnyt5I1tV6X5PyC86AOoWXWFYFeIvauyeSA6/ktn4tQVn/3ZifsA==",
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.25.9",
+ "@babel/helper-plugin-utils": "^7.26.5",
"regenerator-transform": "^0.15.2"
},
"engines": {
@@ -2881,9 +2903,9 @@
}
},
"node_modules/@babel/plugin-transform-typeof-symbol": {
- "version": "7.26.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.26.7.tgz",
- "integrity": "sha512-jfoTXXZTgGg36BmhqT3cAYK5qkmqvJpvNrPhaK/52Vgjhw4Rq29s9UqpWWV0D6yuRmgiFH/BUVlkl96zJWqnaw==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.0.tgz",
+ "integrity": "sha512-+LLkxA9rKJpNoGsbLnAgOCdESl73vwYn+V6b+5wHbrE7OGKVDPHIQvbFSzqE6rwqaCw2RE+zdJrlLkcf8YOA0w==",
"license": "MIT",
"dependencies": {
"@babel/helper-plugin-utils": "^7.26.5"
@@ -3076,9 +3098,9 @@
}
},
"node_modules/@babel/runtime": {
- "version": "7.26.10",
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.10.tgz",
- "integrity": "sha512-2WJMeRQPHKSPemqk/awGrAiuFfzBmOIPXKizAsVhWH9YJqLZ0H+HS4c8loHGgW6utJ3E/ejXQUsiGaQy2NZ9Fw==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.27.0.tgz",
+ "integrity": "sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==",
"license": "MIT",
"dependencies": {
"regenerator-runtime": "^0.14.0"
@@ -3088,9 +3110,9 @@
}
},
"node_modules/@babel/runtime-corejs3": {
- "version": "7.26.10",
- "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.26.10.tgz",
- "integrity": "sha512-uITFQYO68pMEYR46AHgQoyBg7KPPJDAbGn4jUTIRgCFJIp88MIBUianVOplhZDEec07bp9zIyr4Kp0FCyQzmWg==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.27.0.tgz",
+ "integrity": "sha512-UWjX6t+v+0ckwZ50Y5ShZLnlk95pP5MyW/pon9tiYzl3+18pkTHTFNTKr7rQbfRXPkowt2QAn30o1b6oswszew==",
"license": "MIT",
"dependencies": {
"core-js-pure": "^3.30.2",
@@ -3101,30 +3123,30 @@
}
},
"node_modules/@babel/template": {
- "version": "7.26.9",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz",
- "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz",
+ "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==",
"license": "MIT",
"dependencies": {
"@babel/code-frame": "^7.26.2",
- "@babel/parser": "^7.26.9",
- "@babel/types": "^7.26.9"
+ "@babel/parser": "^7.27.0",
+ "@babel/types": "^7.27.0"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/traverse": {
- "version": "7.26.10",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.10.tgz",
- "integrity": "sha512-k8NuDrxr0WrPH5Aupqb2LCVURP/S0vBEn5mK6iH+GIYob66U5EtoZvcdudR2jQ4cmTwhEwW1DLB+Yyas9zjF6A==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz",
+ "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==",
"license": "MIT",
"dependencies": {
"@babel/code-frame": "^7.26.2",
- "@babel/generator": "^7.26.10",
- "@babel/parser": "^7.26.10",
- "@babel/template": "^7.26.9",
- "@babel/types": "^7.26.10",
+ "@babel/generator": "^7.27.0",
+ "@babel/parser": "^7.27.0",
+ "@babel/template": "^7.27.0",
+ "@babel/types": "^7.27.0",
"debug": "^4.3.1",
"globals": "^11.1.0"
},
@@ -3142,9 +3164,9 @@
}
},
"node_modules/@babel/types": {
- "version": "7.26.10",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.10.tgz",
- "integrity": "sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz",
+ "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==",
"license": "MIT",
"dependencies": {
"@babel/helper-string-parser": "^7.25.9",
@@ -3566,9 +3588,9 @@
"license": "MIT"
},
"node_modules/@esbuild/aix-ppc64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.1.tgz",
- "integrity": "sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.2.tgz",
+ "integrity": "sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==",
"cpu": [
"ppc64"
],
@@ -3583,9 +3605,9 @@
}
},
"node_modules/@esbuild/android-arm": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.1.tgz",
- "integrity": "sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.2.tgz",
+ "integrity": "sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==",
"cpu": [
"arm"
],
@@ -3600,9 +3622,9 @@
}
},
"node_modules/@esbuild/android-arm64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.1.tgz",
- "integrity": "sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.2.tgz",
+ "integrity": "sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==",
"cpu": [
"arm64"
],
@@ -3617,9 +3639,9 @@
}
},
"node_modules/@esbuild/android-x64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.1.tgz",
- "integrity": "sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.2.tgz",
+ "integrity": "sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==",
"cpu": [
"x64"
],
@@ -3634,9 +3656,9 @@
}
},
"node_modules/@esbuild/darwin-arm64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.1.tgz",
- "integrity": "sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.2.tgz",
+ "integrity": "sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==",
"cpu": [
"arm64"
],
@@ -3651,9 +3673,9 @@
}
},
"node_modules/@esbuild/darwin-x64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.1.tgz",
- "integrity": "sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.2.tgz",
+ "integrity": "sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==",
"cpu": [
"x64"
],
@@ -3668,9 +3690,9 @@
}
},
"node_modules/@esbuild/freebsd-arm64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.1.tgz",
- "integrity": "sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.2.tgz",
+ "integrity": "sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==",
"cpu": [
"arm64"
],
@@ -3685,9 +3707,9 @@
}
},
"node_modules/@esbuild/freebsd-x64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.1.tgz",
- "integrity": "sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.2.tgz",
+ "integrity": "sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==",
"cpu": [
"x64"
],
@@ -3702,9 +3724,9 @@
}
},
"node_modules/@esbuild/linux-arm": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.1.tgz",
- "integrity": "sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.2.tgz",
+ "integrity": "sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==",
"cpu": [
"arm"
],
@@ -3719,9 +3741,9 @@
}
},
"node_modules/@esbuild/linux-arm64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.1.tgz",
- "integrity": "sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.2.tgz",
+ "integrity": "sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==",
"cpu": [
"arm64"
],
@@ -3736,9 +3758,9 @@
}
},
"node_modules/@esbuild/linux-ia32": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.1.tgz",
- "integrity": "sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.2.tgz",
+ "integrity": "sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==",
"cpu": [
"ia32"
],
@@ -3753,9 +3775,9 @@
}
},
"node_modules/@esbuild/linux-loong64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.1.tgz",
- "integrity": "sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.2.tgz",
+ "integrity": "sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==",
"cpu": [
"loong64"
],
@@ -3770,9 +3792,9 @@
}
},
"node_modules/@esbuild/linux-mips64el": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.1.tgz",
- "integrity": "sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.2.tgz",
+ "integrity": "sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==",
"cpu": [
"mips64el"
],
@@ -3787,9 +3809,9 @@
}
},
"node_modules/@esbuild/linux-ppc64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.1.tgz",
- "integrity": "sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.2.tgz",
+ "integrity": "sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==",
"cpu": [
"ppc64"
],
@@ -3804,9 +3826,9 @@
}
},
"node_modules/@esbuild/linux-riscv64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.1.tgz",
- "integrity": "sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.2.tgz",
+ "integrity": "sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==",
"cpu": [
"riscv64"
],
@@ -3821,9 +3843,9 @@
}
},
"node_modules/@esbuild/linux-s390x": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.1.tgz",
- "integrity": "sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.2.tgz",
+ "integrity": "sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==",
"cpu": [
"s390x"
],
@@ -3838,9 +3860,9 @@
}
},
"node_modules/@esbuild/linux-x64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.1.tgz",
- "integrity": "sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.2.tgz",
+ "integrity": "sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==",
"cpu": [
"x64"
],
@@ -3855,9 +3877,9 @@
}
},
"node_modules/@esbuild/netbsd-arm64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.1.tgz",
- "integrity": "sha512-O96poM2XGhLtpTh+s4+nP7YCCAfb4tJNRVZHfIE7dgmax+yMP2WgMd2OecBuaATHKTHsLWHQeuaxMRnCsH8+5g==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.2.tgz",
+ "integrity": "sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==",
"cpu": [
"arm64"
],
@@ -3872,9 +3894,9 @@
}
},
"node_modules/@esbuild/netbsd-x64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.1.tgz",
- "integrity": "sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.2.tgz",
+ "integrity": "sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==",
"cpu": [
"x64"
],
@@ -3889,9 +3911,9 @@
}
},
"node_modules/@esbuild/openbsd-arm64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.1.tgz",
- "integrity": "sha512-Na9T3szbXezdzM/Kfs3GcRQNjHzM6GzFBeU1/6IV/npKP5ORtp9zbQjvkDJ47s6BCgaAZnnnu/cY1x342+MvZg==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.2.tgz",
+ "integrity": "sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==",
"cpu": [
"arm64"
],
@@ -3906,9 +3928,9 @@
}
},
"node_modules/@esbuild/openbsd-x64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.1.tgz",
- "integrity": "sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.2.tgz",
+ "integrity": "sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==",
"cpu": [
"x64"
],
@@ -3923,9 +3945,9 @@
}
},
"node_modules/@esbuild/sunos-x64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.1.tgz",
- "integrity": "sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.2.tgz",
+ "integrity": "sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==",
"cpu": [
"x64"
],
@@ -3940,9 +3962,9 @@
}
},
"node_modules/@esbuild/win32-arm64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.1.tgz",
- "integrity": "sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.2.tgz",
+ "integrity": "sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==",
"cpu": [
"arm64"
],
@@ -3957,9 +3979,9 @@
}
},
"node_modules/@esbuild/win32-ia32": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.1.tgz",
- "integrity": "sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.2.tgz",
+ "integrity": "sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==",
"cpu": [
"ia32"
],
@@ -3974,9 +3996,9 @@
}
},
"node_modules/@esbuild/win32-x64": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.1.tgz",
- "integrity": "sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.2.tgz",
+ "integrity": "sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==",
"cpu": [
"x64"
],
@@ -3991,9 +4013,9 @@
}
},
"node_modules/@eslint-community/eslint-utils": {
- "version": "4.5.1",
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz",
- "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==",
+ "version": "4.6.1",
+ "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.1.tgz",
+ "integrity": "sha512-KTsJMmobmbrFLe3LDh0PC2FXpcSYJt/MLjlkh/9LEnmKYLSYmT/0EW9JWANjeoemiuZrmogti0tW5Ch+qNUYDw==",
"license": "MIT",
"dependencies": {
"eslint-visitor-keys": "^3.4.3"
@@ -4030,9 +4052,9 @@
}
},
"node_modules/@eslint/config-array": {
- "version": "0.19.2",
- "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.2.tgz",
- "integrity": "sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==",
+ "version": "0.20.0",
+ "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz",
+ "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==",
"license": "Apache-2.0",
"dependencies": {
"@eslint/object-schema": "^2.1.6",
@@ -4043,32 +4065,10 @@
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
- "node_modules/@eslint/config-array/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/@eslint/config-array/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/@eslint/config-helpers": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.1.0.tgz",
- "integrity": "sha512-kLrdPDJE1ckPo94kmPPf9Hfd0DU0Jw6oKYrhe+pwSC0iTUInmTa+w6fw8sGgcfkFJGNdWOUeOaDM4quW4a7OkA==",
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.1.tgz",
+ "integrity": "sha512-RI17tsD2frtDu/3dmI7QRrD4bedNKPM08ziRYaC5AhkGrzIAJelm9kJU1TznK+apx6V+cqRz8tfpEeG3oIyjxw==",
"license": "Apache-2.0",
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -4087,9 +4087,9 @@
}
},
"node_modules/@eslint/eslintrc": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.0.tgz",
- "integrity": "sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==",
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz",
+ "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==",
"license": "MIT",
"dependencies": {
"ajv": "^6.12.4",
@@ -4131,16 +4131,6 @@
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"license": "Python-2.0"
},
- "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
"node_modules/@eslint/eslintrc/node_modules/globals": {
"version": "14.0.0",
"resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz",
@@ -4171,22 +4161,10 @@
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
"license": "MIT"
},
- "node_modules/@eslint/eslintrc/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/@eslint/js": {
- "version": "9.22.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.22.0.tgz",
- "integrity": "sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==",
+ "version": "9.24.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.24.0.tgz",
+ "integrity": "sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==",
"license": "MIT",
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -4202,18 +4180,30 @@
}
},
"node_modules/@eslint/plugin-kit": {
- "version": "0.2.7",
- "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.7.tgz",
- "integrity": "sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==",
+ "version": "0.2.8",
+ "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.8.tgz",
+ "integrity": "sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==",
"license": "Apache-2.0",
"dependencies": {
- "@eslint/core": "^0.12.0",
+ "@eslint/core": "^0.13.0",
"levn": "^0.4.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
+ "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": {
+ "version": "0.13.0",
+ "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz",
+ "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@types/json-schema": "^7.0.15"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ }
+ },
"node_modules/@ffmpeg-installer/darwin-arm64": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/@ffmpeg-installer/darwin-arm64/-/darwin-arm64-4.1.5.tgz",
@@ -4390,9 +4380,9 @@
}
},
"node_modules/@floating-ui/react": {
- "version": "0.27.5",
- "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.27.5.tgz",
- "integrity": "sha512-BX3jKxo39Ba05pflcQmqPPwc0qdNsdNi/eweAFtoIdrJWNen2sVEWMEac3i6jU55Qfx+lOcdMNKYn2CtWmlnOQ==",
+ "version": "0.27.7",
+ "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.27.7.tgz",
+ "integrity": "sha512-5V9pwFeiv+95Jlowq/7oiGISSrdXMTs2jfoSy8k+WM6oI/Skm1WWjPdJWeporN2O4UGcsaCJdirKffKayMoPgw==",
"license": "MIT",
"dependencies": {
"@floating-ui/react-dom": "^2.1.2",
@@ -4424,54 +4414,54 @@
"license": "MIT"
},
"node_modules/@formatjs/ecma402-abstract": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-2.3.3.tgz",
- "integrity": "sha512-pJT1OkhplSmvvr6i3CWTPvC/FGC06MbN5TNBfRO6Ox62AEz90eMq+dVvtX9Bl3jxCEkS0tATzDarRZuOLw7oFg==",
+ "version": "2.3.4",
+ "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-2.3.4.tgz",
+ "integrity": "sha512-qrycXDeaORzIqNhBOx0btnhpD1c+/qFIHAN9znofuMJX6QBwtbrmlpWfD4oiUUD2vJUOIYFA/gYtg2KAMGG7sA==",
"license": "MIT",
"dependencies": {
- "@formatjs/fast-memoize": "2.2.6",
- "@formatjs/intl-localematcher": "0.6.0",
- "decimal.js": "10",
- "tslib": "2"
+ "@formatjs/fast-memoize": "2.2.7",
+ "@formatjs/intl-localematcher": "0.6.1",
+ "decimal.js": "^10.4.3",
+ "tslib": "^2.8.0"
}
},
"node_modules/@formatjs/fast-memoize": {
- "version": "2.2.6",
- "resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.2.6.tgz",
- "integrity": "sha512-luIXeE2LJbQnnzotY1f2U2m7xuQNj2DA8Vq4ce1BY9ebRZaoPB1+8eZ6nXpLzsxuW5spQxr7LdCg+CApZwkqkw==",
+ "version": "2.2.7",
+ "resolved": "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.2.7.tgz",
+ "integrity": "sha512-Yabmi9nSvyOMrlSeGGWDiH7rf3a7sIwplbvo/dlz9WCIjzIQAfy1RMf4S0X3yG724n5Ghu2GmEl5NJIV6O9sZQ==",
"license": "MIT",
"dependencies": {
- "tslib": "2"
+ "tslib": "^2.8.0"
}
},
"node_modules/@formatjs/icu-messageformat-parser": {
- "version": "2.11.1",
- "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.11.1.tgz",
- "integrity": "sha512-o0AhSNaOfKoic0Sn1GkFCK4MxdRsw7mPJ5/rBpIqdvcC7MIuyUSW8WChUEvrK78HhNpYOgqCQbINxCTumJLzZA==",
+ "version": "2.11.2",
+ "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.11.2.tgz",
+ "integrity": "sha512-AfiMi5NOSo2TQImsYAg8UYddsNJ/vUEv/HaNqiFjnI3ZFfWihUtD5QtuX6kHl8+H+d3qvnE/3HZrfzgdWpsLNA==",
"license": "MIT",
"dependencies": {
- "@formatjs/ecma402-abstract": "2.3.3",
- "@formatjs/icu-skeleton-parser": "1.8.13",
- "tslib": "2"
+ "@formatjs/ecma402-abstract": "2.3.4",
+ "@formatjs/icu-skeleton-parser": "1.8.14",
+ "tslib": "^2.8.0"
}
},
"node_modules/@formatjs/icu-skeleton-parser": {
- "version": "1.8.13",
- "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.13.tgz",
- "integrity": "sha512-N/LIdTvVc1TpJmMt2jVg0Fr1F7Q1qJPdZSCs19unMskCmVQ/sa0H9L8PWt13vq+gLdLg1+pPsvBLydL1Apahjg==",
+ "version": "1.8.14",
+ "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.14.tgz",
+ "integrity": "sha512-i4q4V4qslThK4Ig8SxyD76cp3+QJ3sAqr7f6q9VVfeGtxG9OhiAk3y9XF6Q41OymsKzsGQ6OQQoJNY4/lI8TcQ==",
"license": "MIT",
"dependencies": {
- "@formatjs/ecma402-abstract": "2.3.3",
- "tslib": "2"
+ "@formatjs/ecma402-abstract": "2.3.4",
+ "tslib": "^2.8.0"
}
},
"node_modules/@formatjs/intl-localematcher": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.6.0.tgz",
- "integrity": "sha512-4rB4g+3hESy1bHSBG3tDFaMY2CH67iT7yne1e+0CLTsGLDcmoEWWpJjjpWVaYgYfYuohIRuo0E+N536gd2ZHZA==",
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.6.1.tgz",
+ "integrity": "sha512-ePEgLgVCqi2BBFnTMWPfIghu6FkbZnnBVhO2sSxvLfrdFw7wCHAHiDoM2h4NRgjbaY7+B7HgOLZGkK187pZTZg==",
"license": "MIT",
"dependencies": {
- "tslib": "2"
+ "tslib": "^2.8.0"
}
},
"node_modules/@fortawesome/fontawesome-common-types": {
@@ -4545,63 +4535,63 @@
}
},
"node_modules/@fullcalendar/core": {
- "version": "6.1.15",
- "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-6.1.15.tgz",
- "integrity": "sha512-BuX7o6ALpLb84cMw1FCB9/cSgF4JbVO894cjJZ6kP74jzbUZNjtwffwRdA+Id8rrLjT30d/7TrkW90k4zbXB5Q==",
+ "version": "6.1.17",
+ "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-6.1.17.tgz",
+ "integrity": "sha512-0W7lnIrv18ruJ5zeWBeNZXO8qCWlzxDdp9COFEsZnyNjiEhUVnrW/dPbjRKYpL0edGG0/Lhs0ghp1z/5ekt8ZA==",
"license": "MIT",
"dependencies": {
"preact": "~10.12.1"
}
},
"node_modules/@fullcalendar/daygrid": {
- "version": "6.1.15",
- "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-6.1.15.tgz",
- "integrity": "sha512-j8tL0HhfiVsdtOCLfzK2J0RtSkiad3BYYemwQKq512cx6btz6ZZ2RNc/hVnIxluuWFyvx5sXZwoeTJsFSFTEFA==",
+ "version": "6.1.17",
+ "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-6.1.17.tgz",
+ "integrity": "sha512-K7m+pd7oVJ9fW4h7CLDdDGJbc9szJ1xDU1DZ2ag+7oOo1aCNLv44CehzkkknM6r8EYlOOhgaelxQpKAI4glj7A==",
"license": "MIT",
"peerDependencies": {
- "@fullcalendar/core": "~6.1.15"
+ "@fullcalendar/core": "~6.1.17"
}
},
"node_modules/@fullcalendar/interaction": {
- "version": "6.1.15",
- "resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-6.1.15.tgz",
- "integrity": "sha512-DOTSkofizM7QItjgu7W68TvKKvN9PSEEvDJceyMbQDvlXHa7pm/WAVtAc6xSDZ9xmB1QramYoWGLHkCYbTW1rQ==",
+ "version": "6.1.17",
+ "resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-6.1.17.tgz",
+ "integrity": "sha512-AudvQvgmJP2FU89wpSulUUjeWv24SuyCx8FzH2WIPVaYg+vDGGYarI7K6PcM3TH7B/CyaBjm5Rqw9lXgnwt5YA==",
"license": "MIT",
"peerDependencies": {
- "@fullcalendar/core": "~6.1.15"
+ "@fullcalendar/core": "~6.1.17"
}
},
"node_modules/@fullcalendar/list": {
- "version": "6.1.15",
- "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-6.1.15.tgz",
- "integrity": "sha512-U1bce04tYDwkFnuVImJSy2XalYIIQr6YusOWRPM/5ivHcJh67Gm8CIMSWpi3KdRSNKFkqBxLPkfZGBMaOcJYug==",
+ "version": "6.1.17",
+ "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-6.1.17.tgz",
+ "integrity": "sha512-fkyK49F9IxwlGUBVhJGsFpd/LTi/vRVERLIAe1HmBaGkjwpxnynm8TMLb9mZip97wvDk3CmZWduMe6PxscAlow==",
"license": "MIT",
"peerDependencies": {
- "@fullcalendar/core": "~6.1.15"
+ "@fullcalendar/core": "~6.1.17"
}
},
"node_modules/@fullcalendar/multimonth": {
- "version": "6.1.15",
- "resolved": "https://registry.npmjs.org/@fullcalendar/multimonth/-/multimonth-6.1.15.tgz",
- "integrity": "sha512-sEZY6jbOYkeF9TwhUldG+UUVv+hiPlGkS8zZEgPR7ypcjhipyA03c5rPjx7N6huOHqh6lCMH59zlohLooQRlaw==",
+ "version": "6.1.17",
+ "resolved": "https://registry.npmjs.org/@fullcalendar/multimonth/-/multimonth-6.1.17.tgz",
+ "integrity": "sha512-ZxA9mkTzKayCdxR5je9P9++qqhSeSbuvXmvZ6doZw6omv8K52cD7XJii+P7gvxATXxtI6hg4i+DuMyOHxP1E2g==",
"license": "MIT",
"dependencies": {
- "@fullcalendar/daygrid": "~6.1.15"
+ "@fullcalendar/daygrid": "~6.1.17"
},
"peerDependencies": {
- "@fullcalendar/core": "~6.1.15"
+ "@fullcalendar/core": "~6.1.17"
}
},
"node_modules/@fullcalendar/timegrid": {
- "version": "6.1.15",
- "resolved": "https://registry.npmjs.org/@fullcalendar/timegrid/-/timegrid-6.1.15.tgz",
- "integrity": "sha512-61ORr3A148RtxQ2FNG7JKvacyA/TEVZ7z6I+3E9Oeu3dqTf6M928bFcpehRTIK6zIA6Yifs7BeWHgOE9dFnpbw==",
+ "version": "6.1.17",
+ "resolved": "https://registry.npmjs.org/@fullcalendar/timegrid/-/timegrid-6.1.17.tgz",
+ "integrity": "sha512-K4PlA3L3lclLOs3IX8cvddeiJI9ZVMD7RA9IqaWwbvac771971foc9tFze9YY+Pqesf6S+vhS2dWtEVlERaGlQ==",
"license": "MIT",
"dependencies": {
- "@fullcalendar/daygrid": "~6.1.15"
+ "@fullcalendar/daygrid": "~6.1.17"
},
"peerDependencies": {
- "@fullcalendar/core": "~6.1.15"
+ "@fullcalendar/core": "~6.1.17"
}
},
"node_modules/@googlemaps/js-api-loader": {
@@ -4725,18 +4715,18 @@
}
},
"node_modules/@internationalized/date": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.7.0.tgz",
- "integrity": "sha512-VJ5WS3fcVx0bejE/YHfbDKR/yawZgKqn/if+oEeLqNwBtPzVB06olkfcnojTmEMX+gTpH+FlQ69SHNitJ8/erQ==",
+ "version": "3.8.0",
+ "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.8.0.tgz",
+ "integrity": "sha512-J51AJ0fEL68hE4CwGPa6E0PO6JDaVLd8aln48xFCSy7CZkZc96dGEGmLs2OEEbBxcsVZtfrqkXJwI2/MSG8yKw==",
"license": "Apache-2.0",
"dependencies": {
"@swc/helpers": "^0.5.0"
}
},
"node_modules/@internationalized/message": {
- "version": "3.1.6",
- "resolved": "https://registry.npmjs.org/@internationalized/message/-/message-3.1.6.tgz",
- "integrity": "sha512-JxbK3iAcTIeNr1p0WIFg/wQJjIzJt9l/2KNY/48vXV7GRGZSv3zMxJsce008fZclk2cDC8y0Ig3odceHO7EfNQ==",
+ "version": "3.1.7",
+ "resolved": "https://registry.npmjs.org/@internationalized/message/-/message-3.1.7.tgz",
+ "integrity": "sha512-gLQlhEW4iO7DEFPf/U7IrIdA3UyLGS0opeqouaFwlMObLUzwexRjbygONHDVbC9G9oFLXsLyGKYkJwqXw/QADg==",
"license": "Apache-2.0",
"dependencies": {
"@swc/helpers": "^0.5.0",
@@ -4744,18 +4734,18 @@
}
},
"node_modules/@internationalized/number": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/@internationalized/number/-/number-3.6.0.tgz",
- "integrity": "sha512-PtrRcJVy7nw++wn4W2OuePQQfTqDzfusSuY1QTtui4wa7r+rGVtR75pO8CyKvHvzyQYi3Q1uO5sY0AsB4e65Bw==",
+ "version": "3.6.1",
+ "resolved": "https://registry.npmjs.org/@internationalized/number/-/number-3.6.1.tgz",
+ "integrity": "sha512-UVsb4bCwbL944E0SX50CHFtWEeZ2uB5VozZ5yDXJdq6iPZsZO5p+bjVMZh2GxHf4Bs/7xtDCcPwEa2NU9DaG/g==",
"license": "Apache-2.0",
"dependencies": {
"@swc/helpers": "^0.5.0"
}
},
"node_modules/@internationalized/string": {
- "version": "3.2.5",
- "resolved": "https://registry.npmjs.org/@internationalized/string/-/string-3.2.5.tgz",
- "integrity": "sha512-rKs71Zvl2OKOHM+mzAFMIyqR5hI1d1O6BBkMK2/lkfg3fkmVh9Eeg0awcA8W2WqYqDOv6a86DIOlFpggwLtbuw==",
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/@internationalized/string/-/string-3.2.6.tgz",
+ "integrity": "sha512-LR2lnM4urJta5/wYJVV7m8qk5DrMZmLRTuFhbQO5b9/sKLHgty6unQy1Li4+Su2DWydmB4aZdS5uxBRXIq2aAw==",
"license": "Apache-2.0",
"dependencies": {
"@swc/helpers": "^0.5.0"
@@ -5438,18 +5428,18 @@
}
},
"node_modules/@mermaid-js/parser": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/@mermaid-js/parser/-/parser-0.3.0.tgz",
- "integrity": "sha512-HsvL6zgE5sUPGgkIDlmAWR1HTNHz2Iy11BAWPTa4Jjabkpguy4Ze2gzfLrg6pdRuBvFwgUYyxiaNqZwrEEXepA==",
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/@mermaid-js/parser/-/parser-0.4.0.tgz",
+ "integrity": "sha512-wla8XOWvQAwuqy+gxiZqY+c7FokraOTHRWMsbB4AgRx9Sy7zKslNyejy7E+a77qHfey5GXw/ik3IXv/NHMJgaA==",
"license": "MIT",
"dependencies": {
- "langium": "3.0.0"
+ "langium": "3.3.1"
}
},
"node_modules/@mongodb-js/saslprep": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.2.0.tgz",
- "integrity": "sha512-+ywrb0AqkfaYuhHs6LxKWgqbh3I72EpEgESCw37o+9qPx9WTCkgDm2B+eMrwehGtHBWHFU4GXvnSCNiFhhausg==",
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.2.2.tgz",
+ "integrity": "sha512-EB0O3SCSNRUFk66iRCpI+cXzIjdswfCs7F6nOC3RAGJ7xr5YhaicvsRwJ9eyzYvYRlCSDUO/c7g4yNulxKC1WA==",
"license": "MIT",
"dependencies": {
"sparse-bitfield": "^3.0.3"
@@ -5465,9 +5455,9 @@
}
},
"node_modules/@mui/core-downloads-tracker": {
- "version": "6.4.8",
- "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-6.4.8.tgz",
- "integrity": "sha512-vjP4+A1ybyCRhDZC7r5EPWu/gLseFZxaGyPdDl94vzVvk6Yj6gahdaqcjbhkaCrJjdZj90m3VioltWPAnWF/zw==",
+ "version": "6.4.11",
+ "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-6.4.11.tgz",
+ "integrity": "sha512-CzAQs9CTzlwbsF9ZYB4o4lLwBv1/qNE264NjuYao+ctAXsmlPtYa8RtER4UsUXSMxNN9Qi+aQdYcKl2sUpnmAw==",
"license": "MIT",
"funding": {
"type": "opencollective",
@@ -5475,9 +5465,9 @@
}
},
"node_modules/@mui/icons-material": {
- "version": "6.4.8",
- "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-6.4.8.tgz",
- "integrity": "sha512-LKGWiLWRyoOw3dWxZQ+lV//mK+4DVTTAiLd2ljmJdD6XV0rDB8JFKjRD9nyn9cJAU5XgWnii7ZR3c93ttUnMKg==",
+ "version": "6.4.11",
+ "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-6.4.11.tgz",
+ "integrity": "sha512-+jjJGIrB1awNbMv4ZVPPdN/p7O1UKFZ+xqRvNIQ8B1KnlID5hPMPBLM6UUbRF4bu3UDCbu79rn9Nye5LGNzmeA==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.26.0"
@@ -5490,7 +5480,7 @@
"url": "https://opencollective.com/mui-org"
},
"peerDependencies": {
- "@mui/material": "^6.4.8",
+ "@mui/material": "^6.4.11",
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
"react": "^17.0.0 || ^18.0.0 || ^19.0.0"
},
@@ -5501,16 +5491,16 @@
}
},
"node_modules/@mui/material": {
- "version": "6.4.8",
- "resolved": "https://registry.npmjs.org/@mui/material/-/material-6.4.8.tgz",
- "integrity": "sha512-5S9UTjKZZBd9GfbcYh/nYfD9cv6OXmj5Y7NgKYfk7JcSoshp8/pW5zP4wecRiroBSZX8wcrywSgogpVNO+5W0Q==",
+ "version": "6.4.11",
+ "resolved": "https://registry.npmjs.org/@mui/material/-/material-6.4.11.tgz",
+ "integrity": "sha512-k2D3FLJS+/qD0qnd6ZlAjGFvaaxe1Dl10NyvpeDzIebMuYdn8VqYe6XBgGueEAtnzSJM4V03VD9kb5Fi24dnTA==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.26.0",
- "@mui/core-downloads-tracker": "^6.4.8",
- "@mui/system": "^6.4.8",
+ "@mui/core-downloads-tracker": "^6.4.11",
+ "@mui/system": "^6.4.11",
"@mui/types": "~7.2.24",
- "@mui/utils": "^6.4.8",
+ "@mui/utils": "^6.4.9",
"@popperjs/core": "^2.11.8",
"@types/react-transition-group": "^4.4.12",
"clsx": "^2.1.1",
@@ -5529,7 +5519,7 @@
"peerDependencies": {
"@emotion/react": "^11.5.0",
"@emotion/styled": "^11.3.0",
- "@mui/material-pigment-css": "^6.4.8",
+ "@mui/material-pigment-css": "^6.4.11",
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
"react": "^17.0.0 || ^18.0.0 || ^19.0.0",
"react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0"
@@ -5550,13 +5540,13 @@
}
},
"node_modules/@mui/private-theming": {
- "version": "6.4.8",
- "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-6.4.8.tgz",
- "integrity": "sha512-sWwQoNSn6elsPTAtSqCf+w5aaGoh7AASURNmpy+QTTD/zwJ0Jgwt0ZaaP6mXq2IcgHxYnYloM/+vJgHPMkRKTQ==",
+ "version": "6.4.9",
+ "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-6.4.9.tgz",
+ "integrity": "sha512-LktcVmI5X17/Q5SkwjCcdOLBzt1hXuc14jYa7NPShog0GBDCDvKtcnP0V7a2s6EiVRlv7BzbWEJzH6+l/zaCxw==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.26.0",
- "@mui/utils": "^6.4.8",
+ "@mui/utils": "^6.4.9",
"prop-types": "^15.8.1"
},
"engines": {
@@ -5577,9 +5567,9 @@
}
},
"node_modules/@mui/styled-engine": {
- "version": "6.4.8",
- "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-6.4.8.tgz",
- "integrity": "sha512-oyjx1b1FvUCI85ZMO4trrjNxGm90eLN3Ohy0AP/SqK5gWvRQg1677UjNf7t6iETOKAleHctJjuq0B3aXO2gtmw==",
+ "version": "6.4.11",
+ "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-6.4.11.tgz",
+ "integrity": "sha512-74AUmlHXaGNbyUqdK/+NwDJOZqgRQw6BcNvhoWYLq3LGbLTkE+khaJ7soz6cIabE4CPYqO2/QAIU1Z/HEjjpcw==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.26.0",
@@ -5611,16 +5601,16 @@
}
},
"node_modules/@mui/system": {
- "version": "6.4.8",
- "resolved": "https://registry.npmjs.org/@mui/system/-/system-6.4.8.tgz",
- "integrity": "sha512-gV7iBHoqlsIenU2BP0wq14BefRoZcASZ/4LeyuQglayBl+DfLX5rEd3EYR3J409V2EZpR0NOM1LATAGlNk2cyA==",
+ "version": "6.4.11",
+ "resolved": "https://registry.npmjs.org/@mui/system/-/system-6.4.11.tgz",
+ "integrity": "sha512-gibtsrZEwnDaT5+I/KloOj/yHluX5G8heknuxBpQOdEQ3Gc0avjSImn5hSeKp8D4thiwZiApuggIjZw1dQguUA==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.26.0",
- "@mui/private-theming": "^6.4.8",
- "@mui/styled-engine": "^6.4.8",
+ "@mui/private-theming": "^6.4.9",
+ "@mui/styled-engine": "^6.4.11",
"@mui/types": "~7.2.24",
- "@mui/utils": "^6.4.8",
+ "@mui/utils": "^6.4.9",
"clsx": "^2.1.1",
"csstype": "^3.1.3",
"prop-types": "^15.8.1"
@@ -5665,9 +5655,9 @@
}
},
"node_modules/@mui/utils": {
- "version": "6.4.8",
- "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-6.4.8.tgz",
- "integrity": "sha512-C86gfiZ5BfZ51KqzqoHi1WuuM2QdSKoFhbkZeAfQRB+jCc4YNhhj11UXFVMMsqBgZ+Zy8IHNJW3M9Wj/LOwRXQ==",
+ "version": "6.4.9",
+ "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-6.4.9.tgz",
+ "integrity": "sha512-Y12Q9hbK9g+ZY0T3Rxrx9m2m10gaphDuUMgWxyV5kNJevVxXYCLclYUCC9vXaIk1/NdNDTcW2Yfr2OGvNFNmHg==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.26.0",
@@ -5695,31 +5685,31 @@
}
},
"node_modules/@napi-rs/canvas": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.68.tgz",
- "integrity": "sha512-LQESrePLEBLvhuFkXx9jjBXRC2ClYsO5mqQ1m/puth5z9SOuM3N/B3vDuqnC3RJFktDktyK9khGvo7dTkqO9uQ==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.69.tgz",
+ "integrity": "sha512-ydvNeJMRm+l3T14yCoUKqjYQiEdXDq1isznI93LEBGYssXKfSaLNLHOkeM4z9Fnw9Pkt2EKOCAtW9cS4b00Zcg==",
"license": "MIT",
"optional": true,
"engines": {
"node": ">= 10"
},
"optionalDependencies": {
- "@napi-rs/canvas-android-arm64": "0.1.68",
- "@napi-rs/canvas-darwin-arm64": "0.1.68",
- "@napi-rs/canvas-darwin-x64": "0.1.68",
- "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.68",
- "@napi-rs/canvas-linux-arm64-gnu": "0.1.68",
- "@napi-rs/canvas-linux-arm64-musl": "0.1.68",
- "@napi-rs/canvas-linux-riscv64-gnu": "0.1.68",
- "@napi-rs/canvas-linux-x64-gnu": "0.1.68",
- "@napi-rs/canvas-linux-x64-musl": "0.1.68",
- "@napi-rs/canvas-win32-x64-msvc": "0.1.68"
+ "@napi-rs/canvas-android-arm64": "0.1.69",
+ "@napi-rs/canvas-darwin-arm64": "0.1.69",
+ "@napi-rs/canvas-darwin-x64": "0.1.69",
+ "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.69",
+ "@napi-rs/canvas-linux-arm64-gnu": "0.1.69",
+ "@napi-rs/canvas-linux-arm64-musl": "0.1.69",
+ "@napi-rs/canvas-linux-riscv64-gnu": "0.1.69",
+ "@napi-rs/canvas-linux-x64-gnu": "0.1.69",
+ "@napi-rs/canvas-linux-x64-musl": "0.1.69",
+ "@napi-rs/canvas-win32-x64-msvc": "0.1.69"
}
},
"node_modules/@napi-rs/canvas-android-arm64": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.68.tgz",
- "integrity": "sha512-h1KcSR4LKLfRfzeBH65xMxbWOGa1OtMFQbCMVlxPCkN1Zr+2gK+70pXO5ktojIYcUrP6KDcOwoc8clho5ccM/w==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.69.tgz",
+ "integrity": "sha512-4icWTByY8zPvM9SelfQKf3I6kwXw0aI5drBOVrwfER5kjwXJd78FPSDSZkxDHjvIo9Q86ljl18Yr963ehA4sHQ==",
"cpu": [
"arm64"
],
@@ -5733,9 +5723,9 @@
}
},
"node_modules/@napi-rs/canvas-darwin-arm64": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.68.tgz",
- "integrity": "sha512-/VURlrAD4gDoxW1GT/b0nP3fRz/fhxmHI/xznTq2FTwkQLPOlLkDLCvTmQ7v6LtGKdc2Ed6rvYpRan+JXThInQ==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.69.tgz",
+ "integrity": "sha512-HOanhhYlHdukA+unjelT4Dg3ta7e820x87/AG2dKUMsUzH19jaeZs9bcYjzEy2vYi/dFWKz7cSv2yaIOudB8Yg==",
"cpu": [
"arm64"
],
@@ -5749,9 +5739,9 @@
}
},
"node_modules/@napi-rs/canvas-darwin-x64": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.68.tgz",
- "integrity": "sha512-tEpvGR6vCLTo1Tx9wmDnoOKROpw57wiCWwCpDOuVlj/7rqEJOUYr9ixW4aRJgmeGBrZHgevI0EURys2ER6whmg==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.69.tgz",
+ "integrity": "sha512-SIp7WfhxAPnSVK9bkFfJp+84rbATCIq9jMUzDwpCLhQ+v+OqtXe4pggX1oeV+62/HK6BT1t18qRmJfyqwJ9f3g==",
"cpu": [
"x64"
],
@@ -5765,9 +5755,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-arm-gnueabihf": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.68.tgz",
- "integrity": "sha512-U9xbJsumPOiAYeAFZMlHf62b9dGs2HJ6Q5xt7xTB0uEyPeurwhgYBWGgabdsEidyj38YuzI/c3LGBbSQB3vagw==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.69.tgz",
+ "integrity": "sha512-Ls+KujCp6TGpkuMVFvrlx+CxtL+casdkrprFjqIuOAnB30Mct6bCEr+I83Tu29s3nNq4EzIGjdmA3fFAZG/Dtw==",
"cpu": [
"arm"
],
@@ -5781,9 +5771,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-arm64-gnu": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.68.tgz",
- "integrity": "sha512-KFkn8wEm3mPnWD4l8+OUUkxylSJuN5q9PnJRZJgv15RtCA1bgxIwTkBhI/+xuyVMcHqON9sXq7cDkEJtHm35dg==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.69.tgz",
+ "integrity": "sha512-m8VcGmeSBNRbHZBd1srvdM1aq/ScS2y8KqGqmCCEgJlytYK4jdULzAo2K/BPKE1v3xvn8oUPZDLI/NBJbJkEoA==",
"cpu": [
"arm64"
],
@@ -5797,9 +5787,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-arm64-musl": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.68.tgz",
- "integrity": "sha512-IQzts91rCdOALXBWQxLZRCEDrfFTGDtNRJMNu+2SKZ1uT8cmPQkPwVk5rycvFpvgAcmiFiOSCp1aRrlfU8KPpQ==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.69.tgz",
+ "integrity": "sha512-a3xjNRIeK2m2ZORGv2moBvv3vbkaFZG1QKMeiEv/BKij+rkztuEhTJGMar+buICFgS0fLgphXXsKNkUSJb7eRQ==",
"cpu": [
"arm64"
],
@@ -5813,9 +5803,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-riscv64-gnu": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.68.tgz",
- "integrity": "sha512-e9AS5UttoIKqXSmBzKZdd3NErSVyOEYzJfNOCGtafGk1//gibTwQXGlSXmAKuErqMp09pyk9aqQRSYzm1AQfBw==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.69.tgz",
+ "integrity": "sha512-pClUoJF5wdC9AvD0mc15G9JffL1Q85nuH1rLSQPRkGmGmQOtRjw5E9xNbanz7oFUiPbjH7xcAXUjVAcf7tdgPQ==",
"cpu": [
"riscv64"
],
@@ -5829,9 +5819,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-x64-gnu": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.68.tgz",
- "integrity": "sha512-Pa/I36VE3j57I3Obhrr+J48KGFfkZk2cJN/2NmW/vCgmoF7kCP6aTVq5n+cGdGWLd/cN9CJ9JvNwEoMRDghu0g==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.69.tgz",
+ "integrity": "sha512-96X3bFAmzemfw84Ts6Jg/omL86uuynvK06MWGR/mp3JYNumY9RXofA14eF/kJIYelbYFWXcwpbcBR71lJ6G/YQ==",
"cpu": [
"x64"
],
@@ -5845,9 +5835,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-x64-musl": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.68.tgz",
- "integrity": "sha512-9c6rkc5195wNxuUHJdf4/mmnq433OQey9TNvQ9LspJazvHbfSkTij8wtKjASVQsJyPDva4fkWOeV/OQ7cLw0GQ==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.69.tgz",
+ "integrity": "sha512-2QTsEFO72Kwkj53W9hc5y1FAUvdGx0V+pjJB+9oQF6Ys9+y989GyPIl5wZDzeh8nIJW6koZZ1eFa8pD+pA5BFQ==",
"cpu": [
"x64"
],
@@ -5861,9 +5851,9 @@
}
},
"node_modules/@napi-rs/canvas-win32-x64-msvc": {
- "version": "0.1.68",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.68.tgz",
- "integrity": "sha512-Fc5Dez23u0FoSATurT6/w1oMytiRnKWEinHivdMvXpge6nG4YvhrASrtqMk8dGJMVQpHr8QJYF45rOrx2YU2Aw==",
+ "version": "0.1.69",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.69.tgz",
+ "integrity": "sha512-Q4YA8kVnKarApBVLu7F8icGlIfSll5Glswo5hY6gPS4Is2dCI8+ig9OeDM8RlwYevUIxKq8lZBypN8Q1iLAQ7w==",
"cpu": [
"x64"
],
@@ -5921,16 +5911,16 @@
}
},
"node_modules/@octokit/core": {
- "version": "6.1.4",
- "resolved": "https://registry.npmjs.org/@octokit/core/-/core-6.1.4.tgz",
- "integrity": "sha512-lAS9k7d6I0MPN+gb9bKDt7X8SdxknYqAMh44S5L+lNqIN2NuV8nvv3g8rPp7MuRxcOpxpUIATWprO0C34a8Qmg==",
+ "version": "6.1.5",
+ "resolved": "https://registry.npmjs.org/@octokit/core/-/core-6.1.5.tgz",
+ "integrity": "sha512-vvmsN0r7rguA+FySiCsbaTTobSftpIDIpPW81trAmsv9TGxg3YCujAxRYp/Uy8xmDgYCzzgulG62H7KYUFmeIg==",
"license": "MIT",
"dependencies": {
"@octokit/auth-token": "^5.0.0",
- "@octokit/graphql": "^8.1.2",
- "@octokit/request": "^9.2.1",
- "@octokit/request-error": "^6.1.7",
- "@octokit/types": "^13.6.2",
+ "@octokit/graphql": "^8.2.2",
+ "@octokit/request": "^9.2.3",
+ "@octokit/request-error": "^6.1.8",
+ "@octokit/types": "^14.0.0",
"before-after-hook": "^3.0.2",
"universal-user-agent": "^7.0.0"
},
@@ -5939,12 +5929,12 @@
}
},
"node_modules/@octokit/endpoint": {
- "version": "10.1.3",
- "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-10.1.3.tgz",
- "integrity": "sha512-nBRBMpKPhQUxCsQQeW+rCJ/OPSMcj3g0nfHn01zGYZXuNDvvXudF/TYY6APj5THlurerpFN4a/dQAIAaM6BYhA==",
+ "version": "10.1.4",
+ "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-10.1.4.tgz",
+ "integrity": "sha512-OlYOlZIsfEVZm5HCSR8aSg02T2lbUWOsCQoPKfTXJwDzcHQBrVBGdGXb89dv2Kw2ToZaRtudp8O3ZIYoaOjKlA==",
"license": "MIT",
"dependencies": {
- "@octokit/types": "^13.6.2",
+ "@octokit/types": "^14.0.0",
"universal-user-agent": "^7.0.2"
},
"engines": {
@@ -5952,13 +5942,13 @@
}
},
"node_modules/@octokit/graphql": {
- "version": "8.2.1",
- "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-8.2.1.tgz",
- "integrity": "sha512-n57hXtOoHrhwTWdvhVkdJHdhTv0JstjDbDRhJfwIRNfFqmSo1DaK/mD2syoNUoLCyqSjBpGAKOG0BuwF392slw==",
+ "version": "8.2.2",
+ "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-8.2.2.tgz",
+ "integrity": "sha512-Yi8hcoqsrXGdt0yObxbebHXFOiUA+2v3n53epuOg1QUgOB6c4XzvisBNVXJSl8RYA5KrDuSL2yq9Qmqe5N0ryA==",
"license": "MIT",
"dependencies": {
- "@octokit/request": "^9.2.2",
- "@octokit/types": "^13.8.0",
+ "@octokit/request": "^9.2.3",
+ "@octokit/types": "^14.0.0",
"universal-user-agent": "^7.0.0"
},
"engines": {
@@ -5966,20 +5956,20 @@
}
},
"node_modules/@octokit/openapi-types": {
- "version": "24.2.0",
- "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-24.2.0.tgz",
- "integrity": "sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg==",
+ "version": "25.0.0",
+ "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-25.0.0.tgz",
+ "integrity": "sha512-FZvktFu7HfOIJf2BScLKIEYjDsw6RKc7rBJCdvCTfKsVnx2GEB/Nbzjr29DUdb7vQhlzS/j8qDzdditP0OC6aw==",
"license": "MIT"
},
"node_modules/@octokit/request": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/@octokit/request/-/request-9.2.2.tgz",
- "integrity": "sha512-dZl0ZHx6gOQGcffgm1/Sf6JfEpmh34v3Af2Uci02vzUYz6qEN6zepoRtmybWXIGXFIK8K9ylE3b+duCWqhArtg==",
+ "version": "9.2.3",
+ "resolved": "https://registry.npmjs.org/@octokit/request/-/request-9.2.3.tgz",
+ "integrity": "sha512-Ma+pZU8PXLOEYzsWf0cn/gY+ME57Wq8f49WTXA8FMHp2Ps9djKw//xYJ1je8Hm0pR2lU9FUGeJRWOtxq6olt4w==",
"license": "MIT",
"dependencies": {
- "@octokit/endpoint": "^10.1.3",
- "@octokit/request-error": "^6.1.7",
- "@octokit/types": "^13.6.2",
+ "@octokit/endpoint": "^10.1.4",
+ "@octokit/request-error": "^6.1.8",
+ "@octokit/types": "^14.0.0",
"fast-content-type-parse": "^2.0.0",
"universal-user-agent": "^7.0.2"
},
@@ -5988,24 +5978,24 @@
}
},
"node_modules/@octokit/request-error": {
- "version": "6.1.7",
- "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-6.1.7.tgz",
- "integrity": "sha512-69NIppAwaauwZv6aOzb+VVLwt+0havz9GT5YplkeJv7fG7a40qpLt/yZKyiDxAhgz0EtgNdNcb96Z0u+Zyuy2g==",
+ "version": "6.1.8",
+ "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-6.1.8.tgz",
+ "integrity": "sha512-WEi/R0Jmq+IJKydWlKDmryPcmdYSVjL3ekaiEL1L9eo1sUnqMJ+grqmC9cjk7CA7+b2/T397tO5d8YLOH3qYpQ==",
"license": "MIT",
"dependencies": {
- "@octokit/types": "^13.6.2"
+ "@octokit/types": "^14.0.0"
},
"engines": {
"node": ">= 18"
}
},
"node_modules/@octokit/types": {
- "version": "13.10.0",
- "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.10.0.tgz",
- "integrity": "sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA==",
+ "version": "14.0.0",
+ "resolved": "https://registry.npmjs.org/@octokit/types/-/types-14.0.0.tgz",
+ "integrity": "sha512-VVmZP0lEhbo2O1pdq63gZFiGCKkm8PPp8AUOijlwPO6hojEVjspA0MWKP7E4hbvGxzFKNqKr6p0IYtOH/Wf/zA==",
"license": "MIT",
"dependencies": {
- "@octokit/openapi-types": "^24.2.0"
+ "@octokit/openapi-types": "^25.0.0"
}
},
"node_modules/@parcel/watcher": {
@@ -6371,9 +6361,9 @@
}
},
"node_modules/@puppeteer/browsers": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.8.0.tgz",
- "integrity": "sha512-yTwt2KWRmCQAfhvbCRjebaSX8pV1//I0Y3g+A7f/eS7gf0l4eRJoUCvcYdVtboeU4CTOZQuqYbZNS8aBYb8ROQ==",
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.10.0.tgz",
+ "integrity": "sha512-HdHF4rny4JCvIcm7V1dpvpctIGqM3/Me255CB44vW7hDG1zYMmcBMjpNqZEDxdCfXGLkx5kP0+Jz5DUS+ukqtA==",
"license": "Apache-2.0",
"dependencies": {
"debug": "^4.4.0",
@@ -6517,18 +6507,18 @@
}
},
"node_modules/@react-aria/actiongroup": {
- "version": "3.7.14",
- "resolved": "https://registry.npmjs.org/@react-aria/actiongroup/-/actiongroup-3.7.14.tgz",
- "integrity": "sha512-KMaYMOfZokZsZ4MLogp6SEMR5DQi5kpw8545VIDSsIvAvSBTaZOK/t08k4gdooJDmHUWS82XTYQgCXMvsjUtDQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/list": "^3.12.0",
- "@react-types/actiongroup": "^3.4.15",
- "@react-types/shared": "^3.28.0",
+ "version": "3.7.15",
+ "resolved": "https://registry.npmjs.org/@react-aria/actiongroup/-/actiongroup-3.7.15.tgz",
+ "integrity": "sha512-5wEBp4HvSq7RWJKLm7QWwKtiyUGZOmBsbiVg1aAWsHIbMJ1BgcgRO/IHK5vnxJ+Gd2zBg+XLV+zbmfCZhysrAg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/list": "^3.12.1",
+ "@react-types/actiongroup": "^3.4.16",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6537,24 +6527,24 @@
}
},
"node_modules/@react-aria/autocomplete": {
- "version": "3.0.0-beta.1",
- "resolved": "https://registry.npmjs.org/@react-aria/autocomplete/-/autocomplete-3.0.0-beta.1.tgz",
- "integrity": "sha512-ZeVR1tKJOZK5/RTuN8eprlP1lyeihdDfDYPBkdg2iT5h775LSZyOingPux9aLtdqt/uj6JIS5amK9ErI7+axug==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/combobox": "^3.12.1",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/listbox": "^3.14.2",
- "@react-aria/searchfield": "^3.8.2",
- "@react-aria/textfield": "^3.17.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/autocomplete": "3.0.0-beta.0",
- "@react-stately/combobox": "^3.10.3",
- "@react-types/autocomplete": "3.0.0-alpha.29",
- "@react-types/button": "^3.11.0",
- "@react-types/shared": "^3.28.0",
+ "version": "3.0.0-beta.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/autocomplete/-/autocomplete-3.0.0-beta.2.tgz",
+ "integrity": "sha512-oxsFCIGj5yooQkZzdqjvsdfr9fOlmAq4v6njIOAyQFsta3H0yQiv+YU3XnrnCBxVX+Mz/mZtZgfhAA9JBDukHg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/combobox": "^3.12.2",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/listbox": "^3.14.3",
+ "@react-aria/searchfield": "^3.8.3",
+ "@react-aria/textfield": "^3.17.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/autocomplete": "3.0.0-beta.1",
+ "@react-stately/combobox": "^3.10.4",
+ "@react-types/autocomplete": "3.0.0-alpha.30",
+ "@react-types/button": "^3.12.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6563,16 +6553,16 @@
}
},
"node_modules/@react-aria/breadcrumbs": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@react-aria/breadcrumbs/-/breadcrumbs-3.5.22.tgz",
- "integrity": "sha512-Jhx3eJqvuSUFL5/TzJ7EteluySdgKVkYGJ72Jz6AdEkiuoQAFbRZg4ferRIXQlmFL2cj7Z3jo8m8xGitebMtgw==",
+ "version": "3.5.23",
+ "resolved": "https://registry.npmjs.org/@react-aria/breadcrumbs/-/breadcrumbs-3.5.23.tgz",
+ "integrity": "sha512-4uLxuAgPfXds8sBc/Cg0ml7LKWzK+YTwHL7xclhQUkPO32rzlHDl+BJ5cyWhvZgGUf8JJXbXhD5VlJJzbbl8Xg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/link": "^3.7.10",
- "@react-aria/utils": "^3.28.1",
- "@react-types/breadcrumbs": "^3.7.11",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/link": "^3.8.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/breadcrumbs": "^3.7.12",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6581,17 +6571,17 @@
}
},
"node_modules/@react-aria/button": {
- "version": "3.12.1",
- "resolved": "https://registry.npmjs.org/@react-aria/button/-/button-3.12.1.tgz",
- "integrity": "sha512-IgCENCVUzjfI4nVgJ8T1z2oD81v3IO2Ku96jVljqZ/PWnFACsRikfLeo8xAob3F0LkRW4CTK4Tjy6BRDsy2l6A==",
+ "version": "3.13.0",
+ "resolved": "https://registry.npmjs.org/@react-aria/button/-/button-3.13.0.tgz",
+ "integrity": "sha512-BEcTQb7Q8ZrAtn0scPDv/ErZoGC1FI0sLk0UTPGskuh/RV9ZZGFbuSWTqOwV8w5CS6VMvPjH6vaE8hS7sb5DIw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/toolbar": "3.0.0-beta.14",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/toggle": "^3.8.2",
- "@react-types/button": "^3.11.0",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/toolbar": "3.0.0-beta.15",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/toggle": "^3.8.3",
+ "@react-types/button": "^3.12.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6600,20 +6590,20 @@
}
},
"node_modules/@react-aria/calendar": {
- "version": "3.7.2",
- "resolved": "https://registry.npmjs.org/@react-aria/calendar/-/calendar-3.7.2.tgz",
- "integrity": "sha512-q16jWzBCoMoohOF75rJbqh+4xlKOhagPC96jsARZmaqWOEHpFYGK/1rH9steC5+Dqe7y1nipAoLRynm18rrt3w==",
- "license": "Apache-2.0",
- "dependencies": {
- "@internationalized/date": "^3.7.0",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/live-announcer": "^3.4.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/calendar": "^3.7.1",
- "@react-types/button": "^3.11.0",
- "@react-types/calendar": "^3.6.1",
- "@react-types/shared": "^3.28.0",
+ "version": "3.8.0",
+ "resolved": "https://registry.npmjs.org/@react-aria/calendar/-/calendar-3.8.0.tgz",
+ "integrity": "sha512-9vms/fWjJPZkJcMxciwWWOjGy/Q0nqI6FV0pYbMZbqepkzglEaVd98kl506r/4hLhWKwLdTfqCgbntRecj8jBg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@internationalized/date": "^3.8.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/live-announcer": "^3.4.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/calendar": "^3.8.0",
+ "@react-types/button": "^3.12.0",
+ "@react-types/calendar": "^3.7.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6622,21 +6612,21 @@
}
},
"node_modules/@react-aria/checkbox": {
- "version": "3.15.3",
- "resolved": "https://registry.npmjs.org/@react-aria/checkbox/-/checkbox-3.15.3.tgz",
- "integrity": "sha512-/m5JYoGsi5L0NZnacgqEcMqBo6CcTmsJ9nAY/07MDCUJBcL/Xokd8cL/1K21n6K69MiCPcxORbSBdxJDm9dR0A==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/form": "^3.0.14",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/label": "^3.7.16",
- "@react-aria/toggle": "^3.11.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/checkbox": "^3.6.12",
- "@react-stately/form": "^3.1.2",
- "@react-stately/toggle": "^3.8.2",
- "@react-types/checkbox": "^3.9.2",
- "@react-types/shared": "^3.28.0",
+ "version": "3.15.4",
+ "resolved": "https://registry.npmjs.org/@react-aria/checkbox/-/checkbox-3.15.4.tgz",
+ "integrity": "sha512-ZkDJFs2EfMBXVIpBSo4ouB+NXyr2LRgZNp2x8/v+7n3aTmMU8j2PzT+Ra2geTQbC0glMP7UrSg4qZblqrxEBcQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/form": "^3.0.15",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/toggle": "^3.11.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/checkbox": "^3.6.13",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/toggle": "^3.8.3",
+ "@react-types/checkbox": "^3.9.3",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6645,15 +6635,15 @@
}
},
"node_modules/@react-aria/collections": {
- "version": "3.0.0-beta.1",
- "resolved": "https://registry.npmjs.org/@react-aria/collections/-/collections-3.0.0-beta.1.tgz",
- "integrity": "sha512-udrHajGknkDioGbuqOdWjQ2P7J6fYGlkVGuIJwLxML+WgrroC+i76A4BBOD4ifJKxVAZ8TMyGSztt4RUdn+jDA==",
+ "version": "3.0.0-rc.0",
+ "resolved": "https://registry.npmjs.org/@react-aria/collections/-/collections-3.0.0-rc.0.tgz",
+ "integrity": "sha512-WcRcE3wKtbprOJlBaMbdYS5Suu2KIGq1gVT2fLXVbmDY0CjGemqp2m5aDblQOO8pxvsAqHV8pyznkhANTnK1CQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/ssr": "^3.9.7",
- "@react-aria/utils": "^3.28.1",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/ssr": "^3.9.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0",
"use-sync-external-store": "^1.4.0"
},
@@ -6663,23 +6653,23 @@
}
},
"node_modules/@react-aria/color": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@react-aria/color/-/color-3.0.5.tgz",
- "integrity": "sha512-F+by1SOvH+qr47jhaZUYLCYMjRFxEBiG2UpNyd0iByIOweeXnU9sRHRAjLSWx/nULB6ZrUhNzE3XhI0SoZyHUw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/numberfield": "^3.11.12",
- "@react-aria/slider": "^3.7.17",
- "@react-aria/spinbutton": "^3.6.13",
- "@react-aria/textfield": "^3.17.1",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/visually-hidden": "^3.8.21",
- "@react-stately/color": "^3.8.3",
- "@react-stately/form": "^3.1.2",
- "@react-types/color": "^3.0.3",
- "@react-types/shared": "^3.28.0",
+ "version": "3.0.6",
+ "resolved": "https://registry.npmjs.org/@react-aria/color/-/color-3.0.6.tgz",
+ "integrity": "sha512-ik4Db9hrN1yIT0CQMB888ktBmrwA/kNhkfiDACtoUHv8Ev+YEpmagnmih9vMyW2vcnozYJpnn/aCMl59J5uMew==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/numberfield": "^3.11.13",
+ "@react-aria/slider": "^3.7.18",
+ "@react-aria/spinbutton": "^3.6.14",
+ "@react-aria/textfield": "^3.17.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/visually-hidden": "^3.8.22",
+ "@react-stately/color": "^3.8.4",
+ "@react-stately/form": "^3.1.3",
+ "@react-types/color": "^3.0.4",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6688,26 +6678,26 @@
}
},
"node_modules/@react-aria/combobox": {
- "version": "3.12.1",
- "resolved": "https://registry.npmjs.org/@react-aria/combobox/-/combobox-3.12.1.tgz",
- "integrity": "sha512-Al43cVQ2XiuPTCZ8jhz5Vmoj5Vqm6GADBtrL+XHZd7lM1gkD3q27GhKYiEt0jrcoBjjdqIiYWEaFLYg5LSQPzA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/listbox": "^3.14.2",
- "@react-aria/live-announcer": "^3.4.1",
- "@react-aria/menu": "^3.18.1",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/textfield": "^3.17.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/combobox": "^3.10.3",
- "@react-stately/form": "^3.1.2",
- "@react-types/button": "^3.11.0",
- "@react-types/combobox": "^3.13.3",
- "@react-types/shared": "^3.28.0",
+ "version": "3.12.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/combobox/-/combobox-3.12.2.tgz",
+ "integrity": "sha512-EgddiF8VnAjB4EynJERPn4IoDMUabI8GiKOQZ6Ar3MlRWxQnUfxPpZwXs8qWR3dPCzYUt2PhBinhBMjyR1yRIw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/listbox": "^3.14.3",
+ "@react-aria/live-announcer": "^3.4.2",
+ "@react-aria/menu": "^3.18.2",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/textfield": "^3.17.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/combobox": "^3.10.4",
+ "@react-stately/form": "^3.1.3",
+ "@react-types/button": "^3.12.0",
+ "@react-types/combobox": "^3.13.4",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6716,28 +6706,28 @@
}
},
"node_modules/@react-aria/datepicker": {
- "version": "3.14.1",
- "resolved": "https://registry.npmjs.org/@react-aria/datepicker/-/datepicker-3.14.1.tgz",
- "integrity": "sha512-77HaB+dFaMu7OpDQqjDiyZdaJlkwMgQHjTRvplBVc3Pau1sfQ1LdFC4+ZAXSbQTVSYt6GaN9S2tL4qoc+bO05w==",
- "license": "Apache-2.0",
- "dependencies": {
- "@internationalized/date": "^3.7.0",
- "@internationalized/number": "^3.6.0",
- "@internationalized/string": "^3.2.5",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/form": "^3.0.14",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/label": "^3.7.16",
- "@react-aria/spinbutton": "^3.6.13",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/datepicker": "^3.13.0",
- "@react-stately/form": "^3.1.2",
- "@react-types/button": "^3.11.0",
- "@react-types/calendar": "^3.6.1",
- "@react-types/datepicker": "^3.11.0",
- "@react-types/dialog": "^3.5.16",
- "@react-types/shared": "^3.28.0",
+ "version": "3.14.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/datepicker/-/datepicker-3.14.2.tgz",
+ "integrity": "sha512-O7fdzcqIJ7i/+8SGYvx4tloTZgK4Ws8OChdbFcd2rZoRPqxM50M6J+Ota8hTet2wIhojUXnM3x2na3EvoucBXA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@internationalized/date": "^3.8.0",
+ "@internationalized/number": "^3.6.1",
+ "@internationalized/string": "^3.2.6",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/form": "^3.0.15",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/spinbutton": "^3.6.14",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/datepicker": "^3.14.0",
+ "@react-stately/form": "^3.1.3",
+ "@react-types/button": "^3.12.0",
+ "@react-types/calendar": "^3.7.0",
+ "@react-types/datepicker": "^3.12.0",
+ "@react-types/dialog": "^3.5.17",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6746,16 +6736,16 @@
}
},
"node_modules/@react-aria/dialog": {
- "version": "3.5.23",
- "resolved": "https://registry.npmjs.org/@react-aria/dialog/-/dialog-3.5.23.tgz",
- "integrity": "sha512-ud8b4G5vcFEZPEjzdXrjOadwRMBKBDLiok6lIl1rsPkd1qnLMFxsl3787kct1Ex0PVVKOPlcH7feFw+1T7NsLw==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@react-aria/dialog/-/dialog-3.5.24.tgz",
+ "integrity": "sha512-tw0WH89gVpHMI5KUQhuzRE+IYCc9clRfDvCppuXNueKDrZmrQKbeoU6d0b5WYRsBur2+d7ErtvpLzHVqE1HzfA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/utils": "^3.28.1",
- "@react-types/dialog": "^3.5.16",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/dialog": "^3.5.17",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6764,15 +6754,15 @@
}
},
"node_modules/@react-aria/disclosure": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@react-aria/disclosure/-/disclosure-3.0.3.tgz",
- "integrity": "sha512-YMZG6NYugRMTElq4bspstML15KFUwZ+ZVUTSQHLLLLnwxkj+R9NbsDonMkH6lpgC02ru0Kgo2+1NljIGz9a5/Q==",
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@react-aria/disclosure/-/disclosure-3.0.4.tgz",
+ "integrity": "sha512-HXGVLA06BH0b/gN8dCTzWATwMikz8D+ahRxZiI0HDZxLADWGsSPqRXKN0GNAiBKbvPtvAbrwslE3pktk/SlU/w==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/ssr": "^3.9.7",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/disclosure": "^3.0.2",
- "@react-types/button": "^3.11.0",
+ "@react-aria/ssr": "^3.9.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/disclosure": "^3.0.3",
+ "@react-types/button": "^3.12.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6781,20 +6771,20 @@
}
},
"node_modules/@react-aria/dnd": {
- "version": "3.9.1",
- "resolved": "https://registry.npmjs.org/@react-aria/dnd/-/dnd-3.9.1.tgz",
- "integrity": "sha512-Rg43C+MQSr7IN1wv0iAemW59RANE39TsVs1QX9ryRh0Unc14jnm+GhZ928XNuu/rJ6BMUM8Cb9uQuYcVPgeDxA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@internationalized/string": "^3.2.5",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/live-announcer": "^3.4.1",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/dnd": "^3.5.2",
- "@react-types/button": "^3.11.0",
- "@react-types/shared": "^3.28.0",
+ "version": "3.9.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/dnd/-/dnd-3.9.2.tgz",
+ "integrity": "sha512-pPYygmJTjSPV2K/r48TvF75WuddG8d8nlIxAXSW22++WKqZ0z+eun6gDUXoKeB2rgY7sVfLqpRdnPV52AnBX+Q==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@internationalized/string": "^3.2.6",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/live-announcer": "^3.4.2",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/dnd": "^3.5.3",
+ "@react-types/button": "^3.12.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6803,14 +6793,14 @@
}
},
"node_modules/@react-aria/focus": {
- "version": "3.20.1",
- "resolved": "https://registry.npmjs.org/@react-aria/focus/-/focus-3.20.1.tgz",
- "integrity": "sha512-lgYs+sQ1TtBrAXnAdRBQrBo0/7o5H6IrfDxec1j+VRpcXL0xyk0xPq+m3lZp8typzIghqDgpnKkJ5Jf4OrzPIw==",
+ "version": "3.20.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/focus/-/focus-3.20.2.tgz",
+ "integrity": "sha512-Q3rouk/rzoF/3TuH6FzoAIKrl+kzZi9LHmr8S5EqLAOyP9TXIKG34x2j42dZsAhrw7TbF9gA8tBKwnCNH4ZV+Q==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0",
"clsx": "^2.0.0"
},
@@ -6820,15 +6810,15 @@
}
},
"node_modules/@react-aria/form": {
- "version": "3.0.14",
- "resolved": "https://registry.npmjs.org/@react-aria/form/-/form-3.0.14.tgz",
- "integrity": "sha512-UYoqdGetKV+4lwGnJ22sWKywobOWYBcOetiBYTlrrnCI6e5j1Jk5iLkLvesCOoI7yfWIW9Ban5Qpze5MUrXUhQ==",
+ "version": "3.0.15",
+ "resolved": "https://registry.npmjs.org/@react-aria/form/-/form-3.0.15.tgz",
+ "integrity": "sha512-kk8AnLz+EOgnn3sTaXYmtw+YzVDc1of/+xAkuOupQi6zQFnNRjc99JlDbKHoUZ39urMl+8lsp/1b9VPPhNrBNw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/form": "^3.1.2",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/form": "^3.1.3",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6837,23 +6827,23 @@
}
},
"node_modules/@react-aria/grid": {
- "version": "3.12.1",
- "resolved": "https://registry.npmjs.org/@react-aria/grid/-/grid-3.12.1.tgz",
- "integrity": "sha512-f0Sx/O6VVjNcg5xq0cLhA7QSCkZodV+/Y0UXJTg/NObqgPX/tqh/KNEy7zeVd22FS6SUpXV+fJU99yLPo37rjQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/live-announcer": "^3.4.1",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/grid": "^3.11.0",
- "@react-stately/selection": "^3.20.0",
- "@react-types/checkbox": "^3.9.2",
- "@react-types/grid": "^3.3.0",
- "@react-types/shared": "^3.28.0",
+ "version": "3.13.0",
+ "resolved": "https://registry.npmjs.org/@react-aria/grid/-/grid-3.13.0.tgz",
+ "integrity": "sha512-RcuJYA4fyJ83MH3SunU+P5BGkx3LJdQ6kxwqwWGIuI9eUKc7uVbqvN9WN3fI+L0QfxqBFmh7ffRxIdQn7puuzw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/live-announcer": "^3.4.2",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/grid": "^3.11.1",
+ "@react-stately/selection": "^3.20.1",
+ "@react-types/checkbox": "^3.9.3",
+ "@react-types/grid": "^3.3.1",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6862,21 +6852,21 @@
}
},
"node_modules/@react-aria/gridlist": {
- "version": "3.11.1",
- "resolved": "https://registry.npmjs.org/@react-aria/gridlist/-/gridlist-3.11.1.tgz",
- "integrity": "sha512-x2lrQO0kC+kdoCH+iUY6VsgoJlZ/x/w10dKc66npXeVC2EHo2InJDINt9VEIaANnh9i7TiTthdQVeePCP22tMQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/grid": "^3.12.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/list": "^3.12.0",
- "@react-stately/tree": "^3.8.8",
- "@react-types/shared": "^3.28.0",
+ "version": "3.12.0",
+ "resolved": "https://registry.npmjs.org/@react-aria/gridlist/-/gridlist-3.12.0.tgz",
+ "integrity": "sha512-KSpnSBYQ7ozGQNaRR2NGq7Fl2zIv5w9KNyO9V/IE2mxUNfX6fwqUPoANFcy9ySosksE7pPnFtuYIB+TQtUjYqQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/grid": "^3.13.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/list": "^3.12.1",
+ "@react-stately/tree": "^3.8.9",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6885,18 +6875,18 @@
}
},
"node_modules/@react-aria/i18n": {
- "version": "3.12.7",
- "resolved": "https://registry.npmjs.org/@react-aria/i18n/-/i18n-3.12.7.tgz",
- "integrity": "sha512-eLbYO2xrpeOKIEmLv2KD5LFcB0wltFqS+pUjsOzkKZg6H3b6AFDmJPxr/a0x2KGHtpGJvuHwCSbpPi9PzSSQLg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@internationalized/date": "^3.7.0",
- "@internationalized/message": "^3.1.6",
- "@internationalized/number": "^3.6.0",
- "@internationalized/string": "^3.2.5",
- "@react-aria/ssr": "^3.9.7",
- "@react-aria/utils": "^3.28.1",
- "@react-types/shared": "^3.28.0",
+ "version": "3.12.8",
+ "resolved": "https://registry.npmjs.org/@react-aria/i18n/-/i18n-3.12.8.tgz",
+ "integrity": "sha512-V/Nau9WuwTwxfFffQL4URyKyY2HhRlu9zmzkF2Hw/j5KmEQemD+9jfaLueG2CJu85lYL06JrZXUdnhZgKnqMkA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@internationalized/date": "^3.8.0",
+ "@internationalized/message": "^3.1.7",
+ "@internationalized/number": "^3.6.1",
+ "@internationalized/string": "^3.2.6",
+ "@react-aria/ssr": "^3.9.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6905,15 +6895,15 @@
}
},
"node_modules/@react-aria/interactions": {
- "version": "3.24.1",
- "resolved": "https://registry.npmjs.org/@react-aria/interactions/-/interactions-3.24.1.tgz",
- "integrity": "sha512-OWEcIC6UQfWq4Td5Ptuh4PZQ4LHLJr/JL2jGYvuNL6EgL3bWvzPrRYIF/R64YbfVxIC7FeZpPSkS07sZ93/NoA==",
+ "version": "3.25.0",
+ "resolved": "https://registry.npmjs.org/@react-aria/interactions/-/interactions-3.25.0.tgz",
+ "integrity": "sha512-GgIsDLlO8rDU/nFn6DfsbP9rfnzhm8QFjZkB9K9+r+MTSCn7bMntiWQgMM+5O6BiA8d7C7x4zuN4bZtc0RBdXQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/ssr": "^3.9.7",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/flags": "^3.1.0",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/ssr": "^3.9.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/flags": "^3.1.1",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6922,13 +6912,13 @@
}
},
"node_modules/@react-aria/label": {
- "version": "3.7.16",
- "resolved": "https://registry.npmjs.org/@react-aria/label/-/label-3.7.16.tgz",
- "integrity": "sha512-tPog3rc5pQ9s2/5bIBtmHtbj+Ebqs2yyJgJdFjZ1/HxrjF8HMrgtBPHCn/70YD5XvmuC3OSkua84kLjNX5rBbA==",
+ "version": "3.7.17",
+ "resolved": "https://registry.npmjs.org/@react-aria/label/-/label-3.7.17.tgz",
+ "integrity": "sha512-Fz7IC2LQT2Y/sAoV+gFEXoULtkznzmK2MmeTv5shTNjeTxzB1BhQbD4wyCypi7eGsnD/9Zy+8viULCsIUbvjWw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6937,13 +6927,13 @@
}
},
"node_modules/@react-aria/landmark": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@react-aria/landmark/-/landmark-3.0.1.tgz",
- "integrity": "sha512-rsbpmDfI8wmTcsOCaLdI2WuvM4z4yBZyOhMSdIxzKxxD0XPM03BBlegPqxZ/VisSwvXT8VB38r5STzmpH3ocLg==",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/landmark/-/landmark-3.0.2.tgz",
+ "integrity": "sha512-KVXa9s3fSgo/PiUjdbnPh3a1yS4t2bMZeVBPPzYAgQ4wcU2WjuLkhviw+5GWSWRfT+jpIMV7R/cmyvr0UHvRfg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0",
"use-sync-external-store": "^1.4.0"
},
@@ -6953,15 +6943,15 @@
}
},
"node_modules/@react-aria/link": {
- "version": "3.7.10",
- "resolved": "https://registry.npmjs.org/@react-aria/link/-/link-3.7.10.tgz",
- "integrity": "sha512-prf7s7O1PHAtA+H2przeGr8Ig4cBjk1f0kO0bQQAC3QvVOOUO7WLNU/N+xgOMNkCKEazDl21QM1o0bDRQCcXZg==",
+ "version": "3.8.0",
+ "resolved": "https://registry.npmjs.org/@react-aria/link/-/link-3.8.0.tgz",
+ "integrity": "sha512-gpDD6t3FqtFR9QjSIKNpmSR3tS4JG2anVKx2wixuRDHO6Ddexxv4SBzsE1+230p+FlFGjftFa2lEgQ7RNjZrmA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-types/link": "^3.5.11",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/link": "^3.6.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6970,19 +6960,19 @@
}
},
"node_modules/@react-aria/listbox": {
- "version": "3.14.2",
- "resolved": "https://registry.npmjs.org/@react-aria/listbox/-/listbox-3.14.2.tgz",
- "integrity": "sha512-pIwMNZs2WaH+XIax2yemI2CNs5LVV5ooVgEh7gTYoAVWj2eFa3Votmi54VlvkN937bhD5+blH32JRIu9U8XqVw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/label": "^3.7.16",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/list": "^3.12.0",
- "@react-types/listbox": "^3.5.5",
- "@react-types/shared": "^3.28.0",
+ "version": "3.14.3",
+ "resolved": "https://registry.npmjs.org/@react-aria/listbox/-/listbox-3.14.3.tgz",
+ "integrity": "sha512-wzelam1KENUvKjsTq8gfrOW2/iab8SyIaSXfFvGmWW82XlDTlW+oQeA39tvOZktMVGspr+xp8FySY09rtz6UXw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/list": "^3.12.1",
+ "@react-types/listbox": "^3.6.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -6991,33 +6981,33 @@
}
},
"node_modules/@react-aria/live-announcer": {
- "version": "3.4.1",
- "resolved": "https://registry.npmjs.org/@react-aria/live-announcer/-/live-announcer-3.4.1.tgz",
- "integrity": "sha512-4X2mcxgqLvvkqxv2l1n00jTzUxxe0kkLiapBGH1LHX/CxA1oQcHDqv8etJ2ZOwmS/MSBBiWnv3DwYHDOF6ubig==",
+ "version": "3.4.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/live-announcer/-/live-announcer-3.4.2.tgz",
+ "integrity": "sha512-6+yNF9ZrZ4YJ60Oxy2gKI4/xy6WUv1iePDCFJkgpNVuOEYi8W8czff8ctXu/RPB25OJx5v2sCw9VirRogTo2zA==",
"license": "Apache-2.0",
"dependencies": {
"@swc/helpers": "^0.5.0"
}
},
"node_modules/@react-aria/menu": {
- "version": "3.18.1",
- "resolved": "https://registry.npmjs.org/@react-aria/menu/-/menu-3.18.1.tgz",
- "integrity": "sha512-czdJFNBW/B7QodyLDyQ+TvT8tZjCru7PrhUDkJS36ie/pTeQDFpIczgYjmKfJs5pP6olqLKXbwJy1iNTh01WTQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/menu": "^3.9.2",
- "@react-stately/selection": "^3.20.0",
- "@react-stately/tree": "^3.8.8",
- "@react-types/button": "^3.11.0",
- "@react-types/menu": "^3.9.15",
- "@react-types/shared": "^3.28.0",
+ "version": "3.18.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/menu/-/menu-3.18.2.tgz",
+ "integrity": "sha512-90k+Ke1bhFWhR2zuRI6OwKWQrCpOD99n+9jhG96JZJZlNo5lB+5kS+ufG1LRv5GBnCug0ciLQmPMAfguVsCjEQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/menu": "^3.9.3",
+ "@react-stately/selection": "^3.20.1",
+ "@react-stately/tree": "^3.8.9",
+ "@react-types/button": "^3.12.0",
+ "@react-types/menu": "^3.10.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7026,14 +7016,14 @@
}
},
"node_modules/@react-aria/meter": {
- "version": "3.4.21",
- "resolved": "https://registry.npmjs.org/@react-aria/meter/-/meter-3.4.21.tgz",
- "integrity": "sha512-IjV4RdotPG3QC9Zjc8VaT+rvypB6yh9pUiEAjJEFhga+ORN/EWBLI8LHKhfep+50z8hH6AP3HLaKBUdZu+4WyQ==",
+ "version": "3.4.22",
+ "resolved": "https://registry.npmjs.org/@react-aria/meter/-/meter-3.4.22.tgz",
+ "integrity": "sha512-A/30vrtJO0xqctS/ngE1Lp/w3Aq3MPcpdRHU5E06EUYotzRzHFE9sNmezWslkZ3NfYwA/mxLvgmrsOJSR0Hx6A==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/progress": "^3.4.21",
- "@react-types/meter": "^3.4.7",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/progress": "^3.4.22",
+ "@react-types/meter": "^3.4.8",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7042,21 +7032,21 @@
}
},
"node_modules/@react-aria/numberfield": {
- "version": "3.11.12",
- "resolved": "https://registry.npmjs.org/@react-aria/numberfield/-/numberfield-3.11.12.tgz",
- "integrity": "sha512-VQ4dfaf+k7n2tbP8iB1OLFYTLCh9ReyV7dNLrDvH24V7ByaHakobZjwP8tF6CpvafNYaXPUflxnHpIgXvN3QYA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/spinbutton": "^3.6.13",
- "@react-aria/textfield": "^3.17.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/form": "^3.1.2",
- "@react-stately/numberfield": "^3.9.10",
- "@react-types/button": "^3.11.0",
- "@react-types/numberfield": "^3.8.9",
- "@react-types/shared": "^3.28.0",
+ "version": "3.11.13",
+ "resolved": "https://registry.npmjs.org/@react-aria/numberfield/-/numberfield-3.11.13.tgz",
+ "integrity": "sha512-F73BVdIRV8VvKl0omhGaf0E7mdJ7pdPjDP3wYNf410t55BXPxmndItUKpGfxSbl8k6ZYLvQyOqkD6oWSfZXpZw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/spinbutton": "^3.6.14",
+ "@react-aria/textfield": "^3.17.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/numberfield": "^3.9.11",
+ "@react-types/button": "^3.12.0",
+ "@react-types/numberfield": "^3.8.10",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7065,21 +7055,21 @@
}
},
"node_modules/@react-aria/overlays": {
- "version": "3.26.1",
- "resolved": "https://registry.npmjs.org/@react-aria/overlays/-/overlays-3.26.1.tgz",
- "integrity": "sha512-AtQ0mp+H0alFFkojKBADEUIc1AKFsSobH4QNoxQa3V4bZKQoXxga7cRhD5RRYanu3XCQOkIxZJ3vdVK/LVVBXA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/ssr": "^3.9.7",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/visually-hidden": "^3.8.21",
- "@react-stately/overlays": "^3.6.14",
- "@react-types/button": "^3.11.0",
- "@react-types/overlays": "^3.8.13",
- "@react-types/shared": "^3.28.0",
+ "version": "3.27.0",
+ "resolved": "https://registry.npmjs.org/@react-aria/overlays/-/overlays-3.27.0.tgz",
+ "integrity": "sha512-2vZVgL7FrloN5Rh8sAhadGADJbuWg69DdSJB3fd2/h5VvcEhnIfNPu9Ma5XmdkApDoTboIEsKZ4QLYwRl98w6w==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/ssr": "^3.9.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/visually-hidden": "^3.8.22",
+ "@react-stately/overlays": "^3.6.15",
+ "@react-types/button": "^3.12.0",
+ "@react-types/overlays": "^3.8.14",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7088,16 +7078,16 @@
}
},
"node_modules/@react-aria/progress": {
- "version": "3.4.21",
- "resolved": "https://registry.npmjs.org/@react-aria/progress/-/progress-3.4.21.tgz",
- "integrity": "sha512-KNjoJTY2AU3L+3rozwC81lwDWn6Yk2XQbcQaxEs5frRBbuiCD7hEdrerLIgKa/J85e61MDuEel0Onc0kV9kpyw==",
+ "version": "3.4.22",
+ "resolved": "https://registry.npmjs.org/@react-aria/progress/-/progress-3.4.22.tgz",
+ "integrity": "sha512-wK2hath4C9HKgmjCH+iSrAs86sUKqqsYKbEKk9/Rj9rzXqHyaEK9EG0YZDnSjd8kX+N9hYcs5MfJl6AZMH4juQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/label": "^3.7.16",
- "@react-aria/utils": "^3.28.1",
- "@react-types/progress": "^3.5.10",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/progress": "^3.5.11",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7106,20 +7096,20 @@
}
},
"node_modules/@react-aria/radio": {
- "version": "3.11.1",
- "resolved": "https://registry.npmjs.org/@react-aria/radio/-/radio-3.11.1.tgz",
- "integrity": "sha512-plAO5MW+QD9/kMe5NNKBzKf/+b6CywdoZ5a1T/VbvkBQYYcHaYQeBuKQ4l+hF+OY2tKAWP0rrjv7tEtacPc9TA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/form": "^3.0.14",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/label": "^3.7.16",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/radio": "^3.10.11",
- "@react-types/radio": "^3.8.7",
- "@react-types/shared": "^3.28.0",
+ "version": "3.11.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/radio/-/radio-3.11.2.tgz",
+ "integrity": "sha512-6AFJHXMewJBgHNhqkN1qjgwwx6kmagwYD+3Z+hNK1UHTsKe1Uud5/IF7gPFCqlZeKxA+Lvn9gWiqJrQbtD2+wg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/form": "^3.0.15",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/radio": "^3.10.12",
+ "@react-types/radio": "^3.8.8",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7128,18 +7118,18 @@
}
},
"node_modules/@react-aria/searchfield": {
- "version": "3.8.2",
- "resolved": "https://registry.npmjs.org/@react-aria/searchfield/-/searchfield-3.8.2.tgz",
- "integrity": "sha512-xOhmzDd04CAl2d5L/g+PPqUSFCN7Ue11M9qTHnjoQ3HDJ4D82vY7Qik/crKGpJ2bV5ZoRxRuFaebqGRKCiJhSQ==",
+ "version": "3.8.3",
+ "resolved": "https://registry.npmjs.org/@react-aria/searchfield/-/searchfield-3.8.3.tgz",
+ "integrity": "sha512-t1DW3nUkPHyZhFhUbT+TdhvI8yZYvUPCuwl0FyraMRCQ4+ww5Ieu4n8JB9IGYmIUB/GWEbZlDHplu4s3efmliA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/textfield": "^3.17.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/searchfield": "^3.5.10",
- "@react-types/button": "^3.11.0",
- "@react-types/searchfield": "^3.6.0",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/textfield": "^3.17.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/searchfield": "^3.5.11",
+ "@react-types/button": "^3.12.0",
+ "@react-types/searchfield": "^3.6.1",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7148,24 +7138,24 @@
}
},
"node_modules/@react-aria/select": {
- "version": "3.15.3",
- "resolved": "https://registry.npmjs.org/@react-aria/select/-/select-3.15.3.tgz",
- "integrity": "sha512-HNtDZTASz6Zt9cFUK+9rmS3XmTwVz/tx1+7W3NNGy5Xx4J8hua0BymcbKiC+Pp/ibPGJT4b7KYyE2N9J17/95w==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/form": "^3.0.14",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/label": "^3.7.16",
- "@react-aria/listbox": "^3.14.2",
- "@react-aria/menu": "^3.18.1",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/visually-hidden": "^3.8.21",
- "@react-stately/select": "^3.6.11",
- "@react-types/button": "^3.11.0",
- "@react-types/select": "^3.9.10",
- "@react-types/shared": "^3.28.0",
+ "version": "3.15.4",
+ "resolved": "https://registry.npmjs.org/@react-aria/select/-/select-3.15.4.tgz",
+ "integrity": "sha512-CipqXgdOfWsiHw/chfqd8t9IQpvehP+3uKLJx3ic4Uyj+FT/SxVmmjX0gyvVbZd00ltFCMJYO2xYKQUlbW2AtQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/form": "^3.0.15",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/listbox": "^3.14.3",
+ "@react-aria/menu": "^3.18.2",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/visually-hidden": "^3.8.22",
+ "@react-stately/select": "^3.6.12",
+ "@react-types/button": "^3.12.0",
+ "@react-types/select": "^3.9.11",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7174,17 +7164,17 @@
}
},
"node_modules/@react-aria/selection": {
- "version": "3.23.1",
- "resolved": "https://registry.npmjs.org/@react-aria/selection/-/selection-3.23.1.tgz",
- "integrity": "sha512-z4vVw7Fw0+nK46PPlCV8TyieCS+EOUp3eguX8833fFJ/QDlFp3Ewgw2T5qCIix5U3siXPYU0ZmAMOdrjibdGpQ==",
+ "version": "3.24.0",
+ "resolved": "https://registry.npmjs.org/@react-aria/selection/-/selection-3.24.0.tgz",
+ "integrity": "sha512-RfGXVc04zz41NVIW89/a3quURZ4LT/GJLkiajQK2VjhisidPdrAWkcfjjWJj0n+tm5gPWbi9Rs5R/Rc8mrvq8Q==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/selection": "^3.20.0",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/selection": "^3.20.1",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7193,13 +7183,13 @@
}
},
"node_modules/@react-aria/separator": {
- "version": "3.4.7",
- "resolved": "https://registry.npmjs.org/@react-aria/separator/-/separator-3.4.7.tgz",
- "integrity": "sha512-zALorCd1my7AAYjRCgR1RdI/w8usVH4GCD8d8MsNyKhZUSDn+TxeriDioNllfgL51rxFRFtnWFhD3/qYVK/vCg==",
+ "version": "3.4.8",
+ "resolved": "https://registry.npmjs.org/@react-aria/separator/-/separator-3.4.8.tgz",
+ "integrity": "sha512-ncuOSTBF/qbNumnW/IRz+xyr+Ud85eCF0Expw4XWhKjAZfzJd86MxPY5ZsxE7pYLOcRWdOSIH1/obwwwSz8ALQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7208,18 +7198,18 @@
}
},
"node_modules/@react-aria/slider": {
- "version": "3.7.17",
- "resolved": "https://registry.npmjs.org/@react-aria/slider/-/slider-3.7.17.tgz",
- "integrity": "sha512-B+pdHiuM9G6zLYqvkMWAEiP2AppyC3IU032yUxBUrzh3DDoHPgU8HyFurFKS0diwigzcCBcq0yQ1YTalPzWV5A==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/label": "^3.7.16",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/slider": "^3.6.2",
- "@react-types/shared": "^3.28.0",
- "@react-types/slider": "^3.7.9",
+ "version": "3.7.18",
+ "resolved": "https://registry.npmjs.org/@react-aria/slider/-/slider-3.7.18.tgz",
+ "integrity": "sha512-GBVv5Rpvj/6JH2LnF1zVAhBmxGiuq7R8Ekqyr5kBrCc2ToF3PrTjfGc/mlh0eEtbj+NvAcnlgTx1/qosYt1sGw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/slider": "^3.6.3",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/slider": "^3.7.10",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7228,16 +7218,16 @@
}
},
"node_modules/@react-aria/spinbutton": {
- "version": "3.6.13",
- "resolved": "https://registry.npmjs.org/@react-aria/spinbutton/-/spinbutton-3.6.13.tgz",
- "integrity": "sha512-phF7WU4mTryPY+IORqQC6eGvCdLItJ41KJ8ZWmpubnLkhqyyxBn8BirXlxWC5UIIvir9c3oohX2Vip/bE5WJiA==",
+ "version": "3.6.14",
+ "resolved": "https://registry.npmjs.org/@react-aria/spinbutton/-/spinbutton-3.6.14.tgz",
+ "integrity": "sha512-oSKe9p0Q/7W39eXRnLxlwJG5dQo4ffosRT3u2AtOcFkk2Zzj+tSQFzHQ4202nrWdzRnQ2KLTgUUNnUvXf0BJcg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/live-announcer": "^3.4.1",
- "@react-aria/utils": "^3.28.1",
- "@react-types/button": "^3.11.0",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/live-announcer": "^3.4.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/button": "^3.12.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7246,9 +7236,9 @@
}
},
"node_modules/@react-aria/ssr": {
- "version": "3.9.7",
- "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.9.7.tgz",
- "integrity": "sha512-GQygZaGlmYjmYM+tiNBA5C6acmiDWF52Nqd40bBp0Znk4M4hP+LTmI0lpI1BuKMw45T8RIhrAsICIfKwZvi2Gg==",
+ "version": "3.9.8",
+ "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.9.8.tgz",
+ "integrity": "sha512-lQDE/c9uTfBSDOjaZUJS8xP2jCKVk4zjQeIlCH90xaLhHDgbpCdns3xvFpJJujfj3nI4Ll9K7A+ONUBDCASOuw==",
"license": "Apache-2.0",
"dependencies": {
"@swc/helpers": "^0.5.0"
@@ -7261,15 +7251,15 @@
}
},
"node_modules/@react-aria/switch": {
- "version": "3.7.1",
- "resolved": "https://registry.npmjs.org/@react-aria/switch/-/switch-3.7.1.tgz",
- "integrity": "sha512-CE7G9pPeltbE5wEVIPlrbjarYoMNS8gsb3+RD4Be/ghKSpwppmQyn12WIs6oQl3YQSBD/GZhfA6OTyOBo0Ro9A==",
+ "version": "3.7.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/switch/-/switch-3.7.2.tgz",
+ "integrity": "sha512-vaREbp1gFjv+jEMXoXpNK7JYFO/jhwnSYAwEINNWnwf54IGeHvTPaB2NwolYSFvP4HAj8TKYbGFUSz7RKLhLgw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/toggle": "^3.11.1",
- "@react-stately/toggle": "^3.8.2",
- "@react-types/shared": "^3.28.0",
- "@react-types/switch": "^3.5.9",
+ "@react-aria/toggle": "^3.11.2",
+ "@react-stately/toggle": "^3.8.3",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/switch": "^3.5.10",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7278,25 +7268,25 @@
}
},
"node_modules/@react-aria/table": {
- "version": "3.17.1",
- "resolved": "https://registry.npmjs.org/@react-aria/table/-/table-3.17.1.tgz",
- "integrity": "sha512-yRZoeNwg+7ZNdq7kP9x+u9yMBL4spIdWvY9XTrYGq2XzNzl1aUUBNVszOV3hOwiU0DEF2zzUuuc8gc8Wys40zw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/grid": "^3.12.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/live-announcer": "^3.4.1",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/visually-hidden": "^3.8.21",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/flags": "^3.1.0",
- "@react-stately/table": "^3.14.0",
- "@react-types/checkbox": "^3.9.2",
- "@react-types/grid": "^3.3.0",
- "@react-types/shared": "^3.28.0",
- "@react-types/table": "^3.11.0",
+ "version": "3.17.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/table/-/table-3.17.2.tgz",
+ "integrity": "sha512-wsF3JqiAKcol1sfeNqTxyzH6+nxu0sAfyuh+XQfp1tvSGx15NifYeNKovNX4EPpUVkAI7jL5Le+eYeYYGELfnw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/grid": "^3.13.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/live-announcer": "^3.4.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/visually-hidden": "^3.8.22",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/flags": "^3.1.1",
+ "@react-stately/table": "^3.14.1",
+ "@react-types/checkbox": "^3.9.3",
+ "@react-types/grid": "^3.3.1",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/table": "^3.12.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7305,18 +7295,18 @@
}
},
"node_modules/@react-aria/tabs": {
- "version": "3.10.1",
- "resolved": "https://registry.npmjs.org/@react-aria/tabs/-/tabs-3.10.1.tgz",
- "integrity": "sha512-9tcmp4L0cCTSkJAVvsw5XkjTs4MP4ajJsWPc9IUXYoutZWSDs2igqx3/7KKjRM4OrjSolNXFf8uWyr9Oqg+vCg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/tabs": "^3.8.0",
- "@react-types/shared": "^3.28.0",
- "@react-types/tabs": "^3.3.13",
+ "version": "3.10.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/tabs/-/tabs-3.10.2.tgz",
+ "integrity": "sha512-rpEgh//Gnew3le49tQVFOQ6ZyacJdaNUDXHt0ocguXb+2UrKtH54M8oIAE7E8KaB1puQlFXRs+Rjlr1rOlmjEQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/tabs": "^3.8.1",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/tabs": "^3.3.14",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7325,20 +7315,20 @@
}
},
"node_modules/@react-aria/tag": {
- "version": "3.5.1",
- "resolved": "https://registry.npmjs.org/@react-aria/tag/-/tag-3.5.1.tgz",
- "integrity": "sha512-dFB7bFeCoCZmyiTKwCsXPcQgqPMtqCtdF9B2gn9S/P6esXrPPr5jCvZKyKFZidbKpqiaQnj+SAln5qPBEftoSg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/gridlist": "^3.11.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/label": "^3.7.16",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/list": "^3.12.0",
- "@react-types/button": "^3.11.0",
- "@react-types/shared": "^3.28.0",
+ "version": "3.5.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/tag/-/tag-3.5.2.tgz",
+ "integrity": "sha512-xZ5Df0x+xcDg6UTDvnjP4pu+XrmYVaYcqzF7RGoCD1KyRCHU5Czg9p+888NB0K+vnJHfNsQh6rmMhDUydXu9eg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/gridlist": "^3.12.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/list": "^3.12.1",
+ "@react-types/button": "^3.12.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7347,19 +7337,19 @@
}
},
"node_modules/@react-aria/textfield": {
- "version": "3.17.1",
- "resolved": "https://registry.npmjs.org/@react-aria/textfield/-/textfield-3.17.1.tgz",
- "integrity": "sha512-W/4nBdyXTOFPQXJ8eRK+74QFIpGR+x24SRjdl+y3WO6gFJNiiopWj8+slSK/T8LoD3g3QlzrtX/ooVQHCG3uQw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/form": "^3.0.14",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/label": "^3.7.16",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/form": "^3.1.2",
- "@react-stately/utils": "^3.10.5",
- "@react-types/shared": "^3.28.0",
- "@react-types/textfield": "^3.12.0",
+ "version": "3.17.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/textfield/-/textfield-3.17.2.tgz",
+ "integrity": "sha512-4KINB0HueYUHUgvi/ThTP27hu4Mv5ujG55pH3dmSRD4Olu/MRy1m/Psq72o8LTf4bTOM9ZP1rKccUg6xfaMidA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/form": "^3.0.15",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/textfield": "^3.12.1",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7368,18 +7358,18 @@
}
},
"node_modules/@react-aria/toast": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@react-aria/toast/-/toast-3.0.1.tgz",
- "integrity": "sha512-WDzKvQsroIowe4y/5dsZDakG4g0mDju4ZhcEPY3SFVnEBbAH1k0fwSgfygDWZdwg9FS3+oA1IYcbVt4ClK3Vfg==",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/toast/-/toast-3.0.2.tgz",
+ "integrity": "sha512-iaiHDE1CKYM3BbNEp3A2Ed8YAlpXUGyY6vesKISdHEZ2lJ7r+1hbcFoTNdG8HfbB8Lz5vw8Wd2o+ZmQ2tnDY9Q==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/landmark": "^3.0.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/toast": "^3.0.0",
- "@react-types/button": "^3.11.0",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/landmark": "^3.0.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/toast": "^3.1.0",
+ "@react-types/button": "^3.12.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7388,16 +7378,16 @@
}
},
"node_modules/@react-aria/toggle": {
- "version": "3.11.1",
- "resolved": "https://registry.npmjs.org/@react-aria/toggle/-/toggle-3.11.1.tgz",
- "integrity": "sha512-9SBvSFpGcLODN1u64tQ8aL6uLFnuuJRA2N0Kjmxp5PE1gk8IKG+BXsjZmq7auDAN5WPISBXw1RzEOmbghruBTQ==",
+ "version": "3.11.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/toggle/-/toggle-3.11.2.tgz",
+ "integrity": "sha512-JOg8yYYCjLDnEpuggPo9GyXFaT/B238d3R8i/xQ6KLelpi3fXdJuZlFD6n9NQp3DJbE8Wj+wM5/VFFAi3cISpw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/toggle": "^3.8.2",
- "@react-types/checkbox": "^3.9.2",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/toggle": "^3.8.3",
+ "@react-types/checkbox": "^3.9.3",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7406,15 +7396,15 @@
}
},
"node_modules/@react-aria/toolbar": {
- "version": "3.0.0-beta.14",
- "resolved": "https://registry.npmjs.org/@react-aria/toolbar/-/toolbar-3.0.0-beta.14.tgz",
- "integrity": "sha512-F9wFYhcbVUveo6+JfAjKyz19BnBaXBYG7YyZdGurhn5E1bD+Zrwz/ZCTrrx40xJsbofciCiiwnKiXmzB20Kl5Q==",
+ "version": "3.0.0-beta.15",
+ "resolved": "https://registry.npmjs.org/@react-aria/toolbar/-/toolbar-3.0.0-beta.15.tgz",
+ "integrity": "sha512-PNGpNIKIsCW8rxI9XXSADlLrSpikILJKKECyTRw9KwvXDRc44pezvdjGHCNinQcKsQoy5BtkK5cTSAyVqzzTXQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/utils": "^3.28.1",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7423,16 +7413,16 @@
}
},
"node_modules/@react-aria/tooltip": {
- "version": "3.8.1",
- "resolved": "https://registry.npmjs.org/@react-aria/tooltip/-/tooltip-3.8.1.tgz",
- "integrity": "sha512-g5Vr5HFGfLQRxdYs8nZeXeNrni5YcRGegRjnEDUZwW+Gwvu8KTrD7IeXrBDndS+XoTzKC4MzfvtyXWWpYmT0KQ==",
+ "version": "3.8.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/tooltip/-/tooltip-3.8.2.tgz",
+ "integrity": "sha512-ctVTgh1LXvmr1ve3ehAWfvlJR7nHYZeqhl/g1qnA+983LQtc1IF9MraCs92g0m7KpBwCihuA+aYwTPsUHfKfXg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/tooltip": "^3.5.2",
- "@react-types/shared": "^3.28.0",
- "@react-types/tooltip": "^3.4.15",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/tooltip": "^3.5.3",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/tooltip": "^3.4.16",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7441,18 +7431,18 @@
}
},
"node_modules/@react-aria/tree": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@react-aria/tree/-/tree-3.0.1.tgz",
- "integrity": "sha512-USYRpbpbUChDFSquCc6eYQ+czTuge5m9XH1F/xfSJD0gEe9BG7dRJ9GB/dy6yBoZoNy3VWpTNrHUfPnmiKpgUw==",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/tree/-/tree-3.0.2.tgz",
+ "integrity": "sha512-gr06Y1760+kdlDeUcGNR+PCuJMtlrdtNMGG1Z0fSygy8y7/zVdTOLQp0c1Q3pjL2nr7Unjz/H1xSgERParHsbg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/gridlist": "^3.11.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/tree": "^3.8.8",
- "@react-types/button": "^3.11.0",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/gridlist": "^3.12.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/tree": "^3.8.9",
+ "@react-types/button": "^3.12.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7461,15 +7451,15 @@
}
},
"node_modules/@react-aria/utils": {
- "version": "3.28.1",
- "resolved": "https://registry.npmjs.org/@react-aria/utils/-/utils-3.28.1.tgz",
- "integrity": "sha512-mnHFF4YOVu9BRFQ1SZSKfPhg3z+lBRYoW5mLcYTQihbKhz48+I1sqRkP7ahMITr8ANH3nb34YaMME4XWmK2Mgg==",
+ "version": "3.28.2",
+ "resolved": "https://registry.npmjs.org/@react-aria/utils/-/utils-3.28.2.tgz",
+ "integrity": "sha512-J8CcLbvnQgiBn54eeEvQQbIOfBF3A1QizxMw9P4cl9MkeR03ug7RnjTIdJY/n2p7t59kLeAB3tqiczhcj+Oi5w==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/ssr": "^3.9.7",
- "@react-stately/flags": "^3.1.0",
- "@react-stately/utils": "^3.10.5",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/ssr": "^3.9.8",
+ "@react-stately/flags": "^3.1.1",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0",
"clsx": "^2.0.0"
},
@@ -7479,16 +7469,16 @@
}
},
"node_modules/@react-aria/virtualizer": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/@react-aria/virtualizer/-/virtualizer-4.1.3.tgz",
- "integrity": "sha512-WzxqQa0mVw96EKHWZIJYQlZfmpOJNpj7PX2Bliawm4rkSS1hpw38waQEHyR95Aexk4vTo5OQnO3w8pun0LXfqg==",
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/@react-aria/virtualizer/-/virtualizer-4.1.4.tgz",
+ "integrity": "sha512-SBKD2K+kBc3aLMVEqnBXjpqLhUSyvoi1ubSgUS5KMIqgyn44OWn5zKTsj9SIPZot6buSlgV2700TIWDhEJzWlw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-stately/virtualizer": "^4.3.1",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-stately/virtualizer": "^4.3.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7497,14 +7487,14 @@
}
},
"node_modules/@react-aria/visually-hidden": {
- "version": "3.8.21",
- "resolved": "https://registry.npmjs.org/@react-aria/visually-hidden/-/visually-hidden-3.8.21.tgz",
- "integrity": "sha512-iii5qO+cVHrHiOeiBYCnTRUQG2eOgEPFmiMG4dAuby8+pJJ8U4BvffX2sDTYWL6ztLLBYyrsUHPSw1Ld03JhmA==",
+ "version": "3.8.22",
+ "resolved": "https://registry.npmjs.org/@react-aria/visually-hidden/-/visually-hidden-3.8.22.tgz",
+ "integrity": "sha512-EO3R8YTKZ7HkLl9k1Y2uBKYBgpJagth4/4W7mfpJZE24A3fQnCP8zx1sweXiAm0mirR4J6tNaK7Ia8ssP5TpOw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7543,17 +7533,17 @@
"license": "MIT"
},
"node_modules/@react-spectrum/accordion": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@react-spectrum/accordion/-/accordion-3.0.4.tgz",
- "integrity": "sha512-1xZXTCW1C6lXOzrhijALCUHGnQtRasphp2WgP8/wFd45cQLtSiOyEzerF2DKsaSYhPlN1cqM7ih0O4H5a4d+sQ==",
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/accordion/-/accordion-3.0.5.tgz",
+ "integrity": "sha512-q+J9DgKVS19LXwIEohtj/GRBGDu5YbGKLLAci/boPjpdFFnUi8OvHp3xhk9Y8oUkYu1VSUpvMq2NiIRgz8M+OQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0",
- "react-aria-components": "^1.7.1"
+ "react-aria-components": "^1.8.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
@@ -7562,25 +7552,25 @@
}
},
"node_modules/@react-spectrum/actionbar": {
- "version": "3.6.5",
- "resolved": "https://registry.npmjs.org/@react-spectrum/actionbar/-/actionbar-3.6.5.tgz",
- "integrity": "sha512-1osbxEXAvVdBvDjZOCXYD8xFe/LgNOiLvuLPXPMsfRHewePtbiP+sdJ5hoD6QYaIdXJuc42SvPwroEF/PGEmmg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/live-announcer": "^3.4.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/actiongroup": "^3.10.13",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/overlays": "^5.7.3",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/collections": "^3.12.2",
- "@react-types/actionbar": "^3.1.13",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.6.6",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/actionbar/-/actionbar-3.6.6.tgz",
+ "integrity": "sha512-EVZJq7cgnWVt9toWn++gDBrD0YKleG7B9/aXRGpbHKQxu5rSf4kmb2x423mIIrSxONJ121+y5PKytGIQyTyQaw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/live-announcer": "^3.4.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/actiongroup": "^3.10.14",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/overlays": "^5.7.4",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/collections": "^3.12.3",
+ "@react-types/actionbar": "^3.1.14",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7590,26 +7580,26 @@
}
},
"node_modules/@react-spectrum/actiongroup": {
- "version": "3.10.13",
- "resolved": "https://registry.npmjs.org/@react-spectrum/actiongroup/-/actiongroup-3.10.13.tgz",
- "integrity": "sha512-zUEVy11yiFxHbIe0H7d2G3UAqynGa/fKxRuAuC5eOuMSYT6nhe/8DoS/8SQflBwvDp4/9jbCQjrnmY27GFVSMg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/actiongroup": "^3.7.14",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/menu": "^3.21.3",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/tooltip": "^3.7.3",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/list": "^3.12.0",
- "@react-types/actiongroup": "^3.4.15",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
- "@spectrum-icons/workflow": "^4.2.19",
+ "version": "3.10.14",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/actiongroup/-/actiongroup-3.10.14.tgz",
+ "integrity": "sha512-0b8Mh+49QCacHVLX17gX3XfUhXM+QrTbTyHwNBjMyNE09162PZhvzIboST4f74bBqhAZunh9c4buyo2oRFZL0A==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/actiongroup": "^3.7.15",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/menu": "^3.22.0",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/tooltip": "^3.7.4",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/list": "^3.12.1",
+ "@react-types/actiongroup": "^3.4.16",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
+ "@spectrum-icons/workflow": "^4.2.20",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7619,15 +7609,15 @@
}
},
"node_modules/@react-spectrum/avatar": {
- "version": "3.0.20",
- "resolved": "https://registry.npmjs.org/@react-spectrum/avatar/-/avatar-3.0.20.tgz",
- "integrity": "sha512-g+Iuv87FMP5PINWF9v3zFfweM6lCRdov6dH4/wXQT2iU/j1nNOAFjVMcUsA1YL2+VaF5PgvGqbQGXRN9PgTO1Q==",
+ "version": "3.0.21",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/avatar/-/avatar-3.0.21.tgz",
+ "integrity": "sha512-40UL8VWgOpANhwgo2CY1JOTCzYkXxTovcMZDHJZRBIFjPcBD+ikjjLl4nzohcwjGjkYIhgXptGDmH8bzO5Fzdw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/avatar": "^3.0.13",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/avatar": "^3.0.14",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7637,16 +7627,16 @@
}
},
"node_modules/@react-spectrum/badge": {
- "version": "3.1.21",
- "resolved": "https://registry.npmjs.org/@react-spectrum/badge/-/badge-3.1.21.tgz",
- "integrity": "sha512-tYufwYNK8UUY/oGVl9/8ttoq1KR2NLku5xT7wzlfeJMuXUg6nd24anv/ojj39cKANtGhEWrYZYz/Pl1CDOpBwA==",
+ "version": "3.1.22",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/badge/-/badge-3.1.22.tgz",
+ "integrity": "sha512-+OO6HBoXuqMmtrKxb2GaVyBT3Mu3bIl3EIv/vmn7RGHX+s/2c/2izTh6wsqUkUtPyVy2rElmaWWMLd38coPVGQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/badge": "^3.1.15",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/badge": "^3.1.16",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7656,23 +7646,23 @@
}
},
"node_modules/@react-spectrum/breadcrumbs": {
- "version": "3.9.15",
- "resolved": "https://registry.npmjs.org/@react-spectrum/breadcrumbs/-/breadcrumbs-3.9.15.tgz",
- "integrity": "sha512-98K3T4PgRiHp8X6NFAUjT/F5M1slN1qcmi+SPf/l7b2FIdQx0ELXVcq4c+MqrCXeiNSa6GwCjN/y/SaE6F3UKw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/breadcrumbs": "^3.5.22",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/menu": "^3.21.3",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/collections": "^3.12.2",
- "@react-types/breadcrumbs": "^3.7.11",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.9.16",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/breadcrumbs/-/breadcrumbs-3.9.16.tgz",
+ "integrity": "sha512-+lUuHPJ6cNwLeHh9L/ufIoTP9hJCNyKjlrNIXg70YxBnXKtI06A7otSnsQITUmouenIefS//nKhQ+d1CRWsUlQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/breadcrumbs": "^3.5.23",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/menu": "^3.22.0",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/collections": "^3.12.3",
+ "@react-types/breadcrumbs": "^3.7.12",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7682,40 +7672,41 @@
}
},
"node_modules/@react-spectrum/button": {
- "version": "3.16.12",
- "resolved": "https://registry.npmjs.org/@react-spectrum/button/-/button-3.16.12.tgz",
- "integrity": "sha512-Re8QLbyi5xXETAfzoNjtnUnlCj49SmznZTrfcnZPDaCMOTDeeucmJw7PbSdCVQpKeOoHS/jBaEqGAyO7mrxKdw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/button": "^3.12.1",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/progress": "^3.7.14",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/toggle": "^3.8.2",
- "@react-types/button": "^3.11.0",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.16.13",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/button/-/button-3.16.13.tgz",
+ "integrity": "sha512-HnAcRM1d4DMrIRND73A6Idpyeuf60HT6ogbhdXetTkFmaj77XWaKxY2/UA0oMK5t3CGKD8Nq9mnE80SXe9hAbA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/button": "^3.13.0",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/progress": "^3.7.15",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/toggle": "^3.8.3",
+ "@react-types/button": "^3.12.0",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-spectrum/buttongroup": {
- "version": "3.6.20",
- "resolved": "https://registry.npmjs.org/@react-spectrum/buttongroup/-/buttongroup-3.6.20.tgz",
- "integrity": "sha512-dXyRfrSvl1mKOFVDIm95NnzvpktESjWPw/oFOcz9JH3KCIyewVgFPirO9K8RaiOZDmKvSvqKTjxFSdDHGXg7Nw==",
+ "version": "3.6.21",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/buttongroup/-/buttongroup-3.6.21.tgz",
+ "integrity": "sha512-Se2orOk7qLIMx8ifqaj/jMrhQYicOqc0ry/ib37UkYPSg8iM425U1ttCt3URfqGjDrj3c7qHd2pWINYRriVv3w==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/buttongroup": "^3.3.15",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/buttongroup": "^3.3.16",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7725,26 +7716,26 @@
}
},
"node_modules/@react-spectrum/calendar": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/@react-spectrum/calendar/-/calendar-3.6.2.tgz",
- "integrity": "sha512-oZ+dTdMhgtkKvWHsVy6epVNEHm/5RJ7QDusWYrJJChk1nPW6HOZsvxfGZF7TaRY/0GlECheve8iiOd1P2vkDxw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@internationalized/date": "^3.7.0",
- "@react-aria/calendar": "^3.7.2",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/visually-hidden": "^3.8.21",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/calendar": "^3.7.1",
- "@react-types/button": "^3.11.0",
- "@react-types/calendar": "^3.6.1",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.7.0",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/calendar/-/calendar-3.7.0.tgz",
+ "integrity": "sha512-gPNeAWmcpVy7gAUZCN9pXBB87KewX7a7kjK3MJRAsNO0hkqCerqM88tLSA6wcY77iQrNVt1zRQVUo7BGaOz7dw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@internationalized/date": "^3.8.0",
+ "@react-aria/calendar": "^3.8.0",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/visually-hidden": "^3.8.22",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/calendar": "^3.8.0",
+ "@react-types/button": "^3.12.0",
+ "@react-types/calendar": "^3.7.0",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7754,55 +7745,56 @@
}
},
"node_modules/@react-spectrum/checkbox": {
- "version": "3.9.14",
- "resolved": "https://registry.npmjs.org/@react-spectrum/checkbox/-/checkbox-3.9.14.tgz",
- "integrity": "sha512-tVDiwmvt4feXc8OlNzNPADqFCaHAD53irTjf1gEMagfJmvz/XNo1/MC/Wl5KZtCJbguuy8j/HcOlX6+Lu5u+EA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/checkbox": "^3.15.3",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/interactions": "^3.24.1",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/checkbox": "^3.6.12",
- "@react-stately/toggle": "^3.8.2",
- "@react-types/checkbox": "^3.9.2",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.9.15",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/checkbox/-/checkbox-3.9.15.tgz",
+ "integrity": "sha512-U+E/AuJBBKkYiYrPFgobO3kYT6nwXREJyCLxYXGeFzWI+kAWDfcChIsmsqRriJgByVY0tvLcjtANLyGZICVWCg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/checkbox": "^3.15.4",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/checkbox": "^3.6.13",
+ "@react-stately/toggle": "^3.8.3",
+ "@react-types/checkbox": "^3.9.3",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0",
- "react-aria-components": "^1.7.1"
+ "react-aria-components": "^1.8.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-spectrum/color": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@react-spectrum/color/-/color-3.0.5.tgz",
- "integrity": "sha512-EYkef2i2dOPs7/xBTS0MD3zHtlJqGAwMNAyppdgdmznHQtd/kgD50FGSMhjQ2y9koYYYigo1cXvUY4Q9SAP1Kw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/color": "^3.0.5",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/dialog": "^3.8.19",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/overlays": "^5.7.3",
- "@react-spectrum/picker": "^3.15.7",
- "@react-spectrum/textfield": "^3.13.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-spectrum/view": "^3.6.17",
- "@react-stately/color": "^3.8.3",
- "@react-types/color": "^3.0.3",
- "@react-types/shared": "^3.28.0",
- "@react-types/textfield": "^3.12.0",
+ "version": "3.0.6",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/color/-/color-3.0.6.tgz",
+ "integrity": "sha512-sbp1yxjG82JZOt81mARGcLCT19BjRnsn2pvUiqZhlLQCozqKE4fN8fTAYayNSPXy8OqdxGaNQyQ8L5dYCLyRkw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/color": "^3.0.6",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/dialog": "^3.8.20",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/overlays": "^5.7.4",
+ "@react-spectrum/picker": "^3.15.8",
+ "@react-spectrum/textfield": "^3.13.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-spectrum/view": "^3.6.18",
+ "@react-stately/color": "^3.8.4",
+ "@react-types/color": "^3.0.4",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/textfield": "^3.12.1",
"@swc/helpers": "^0.5.0",
- "react-aria-components": "^1.7.1"
+ "react-aria-components": "^1.8.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
@@ -7811,35 +7803,35 @@
}
},
"node_modules/@react-spectrum/combobox": {
- "version": "3.15.1",
- "resolved": "https://registry.npmjs.org/@react-spectrum/combobox/-/combobox-3.15.1.tgz",
- "integrity": "sha512-6Ryd8wNu7KoWcaK1Q6FlObJJlA4f6isDnnV24zPfnskZVggQmFb67FIXpGI+YkvKJLw7Q5MDJK5B1dx94aKAfQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/button": "^3.12.1",
- "@react-aria/combobox": "^3.12.1",
- "@react-aria/dialog": "^3.5.23",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/form": "^3.0.14",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/label": "^3.7.16",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/listbox": "^3.14.3",
- "@react-spectrum/overlays": "^5.7.3",
- "@react-spectrum/progress": "^3.7.14",
- "@react-spectrum/textfield": "^3.13.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/combobox": "^3.10.3",
- "@react-types/button": "^3.11.0",
- "@react-types/combobox": "^3.13.3",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.15.2",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/combobox/-/combobox-3.15.2.tgz",
+ "integrity": "sha512-+/bYAsvgMIzhAbVW1IHdXGGCENRzogaVjmacMMYQSic66Aj56lOY/esQS4phzfuEwpuAuvz/aISE95ApQgnrgw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/button": "^3.13.0",
+ "@react-aria/combobox": "^3.12.2",
+ "@react-aria/dialog": "^3.5.24",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/form": "^3.0.15",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/listbox": "^3.15.0",
+ "@react-spectrum/overlays": "^5.7.4",
+ "@react-spectrum/progress": "^3.7.15",
+ "@react-spectrum/textfield": "^3.13.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/combobox": "^3.10.4",
+ "@react-types/button": "^3.12.0",
+ "@react-types/combobox": "^3.13.4",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7849,19 +7841,19 @@
}
},
"node_modules/@react-spectrum/contextualhelp": {
- "version": "3.6.19",
- "resolved": "https://registry.npmjs.org/@react-spectrum/contextualhelp/-/contextualhelp-3.6.19.tgz",
- "integrity": "sha512-CozbG9YkzYaxU/BexbMpdMwhZHVdBe/UUo+DW62Qid/fFi7ukDYpGTgu72TabqsT8O/E2XVCpFZRBOnyewqcsQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/dialog": "^3.8.19",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/contextualhelp": "^3.2.16",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/workflow": "^4.2.19",
+ "version": "3.6.20",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/contextualhelp/-/contextualhelp-3.6.20.tgz",
+ "integrity": "sha512-hUEN3JVo5qtvGbzo9EVtG4JN1aHsBNiW+cwHVB56CRvH0qbHHzvwy6knfSibaxK7RouP8KZhHT0gdLAd5d4vKg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/dialog": "^3.8.20",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/contextualhelp": "^3.2.17",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/workflow": "^4.2.20",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7871,30 +7863,30 @@
}
},
"node_modules/@react-spectrum/datepicker": {
- "version": "3.13.1",
- "resolved": "https://registry.npmjs.org/@react-spectrum/datepicker/-/datepicker-3.13.1.tgz",
- "integrity": "sha512-/nqLy8o/BNFvGb/pDeDMZ2P9AN/QODciRqYznrPrlSXXbS3l0/GjyKY4RF+UJnBHMqakcOV8L+xbyiSz2dMWSw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@internationalized/date": "^3.7.0",
- "@react-aria/datepicker": "^3.14.1",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/calendar": "^3.6.2",
- "@react-spectrum/dialog": "^3.8.19",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/layout": "^3.6.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-spectrum/view": "^3.6.17",
- "@react-stately/datepicker": "^3.13.0",
- "@react-types/datepicker": "^3.11.0",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
- "@spectrum-icons/workflow": "^4.2.19",
+ "version": "3.14.0",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/datepicker/-/datepicker-3.14.0.tgz",
+ "integrity": "sha512-UmzopAB8+O5VEIBkhfxCZAAbCmq5TbbTATAd9HNnzhDzkuaOYzU5B8M1/ROpRRULR4eH0xWHc1RaeOS4UtgVQA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@internationalized/date": "^3.8.0",
+ "@react-aria/datepicker": "^3.14.2",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/calendar": "^3.7.0",
+ "@react-spectrum/dialog": "^3.8.20",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/layout": "^3.6.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-spectrum/view": "^3.6.18",
+ "@react-stately/datepicker": "^3.14.0",
+ "@react-types/datepicker": "^3.12.0",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
+ "@spectrum-icons/workflow": "^4.2.20",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7904,29 +7896,29 @@
}
},
"node_modules/@react-spectrum/dialog": {
- "version": "3.8.19",
- "resolved": "https://registry.npmjs.org/@react-spectrum/dialog/-/dialog-3.8.19.tgz",
- "integrity": "sha512-NUO3v5ZuGf5lagDvAPdmjHQNb1Po+MqsGiecOpL7dqZSQRMcRhzqab38IEOlS9ESAwuBCDKCKX4Hio1Owcxhdw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/dialog": "^3.5.23",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/buttongroup": "^3.6.20",
- "@react-spectrum/divider": "^3.5.21",
- "@react-spectrum/layout": "^3.6.13",
- "@react-spectrum/overlays": "^5.7.3",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-spectrum/view": "^3.6.17",
- "@react-stately/overlays": "^3.6.14",
- "@react-types/button": "^3.11.0",
- "@react-types/dialog": "^3.5.16",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.8.20",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/dialog/-/dialog-3.8.20.tgz",
+ "integrity": "sha512-GuMEYQTvgP17zqkJqemcv2SazD0/srY5mQ7pasCTe71FQemMEyb18suDTgJKQjYjkt7NINTBzaSlXlC4eiu1nA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/dialog": "^3.5.24",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/buttongroup": "^3.6.21",
+ "@react-spectrum/divider": "^3.5.22",
+ "@react-spectrum/layout": "^3.6.14",
+ "@react-spectrum/overlays": "^5.7.4",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-spectrum/view": "^3.6.18",
+ "@react-stately/overlays": "^3.6.15",
+ "@react-types/button": "^3.12.0",
+ "@react-types/dialog": "^3.5.17",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7936,30 +7928,31 @@
}
},
"node_modules/@react-spectrum/divider": {
- "version": "3.5.21",
- "resolved": "https://registry.npmjs.org/@react-spectrum/divider/-/divider-3.5.21.tgz",
- "integrity": "sha512-NigT6PFlrbmf4tCQN8hYzbcEd1eE3muOgqt9SPMgAFMBeeKvttccVTBhP4Jc2rMoHYBpHMWc48zdwV1+RG0ZUA==",
+ "version": "3.5.22",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/divider/-/divider-3.5.22.tgz",
+ "integrity": "sha512-Yrs5KpU8Pa9lTnyAVO1WfIt1tDOjgGg55k/ZIeLYbDflM794TKkHPXqL+w4yE2G0yW234Pa8LRSb+tS7fyh7og==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/separator": "^3.4.7",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/divider": "^3.3.15",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/separator": "^3.4.8",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/divider": "^3.3.16",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-spectrum/dnd": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/@react-spectrum/dnd/-/dnd-3.5.3.tgz",
- "integrity": "sha512-0/Diu/49Nxb9ymOOe9xzkC8UhOwalrpUb5KPsrloL9KQZi5hzdijIWpUJX70p3JDtGv0j/3uJ/yz59HzPb+ZKw==",
+ "version": "3.5.4",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/dnd/-/dnd-3.5.4.tgz",
+ "integrity": "sha512-GX/2aNnbfZ3OUB89CNiQiRve7zp4bhswoTQXPa3zoqPN6OmKk3y520lRrNmFyVyh3EGUtOsdcLzElzHq4reO9A==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/dnd": "^3.9.1",
- "@react-stately/dnd": "^3.5.2",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/dnd": "^3.9.2",
+ "@react-stately/dnd": "^3.5.3",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -7969,48 +7962,50 @@
}
},
"node_modules/@react-spectrum/dropzone": {
- "version": "3.0.9",
- "resolved": "https://registry.npmjs.org/@react-spectrum/dropzone/-/dropzone-3.0.9.tgz",
- "integrity": "sha512-OQxZcRBoLpnAQLFwT4EQ0jlHIIwDfKxexpTsd7vIW7fcJdO4ngoIZhA8VAEe228o1f38Kikpqj+YceyAOT1wyA==",
+ "version": "3.0.10",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/dropzone/-/dropzone-3.0.10.tgz",
+ "integrity": "sha512-y1E3PCHWQ1yHw5VxmtLKmYRSFDBG1vZdluJzvYB8Fg9gWMIPIl9lDjOyBG0gSeDbjMS90z0HxIN1gFc3uDLAQA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0",
- "react-aria-components": "^1.7.1"
+ "react-aria-components": "^1.8.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-spectrum/filetrigger": {
- "version": "3.0.9",
- "resolved": "https://registry.npmjs.org/@react-spectrum/filetrigger/-/filetrigger-3.0.9.tgz",
- "integrity": "sha512-hXBUl1sacOGZK5+qFHRPFKph0BB5kEAlUgYw5j04aYSigKkCCHf1OM+NfZ0iQNrmZ6BtjsfuTM+W4b86Pu+bBQ==",
+ "version": "3.0.10",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/filetrigger/-/filetrigger-3.0.10.tgz",
+ "integrity": "sha512-bFnMy7+SqXvN5VbJpEGhgFoKyTvmrb4HMYB87h48NlBFdpfpE1C/kcPKRrvbZjp6cNTg6WXyTe2Pei9z8qAjmA==",
"license": "Apache-2.0",
"dependencies": {
"@swc/helpers": "^0.5.0",
- "react-aria-components": "^1.7.1"
+ "react-aria-components": "^1.8.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-spectrum/form": {
- "version": "3.7.13",
- "resolved": "https://registry.npmjs.org/@react-spectrum/form/-/form-3.7.13.tgz",
- "integrity": "sha512-hr6yFw0NVNJW51eO8Tt8OUZ4VR05zSPFzvD82IZWbtuW8sayAesLK9/JiiqHdPtbUzEw61psKBXhpHGZdPu8yQ==",
+ "version": "3.7.14",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/form/-/form-3.7.14.tgz",
+ "integrity": "sha512-WRnwQ8Vsk9PKsOx+ckNWnJjVNVzP53IaQ3Y+xACp+c4OET2F1HZye+XeY3ZuGjTdjJgOA/xb94w7YP6gBc8r3A==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/form": "^3.1.2",
- "@react-types/form": "^3.7.10",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/form": "^3.1.3",
+ "@react-types/form": "^3.7.11",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8020,14 +8015,14 @@
}
},
"node_modules/@react-spectrum/icon": {
- "version": "3.8.3",
- "resolved": "https://registry.npmjs.org/@react-spectrum/icon/-/icon-3.8.3.tgz",
- "integrity": "sha512-a+tKoDBccB3xNcQ6RhxipBXP7IffEJ97UQYaEuEEhOJkC/72OVQ5ahL5Jw1JzpQQoxL5/mks+8fuQuAfPdpVag==",
+ "version": "3.8.4",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/icon/-/icon-3.8.4.tgz",
+ "integrity": "sha512-J5djyEyQbDlPoMj/N/hitCsmJxJkzH7rIrayFKQQu+nG39Ry7RK38tRH7nHDMVDxYBxUG2OVz92u1Tjea1pUjw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8037,16 +8032,16 @@
}
},
"node_modules/@react-spectrum/illustratedmessage": {
- "version": "3.5.8",
- "resolved": "https://registry.npmjs.org/@react-spectrum/illustratedmessage/-/illustratedmessage-3.5.8.tgz",
- "integrity": "sha512-DVLIXYnKTVjXcFih0lLqb4CrO20eyJulPwO8xVEsVO6e5JEcireW89GH+CSxhtwCckUNIjIDVmDFwoKcrn2WxQ==",
+ "version": "3.5.9",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/illustratedmessage/-/illustratedmessage-3.5.9.tgz",
+ "integrity": "sha512-jQJuDk+4sw4SFZNcditSYKhWk9aHq0hOEAhbf3EWI1AbqxRxS5DJdTIoWrH5LsI7FrrOvvDwdzMn9mSYk+hNXw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/layout": "^3.6.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/illustratedmessage": "^3.3.15",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/layout": "^3.6.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/illustratedmessage": "^3.3.16",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8056,15 +8051,15 @@
}
},
"node_modules/@react-spectrum/image": {
- "version": "3.5.9",
- "resolved": "https://registry.npmjs.org/@react-spectrum/image/-/image-3.5.9.tgz",
- "integrity": "sha512-4bTvU6t/0MfL1vrhjtb89nowcbOUZz/cnUueL2w0HLmv828YkJUEbCkYicn1sP4FTlG4YOILYm73BthytmzZ/w==",
+ "version": "3.5.10",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/image/-/image-3.5.10.tgz",
+ "integrity": "sha512-c/hKlTqy0T4CuFRZUbAFX5xroSCOLVZIFSZ1KQXAk92zLQRaieRQneNrehOHjRPSsp+zmKDDhikscAyQJl0/rg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/image": "^3.4.7",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/image": "^3.4.8",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8074,18 +8069,18 @@
}
},
"node_modules/@react-spectrum/inlinealert": {
- "version": "3.2.13",
- "resolved": "https://registry.npmjs.org/@react-spectrum/inlinealert/-/inlinealert-3.2.13.tgz",
- "integrity": "sha512-vxheeCmIjKxV6H/dlgdGd2OkwuWhIs/68FFNYnPtjFEVXEmh7p1VreuhrPT3x0e7v+uoCZqPdurtZJcXNCO4Dw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/layout": "^3.6.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.2.14",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/inlinealert/-/inlinealert-3.2.14.tgz",
+ "integrity": "sha512-p7SktxTktxm65eX9Ogi41bZuwn55TANYr2PKh3AzItABW/z+pGZ2xQk9L5ln1K/lw2Xy/iUGEkj0NT/2M0IjhQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/layout": "^3.6.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8095,19 +8090,19 @@
}
},
"node_modules/@react-spectrum/label": {
- "version": "3.16.13",
- "resolved": "https://registry.npmjs.org/@react-spectrum/label/-/label-3.16.13.tgz",
- "integrity": "sha512-dwNYDB5YcG+zSHoqyZyxTmy/SZ8pkuv0iPURYO0XbM3mdgetq9A1PGosykPmYQ7vp7HFri1K3RVMjs1HjgEHxA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/layout": "^3.6.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/label": "^3.9.9",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.16.14",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/label/-/label-3.16.14.tgz",
+ "integrity": "sha512-lPM5rbc7A+fKiDZGZrNYDny+rCRwj9A0lI8fjVFQKPRN9tqLtUeqC4qUpy2Y154gzk2dIPgggrBq0dx48KyCAg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/layout": "^3.6.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/label": "^3.9.10",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8117,17 +8112,17 @@
}
},
"node_modules/@react-spectrum/labeledvalue": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/@react-spectrum/labeledvalue/-/labeledvalue-3.2.1.tgz",
- "integrity": "sha512-25446CLuiVtbErdbc3Xm+LZGU4yr2FsDKb2NwdNOGDTLn95naDWaqS+WZpJ6qW35yUEfpbbxjO6rRRaM9KQX1A==",
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/labeledvalue/-/labeledvalue-3.2.2.tgz",
+ "integrity": "sha512-D8d9RY/1QLV3miADlvhQUGLfb7ZEzcIrV7Znpbmc1gez4zuTF5Dyi6DxY6b0Kwj6UhZjotUsY3dTicrLWjafNg==",
"license": "Apache-2.0",
"dependencies": {
- "@internationalized/date": "^3.7.0",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/shared": "^3.28.0",
+ "@internationalized/date": "^3.8.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8137,15 +8132,15 @@
}
},
"node_modules/@react-spectrum/layout": {
- "version": "3.6.13",
- "resolved": "https://registry.npmjs.org/@react-spectrum/layout/-/layout-3.6.13.tgz",
- "integrity": "sha512-acpm9abT2YV+SGSrds5THUEWsf9Uyz02JEdDWIazBM+EEaNoWq8Hq6oheOz/E5N3IlJFoYs4YvoY3Iley8JFIA==",
+ "version": "3.6.14",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/layout/-/layout-3.6.14.tgz",
+ "integrity": "sha512-5o8jn/BGST1CN6xn8uhZVqUYZ+3zULbk2nJVyIibRAquKkYwnE5nh3pjp6Bba14fOhr7rxaU6I3gdeYxTa2Pdw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/layout": "^3.3.21",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/layout": "^3.3.22",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8155,18 +8150,18 @@
}
},
"node_modules/@react-spectrum/link": {
- "version": "3.6.15",
- "resolved": "https://registry.npmjs.org/@react-spectrum/link/-/link-3.6.15.tgz",
- "integrity": "sha512-tGlqnbTSiRR/eCFxA+e7AiR9tCc2cjj+XNtUTtxcmqe377QugN6LOezN3Uy+9zY2oIx+JJ49XNvurI6NzklirQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/link": "^3.7.10",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/link": "^3.5.11",
- "@react-types/shared": "^3.28.0",
+ "version": "3.6.16",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/link/-/link-3.6.16.tgz",
+ "integrity": "sha512-vWFX37qb59PKADR4t8Vc3LwUrT/jFis7qIAzZzts8/rqxVITwJ7EYfU4E69DhmlL05LmVwfa7em2Glwgd3ZDvg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/link": "^3.8.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/link": "^3.6.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8176,33 +8171,33 @@
}
},
"node_modules/@react-spectrum/list": {
- "version": "3.9.3",
- "resolved": "https://registry.npmjs.org/@react-spectrum/list/-/list-3.9.3.tgz",
- "integrity": "sha512-UOmWGti6UgxXpKEzsgA/V2jbsacC7BOPfC3UipnMaydT1Wtzs9hpyrntz/jRaDH+WZlG9O7MGmIgasbUCB+fwQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/button": "^3.12.1",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/gridlist": "^3.11.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/virtualizer": "^4.1.3",
- "@react-aria/visually-hidden": "^3.8.21",
- "@react-spectrum/checkbox": "^3.9.14",
- "@react-spectrum/dnd": "^3.5.3",
- "@react-spectrum/layout": "^3.6.13",
- "@react-spectrum/progress": "^3.7.14",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/layout": "^4.2.1",
- "@react-stately/list": "^3.12.0",
- "@react-stately/virtualizer": "^4.3.1",
- "@react-types/grid": "^3.3.0",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.10.0",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/list/-/list-3.10.0.tgz",
+ "integrity": "sha512-JzbOiECQX75WDxaqmEnmliMLoKs9iN/c7OYMyAr+TZmezAYZe2XtLxoKurgGxP3mnddHEkQb1eieZuXA5IRk4w==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/button": "^3.13.0",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/gridlist": "^3.12.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/virtualizer": "^4.1.4",
+ "@react-aria/visually-hidden": "^3.8.22",
+ "@react-spectrum/checkbox": "^3.9.15",
+ "@react-spectrum/dnd": "^3.5.4",
+ "@react-spectrum/layout": "^3.6.14",
+ "@react-spectrum/progress": "^3.7.15",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/layout": "^4.2.2",
+ "@react-stately/list": "^3.12.1",
+ "@react-stately/virtualizer": "^4.3.2",
+ "@react-types/grid": "^3.3.1",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0",
"react-transition-group": "^4.4.5"
},
@@ -8213,28 +8208,28 @@
}
},
"node_modules/@react-spectrum/listbox": {
- "version": "3.14.3",
- "resolved": "https://registry.npmjs.org/@react-spectrum/listbox/-/listbox-3.14.3.tgz",
- "integrity": "sha512-j75zd5Pt2xlHHuj8+LUSSDWmlQLXortjDwupatq51ifUa7db3nVro/fx7g3WUYH8MDVlydfUcJiUmnYqDEV8wA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/listbox": "^3.14.2",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/virtualizer": "^4.1.3",
- "@react-spectrum/layout": "^3.6.13",
- "@react-spectrum/progress": "^3.7.14",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/layout": "^4.2.1",
- "@react-stately/list": "^3.12.0",
- "@react-stately/virtualizer": "^4.3.1",
- "@react-types/listbox": "^3.5.5",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.15.0",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/listbox/-/listbox-3.15.0.tgz",
+ "integrity": "sha512-fdGRbNRSaecxzsxE5HYRcX6kOwsGlgRTYv2+f/dkdp+P59vt/Rh7QdxGeEe7Leh7K/wRr520wyOMyjL56jIcTA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/listbox": "^3.14.3",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/virtualizer": "^4.1.4",
+ "@react-spectrum/layout": "^3.6.14",
+ "@react-spectrum/progress": "^3.7.15",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/layout": "^4.2.2",
+ "@react-stately/list": "^3.12.1",
+ "@react-stately/virtualizer": "^4.3.2",
+ "@react-types/listbox": "^3.6.0",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8244,32 +8239,32 @@
}
},
"node_modules/@react-spectrum/menu": {
- "version": "3.21.3",
- "resolved": "https://registry.npmjs.org/@react-spectrum/menu/-/menu-3.21.3.tgz",
- "integrity": "sha512-oGVWruF81enMI8jFrgyD/+FYmcahkPrNbiZCGQkdxrTpvyLBWW8AIvwScMJG8ds2Lz06ajc2hyiBkS1I3QL8Zg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/menu": "^3.18.1",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/separator": "^3.4.7",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/layout": "^3.6.13",
- "@react-spectrum/overlays": "^5.7.3",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/menu": "^3.9.2",
- "@react-stately/overlays": "^3.6.14",
- "@react-stately/tree": "^3.8.8",
- "@react-types/menu": "^3.9.15",
- "@react-types/overlays": "^3.8.13",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
- "@spectrum-icons/workflow": "^4.2.19",
+ "version": "3.22.0",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/menu/-/menu-3.22.0.tgz",
+ "integrity": "sha512-eWlnCqEVl6Yj0sCakxlQ81Lf8pxFkpKiO3dsp7wWBzyW2HweJVpZml95e6MuWoPvcS3fvSljuLK3jZI4plq1lA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/menu": "^3.18.2",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/separator": "^3.4.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/layout": "^3.6.14",
+ "@react-spectrum/overlays": "^5.7.4",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/menu": "^3.9.3",
+ "@react-stately/overlays": "^3.6.15",
+ "@react-stately/tree": "^3.8.9",
+ "@react-types/menu": "^3.10.0",
+ "@react-types/overlays": "^3.8.14",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
+ "@spectrum-icons/workflow": "^4.2.20",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8279,16 +8274,16 @@
}
},
"node_modules/@react-spectrum/meter": {
- "version": "3.5.8",
- "resolved": "https://registry.npmjs.org/@react-spectrum/meter/-/meter-3.5.8.tgz",
- "integrity": "sha512-3W648yjtgIVXjO0yDaS3lcGerNoFkfEUyhAfoanSwn8PwL3MieA08cEqHrFXM9D5ZXsnedoLVjC3k6tLPBXEoA==",
+ "version": "3.5.9",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/meter/-/meter-3.5.9.tgz",
+ "integrity": "sha512-G2ITIIhx29k831C62mgshW4cQz53qpBFeMCYuuE6WYZQ4x5lSIEnrbrc9Jp+BhQQ0Zd5Ra6VydNKcchy7KfNkg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/meter": "^3.4.21",
- "@react-spectrum/progress": "^3.7.14",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/meter": "^3.4.7",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/meter": "^3.4.22",
+ "@react-spectrum/progress": "^3.7.15",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/meter": "^3.4.8",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8298,27 +8293,27 @@
}
},
"node_modules/@react-spectrum/numberfield": {
- "version": "3.9.11",
- "resolved": "https://registry.npmjs.org/@react-spectrum/numberfield/-/numberfield-3.9.11.tgz",
- "integrity": "sha512-7Q7K04Rv9R/aFYrNMjG/Cgk8fbKGpC+6/BZHNWOGnJcrQAzBc0hQlRAy5xBtFivc9qEQO8+jUDMQ87TwWxJAOA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/button": "^3.12.1",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/numberfield": "^3.11.12",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/textfield": "^3.13.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/numberfield": "^3.9.10",
- "@react-types/button": "^3.11.0",
- "@react-types/numberfield": "^3.8.9",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
- "@spectrum-icons/workflow": "^4.2.19",
+ "version": "3.9.12",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/numberfield/-/numberfield-3.9.12.tgz",
+ "integrity": "sha512-P7uEjVgo/co8qHgkrPLzanShpgjMjspPc95NGtL/cHSNl6lsxoGIaqWXgFqlYdfTPVNvEtfj7Hdyb0F+8V2/9g==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/button": "^3.13.0",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/numberfield": "^3.11.13",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/textfield": "^3.13.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/numberfield": "^3.9.11",
+ "@react-types/button": "^3.12.0",
+ "@react-types/numberfield": "^3.8.10",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
+ "@spectrum-icons/workflow": "^4.2.20",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8328,18 +8323,18 @@
}
},
"node_modules/@react-spectrum/overlays": {
- "version": "5.7.3",
- "resolved": "https://registry.npmjs.org/@react-spectrum/overlays/-/overlays-5.7.3.tgz",
- "integrity": "sha512-v+TQf9pFFcTtZ9xGxynY8nlkQRUfNmJtYO3rBZ/cXjS7FsL41Iwqgin3OcBI2sXuAHj0rRUKEDs51u41zzLeaQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/overlays": "^3.6.14",
- "@react-types/overlays": "^3.8.13",
- "@react-types/shared": "^3.28.0",
+ "version": "5.7.4",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/overlays/-/overlays-5.7.4.tgz",
+ "integrity": "sha512-zZ6G0+w7C8nL0YVyzCLq0Qyk/O6AX2B/X53dWXBlh2w5cqBXkrtm/ajGAGjVJU9pZGFlrwsKbnC7ZA7clfRsGA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/overlays": "^3.6.15",
+ "@react-types/overlays": "^3.8.14",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0",
"react-transition-group": "^4.4.5"
},
@@ -8350,28 +8345,28 @@
}
},
"node_modules/@react-spectrum/picker": {
- "version": "3.15.7",
- "resolved": "https://registry.npmjs.org/@react-spectrum/picker/-/picker-3.15.7.tgz",
- "integrity": "sha512-l0xVFs1PrX8fI4jO3HF2NNc28cXJtsp3sbfXRM7DLYOTsletd/3lqUGiqXru8+3VvRtzTAY2EgksGCfDjcyM/Q==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/select": "^3.15.3",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/listbox": "^3.14.3",
- "@react-spectrum/overlays": "^5.7.3",
- "@react-spectrum/progress": "^3.7.14",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/select": "^3.6.11",
- "@react-types/select": "^3.9.10",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.15.8",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/picker/-/picker-3.15.8.tgz",
+ "integrity": "sha512-ZS1fy7/IWwIJvWNUkqNJDXUi3bwuFFtaz5MzF5gE4UxEpC+vIMzI8X2EG8KtnmPV0PDrYiTZ9Mr2CXnUFz8WkQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/select": "^3.15.4",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/listbox": "^3.15.0",
+ "@react-spectrum/overlays": "^5.7.4",
+ "@react-spectrum/progress": "^3.7.15",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/select": "^3.6.12",
+ "@react-types/select": "^3.9.11",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8381,16 +8376,16 @@
}
},
"node_modules/@react-spectrum/progress": {
- "version": "3.7.14",
- "resolved": "https://registry.npmjs.org/@react-spectrum/progress/-/progress-3.7.14.tgz",
- "integrity": "sha512-O76agn3fWlxM9qYFomTMfRX7RsxN+S/80PtuQQRkKXvDGns3EDE2LcvVRhhkFKD8xMGs2Vb1TMRGNdWrv/4INw==",
+ "version": "3.7.15",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/progress/-/progress-3.7.15.tgz",
+ "integrity": "sha512-V627myTu49lq4MmhgC56TZ5fevNhLay8+eWydMq+INxjgEF4kjoCUjKFomsFU4BrLEKt5RQJdgKRmp1ri2u1WQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/progress": "^3.4.21",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/progress": "^3.5.10",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/progress": "^3.4.22",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/progress": "^3.5.11",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8400,17 +8395,17 @@
}
},
"node_modules/@react-spectrum/provider": {
- "version": "3.10.3",
- "resolved": "https://registry.npmjs.org/@react-spectrum/provider/-/provider-3.10.3.tgz",
- "integrity": "sha512-5PYgBs24z0KaR+f0rugtsXPShILXlbNJl5EPkS6PRPwfyxalquga5n/avzSr2b12bEakEqv7aaMCNOm6cLq+oA==",
+ "version": "3.10.4",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/provider/-/provider-3.10.4.tgz",
+ "integrity": "sha512-nUrwNExGJXkXX9CuujqRl3B1cTDphH0OzPHJXsmIRltcr//BiW1HSZTOW6sprlYoqejm3GgOm4Dh7x3Y4LQhiQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/provider": "^3.8.7",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/provider": "^3.8.8",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0",
"clsx": "^2.0.0"
},
@@ -8420,20 +8415,20 @@
}
},
"node_modules/@react-spectrum/radio": {
- "version": "3.7.14",
- "resolved": "https://registry.npmjs.org/@react-spectrum/radio/-/radio-3.7.14.tgz",
- "integrity": "sha512-tLTc9OMFBv+teTEy6gAvZuf68CF3BzZS0wLpOQYBZpc41DjiU3Jr+iPvN7pAl47MDYO4Z34WcUJJe38BZ1eM3A==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/radio": "^3.11.1",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/radio": "^3.10.11",
- "@react-types/radio": "^3.8.7",
- "@react-types/shared": "^3.28.0",
+ "version": "3.7.15",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/radio/-/radio-3.7.15.tgz",
+ "integrity": "sha512-B1Z6Kse0lGn5TzN+3mta+CnjK1bc4Nmql1GZc7trEUujRqxctYWsx5FVb+I7Rr21m26M0TZ23I0Umuh0DrqibQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/radio": "^3.11.2",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/radio": "^3.10.12",
+ "@react-types/radio": "^3.8.8",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8443,20 +8438,20 @@
}
},
"node_modules/@react-spectrum/searchfield": {
- "version": "3.8.14",
- "resolved": "https://registry.npmjs.org/@react-spectrum/searchfield/-/searchfield-3.8.14.tgz",
- "integrity": "sha512-OdcMZDQTc6lb7oLLcaGCBYNrwMIJfVH19d6/z54uzpbz+oC+o9LAY5/7CiXwZjUYWoptfHpD0pp/g0xIz0G7Hw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/searchfield": "^3.8.2",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/textfield": "^3.13.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/searchfield": "^3.5.10",
- "@react-types/searchfield": "^3.6.0",
- "@react-types/textfield": "^3.12.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.8.15",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/searchfield/-/searchfield-3.8.15.tgz",
+ "integrity": "sha512-7vRfnVuDhNJcqTehA09M14z7dAqcXo7FmbLxAOrhxvhIVso2JX1S5exG6oeenc5DDytgEY5e1GLBXNTcNXmSXg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/searchfield": "^3.8.3",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/textfield": "^3.13.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/searchfield": "^3.5.11",
+ "@react-types/searchfield": "^3.6.1",
+ "@react-types/textfield": "^3.12.1",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8466,21 +8461,21 @@
}
},
"node_modules/@react-spectrum/slider": {
- "version": "3.7.3",
- "resolved": "https://registry.npmjs.org/@react-spectrum/slider/-/slider-3.7.3.tgz",
- "integrity": "sha512-97ZoS8ukrY8TwsTYLwiy7OwhQ/74Hip2GiLJAUAYZ4mnvsYeHN5ejCA9LBRJSFBGNjKMcCrnkOjgtFbQB9L7Ig==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/slider": "^3.7.17",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/visually-hidden": "^3.8.21",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/slider": "^3.6.2",
- "@react-types/shared": "^3.28.0",
- "@react-types/slider": "^3.7.9",
+ "version": "3.7.4",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/slider/-/slider-3.7.4.tgz",
+ "integrity": "sha512-va7rZa5sVP5wKn9fRZwo7by3jvYJsLIim80YVCUsUGwxNWjG97VlW59Ovfbs+TOsh1bshiI4ksuuVpEJwYG4Hg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/slider": "^3.7.18",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/visually-hidden": "^3.8.22",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/slider": "^3.6.3",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/slider": "^3.7.10",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8490,15 +8485,15 @@
}
},
"node_modules/@react-spectrum/statuslight": {
- "version": "3.5.20",
- "resolved": "https://registry.npmjs.org/@react-spectrum/statuslight/-/statuslight-3.5.20.tgz",
- "integrity": "sha512-on+sux8gTp9dSWc7NVeJx+POTPdy9HeytiSqedzhIZNBBNsxNkd+nUoJfnj/6hemWDnVDCjJRiwP11PZng/F4Q==",
+ "version": "3.5.21",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/statuslight/-/statuslight-3.5.21.tgz",
+ "integrity": "sha512-0fh1INJbsJe8V3SymYUkkU/55vLANemsaRFRkg+RK0qTWAYn8jmQsQvjKxKFrbad7JTNyVCIDFPeunIabVayOQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/shared": "^3.28.0",
- "@react-types/statuslight": "^3.3.15",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/statuslight": "^3.3.16",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8508,56 +8503,57 @@
}
},
"node_modules/@react-spectrum/switch": {
- "version": "3.5.13",
- "resolved": "https://registry.npmjs.org/@react-spectrum/switch/-/switch-3.5.13.tgz",
- "integrity": "sha512-YcvcGtXPxC4fVQbxhFEVk1LpK3F63VWgI0ondcoZesgcKGHdS2kVxzqyyHqSsSorlrwDHeRyzbWQ9N9CjohuXQ==",
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/switch/-/switch-3.6.0.tgz",
+ "integrity": "sha512-4ay/oz8+e/rzjVlfOmcy/L0seZ1A+Zce8Is6FnfVA8g1RY7X0Q6Ko2vIvPISSitdgIUleeO+fVRy1J7Zfu+6CQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/switch": "^3.7.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/toggle": "^3.8.2",
- "@react-types/shared": "^3.28.0",
- "@react-types/switch": "^3.5.9",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/switch": "^3.7.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/toggle": "^3.8.3",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/switch": "^3.5.10",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-spectrum/table": {
- "version": "3.16.1",
- "resolved": "https://registry.npmjs.org/@react-spectrum/table/-/table-3.16.1.tgz",
- "integrity": "sha512-E6YR4DTDbBg9z0sLZV03C8hByaGgtF7J/uiLPguTcOiD9ghONSUo9NkA48uRmFdRLEezURH0LCP4HVsw1jeNaA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/button": "^3.12.1",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/table": "^3.17.1",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/virtualizer": "^4.1.3",
- "@react-aria/visually-hidden": "^3.8.21",
- "@react-spectrum/checkbox": "^3.9.14",
- "@react-spectrum/dnd": "^3.5.3",
- "@react-spectrum/layout": "^3.6.13",
- "@react-spectrum/menu": "^3.21.3",
- "@react-spectrum/progress": "^3.7.14",
- "@react-spectrum/tooltip": "^3.7.3",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/flags": "^3.1.0",
- "@react-stately/layout": "^4.2.1",
- "@react-stately/table": "^3.14.0",
- "@react-stately/virtualizer": "^4.3.1",
- "@react-types/grid": "^3.3.0",
- "@react-types/shared": "^3.28.0",
- "@react-types/table": "^3.11.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.17.0",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/table/-/table-3.17.0.tgz",
+ "integrity": "sha512-SeZ7Z7fhLM425y/ncscf3F4yn0dSRuZHFKuRx2n1jbyQ7lxCpgYE4kVtQTjXeDs3EV9rrHO/PjmrEtGLNKCNQg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/button": "^3.13.0",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/table": "^3.17.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/virtualizer": "^4.1.4",
+ "@react-aria/visually-hidden": "^3.8.22",
+ "@react-spectrum/checkbox": "^3.9.15",
+ "@react-spectrum/dnd": "^3.5.4",
+ "@react-spectrum/layout": "^3.6.14",
+ "@react-spectrum/menu": "^3.22.0",
+ "@react-spectrum/progress": "^3.7.15",
+ "@react-spectrum/tooltip": "^3.7.4",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/flags": "^3.1.1",
+ "@react-stately/layout": "^4.2.2",
+ "@react-stately/table": "^3.14.1",
+ "@react-stately/virtualizer": "^4.3.2",
+ "@react-types/grid": "^3.3.1",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/table": "^3.12.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8567,25 +8563,25 @@
}
},
"node_modules/@react-spectrum/tabs": {
- "version": "3.8.18",
- "resolved": "https://registry.npmjs.org/@react-spectrum/tabs/-/tabs-3.8.18.tgz",
- "integrity": "sha512-lanA/7SUeDZGeZn/krKWboDKkNJxaEOCDpE51zcZNV/vc6yvj3ADYo6iKzcgymFhV45umz8DUCZZ+2V9XzHFoQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/tabs": "^3.10.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/picker": "^3.15.7",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/list": "^3.12.0",
- "@react-stately/tabs": "^3.8.0",
- "@react-types/select": "^3.9.10",
- "@react-types/shared": "^3.28.0",
- "@react-types/tabs": "^3.3.13",
+ "version": "3.8.19",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/tabs/-/tabs-3.8.19.tgz",
+ "integrity": "sha512-4DtgCmecey+G/1vOvsiqzzmCTRz9nyGA9t+aewOGNe866gp+lFIHjEQreHmX/RpzXGAjbNV/9LxD6hsib4qWyw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/tabs": "^3.10.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/picker": "^3.15.8",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/list": "^3.12.1",
+ "@react-stately/tabs": "^3.8.1",
+ "@react-types/select": "^3.9.11",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/tabs": "^3.3.14",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8595,25 +8591,25 @@
}
},
"node_modules/@react-spectrum/tag": {
- "version": "3.2.14",
- "resolved": "https://registry.npmjs.org/@react-spectrum/tag/-/tag-3.2.14.tgz",
- "integrity": "sha512-8Abs2Q+2qTyLyPR3/vs0nAKNj5xOHHgVo+RrlsOc5wK6rZe59nK/wJ4LKii7j004lQUixsFd3OwbXoWx/j4qfQ==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/tag": "^3.5.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/list": "^3.12.0",
- "@react-types/shared": "^3.28.0",
+ "version": "3.2.15",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/tag/-/tag-3.2.15.tgz",
+ "integrity": "sha512-M79v84F2fDZ/Evl7rNoT3mFKUa6ClPePn75wxn7ED4jJrtkDSzixj80rCAVV44Ocxe0fXGbZVnYuq7AySc/ciA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/tag": "^3.5.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/list": "^3.12.1",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8623,40 +8619,41 @@
}
},
"node_modules/@react-spectrum/text": {
- "version": "3.5.13",
- "resolved": "https://registry.npmjs.org/@react-spectrum/text/-/text-3.5.13.tgz",
- "integrity": "sha512-FoguCUUcakkn8mgTxeMHZHbKFPi2kQX/FSZfzWopaexZVmdYnXdKBsPzAh7dhF5+eXkEshtUKATsna/TVvd5ZQ==",
+ "version": "3.5.14",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/text/-/text-3.5.14.tgz",
+ "integrity": "sha512-+DMuTcx4La1rKxKQnfTiSDMtTWycAHER64rKZo5kN+eEmdY4m4Osg97nsYlac/2FWg42uF9pr7Tlc/UOnpJp2w==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/shared": "^3.28.0",
- "@react-types/text": "^3.3.15",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/text": "^3.3.16",
"@swc/helpers": "^0.5.0",
- "react-aria-components": "^1.7.1"
+ "react-aria-components": "^1.8.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-spectrum/textfield": {
- "version": "3.13.1",
- "resolved": "https://registry.npmjs.org/@react-spectrum/textfield/-/textfield-3.13.1.tgz",
- "integrity": "sha512-qQt++RbJYHsRBBpbVGLHZxDeZb5aeNNnx206vbZDcp1DeyY/B17SQM/MrS39LPnDsZnSakdaVM8I1A0/xtIK9g==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/textfield": "^3.17.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/form": "^3.7.13",
- "@react-spectrum/label": "^3.16.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/utils": "^3.10.5",
- "@react-types/shared": "^3.28.0",
- "@react-types/textfield": "^3.12.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.13.2",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/textfield/-/textfield-3.13.2.tgz",
+ "integrity": "sha512-kEq7al5R809qrPVWOKymPb3093ywg1CWliFnXWQCnupG284Ssrk2BGtQEQ7dcCkTSHcY+N9xMYDMp6LmJ+Nw6Q==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/textfield": "^3.17.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/form": "^3.7.14",
+ "@react-spectrum/label": "^3.16.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/textfield": "^3.12.1",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8666,12 +8663,12 @@
}
},
"node_modules/@react-spectrum/theme-dark": {
- "version": "3.5.16",
- "resolved": "https://registry.npmjs.org/@react-spectrum/theme-dark/-/theme-dark-3.5.16.tgz",
- "integrity": "sha512-sgH6trZaD34FCY74+m94KPK6C3AUyy4YzoFhAXXHM6uJaXMrvBVQVLm/V/6pg79/zt6nvMrCWSycdRKhxVxZQg==",
+ "version": "3.5.17",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/theme-dark/-/theme-dark-3.5.17.tgz",
+ "integrity": "sha512-y8Decmpyp1EEhD+zzePHSQbSxR2f0STfBp8BfZtOuIdxhZ5xTHB4oSQsGgksD1QZSCwmGvJ5iLL+wRZbzZJAlQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/provider": "^3.8.7",
+ "@react-types/provider": "^3.8.8",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8679,12 +8676,12 @@
}
},
"node_modules/@react-spectrum/theme-default": {
- "version": "3.5.16",
- "resolved": "https://registry.npmjs.org/@react-spectrum/theme-default/-/theme-default-3.5.16.tgz",
- "integrity": "sha512-Sg6nnJm8VpjzVBpw7paYT8ZmNQ34ADBueXxl++qkuk2ECf21mD6MLohOfgEO1BZZONe5qTkxOE73lFWx1Uvplg==",
+ "version": "3.5.17",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/theme-default/-/theme-default-3.5.17.tgz",
+ "integrity": "sha512-TSTSXIgbjBet17MF9WezyMR+TYGUlWQXxMunHySN3YPYIk7j/NTLy+W3Lx4IoWf7nd3RnsvT40zHGrLHKPMzvQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/provider": "^3.8.7",
+ "@react-types/provider": "^3.8.8",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8692,12 +8689,12 @@
}
},
"node_modules/@react-spectrum/theme-light": {
- "version": "3.4.16",
- "resolved": "https://registry.npmjs.org/@react-spectrum/theme-light/-/theme-light-3.4.16.tgz",
- "integrity": "sha512-Q1LNpMilgTQd/xo8engQeblwFPly5teLh6NQ2wCKetAdqoInAqIzqZn91beifw4PhIlatnl5QgGISKO/V1xbFQ==",
+ "version": "3.4.17",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/theme-light/-/theme-light-3.4.17.tgz",
+ "integrity": "sha512-rG1LE7WrbpF7M5mXfJThiRY42wQalPsccubtT2ndyVnI3UYjMHlaYpZ5nIGUBZpv1TRHDqbHmwCCldmlIEPolQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/provider": "^3.8.7",
+ "@react-types/provider": "^3.8.8",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8705,21 +8702,21 @@
}
},
"node_modules/@react-spectrum/toast": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@react-spectrum/toast/-/toast-3.0.1.tgz",
- "integrity": "sha512-BliS/kbAn666FakXc9q7sv1wRiuAvDzYWr9ahqGa0jSk6PxXmo+n5HrsLwZhWuy8AFzeY6BqG2ODT7eelsUHtg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/toast": "^3.0.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/button": "^3.16.12",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/toast": "^3.0.0",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/toast/-/toast-3.0.2.tgz",
+ "integrity": "sha512-4GUS1DkuhIkWSZ86NLgUf30bItBjUthdIEc+gQQYVcid6pKvyuZLCMCxV5mP+e0OZp++dAIXIXnu0URG28kbXg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/toast": "^3.0.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/button": "^3.16.13",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/toast": "^3.1.0",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0",
"use-sync-external-store": "^1.4.0"
},
@@ -8730,22 +8727,22 @@
}
},
"node_modules/@react-spectrum/tooltip": {
- "version": "3.7.3",
- "resolved": "https://registry.npmjs.org/@react-spectrum/tooltip/-/tooltip-3.7.3.tgz",
- "integrity": "sha512-aN8zgkQkfPQC+EuBNYsLesbeE9XVeB5TxyapYp7CCH1fqwrITron5gd8+0BM5U1s7aEDoh7q7r8cH9EvSet3Wg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/focus": "^3.20.1",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/tooltip": "^3.8.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/overlays": "^5.7.3",
- "@react-spectrum/utils": "^3.12.3",
- "@react-stately/tooltip": "^3.5.2",
- "@react-types/overlays": "^3.8.13",
- "@react-types/shared": "^3.28.0",
- "@react-types/tooltip": "^3.4.15",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.7.4",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/tooltip/-/tooltip-3.7.4.tgz",
+ "integrity": "sha512-wj1QIEe4bZL8wo/cJWdCe23+u1QYuSBX7kF0mapmSCYvClF/I6hajLeA+Q1I6zCvWi/yg7tC05JZcFxVHTrThA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/tooltip": "^3.8.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/overlays": "^5.7.4",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-stately/tooltip": "^3.5.3",
+ "@react-types/overlays": "^3.8.14",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/tooltip": "^3.4.16",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8755,22 +8752,22 @@
}
},
"node_modules/@react-spectrum/tree": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@react-spectrum/tree/-/tree-3.0.1.tgz",
- "integrity": "sha512-cJyD6lgCMzXCBpJvYCNwZ6RIBuQtPnVYP+WeZT/6rZ2zchscWQTE5NRF1vkwYjgPR3/ssupNGfao7teuE1NTlg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-aria/button": "^3.12.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/tree": "^3.0.1",
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/checkbox": "^3.9.14",
- "@react-spectrum/text": "^3.5.13",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/shared": "^3.28.0",
- "@spectrum-icons/ui": "^3.6.14",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/tree/-/tree-3.1.0.tgz",
+ "integrity": "sha512-YwaS80eSJ8mLROLTx87BKmsNQUZCv3lVaP/OPYJcLT0n3zlNKcI00proofNHE+OVy05H9i1NDMqyj3GSp09i9w==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-aria/button": "^3.13.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/tree": "^3.0.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/checkbox": "^3.9.15",
+ "@react-spectrum/text": "^3.5.14",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/shared": "^3.29.0",
+ "@spectrum-icons/ui": "^3.6.15",
"@swc/helpers": "^0.5.0",
- "react-aria-components": "^1.7.1"
+ "react-aria-components": "^1.8.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
@@ -8779,15 +8776,15 @@
}
},
"node_modules/@react-spectrum/utils": {
- "version": "3.12.3",
- "resolved": "https://registry.npmjs.org/@react-spectrum/utils/-/utils-3.12.3.tgz",
- "integrity": "sha512-isHI69Rvv9k+rvO8TNTt3/MZZJ1hJHxYjRQ/YxSzoDv5RHW+JJPMff/IcyEeFiIB6FftNJGo0FbtuWE8QRQe0g==",
+ "version": "3.12.4",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/utils/-/utils-3.12.4.tgz",
+ "integrity": "sha512-Y/VP4nF0JRNj6tVdooy/za26QsgPA955kdkkKJ9lhFWeVYdunJydAKc7MPZtohO/NQgjT8Y8QxM1jAHwyu1K1Q==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/ssr": "^3.9.7",
- "@react-aria/utils": "^3.28.1",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/ssr": "^3.9.8",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0",
"clsx": "^2.0.0"
},
@@ -8797,15 +8794,15 @@
}
},
"node_modules/@react-spectrum/view": {
- "version": "3.6.17",
- "resolved": "https://registry.npmjs.org/@react-spectrum/view/-/view-3.6.17.tgz",
- "integrity": "sha512-mkklVOVKO0s6E5B1FFH4b8MQyHBDH84qgNpVf+WkzQCkzWRw/q3p5uHqvJIEne7/cNp8s2UM+RtYbU3XlBYF8g==",
+ "version": "3.6.18",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/view/-/view-3.6.18.tgz",
+ "integrity": "sha512-K8YKGFo9XJvX/gyNN3OzhP4IfDpLLawE9BV9t9Q7mRH/yHwPw8FFaRJug86Vg5ZR2w+M8ou4Bde8IxbB+PjCkA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/shared": "^3.28.0",
- "@react-types/view": "^3.4.15",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/view": "^3.4.16",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8815,15 +8812,15 @@
}
},
"node_modules/@react-spectrum/well": {
- "version": "3.4.21",
- "resolved": "https://registry.npmjs.org/@react-spectrum/well/-/well-3.4.21.tgz",
- "integrity": "sha512-38HVKrz0nR1kkR4D5o3bxgutaJZUFgjf+bzHWHXY5kLYoCpc6pVXQT58pDOXHqciEBKKoj52+mD7Er8PZaFhBg==",
+ "version": "3.4.22",
+ "resolved": "https://registry.npmjs.org/@react-spectrum/well/-/well-3.4.22.tgz",
+ "integrity": "sha512-2+k01lze2bHj5AMze6nxARrTtDUimGeQlwLXU/lsiueJW3fSX9/mF8b+97mc0PNQckGMBvkF1Ziq6CAdJQEyNw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-spectrum/utils": "^3.12.3",
- "@react-types/shared": "^3.28.0",
- "@react-types/well": "^3.3.15",
+ "@react-aria/utils": "^3.28.2",
+ "@react-spectrum/utils": "^3.12.4",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/well": "^3.3.16",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8904,12 +8901,12 @@
}
},
"node_modules/@react-stately/autocomplete": {
- "version": "3.0.0-beta.0",
- "resolved": "https://registry.npmjs.org/@react-stately/autocomplete/-/autocomplete-3.0.0-beta.0.tgz",
- "integrity": "sha512-nWRbDzqHzdZySIqwoEBMIdineoQxR1Wzmb86r+NICBX9cNv0tZBLNnHywHsul/MN61/TthdOpay1QwZUoQSrXw==",
+ "version": "3.0.0-beta.1",
+ "resolved": "https://registry.npmjs.org/@react-stately/autocomplete/-/autocomplete-3.0.0-beta.1.tgz",
+ "integrity": "sha512-ohs6QOtJouQ+Y1+zRKiCzv57QogSTRuOA1QfrnIS1YPwKO1EDQXSqFkq2htK5+bN9GCm94yo6r4iX++SZKmLXA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/utils": "^3.10.4",
+ "@react-stately/utils": "^3.10.6",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8917,15 +8914,15 @@
}
},
"node_modules/@react-stately/calendar": {
- "version": "3.7.1",
- "resolved": "https://registry.npmjs.org/@react-stately/calendar/-/calendar-3.7.1.tgz",
- "integrity": "sha512-DXsJv2Xm1BOqJAx5846TmTG1IZ0oKrBqYAzWZG7hiDq3rPjYGgKtC/iJg9MUev6pHhoZlP9fdRCNFiCfzm5bLQ==",
+ "version": "3.8.0",
+ "resolved": "https://registry.npmjs.org/@react-stately/calendar/-/calendar-3.8.0.tgz",
+ "integrity": "sha512-YAuJiR9EtVThX91gU2ay/6YgPe0LvZWEssu4BS0Atnwk5cAo32gvF5FMta9ztH1LIULdZFaypU/C1mvnayMf+Q==",
"license": "Apache-2.0",
"dependencies": {
- "@internationalized/date": "^3.7.0",
- "@react-stately/utils": "^3.10.5",
- "@react-types/calendar": "^3.6.1",
- "@react-types/shared": "^3.28.0",
+ "@internationalized/date": "^3.8.0",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/calendar": "^3.7.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8933,15 +8930,15 @@
}
},
"node_modules/@react-stately/checkbox": {
- "version": "3.6.12",
- "resolved": "https://registry.npmjs.org/@react-stately/checkbox/-/checkbox-3.6.12.tgz",
- "integrity": "sha512-gMxrWBl+styUD+2ntNIcviVpGt2Y+cHUGecAiNI3LM8/K6weI7938DWdLdK7i0gDmgSJwhoNRSavMPI1W6aMZQ==",
+ "version": "3.6.13",
+ "resolved": "https://registry.npmjs.org/@react-stately/checkbox/-/checkbox-3.6.13.tgz",
+ "integrity": "sha512-b8+bkOhobzuJ5bAA16JpYg1tM973eNXD3U4h/8+dckLndKHRjIwPvrL25tzKN7NcQp2LKVCauFesgI+Z+/2FJg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/form": "^3.1.2",
- "@react-stately/utils": "^3.10.5",
- "@react-types/checkbox": "^3.9.2",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/checkbox": "^3.9.3",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8949,12 +8946,12 @@
}
},
"node_modules/@react-stately/collections": {
- "version": "3.12.2",
- "resolved": "https://registry.npmjs.org/@react-stately/collections/-/collections-3.12.2.tgz",
- "integrity": "sha512-RoehfGwrsYJ/WGtyGSLZNYysszajnq0Q3iTXg7plfW1vNEzom/A31vrLjOSOHJWAtwW339SDGGRpymDtLo4GWA==",
+ "version": "3.12.3",
+ "resolved": "https://registry.npmjs.org/@react-stately/collections/-/collections-3.12.3.tgz",
+ "integrity": "sha512-QfSBME2QWDjUw/RmmUjrYl/j1iCYcYCIDsgZda1OeRtt63R11k0aqmmwrDRwCsA+Sv+D5QgkOp4KK+CokTzoVQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8962,19 +8959,19 @@
}
},
"node_modules/@react-stately/color": {
- "version": "3.8.3",
- "resolved": "https://registry.npmjs.org/@react-stately/color/-/color-3.8.3.tgz",
- "integrity": "sha512-0KaVN2pIOxdAKanFxkx/8zl+73tCoUn2+k7nvK7SpAsFpWScteEHW6hMdmQVwQ2+X+OtQRYHyhhTXULMIIY6iw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@internationalized/number": "^3.6.0",
- "@internationalized/string": "^3.2.5",
- "@react-stately/form": "^3.1.2",
- "@react-stately/numberfield": "^3.9.10",
- "@react-stately/slider": "^3.6.2",
- "@react-stately/utils": "^3.10.5",
- "@react-types/color": "^3.0.3",
- "@react-types/shared": "^3.28.0",
+ "version": "3.8.4",
+ "resolved": "https://registry.npmjs.org/@react-stately/color/-/color-3.8.4.tgz",
+ "integrity": "sha512-LXmfnJPWnL5q1/Z8Pn2d+9efrClLWCiK6c3IGXN8ZWcdR/cMJ/w9SY9f7evyXvmeUmdU1FTGgoSVqGfup3tSyA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@internationalized/number": "^3.6.1",
+ "@internationalized/string": "^3.2.6",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/numberfield": "^3.9.11",
+ "@react-stately/slider": "^3.6.3",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/color": "^3.0.4",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -8982,19 +8979,19 @@
}
},
"node_modules/@react-stately/combobox": {
- "version": "3.10.3",
- "resolved": "https://registry.npmjs.org/@react-stately/combobox/-/combobox-3.10.3.tgz",
- "integrity": "sha512-l4yr8lSHfwFdA+ZpY15w98HkgF1iHytjerdQkMa4C0dCl4NWUyyWMOcgmHA8G56QEdbFo5dXyW6hzF2PJnUOIg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-stately/collections": "^3.12.2",
- "@react-stately/form": "^3.1.2",
- "@react-stately/list": "^3.12.0",
- "@react-stately/overlays": "^3.6.14",
- "@react-stately/select": "^3.6.11",
- "@react-stately/utils": "^3.10.5",
- "@react-types/combobox": "^3.13.3",
- "@react-types/shared": "^3.28.0",
+ "version": "3.10.4",
+ "resolved": "https://registry.npmjs.org/@react-stately/combobox/-/combobox-3.10.4.tgz",
+ "integrity": "sha512-sgujLhukIGKskLDrOL4SAbO7WOgLsD7gSdjRQZ0f/e8bWMmUOWEp22T+X1hMMcuVRkRdXlEF1kH2/E6BVanXYw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/list": "^3.12.1",
+ "@react-stately/overlays": "^3.6.15",
+ "@react-stately/select": "^3.6.12",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/combobox": "^3.13.4",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9002,12 +8999,12 @@
}
},
"node_modules/@react-stately/data": {
- "version": "3.12.2",
- "resolved": "https://registry.npmjs.org/@react-stately/data/-/data-3.12.2.tgz",
- "integrity": "sha512-u0yQkISnPyR5RjpNJCSxyC28bx/UvUKtVYRH5yx/MtXbP+2Byn7ItQ+evRqpJB5XsWFlyohGebgbXvL3JSBVsg==",
+ "version": "3.12.3",
+ "resolved": "https://registry.npmjs.org/@react-stately/data/-/data-3.12.3.tgz",
+ "integrity": "sha512-JYPNV1gd9OZm8xPay0exx5okFNgiwESNvdBHsfDC+f8BifRyFLdrvoaUGF0enKIeSQMB1oReFAxTAXtDZd27rA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9015,18 +9012,18 @@
}
},
"node_modules/@react-stately/datepicker": {
- "version": "3.13.0",
- "resolved": "https://registry.npmjs.org/@react-stately/datepicker/-/datepicker-3.13.0.tgz",
- "integrity": "sha512-I0Y/aQraQyRLMWnh5tBZMiZ0xlmvPjFErXnQaeD7SdOYUHNtQS4BAQsMByQrMfg8uhOqUTKlIh7xEZusuqYWOA==",
+ "version": "3.14.0",
+ "resolved": "https://registry.npmjs.org/@react-stately/datepicker/-/datepicker-3.14.0.tgz",
+ "integrity": "sha512-JSkQfKW0+WpPQyOOeRPBLwXkVfpTUwgZJDnHBCud5kEuQiFFyeAIbL57RNXc4AX2pzY3piQa6OHnjDGTfqClxQ==",
"license": "Apache-2.0",
"dependencies": {
- "@internationalized/date": "^3.7.0",
- "@internationalized/string": "^3.2.5",
- "@react-stately/form": "^3.1.2",
- "@react-stately/overlays": "^3.6.14",
- "@react-stately/utils": "^3.10.5",
- "@react-types/datepicker": "^3.11.0",
- "@react-types/shared": "^3.28.0",
+ "@internationalized/date": "^3.8.0",
+ "@internationalized/string": "^3.2.6",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/overlays": "^3.6.15",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/datepicker": "^3.12.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9034,13 +9031,13 @@
}
},
"node_modules/@react-stately/disclosure": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/@react-stately/disclosure/-/disclosure-3.0.2.tgz",
- "integrity": "sha512-hiArGiJY2y9HcLaGaO1WaXgrTsowd64ZMh8ADVSmxr9drqiMSZ1GXmKuf3DDRHfqKMXX96HNkx5nbv2pczWCsg==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@react-stately/disclosure/-/disclosure-3.0.3.tgz",
+ "integrity": "sha512-4kB+WDXVcrxCmJ+X6c23wa5Ax5dPSpm6Ef8DktLrLcUfJyfr+SWs5/IfkrYG0sOl3/u5OwyWe1pq3hDpzyDlLA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/utils": "^3.10.5",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9048,13 +9045,13 @@
}
},
"node_modules/@react-stately/dnd": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/@react-stately/dnd/-/dnd-3.5.2.tgz",
- "integrity": "sha512-W3Q3O3eIMPHGVKSvkswY8+WCXEli6Wr+LLXYizwAl0dt2+dKKE4r91YugSVnJxXq3cw1/Z4nccmsAPRZa31plQ==",
+ "version": "3.5.3",
+ "resolved": "https://registry.npmjs.org/@react-stately/dnd/-/dnd-3.5.3.tgz",
+ "integrity": "sha512-e4IodPF7fv9hR6jqSjiyrrFQ/6NbHNM5Ft1MJzCu6tJHvT+sl6qxIP5A+XR3wkjMpi4QW2WhVUmoFNbS/6ZAug==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/selection": "^3.20.0",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/selection": "^3.20.1",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9062,21 +9059,21 @@
}
},
"node_modules/@react-stately/flags": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@react-stately/flags/-/flags-3.1.0.tgz",
- "integrity": "sha512-KSHOCxTFpBtxhIRcKwsD1YDTaNxFtCYuAUb0KEihc16QwqZViq4hasgPBs2gYm7fHRbw7WYzWKf6ZSo/+YsFlg==",
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/@react-stately/flags/-/flags-3.1.1.tgz",
+ "integrity": "sha512-XPR5gi5LfrPdhxZzdIlJDz/B5cBf63l4q6/AzNqVWFKgd0QqY5LvWJftXkklaIUpKSJkIKQb8dphuZXDtkWNqg==",
"license": "Apache-2.0",
"dependencies": {
"@swc/helpers": "^0.5.0"
}
},
"node_modules/@react-stately/form": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@react-stately/form/-/form-3.1.2.tgz",
- "integrity": "sha512-sKgkV+rxeqM1lf0dCq2wWzdYa5Z0wz/MB3yxjodffy8D43PjFvUOMWpgw/752QHPGCd1XIxA3hE58Dw9FFValg==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/@react-stately/form/-/form-3.1.3.tgz",
+ "integrity": "sha512-Jisgm0facSS3sAzHfSgshoCo3LxfO0wmQj98MOBCGXyVL+MSwx2ilb38eXIyBCzHJzJnPRTLaK/E4T49aph47A==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9084,15 +9081,15 @@
}
},
"node_modules/@react-stately/grid": {
- "version": "3.11.0",
- "resolved": "https://registry.npmjs.org/@react-stately/grid/-/grid-3.11.0.tgz",
- "integrity": "sha512-Wp6kza+2MzNybls9pRWvIwAHwMnSV1eUZXZxLwJy+JVS5lghkr731VvT+YD79z70osJKmgxgmiQGm4/yfetXdA==",
+ "version": "3.11.1",
+ "resolved": "https://registry.npmjs.org/@react-stately/grid/-/grid-3.11.1.tgz",
+ "integrity": "sha512-xMk2YsaIKkF8dInRLUFpUXBIqnYt88hehhq2nb65RFgsFFhngE/OkaFudSUzaYPc1KvHpW+oHqvseC+G1iDG2w==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/collections": "^3.12.2",
- "@react-stately/selection": "^3.20.0",
- "@react-types/grid": "^3.3.0",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/selection": "^3.20.1",
+ "@react-types/grid": "^3.3.1",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9100,17 +9097,17 @@
}
},
"node_modules/@react-stately/layout": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/@react-stately/layout/-/layout-4.2.1.tgz",
- "integrity": "sha512-8ndL33URRyDm6Z+NUR2gS0eVOZQB2mP4pGyvSaM8W68RKF5+XXaPY4QLBuCo2+TsNlqsBNbI2qAznQW1SPQ3+g==",
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/@react-stately/layout/-/layout-4.2.2.tgz",
+ "integrity": "sha512-cKojNZteaVPtJrEePoNmKOgua4LYhholsthaEpD7ldKcOacl9VsvBbaowv945HEDKj6A919YoXOLdgy5qzoPtw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/collections": "^3.12.2",
- "@react-stately/table": "^3.14.0",
- "@react-stately/virtualizer": "^4.3.1",
- "@react-types/grid": "^3.3.0",
- "@react-types/shared": "^3.28.0",
- "@react-types/table": "^3.11.0",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/table": "^3.14.1",
+ "@react-stately/virtualizer": "^4.3.2",
+ "@react-types/grid": "^3.3.1",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/table": "^3.12.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9119,15 +9116,15 @@
}
},
"node_modules/@react-stately/list": {
- "version": "3.12.0",
- "resolved": "https://registry.npmjs.org/@react-stately/list/-/list-3.12.0.tgz",
- "integrity": "sha512-6niQWJ6TZwOKLAOn2wIsxtOvWenh3rKiKdOh4L4O4f7U+h1Hu000Mu4lyIQm2P9uZAkF2Y5QNh6dHN+hSd6h3A==",
+ "version": "3.12.1",
+ "resolved": "https://registry.npmjs.org/@react-stately/list/-/list-3.12.1.tgz",
+ "integrity": "sha512-N+YCInNZ2OpY0WUNvJWUTyFHtzE5yBtZ9DI4EHJDvm61+jmZ2s3HszOfa7j+7VOKq78VW3m5laqsQNWvMrLFrQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/collections": "^3.12.2",
- "@react-stately/selection": "^3.20.0",
- "@react-stately/utils": "^3.10.5",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/selection": "^3.20.1",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9135,14 +9132,14 @@
}
},
"node_modules/@react-stately/menu": {
- "version": "3.9.2",
- "resolved": "https://registry.npmjs.org/@react-stately/menu/-/menu-3.9.2.tgz",
- "integrity": "sha512-mVCFMUQnEMs6djOqgHC2d46k/5Mv5f6UYa4TMnNDSiY8QlHG4eIdmhBmuYpOwWuOOHJ0xKmLQ4PWLzma/mBorg==",
+ "version": "3.9.3",
+ "resolved": "https://registry.npmjs.org/@react-stately/menu/-/menu-3.9.3.tgz",
+ "integrity": "sha512-9x1sTX3Xq2Q3mJUHV+YN9MR36qNzgn8eBSLa40eaFDaOOtoJ+V10m7OriUfpjey7WzLBpq00Sfda54/PbQHZ0g==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/overlays": "^3.6.14",
- "@react-types/menu": "^3.9.15",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/overlays": "^3.6.15",
+ "@react-types/menu": "^3.10.0",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9150,15 +9147,15 @@
}
},
"node_modules/@react-stately/numberfield": {
- "version": "3.9.10",
- "resolved": "https://registry.npmjs.org/@react-stately/numberfield/-/numberfield-3.9.10.tgz",
- "integrity": "sha512-47ta1GyfLsSaDJIdH6A0ARttPV32nu8a5zUSE2hTfRqwgAd3ksWW5ZEf6qIhDuhnE9GtaIuacsctD8C7M3EOPw==",
+ "version": "3.9.11",
+ "resolved": "https://registry.npmjs.org/@react-stately/numberfield/-/numberfield-3.9.11.tgz",
+ "integrity": "sha512-gAFSZIHnZsgIWVPgGRUUpfW6zM7TCV5oS1SCY90ay5nrS7JCXurQbMrWJLOWHTdM5iSeYMgoyt68OK5KD0KHMw==",
"license": "Apache-2.0",
"dependencies": {
- "@internationalized/number": "^3.6.0",
- "@react-stately/form": "^3.1.2",
- "@react-stately/utils": "^3.10.5",
- "@react-types/numberfield": "^3.8.9",
+ "@internationalized/number": "^3.6.1",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/numberfield": "^3.8.10",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9166,13 +9163,13 @@
}
},
"node_modules/@react-stately/overlays": {
- "version": "3.6.14",
- "resolved": "https://registry.npmjs.org/@react-stately/overlays/-/overlays-3.6.14.tgz",
- "integrity": "sha512-RRalTuHdwrKO1BmXKaqBtE1GGUXU4VUAWwgh4lsP2EFSixDHmOVLxHFDWYvOPChBhpi8KXfLEgm6DEgPBvLBZQ==",
+ "version": "3.6.15",
+ "resolved": "https://registry.npmjs.org/@react-stately/overlays/-/overlays-3.6.15.tgz",
+ "integrity": "sha512-LBaGpXuI+SSd5HSGzyGJA0Gy09V2tl2G/r0lllTYqwt0RDZR6p7IrhdGVXZm6vI0oWEnih7yLC32krkVQrffgQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/utils": "^3.10.5",
- "@react-types/overlays": "^3.8.13",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/overlays": "^3.8.14",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9180,15 +9177,15 @@
}
},
"node_modules/@react-stately/radio": {
- "version": "3.10.11",
- "resolved": "https://registry.npmjs.org/@react-stately/radio/-/radio-3.10.11.tgz",
- "integrity": "sha512-dclixp3fwNBbgpbi66x36YGaNwN7hI1nbuhkcnLAE0hWkTO8/wtKBgGqRKSfNV7MSiWlhBhhcdPcQ+V7q7AQIQ==",
+ "version": "3.10.12",
+ "resolved": "https://registry.npmjs.org/@react-stately/radio/-/radio-3.10.12.tgz",
+ "integrity": "sha512-hFH45CXVa7uyXeTYQy7LGR0SnmGnNRx7XnEXS25w4Ch6BpH8m8SAbhKXqysgcmsE3xrhRas7P9zWw7wI24G28Q==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/form": "^3.1.2",
- "@react-stately/utils": "^3.10.5",
- "@react-types/radio": "^3.8.7",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/radio": "^3.8.8",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9196,13 +9193,13 @@
}
},
"node_modules/@react-stately/searchfield": {
- "version": "3.5.10",
- "resolved": "https://registry.npmjs.org/@react-stately/searchfield/-/searchfield-3.5.10.tgz",
- "integrity": "sha512-6K0+k/8BO/Iq+ODC5mUSIb+tymemliSiSG6B5auWWOZjnnQ0+9M0MYCUdsiJDPk5aUml5aNYI6rlMZO13uHmVw==",
+ "version": "3.5.11",
+ "resolved": "https://registry.npmjs.org/@react-stately/searchfield/-/searchfield-3.5.11.tgz",
+ "integrity": "sha512-vOgK3kgkYcyjTLsBABVzoQL9w6qBamnWAQICcw5OkA6octnF7NZ5DqdjkwnMY95KOGchiTlD5tNNHrz0ekeGiw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/utils": "^3.10.5",
- "@react-types/searchfield": "^3.6.0",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/searchfield": "^3.6.1",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9210,16 +9207,16 @@
}
},
"node_modules/@react-stately/select": {
- "version": "3.6.11",
- "resolved": "https://registry.npmjs.org/@react-stately/select/-/select-3.6.11.tgz",
- "integrity": "sha512-8pD4PNbZQNWg33D4+Fa0mrajUCYV3aA5YIwW3GY8NSRwBspaW4PKSZJtDT5ieN0WAO44YkAmX4idRaMAvqRusA==",
+ "version": "3.6.12",
+ "resolved": "https://registry.npmjs.org/@react-stately/select/-/select-3.6.12.tgz",
+ "integrity": "sha512-5o/NAaENO/Gxs1yui5BHLItxLnDPSQJ5HDKycuD0/gGC17BboAGEY/F9masiQ5qwRPe3JEc0QfvMRq3yZVNXog==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/form": "^3.1.2",
- "@react-stately/list": "^3.12.0",
- "@react-stately/overlays": "^3.6.14",
- "@react-types/select": "^3.9.10",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/list": "^3.12.1",
+ "@react-stately/overlays": "^3.6.15",
+ "@react-types/select": "^3.9.11",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9227,14 +9224,14 @@
}
},
"node_modules/@react-stately/selection": {
- "version": "3.20.0",
- "resolved": "https://registry.npmjs.org/@react-stately/selection/-/selection-3.20.0.tgz",
- "integrity": "sha512-woUSHMTyQiNmCf63Dyot1WXFfWnm6PFYkI9kymcq1qrrly4g/j27U+5PaRWOHawMiJwn1e1GTogk8B+K5ahshQ==",
+ "version": "3.20.1",
+ "resolved": "https://registry.npmjs.org/@react-stately/selection/-/selection-3.20.1.tgz",
+ "integrity": "sha512-K9MP6Rfg2yvFoY2Cr+ykA7bP4EBXlGaq5Dqfa1krvcXlEgMbQka5muLHdNXqjzGgcwPmS1dx1NECD15q63NtOw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/collections": "^3.12.2",
- "@react-stately/utils": "^3.10.5",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9242,14 +9239,14 @@
}
},
"node_modules/@react-stately/slider": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/@react-stately/slider/-/slider-3.6.2.tgz",
- "integrity": "sha512-5S9omr29Viv2PRyZ056ZlazGBM8wYNNHakxsTHcSdG/G8WQLrWspWIMiCd4B37cCTkt9ik6AQ6Y3muHGXJI0IQ==",
+ "version": "3.6.3",
+ "resolved": "https://registry.npmjs.org/@react-stately/slider/-/slider-3.6.3.tgz",
+ "integrity": "sha512-755X1jhpRD1bqf/5Ax1xuSpZbnG/0EEHGOowH28FLYKy5+1l4QVDGPFYxLB9KzXPdRAr9EF0j2kRhH2d8MCksQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/utils": "^3.10.5",
- "@react-types/shared": "^3.28.0",
- "@react-types/slider": "^3.7.9",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/slider": "^3.7.10",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9257,19 +9254,19 @@
}
},
"node_modules/@react-stately/table": {
- "version": "3.14.0",
- "resolved": "https://registry.npmjs.org/@react-stately/table/-/table-3.14.0.tgz",
- "integrity": "sha512-ALHIgAgSyHeyUiBDWIxmIEl9P4Gy5jlGybcT/rDBM8x7Ik/C/0Hd9f9Y5ubiZSpUGeAXlIaeEdSm0HBfYtQVRw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-stately/collections": "^3.12.2",
- "@react-stately/flags": "^3.1.0",
- "@react-stately/grid": "^3.11.0",
- "@react-stately/selection": "^3.20.0",
- "@react-stately/utils": "^3.10.5",
- "@react-types/grid": "^3.3.0",
- "@react-types/shared": "^3.28.0",
- "@react-types/table": "^3.11.0",
+ "version": "3.14.1",
+ "resolved": "https://registry.npmjs.org/@react-stately/table/-/table-3.14.1.tgz",
+ "integrity": "sha512-7P5h4YBAv3B/7BGq/kln+xSKgJCSq4xjt4HmJA7ZkGnEksUPUokBNQdWwZsy3lX/mwunaaKR9x/YNIu7yXB02g==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/flags": "^3.1.1",
+ "@react-stately/grid": "^3.11.1",
+ "@react-stately/selection": "^3.20.1",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/grid": "^3.3.1",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/table": "^3.12.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9277,14 +9274,14 @@
}
},
"node_modules/@react-stately/tabs": {
- "version": "3.8.0",
- "resolved": "https://registry.npmjs.org/@react-stately/tabs/-/tabs-3.8.0.tgz",
- "integrity": "sha512-I8ctOsUKPviJ82xWAcZMvWqz5/VZurkE+W9n9wrFbCgHAGK/37bx+PM1uU/Lk4yKp8WrPYSFOEPil5liD+M+ew==",
+ "version": "3.8.1",
+ "resolved": "https://registry.npmjs.org/@react-stately/tabs/-/tabs-3.8.1.tgz",
+ "integrity": "sha512-1TBbt2BXbemstb/gEYw/NVt3esi5WvgWQW5Z7G8nDzLkpnMHOZXueoUkMxsdm0vhE8p0M9fsJQCMXKvCG3JzJg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/list": "^3.12.0",
- "@react-types/shared": "^3.28.0",
- "@react-types/tabs": "^3.3.13",
+ "@react-stately/list": "^3.12.1",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/tabs": "^3.3.14",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9292,9 +9289,9 @@
}
},
"node_modules/@react-stately/toast": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@react-stately/toast/-/toast-3.0.0.tgz",
- "integrity": "sha512-g7e4hNO9E6kOqyBeLRAfZBihp1EIQikmaH3Uj/OZJXKvIDKJlNlpvwstUIcmEuEzqA1Uru78ozxIVWh3pg9ubg==",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@react-stately/toast/-/toast-3.1.0.tgz",
+ "integrity": "sha512-9W2+evz+EARrjkR1QPLlOL5lcNpVo6PjMAIygRSaCPJ6ftQAZ6B+7xTFGPFabWh83gwXQDUgoSwC3/vosvxZaQ==",
"license": "Apache-2.0",
"dependencies": {
"@swc/helpers": "^0.5.0",
@@ -9305,14 +9302,14 @@
}
},
"node_modules/@react-stately/toggle": {
- "version": "3.8.2",
- "resolved": "https://registry.npmjs.org/@react-stately/toggle/-/toggle-3.8.2.tgz",
- "integrity": "sha512-5KPpT6zvt8H+WC9UbubhCTZltREeYb/3hKdl4YkS7BbSOQlHTFC0pOk8SsQU70Pwk26jeVHbl5le/N8cw00x8w==",
+ "version": "3.8.3",
+ "resolved": "https://registry.npmjs.org/@react-stately/toggle/-/toggle-3.8.3.tgz",
+ "integrity": "sha512-4T2V3P1RK4zEFz4vJjUXUXyB0g4Slm6stE6Ry20fzDWjltuW42cD2lmrd7ccTO/CXFmHLECcXQLD4GEbOj0epA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/utils": "^3.10.5",
- "@react-types/checkbox": "^3.9.2",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/checkbox": "^3.9.3",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9320,13 +9317,13 @@
}
},
"node_modules/@react-stately/tooltip": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/@react-stately/tooltip/-/tooltip-3.5.2.tgz",
- "integrity": "sha512-z81kwZWnnf2SE5/rHMrejH5uQu3dXUjrhIa2AGT038DNOmRyS9TkFBywPCiiE7tHpUg/rxZrPxx01JFGvOkmgg==",
+ "version": "3.5.3",
+ "resolved": "https://registry.npmjs.org/@react-stately/tooltip/-/tooltip-3.5.3.tgz",
+ "integrity": "sha512-btfy/gQ3Eccudx//4HkyQ+CRr3vxbLs74HYHthaoJ9GZbRj/3XDzfUM2X16zRoqTZVrIz/AkUj7AfGfsitU5nQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/overlays": "^3.6.14",
- "@react-types/tooltip": "^3.4.15",
+ "@react-stately/overlays": "^3.6.15",
+ "@react-types/tooltip": "^3.4.16",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9334,15 +9331,15 @@
}
},
"node_modules/@react-stately/tree": {
- "version": "3.8.8",
- "resolved": "https://registry.npmjs.org/@react-stately/tree/-/tree-3.8.8.tgz",
- "integrity": "sha512-21WB9kKT9+/tr6B8Q4G53tZXl/3dftg5sZqCR6x055FGd2wGVbkxsLhQLmC+XVkTiLU9pB3BjvZ9eaSj1D8Wmg==",
+ "version": "3.8.9",
+ "resolved": "https://registry.npmjs.org/@react-stately/tree/-/tree-3.8.9.tgz",
+ "integrity": "sha512-j/LLI9UvbqcfOdl2v9m3gET3etUxoQzv3XdryNAbSkg0jTx8/13Fgi/Xp98bUcNLfynfeGW5P/fieU71sMkGog==",
"license": "Apache-2.0",
"dependencies": {
- "@react-stately/collections": "^3.12.2",
- "@react-stately/selection": "^3.20.0",
- "@react-stately/utils": "^3.10.5",
- "@react-types/shared": "^3.28.0",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/selection": "^3.20.1",
+ "@react-stately/utils": "^3.10.6",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9350,9 +9347,9 @@
}
},
"node_modules/@react-stately/utils": {
- "version": "3.10.5",
- "resolved": "https://registry.npmjs.org/@react-stately/utils/-/utils-3.10.5.tgz",
- "integrity": "sha512-iMQSGcpaecghDIh3mZEpZfoFH3ExBwTtuBEcvZ2XnGzCgQjeYXcMdIUwAfVQLXFTdHUHGF6Gu6/dFrYsCzySBQ==",
+ "version": "3.10.6",
+ "resolved": "https://registry.npmjs.org/@react-stately/utils/-/utils-3.10.6.tgz",
+ "integrity": "sha512-O76ip4InfTTzAJrg8OaZxKU4vvjMDOpfA/PGNOytiXwBbkct2ZeZwaimJ8Bt9W1bj5VsZ81/o/tW4BacbdDOMA==",
"license": "Apache-2.0",
"dependencies": {
"@swc/helpers": "^0.5.0"
@@ -9362,13 +9359,13 @@
}
},
"node_modules/@react-stately/virtualizer": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/@react-stately/virtualizer/-/virtualizer-4.3.1.tgz",
- "integrity": "sha512-yWRR9NhaD9NQezRUm1n0cQAYAOAYLOJSxVrCAKyhz/AYvG5JMMvFk3kzgrX8YZXoZKjybcdvy3YZ+jbCSprR6g==",
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/@react-stately/virtualizer/-/virtualizer-4.3.2.tgz",
+ "integrity": "sha512-KxR0s6IBqUD2TfDM3mAOtiTZLb1zOwcuCeUOvCKNqzEdFhh7nEJPrG33mgJn64S4kM11c0AsPwBlxISqdvCXJg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-aria/utils": "^3.28.1",
- "@react-types/shared": "^3.28.0",
+ "@react-aria/utils": "^3.28.2",
+ "@react-types/shared": "^3.29.0",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
@@ -9377,539 +9374,539 @@
}
},
"node_modules/@react-types/actionbar": {
- "version": "3.1.13",
- "resolved": "https://registry.npmjs.org/@react-types/actionbar/-/actionbar-3.1.13.tgz",
- "integrity": "sha512-3pnEiUxNoJdo+9Er3aXoa5HpA+BztbteysyWmt/r+iLNSsuqhsKZXTn8QPsmQm9/Xc7rcjQJ6WdhLAanCcZt4A==",
+ "version": "3.1.14",
+ "resolved": "https://registry.npmjs.org/@react-types/actionbar/-/actionbar-3.1.14.tgz",
+ "integrity": "sha512-mg7mlmNkUayd1EXcPWmJNPoECc3GxRn7OCRE/uUQk38EkHSw2XZEDNKRvOoJ+1x4oVBVGuCE2yNiiK4Yies9TA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/actiongroup": {
- "version": "3.4.15",
- "resolved": "https://registry.npmjs.org/@react-types/actiongroup/-/actiongroup-3.4.15.tgz",
- "integrity": "sha512-EqQW5SVBy9hFf78prXrm31T1xv6xjdMywUsIXkPjEGwdZ9f5FofNbwPpetxdrdq3PFlQU/FsI2+iwD4OcYj7Ow==",
+ "version": "3.4.16",
+ "resolved": "https://registry.npmjs.org/@react-types/actiongroup/-/actiongroup-3.4.16.tgz",
+ "integrity": "sha512-9LPzf2TBwx5QabmCRswdQOr+thU+2OXy/U8IDIW1czC2AtUSdlqpITzJokKBt/TTe1fO4M2Sp2xqYCZcGtZKEA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/autocomplete": {
- "version": "3.0.0-alpha.29",
- "resolved": "https://registry.npmjs.org/@react-types/autocomplete/-/autocomplete-3.0.0-alpha.29.tgz",
- "integrity": "sha512-brP6fb7RAdfu/liaE4gFZIZQJLXksgtOzdu/I5cmcHfpqScAFmgedZHkJoeutK9wTWtNnfuKAFQ2w9KKlIBj9w==",
+ "version": "3.0.0-alpha.30",
+ "resolved": "https://registry.npmjs.org/@react-types/autocomplete/-/autocomplete-3.0.0-alpha.30.tgz",
+ "integrity": "sha512-9neGygI+stJqiEFHzoc1jMySj6lOc4MUmBmu0uGn2zdOG2zxaAZSjh1pd9AJkHNyZ4j/n5rVXMo+v3RNkUntNw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/combobox": "^3.13.3",
- "@react-types/searchfield": "^3.6.0",
- "@react-types/shared": "^3.28.0"
+ "@react-types/combobox": "^3.13.4",
+ "@react-types/searchfield": "^3.6.1",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/avatar": {
- "version": "3.0.13",
- "resolved": "https://registry.npmjs.org/@react-types/avatar/-/avatar-3.0.13.tgz",
- "integrity": "sha512-vPfYbZyoVtw/MbNomJX0w/fMhDFqq8xUHv273k+oGDAIlPw8E8jMYOWh1Vc3TW1a9XmRgjlMFEJhRBv82n4wSg==",
+ "version": "3.0.14",
+ "resolved": "https://registry.npmjs.org/@react-types/avatar/-/avatar-3.0.14.tgz",
+ "integrity": "sha512-YbUN6hrHAmhitR+79ymIhJurcVjAX9gZPMB2hqFkw9S5T5ry8N1genOz2lB69UHcS8KAeDhg+8crZs2B3o/fFg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/badge": {
- "version": "3.1.15",
- "resolved": "https://registry.npmjs.org/@react-types/badge/-/badge-3.1.15.tgz",
- "integrity": "sha512-r8bUCF8TnZm83LM48tE4P2GNsZBMzr9lf/TicTCfqeFBg716CkJcoMVRCQFLnVPV8upHNa+j/HOsHbIb9T7Hrw==",
+ "version": "3.1.16",
+ "resolved": "https://registry.npmjs.org/@react-types/badge/-/badge-3.1.16.tgz",
+ "integrity": "sha512-isf9PdTSyb1/ZbtARfWJ7nA5gbnXuBKWlitNMTLbSZOUUrDP5N5XOOrkl+0fhfxUJrsv/xL8zXDUVsuxNMvFjw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/breadcrumbs": {
- "version": "3.7.11",
- "resolved": "https://registry.npmjs.org/@react-types/breadcrumbs/-/breadcrumbs-3.7.11.tgz",
- "integrity": "sha512-pMvMLPFr7qs4SSnQ0GyX7i3DkWVs9wfm1lGPFbBO7pJLrHTSK/6Ii4cTEvP6d5o2VgjOVkvce9xCLWW5uosuEQ==",
+ "version": "3.7.12",
+ "resolved": "https://registry.npmjs.org/@react-types/breadcrumbs/-/breadcrumbs-3.7.12.tgz",
+ "integrity": "sha512-+LvGEADlv11mLQjxEAZriptSYJJTP+2OIFEKx0z9mmpp+8jTlEHFhAnRVaE6I9QCxcDB5F6q/olfizSwOPOMIg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/link": "^3.5.11",
- "@react-types/shared": "^3.28.0"
+ "@react-types/link": "^3.6.0",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/button": {
- "version": "3.11.0",
- "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.11.0.tgz",
- "integrity": "sha512-gJh5i0JiBiZGZGDo+tXMp6xbixPM7IKZ0sDuxTYBG49qNzzWJq0uNYltO3emwSVXFSsBgRV/Wu8kQGhfuN7wIw==",
+ "version": "3.12.0",
+ "resolved": "https://registry.npmjs.org/@react-types/button/-/button-3.12.0.tgz",
+ "integrity": "sha512-YrASNa+RqGQpzJcxNAahzNuTYVID1OE6HCorrEOXIyGS3EGogHsQmFs9OyThXnGHq6q4rLlA806/jWbP9uZdxA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/buttongroup": {
- "version": "3.3.15",
- "resolved": "https://registry.npmjs.org/@react-types/buttongroup/-/buttongroup-3.3.15.tgz",
- "integrity": "sha512-o3UXB89uA3N8e2U1qV7ks7z6NUTKdED8Jd3iXg7pR7r6sW/pyh0W1gUYaPNgHd4kgcxVx8p/sSBWa9XpiNAfTA==",
+ "version": "3.3.16",
+ "resolved": "https://registry.npmjs.org/@react-types/buttongroup/-/buttongroup-3.3.16.tgz",
+ "integrity": "sha512-3BNDzKNJWyRzDmDc5THYHwPlHhpZQMi+qWhbYsJ1tE0b6Asy6YdKOnjETu97+qN2ZWpQFyohRz9fBoyff2Xkhw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/calendar": {
- "version": "3.6.1",
- "resolved": "https://registry.npmjs.org/@react-types/calendar/-/calendar-3.6.1.tgz",
- "integrity": "sha512-EMbFJX/3gD5j+R0qZEGqK+wlhBxMSHhGP8GqP9XGbpuJPE3w9/M/PVWdh8FUdzf9srYxPOq5NgiGI1JUJvdZqw==",
+ "version": "3.7.0",
+ "resolved": "https://registry.npmjs.org/@react-types/calendar/-/calendar-3.7.0.tgz",
+ "integrity": "sha512-RiEfX2ZTcvfRktQc5obOJtNTgW+UwjNOUW5yf9CLCNOSM07e0w5jtC1ewsOZZbcctMrMCljjL8niGWiBv1wQ1Q==",
"license": "Apache-2.0",
"dependencies": {
- "@internationalized/date": "^3.7.0",
- "@react-types/shared": "^3.28.0"
+ "@internationalized/date": "^3.8.0",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/checkbox": {
- "version": "3.9.2",
- "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.9.2.tgz",
- "integrity": "sha512-BruOLjr9s0BS2+G1Q2ZZ0ubnSTG54hZWr59lCHXaLxMdA/+KVsR6JVMQuYKsW0P8RDDlQXE/QGz3n9yB/Ara4A==",
+ "version": "3.9.3",
+ "resolved": "https://registry.npmjs.org/@react-types/checkbox/-/checkbox-3.9.3.tgz",
+ "integrity": "sha512-h6wmK7CraKHKE6L13Ut+CtnjRktbMRhkCSorv7eg82M6p4PDhZ7mfDSh13IlGR4sryT8Ka+aOjOU+EvMrKiduA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/color": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@react-types/color/-/color-3.0.3.tgz",
- "integrity": "sha512-oIVdluqe4jYW6tHEHX80tuhhjCA93HElTzbzIGhDezgEbC/EEhWnoC3sGlkUTqIGdzhZG0T+HAkf3AZbCrXqZA==",
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@react-types/color/-/color-3.0.4.tgz",
+ "integrity": "sha512-D6Uea8kYGaoZRHgemJ0b0+iXbrvABP8RzsctL8Yp5QVyGgYJDMO8/7eZ3tdtGs/V8Iv+yCzG4yBexPA95i6tEg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0",
- "@react-types/slider": "^3.7.9"
+ "@react-types/shared": "^3.29.0",
+ "@react-types/slider": "^3.7.10"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/combobox": {
- "version": "3.13.3",
- "resolved": "https://registry.npmjs.org/@react-types/combobox/-/combobox-3.13.3.tgz",
- "integrity": "sha512-ASPLWuHke4XbnoOWUkNTguUa2cnpIsHPV0bcnfushC0yMSC4IEOlthstEbcdzjVUpWXSyaoI1R4POXmdIP53Nw==",
+ "version": "3.13.4",
+ "resolved": "https://registry.npmjs.org/@react-types/combobox/-/combobox-3.13.4.tgz",
+ "integrity": "sha512-4mX7eZ/Bv3YWzEzLEZAF/TfKM+I+SCsvnm/cHqOJq3jEE8aVU1ql4Q1+3+SvciX3pfFIfeKlu9S3oYKRT5WIgg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/contextualhelp": {
- "version": "3.2.16",
- "resolved": "https://registry.npmjs.org/@react-types/contextualhelp/-/contextualhelp-3.2.16.tgz",
- "integrity": "sha512-ZrAQlnaA2BYueLktpGvUD/zcwPJ40tqniPS6MFSGuyGryIq6l8W8kv78G7L+W0do8I6MJgFVOcijK6366zzsqA==",
+ "version": "3.2.17",
+ "resolved": "https://registry.npmjs.org/@react-types/contextualhelp/-/contextualhelp-3.2.17.tgz",
+ "integrity": "sha512-Ivz9rldBIS6wtjg18nXGjD8qcZ6c3mbZaxYkW+3csbTHhuGNtg+F7Gb78SVO3VCFl8BHFsQ3z1w2Pzn7hO2frw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/overlays": "^3.8.13",
- "@react-types/shared": "^3.28.0"
+ "@react-types/overlays": "^3.8.14",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/datepicker": {
- "version": "3.11.0",
- "resolved": "https://registry.npmjs.org/@react-types/datepicker/-/datepicker-3.11.0.tgz",
- "integrity": "sha512-GAYgPzqKvd1lR2sLYYMlUkNg2+QoM2uVUmpeQLP1SbYpDr1y8lG5cR54em1G4X/qY4+nCWGiwhRC2veP0D0kfA==",
+ "version": "3.12.0",
+ "resolved": "https://registry.npmjs.org/@react-types/datepicker/-/datepicker-3.12.0.tgz",
+ "integrity": "sha512-dw/xflOdQPQ3uEABaBrZRTvjsMRu5/VZjRx9ygc64sX2N7HKIt+foMPXKJ+1jhtki2p4gigNVjcnJndJHoj9SA==",
"license": "Apache-2.0",
"dependencies": {
- "@internationalized/date": "^3.7.0",
- "@react-types/calendar": "^3.6.1",
- "@react-types/overlays": "^3.8.13",
- "@react-types/shared": "^3.28.0"
+ "@internationalized/date": "^3.8.0",
+ "@react-types/calendar": "^3.7.0",
+ "@react-types/overlays": "^3.8.14",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/dialog": {
- "version": "3.5.16",
- "resolved": "https://registry.npmjs.org/@react-types/dialog/-/dialog-3.5.16.tgz",
- "integrity": "sha512-2D16XjuW9fG3LkVIXu3RzUp3zcK2IZOWlAl+r5i0aLw2Q0QHyYMfGbmgvhxVeAhxhEj/57/ziSl/8rJ9pzmFnw==",
+ "version": "3.5.17",
+ "resolved": "https://registry.npmjs.org/@react-types/dialog/-/dialog-3.5.17.tgz",
+ "integrity": "sha512-rKe2WrT272xuCH13euegBGjJAORYXJpHsX2hlu/f02TmMG4nSLss9vKBnY2N7k7nci65k5wDTW6lcsvQ4Co5zQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/overlays": "^3.8.13",
- "@react-types/shared": "^3.28.0"
+ "@react-types/overlays": "^3.8.14",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/divider": {
- "version": "3.3.15",
- "resolved": "https://registry.npmjs.org/@react-types/divider/-/divider-3.3.15.tgz",
- "integrity": "sha512-zOH1QKNgXMQUMSgXL8oC5wAf9bPpVXYiboBYNKBqBGWUx4/0x6943SnYEu7qYXUItvB6s/a00pj5lrkxdmh0aQ==",
+ "version": "3.3.16",
+ "resolved": "https://registry.npmjs.org/@react-types/divider/-/divider-3.3.16.tgz",
+ "integrity": "sha512-+AFFTHjwi0S7zHV6jfP9KJEdDr2lhnt9Oq2dystCerQzOzL+jfSxGIG0ao6X1o/C8Vfm8MIskXuKEO6FsZCQiA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/form": {
- "version": "3.7.10",
- "resolved": "https://registry.npmjs.org/@react-types/form/-/form-3.7.10.tgz",
- "integrity": "sha512-PPn1OH/QlQLPaoFqp9EMVSlNk41aiNLwPaMyRhzYvFBGLmtbuX+7JCcH2DgV1peq3KAuUKRDdI2M1iVdHYwMPw==",
+ "version": "3.7.11",
+ "resolved": "https://registry.npmjs.org/@react-types/form/-/form-3.7.11.tgz",
+ "integrity": "sha512-umqy2Kvg3ooJi+Wqun95tKbKN51gtNt9s7OFLdwCtfWa6GvHFOixSjqAvZbo+m5qC3X/1kMIz3Dg698l0/+oLQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/grid": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/@react-types/grid/-/grid-3.3.0.tgz",
- "integrity": "sha512-9IXgD5qXXxz+S9RK+zT8umuTCEcE4Yfdl0zUGyTCB8LVcPEeZuarLGXZY/12Rkbd8+r6MUIKTxMVD3Nq9X5Ksg==",
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/@react-types/grid/-/grid-3.3.1.tgz",
+ "integrity": "sha512-bPDckheJiHSIzSeSkLqrO6rXRLWvciFJr9rpCjq/+wBj6HsLh2iMpkB/SqmRHTGpPlJvlu0b7AlxK1FYE0QSKA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/illustratedmessage": {
- "version": "3.3.15",
- "resolved": "https://registry.npmjs.org/@react-types/illustratedmessage/-/illustratedmessage-3.3.15.tgz",
- "integrity": "sha512-jaCwqa0M0uIgfehhi5X8zsyQwEyxUMOtP7LdHBc2owkMqfRNWS55YGs59jStdlN3Ej2ZqXba3JbQ1281+sA1bA==",
+ "version": "3.3.16",
+ "resolved": "https://registry.npmjs.org/@react-types/illustratedmessage/-/illustratedmessage-3.3.16.tgz",
+ "integrity": "sha512-VBRshJAWlaZToS/0HqA7v9EDEgS+Qie+O8TwfQ1KSBoLZa2LK6uHCDJHSrJFDR7E3ymlEfe9dCuX8aPDY+Zvyw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/image": {
- "version": "3.4.7",
- "resolved": "https://registry.npmjs.org/@react-types/image/-/image-3.4.7.tgz",
- "integrity": "sha512-hB2AVNSJ+pmR5YcuMRlrIbbXNX+9Y+NebKbENOkKAPCk/O2Y2eg9njzr8L+vvJjkELo4AVv61CXzXx4aECu/MQ==",
+ "version": "3.4.8",
+ "resolved": "https://registry.npmjs.org/@react-types/image/-/image-3.4.8.tgz",
+ "integrity": "sha512-BgQNAMX2Qb2ZS9QyRIeHyd859q8sIbl3cBq/0IY/p6CB5/UpzbRh5XwfZVwmB40pTR0QshnDjL2jhI9ZXGMiMg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/label": {
- "version": "3.9.9",
- "resolved": "https://registry.npmjs.org/@react-types/label/-/label-3.9.9.tgz",
- "integrity": "sha512-3JGbKlROjRbI2e6o1Mp//vqKNKNNTQAxfsaUHNixgVrxgtqfhSWcjh9ySyNVsUvIgfAuBwgqMdhsJAN9HkZdmQ==",
+ "version": "3.9.10",
+ "resolved": "https://registry.npmjs.org/@react-types/label/-/label-3.9.10.tgz",
+ "integrity": "sha512-SvtwvlbXAdD1ry7Y2/v0lw7SZ6ToIsjRxYbVTcsg0BA6eKBuiID9CLyEWgfDoI0G9Sy9w2FHNrPxQGKwaUldWw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/layout": {
- "version": "3.3.21",
- "resolved": "https://registry.npmjs.org/@react-types/layout/-/layout-3.3.21.tgz",
- "integrity": "sha512-9uzO8Ywaj3/rZqk0AzFAVtkfGmFduPXFFMLufBdNeTy+sr9w35mCWdL9Go/+VPjte1jd1Ukz40p5Gu7duZz28Q==",
+ "version": "3.3.22",
+ "resolved": "https://registry.npmjs.org/@react-types/layout/-/layout-3.3.22.tgz",
+ "integrity": "sha512-l1D/gatBc2qNz5hyty48uXG/zfBjEYDml0hHrHrIGXX7ZgNofAw1bVm/nw+HojSuJrtDGHj3z7xouzjLsgkcRw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/link": {
- "version": "3.5.11",
- "resolved": "https://registry.npmjs.org/@react-types/link/-/link-3.5.11.tgz",
- "integrity": "sha512-aX9sJod9msdQaOT0NUTYNaBKSkXGPazSPvUJ/Oe4/54T3sYkWeRqmgJ84RH55jdBzpbObBTg8qxKiPA26a1q9Q==",
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/@react-types/link/-/link-3.6.0.tgz",
+ "integrity": "sha512-BQ5Tktb+fUxvtqksAJZuP8Z/bpmnQ/Y/zgwxfU0OKmIWkKMUsXY+e0GBVxwFxeh39D77stpVxRsTl7NQrjgtSw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/listbox": {
- "version": "3.5.5",
- "resolved": "https://registry.npmjs.org/@react-types/listbox/-/listbox-3.5.5.tgz",
- "integrity": "sha512-6cUjbYZVa0X2UMsenQ50ZaAssTUfzX3D0Q0Wd5nNf4W7ntBroDg6aBfNQoPDZikPUy8u+Y3uc/xZQfv30si7NA==",
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/@react-types/listbox/-/listbox-3.6.0.tgz",
+ "integrity": "sha512-+1ugDKTxson/WNOQZO4BfrnQ6cGDt+72mEytXMsSsd4aEC+x3RyUv6NKwdOl4n602cOreo0MHtap1X2BOACVoQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/menu": {
- "version": "3.9.15",
- "resolved": "https://registry.npmjs.org/@react-types/menu/-/menu-3.9.15.tgz",
- "integrity": "sha512-vNEeGxKLYBJc3rwImnEhSVzeIrhUSSRYRk617oGZowX3NkWxnixFGBZNy0w8j0z8KeNz3wRM4xqInRord1mDbw==",
+ "version": "3.10.0",
+ "resolved": "https://registry.npmjs.org/@react-types/menu/-/menu-3.10.0.tgz",
+ "integrity": "sha512-DKMqEmUmarVCK0jblNkSlzSH53AAsxWCX9RaKZeP9EnRs2/l1oZRuiQVHlOQRgYwEigAXa2TrwcX4nnxZ+U36Q==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/overlays": "^3.8.13",
- "@react-types/shared": "^3.28.0"
+ "@react-types/overlays": "^3.8.14",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/meter": {
- "version": "3.4.7",
- "resolved": "https://registry.npmjs.org/@react-types/meter/-/meter-3.4.7.tgz",
- "integrity": "sha512-2GwNJ65+jd8lvrHMel/kiU8o7oPAOt1Sd+kezaeGBTbzKxUhCOAAlp9+zMha8vHQwmMvqcmfAHAqIBGaaCfh5w==",
+ "version": "3.4.8",
+ "resolved": "https://registry.npmjs.org/@react-types/meter/-/meter-3.4.8.tgz",
+ "integrity": "sha512-uXmHdUDbAo7L3EkytrUrU6DLOFUt63s9QSTcDp+vwyWoshY4/4Dm4JARdmhJU2ZP1nb2Sy45ASeMvSBw3ia2oA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/progress": "^3.5.10"
+ "@react-types/progress": "^3.5.11"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/numberfield": {
- "version": "3.8.9",
- "resolved": "https://registry.npmjs.org/@react-types/numberfield/-/numberfield-3.8.9.tgz",
- "integrity": "sha512-YqhawYUULiZnUba0/9Vaps8WAT2lto4V6CD/X7s048jiOrHiiIX03RDEAQuKOt1UYdzBJDHfSew9uGMyf/nC0g==",
+ "version": "3.8.10",
+ "resolved": "https://registry.npmjs.org/@react-types/numberfield/-/numberfield-3.8.10.tgz",
+ "integrity": "sha512-mdb4lMC4skO8Eqd0GeU4lJgDTEvqIhtINB5WCzLVZFrFVuxgWDoU5otsu0lbWhCnUA7XWQxupGI//TC1LLppjQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/overlays": {
- "version": "3.8.13",
- "resolved": "https://registry.npmjs.org/@react-types/overlays/-/overlays-3.8.13.tgz",
- "integrity": "sha512-xgT843KIh1otvYPQ6kCGTVUICiMF5UQ7SZUQZd4Zk3VtiFIunFVUvTvL03cpt0026UmY7tbv7vFrPKcT6xjsjw==",
+ "version": "3.8.14",
+ "resolved": "https://registry.npmjs.org/@react-types/overlays/-/overlays-3.8.14.tgz",
+ "integrity": "sha512-XJS67KHYhdMvPNHXNGdmc85gE+29QT5TwC58V4kxxHVtQh9fYzEEPzIV8K84XWSz04rRGe3fjDgRNbcqBektWQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/progress": {
- "version": "3.5.10",
- "resolved": "https://registry.npmjs.org/@react-types/progress/-/progress-3.5.10.tgz",
- "integrity": "sha512-YDQExymdgORnSvXTtOW7SMhVOinlrD3bAlyCxO+hSAVaI1Ax38pW5dUFf6H85Jn7hLpjPQmQJvNsfsJ09rDFjQ==",
+ "version": "3.5.11",
+ "resolved": "https://registry.npmjs.org/@react-types/progress/-/progress-3.5.11.tgz",
+ "integrity": "sha512-CysuMld/lycOckrnlvrlsVoJysDPeBnUYBChwtqwiv4ZNRXos+wgAL1ows6dl7Nr57/FH5B4v5gf9AHEo7jUvw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/provider": {
- "version": "3.8.7",
- "resolved": "https://registry.npmjs.org/@react-types/provider/-/provider-3.8.7.tgz",
- "integrity": "sha512-l1nxOEYTTNzSVLzwbNjBine/Hgxp22hDeJHaXOAQ2lipoQqyKj8thCunljYhqPq0JmwLeL4bJx6DRozDwF10yg==",
+ "version": "3.8.8",
+ "resolved": "https://registry.npmjs.org/@react-types/provider/-/provider-3.8.8.tgz",
+ "integrity": "sha512-uyNeHvZ1huiNpCfGhaHUGQzw9TfacjM0axmUm6Us5usfMGa/rtLzSeuF0KSlTJtgbqQDdmzDxJGUaMUzVWGAog==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/radio": {
- "version": "3.8.7",
- "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.8.7.tgz",
- "integrity": "sha512-K620hnDmSR7u9cZfwJIfoLvmZS1j9liD7nDXBm+N6aiq9E+8sw312sIEX5iR2TrQ4xovvJQZN7DWxPVr+1LfWw==",
+ "version": "3.8.8",
+ "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.8.8.tgz",
+ "integrity": "sha512-QfAIp+0CnRSnoRTJVXUEPi+9AvFvRzWLIKEnE9OmgXjuvJCU3QNiwd8NWjNeE+94QBEVvAZQcqGU+44q5poxNg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/searchfield": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/@react-types/searchfield/-/searchfield-3.6.0.tgz",
- "integrity": "sha512-eHQSP85j0hWhWEauPDdr+4kmLB3hUEWxU4ANNubalkupXKhGeRge5/ysHrWjEsLmoodfQ+RS6QIRLQRDsQF/4g==",
+ "version": "3.6.1",
+ "resolved": "https://registry.npmjs.org/@react-types/searchfield/-/searchfield-3.6.1.tgz",
+ "integrity": "sha512-XR4tYktxHxGJufpO0MTAPknIbmN5eZqXCZwTdBS4tecihf9iGDsXmrBOs+M7LEnil67GaZcFrMhKxOMVpLwZAg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0",
- "@react-types/textfield": "^3.12.0"
+ "@react-types/shared": "^3.29.0",
+ "@react-types/textfield": "^3.12.1"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/select": {
- "version": "3.9.10",
- "resolved": "https://registry.npmjs.org/@react-types/select/-/select-3.9.10.tgz",
- "integrity": "sha512-vvC5+cBSOu6J6lm74jhhP3Zvo1JO8m0FNX+Q95wapxrhs2aYYeMIgVuvNKeOuhVqzpBZxWmblBjCVNzCArZOaQ==",
+ "version": "3.9.11",
+ "resolved": "https://registry.npmjs.org/@react-types/select/-/select-3.9.11.tgz",
+ "integrity": "sha512-uEpQCgDlrq/5fW05FgNEsqsqpvZVKfHQO9Mp7OTqGtm4UBNAbcQ6hOV7MJwQCS25Lu2luzOYdgqDUN8eAATJVQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/shared": {
- "version": "3.28.0",
- "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.28.0.tgz",
- "integrity": "sha512-9oMEYIDc3sk0G5rysnYvdNrkSg7B04yTKl50HHSZVbokeHpnU0yRmsDaWb9B/5RprcKj8XszEk5guBO8Sa/Q+Q==",
+ "version": "3.29.0",
+ "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.29.0.tgz",
+ "integrity": "sha512-IDQYu/AHgZimObzCFdNl1LpZvQW/xcfLt3v20sorl5qRucDVj4S9os98sVTZ4IRIBjmS+MkjqpR5E70xan7ooA==",
"license": "Apache-2.0",
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/slider": {
- "version": "3.7.9",
- "resolved": "https://registry.npmjs.org/@react-types/slider/-/slider-3.7.9.tgz",
- "integrity": "sha512-MxCIVkrBSbN3AxIYW4hOpTcwPmIuY4841HF36sDLFWR3wx06z70IY3GFwV7Cbp814vhc84d4ABnPMwtE+AZRGQ==",
+ "version": "3.7.10",
+ "resolved": "https://registry.npmjs.org/@react-types/slider/-/slider-3.7.10.tgz",
+ "integrity": "sha512-Yb8wbpu2gS7AwvJUuz0IdZBRi6eIBZq32BSss4UHX0StA8dtR1/K4JeTsArxwiA3P0BA6t0gbR6wzxCvVA9fRw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/statuslight": {
- "version": "3.3.15",
- "resolved": "https://registry.npmjs.org/@react-types/statuslight/-/statuslight-3.3.15.tgz",
- "integrity": "sha512-2otqkd+zMH3EVGrEjtHRhN2qsZhV7z4RE0F5wSHhpKwYwk1W1Ix7yr/Yw/Ad9TI22voOz0DilohD56rzbasi3A==",
+ "version": "3.3.16",
+ "resolved": "https://registry.npmjs.org/@react-types/statuslight/-/statuslight-3.3.16.tgz",
+ "integrity": "sha512-fplsmW7Y22da9bA7YkSamSUSTDcARBto9mxJelePLe+xZocOoWSYGOfr3fwaPU+MbLn7HzMRSd/NH7woWTUfgQ==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/switch": {
- "version": "3.5.9",
- "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.5.9.tgz",
- "integrity": "sha512-7XIS5qycIKhdfcWfzl8n458/7tkZKCNfMfZmIREgozKOtTBirjmtRRsefom2hlFT8VIlG7COmY4btK3oEuEhnQ==",
+ "version": "3.5.10",
+ "resolved": "https://registry.npmjs.org/@react-types/switch/-/switch-3.5.10.tgz",
+ "integrity": "sha512-YyNhx4CvuJ0Rvv7yMuQaqQuOIeg+NwLV00NHHJ+K0xEANSLcICLOLPNMOqRIqLSQDz5vDI705UKk8gVcxqPX5g==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/table": {
- "version": "3.11.0",
- "resolved": "https://registry.npmjs.org/@react-types/table/-/table-3.11.0.tgz",
- "integrity": "sha512-83cGyszL+sQ0uFNZvrnvDMg2KIxpe3l5U48IH9lvq2NC41Y4lGG0d7sBU6wgcc3vnQ/qhOE5LcbceGKEi2YSyw==",
+ "version": "3.12.0",
+ "resolved": "https://registry.npmjs.org/@react-types/table/-/table-3.12.0.tgz",
+ "integrity": "sha512-dmTzjCYwHf2HBOeTa/CEL177Aox0f0mkeLF5nQw/2z6SBolfmYoAwVTPxTaYFVu4MkEJxQTz9AuAsJvCbRJbhg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/grid": "^3.3.0",
- "@react-types/shared": "^3.28.0"
+ "@react-types/grid": "^3.3.1",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/tabs": {
- "version": "3.3.13",
- "resolved": "https://registry.npmjs.org/@react-types/tabs/-/tabs-3.3.13.tgz",
- "integrity": "sha512-jqaK2U+WKChAmYBMO8QxQlFaIM8zDRY9+ignA1HwIyRw7vli4Mycc4RcMxTPm8krvgo+zuVrped9QB+hsDjCsQ==",
+ "version": "3.3.14",
+ "resolved": "https://registry.npmjs.org/@react-types/tabs/-/tabs-3.3.14.tgz",
+ "integrity": "sha512-/uKsA7L2dctKU0JEaBWerlX+3BoXpKUFr3kHpRUoH66DSGvAo34vZ7kv/BHMZifJenIbF04GhDBsGp1zjrQKBg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/text": {
- "version": "3.3.15",
- "resolved": "https://registry.npmjs.org/@react-types/text/-/text-3.3.15.tgz",
- "integrity": "sha512-emrh+j2qCyvZZza5H8CE+1Ij26cZ50Bjxx8MDA6dS9lupTcxJ2Hq/OIk3mrjaRkToUHdFr+D4vKlcSdSnbHpzQ==",
+ "version": "3.3.16",
+ "resolved": "https://registry.npmjs.org/@react-types/text/-/text-3.3.16.tgz",
+ "integrity": "sha512-jOVv8ICp2lg2y6yf2WuQ6Klb1XU+JNoz85NAn/AwbwIHUapfy+pUvfLlYxWTWVaNXo4cTJLg5SlGQuYdi4mZqw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/textfield": {
- "version": "3.12.0",
- "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.12.0.tgz",
- "integrity": "sha512-B0vzCIBUbYWrlFk+odVXrSmPYwds9G+G+HiOO/sJr4eZ4RYiIqnFbZ7qiWhWXaou7vi71iXVqKQ8mxA6bJwPEQ==",
+ "version": "3.12.1",
+ "resolved": "https://registry.npmjs.org/@react-types/textfield/-/textfield-3.12.1.tgz",
+ "integrity": "sha512-6YTAMCKjEGuXg0A4bZA77j5QJ1a6yFviMUWsCIL6Dxq5K3TklzVsbAduSbHomPPuvkNTBSW4+TUJrVSnoTjMNA==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/tooltip": {
- "version": "3.4.15",
- "resolved": "https://registry.npmjs.org/@react-types/tooltip/-/tooltip-3.4.15.tgz",
- "integrity": "sha512-qiYwQLiEwYqrt/m8iQA8abl9k/9LrbtMNoEevL4jN4H0I5NrG55E78GYTkSzBBYmhBO4KnPVT0SfGM1tYaQx/A==",
+ "version": "3.4.16",
+ "resolved": "https://registry.npmjs.org/@react-types/tooltip/-/tooltip-3.4.16.tgz",
+ "integrity": "sha512-XEyKeqR3YxqJcR0cpigLGEBeRTEzrB0cu++IaADdqXJ8dBzS6s8y9EgR5UvKZmX1CQOBvMfXyYkj7nmJ039fOw==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/overlays": "^3.8.13",
- "@react-types/shared": "^3.28.0"
+ "@react-types/overlays": "^3.8.14",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/view": {
- "version": "3.4.15",
- "resolved": "https://registry.npmjs.org/@react-types/view/-/view-3.4.15.tgz",
- "integrity": "sha512-6PPkN9KobTYsFFHcTl/fWfzaQ5PF3oKJP1AXoL2dtesgAzt3+jvF8yBnrjDdfRIR498ayWkocPPIqWc6EPc8tg==",
+ "version": "3.4.16",
+ "resolved": "https://registry.npmjs.org/@react-types/view/-/view-3.4.16.tgz",
+ "integrity": "sha512-ks82kEs0aUV42q5SJDNgc6ASJzb+byTkaNq4pZsG6DuX1QJyvc+23QDzFh5gS42qyEIzc1gGXq3QbzOIygdGJg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@react-types/well": {
- "version": "3.3.15",
- "resolved": "https://registry.npmjs.org/@react-types/well/-/well-3.3.15.tgz",
- "integrity": "sha512-7fqAYSm/9jhNxjfYZqUtP3ZeOLuxG/KQQb7qjI77unVbniEr0M9rwRTi44RbrpPCp3B4DtaaCma+gIybvHfshQ==",
+ "version": "3.3.16",
+ "resolved": "https://registry.npmjs.org/@react-types/well/-/well-3.3.16.tgz",
+ "integrity": "sha512-3Y3svGsiABaMfeaFRwNA4T+mvVekDJAEVbAQ2ErZxRnzdJFGSGKwkrrHjK3vWxnCYWBsIGv2SXYGHV4xcah8yg==",
"license": "Apache-2.0",
"dependencies": {
- "@react-types/shared": "^3.28.0"
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
@@ -9962,12 +9959,12 @@
}
},
"node_modules/@smithy/abort-controller": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.1.tgz",
- "integrity": "sha512-fiUIYgIgRjMWznk6iLJz35K2YxSLHzLBA/RC6lBrKfQ8fHbPfvk7Pk9UvpKoHgJjI18MnbPuEju53zcVy6KF1g==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz",
+ "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -9975,15 +9972,15 @@
}
},
"node_modules/@smithy/config-resolver": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.0.1.tgz",
- "integrity": "sha512-Igfg8lKu3dRVkTSEm98QpZUvKEOa71jDX4vKRcvJVyRc3UgN3j7vFMf0s7xLQhYmKa8kyJGQgUJDOV5V3neVlQ==",
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.0.tgz",
+ "integrity": "sha512-8smPlwhga22pwl23fM5ew4T9vfLUCeFXlcqNOCD5M5h8VmNPNUE9j6bQSuRXpDSV11L/E/SwEBQuW8hr6+nS1A==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"@smithy/util-config-provider": "^4.0.0",
- "@smithy/util-middleware": "^4.0.1",
+ "@smithy/util-middleware": "^4.0.2",
"tslib": "^2.6.2"
},
"engines": {
@@ -9991,17 +9988,17 @@
}
},
"node_modules/@smithy/core": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.1.5.tgz",
- "integrity": "sha512-HLclGWPkCsekQgsyzxLhCQLa8THWXtB5PxyYN+2O6nkyLt550KQKTlbV2D1/j5dNIQapAZM1+qFnpBFxZQkgCA==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.2.0.tgz",
+ "integrity": "sha512-k17bgQhVZ7YmUvA8at4af1TDpl0NDMBuBKJl8Yg0nrefwmValU+CnA5l/AriVdQNthU/33H3nK71HrLgqOPr1Q==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/middleware-serde": "^4.0.2",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/middleware-serde": "^4.0.3",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/types": "^4.2.0",
"@smithy/util-body-length-browser": "^4.0.0",
- "@smithy/util-middleware": "^4.0.1",
- "@smithy/util-stream": "^4.1.2",
+ "@smithy/util-middleware": "^4.0.2",
+ "@smithy/util-stream": "^4.2.0",
"@smithy/util-utf8": "^4.0.0",
"tslib": "^2.6.2"
},
@@ -10010,15 +10007,15 @@
}
},
"node_modules/@smithy/credential-provider-imds": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.1.tgz",
- "integrity": "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.2.tgz",
+ "integrity": "sha512-32lVig6jCaWBHnY+OEQ6e6Vnt5vDHaLiydGrwYMW9tPqO688hPGTYRamYJ1EptxEC2rAwJrHWmPoKRBl4iTa8w==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/types": "^4.1.0",
- "@smithy/url-parser": "^4.0.1",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/types": "^4.2.0",
+ "@smithy/url-parser": "^4.0.2",
"tslib": "^2.6.2"
},
"engines": {
@@ -10062,14 +10059,14 @@
}
},
"node_modules/@smithy/fetch-http-handler": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.1.tgz",
- "integrity": "sha512-3aS+fP28urrMW2KTjb6z9iFow6jO8n3MFfineGbndvzGZit3taZhKWtTorf+Gp5RpFDDafeHlhfsGlDCXvUnJA==",
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz",
+ "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/querystring-builder": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/querystring-builder": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"@smithy/util-base64": "^4.0.0",
"tslib": "^2.6.2"
},
@@ -10078,12 +10075,12 @@
}
},
"node_modules/@smithy/hash-node": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.1.tgz",
- "integrity": "sha512-TJ6oZS+3r2Xu4emVse1YPB3Dq3d8RkZDKcPr71Nj/lJsdAP1c7oFzYqEn1IBc915TsgLl2xIJNuxCz+gLbLE0w==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.2.tgz",
+ "integrity": "sha512-VnTpYPnRUE7yVhWozFdlxcYknv9UN7CeOqSrMH+V877v4oqtVYuoqhIhtSjmGPvYrYnAkaM61sLMKHvxL138yg==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"@smithy/util-buffer-from": "^4.0.0",
"@smithy/util-utf8": "^4.0.0",
"tslib": "^2.6.2"
@@ -10093,12 +10090,12 @@
}
},
"node_modules/@smithy/invalid-dependency": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.1.tgz",
- "integrity": "sha512-gdudFPf4QRQ5pzj7HEnu6FhKRi61BfH/Gk5Yf6O0KiSbr1LlVhgjThcvjdu658VE6Nve8vaIWB8/fodmS1rBPQ==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.2.tgz",
+ "integrity": "sha512-GatB4+2DTpgWPday+mnUkoumP54u/MDM/5u44KF9hIu8jF0uafZtQLcdfIKkIcUNuF/fBojpLEHZS/56JqPeXQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10118,13 +10115,13 @@
}
},
"node_modules/@smithy/middleware-content-length": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.1.tgz",
- "integrity": "sha512-OGXo7w5EkB5pPiac7KNzVtfCW2vKBTZNuCctn++TTSOMpe6RZO/n6WEC1AxJINn3+vWLKW49uad3lo/u0WJ9oQ==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.2.tgz",
+ "integrity": "sha512-hAfEXm1zU+ELvucxqQ7I8SszwQ4znWMbNv6PLMndN83JJN41EPuS93AIyh2N+gJ6x8QFhzSO6b7q2e6oClDI8A==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10132,18 +10129,18 @@
}
},
"node_modules/@smithy/middleware-endpoint": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.0.6.tgz",
- "integrity": "sha512-ftpmkTHIFqgaFugcjzLZv3kzPEFsBFSnq1JsIkr2mwFzCraZVhQk2gqN51OOeRxqhbPTkRFj39Qd2V91E/mQxg==",
- "license": "Apache-2.0",
- "dependencies": {
- "@smithy/core": "^3.1.5",
- "@smithy/middleware-serde": "^4.0.2",
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/shared-ini-file-loader": "^4.0.1",
- "@smithy/types": "^4.1.0",
- "@smithy/url-parser": "^4.0.1",
- "@smithy/util-middleware": "^4.0.1",
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.0.tgz",
+ "integrity": "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@smithy/core": "^3.2.0",
+ "@smithy/middleware-serde": "^4.0.3",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/shared-ini-file-loader": "^4.0.2",
+ "@smithy/types": "^4.2.0",
+ "@smithy/url-parser": "^4.0.2",
+ "@smithy/util-middleware": "^4.0.2",
"tslib": "^2.6.2"
},
"engines": {
@@ -10151,18 +10148,18 @@
}
},
"node_modules/@smithy/middleware-retry": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.0.7.tgz",
- "integrity": "sha512-58j9XbUPLkqAcV1kHzVX/kAR16GT+j7DUZJqwzsxh1jtz7G82caZiGyyFgUvogVfNTg3TeAOIJepGc8TXF4AVQ==",
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.0.tgz",
+ "integrity": "sha512-2zAagd1s6hAaI/ap6SXi5T3dDwBOczOMCSkkYzktqN1+tzbk1GAsHNAdo/1uzxz3Ky02jvZQwbi/vmDA6z4Oyg==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/service-error-classification": "^4.0.1",
- "@smithy/smithy-client": "^4.1.6",
- "@smithy/types": "^4.1.0",
- "@smithy/util-middleware": "^4.0.1",
- "@smithy/util-retry": "^4.0.1",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/service-error-classification": "^4.0.2",
+ "@smithy/smithy-client": "^4.2.0",
+ "@smithy/types": "^4.2.0",
+ "@smithy/util-middleware": "^4.0.2",
+ "@smithy/util-retry": "^4.0.2",
"tslib": "^2.6.2",
"uuid": "^9.0.1"
},
@@ -10184,12 +10181,12 @@
}
},
"node_modules/@smithy/middleware-serde": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.2.tgz",
- "integrity": "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ==",
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz",
+ "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10197,12 +10194,12 @@
}
},
"node_modules/@smithy/middleware-stack": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.1.tgz",
- "integrity": "sha512-dHwDmrtR/ln8UTHpaIavRSzeIk5+YZTBtLnKwDW3G2t6nAupCiQUvNzNoHBpik63fwUaJPtlnMzXbQrNFWssIA==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.2.tgz",
+ "integrity": "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10210,14 +10207,14 @@
}
},
"node_modules/@smithy/node-config-provider": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.1.tgz",
- "integrity": "sha512-8mRTjvCtVET8+rxvmzRNRR0hH2JjV0DFOmwXPrISmTIJEfnCBugpYYGAsCj8t41qd+RB5gbheSQ/6aKZCQvFLQ==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz",
+ "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/property-provider": "^4.0.1",
- "@smithy/shared-ini-file-loader": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/shared-ini-file-loader": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10225,15 +10222,15 @@
}
},
"node_modules/@smithy/node-http-handler": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.3.tgz",
- "integrity": "sha512-dYCLeINNbYdvmMLtW0VdhW1biXt+PPCGazzT5ZjKw46mOtdgToQEwjqZSS9/EN8+tNs/RO0cEWG044+YZs97aA==",
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz",
+ "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/abort-controller": "^4.0.1",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/querystring-builder": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/abort-controller": "^4.0.2",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/querystring-builder": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10241,12 +10238,12 @@
}
},
"node_modules/@smithy/property-provider": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.0.1.tgz",
- "integrity": "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.0.2.tgz",
+ "integrity": "sha512-wNRoQC1uISOuNc2s4hkOYwYllmiyrvVXWMtq+TysNRVQaHm4yoafYQyjN/goYZS+QbYlPIbb/QRjaUZMuzwQ7A==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10254,12 +10251,12 @@
}
},
"node_modules/@smithy/protocol-http": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.0.1.tgz",
- "integrity": "sha512-TE4cpj49jJNB/oHyh/cRVEgNZaoPaxd4vteJNB0yGidOCVR0jCw/hjPVsT8Q8FRmj8Bd3bFZt8Dh7xGCT+xMBQ==",
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz",
+ "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10267,12 +10264,12 @@
}
},
"node_modules/@smithy/querystring-builder": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.1.tgz",
- "integrity": "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz",
+ "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"@smithy/util-uri-escape": "^4.0.0",
"tslib": "^2.6.2"
},
@@ -10281,12 +10278,12 @@
}
},
"node_modules/@smithy/querystring-parser": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.1.tgz",
- "integrity": "sha512-Ma2XC7VS9aV77+clSFylVUnPZRindhB7BbmYiNOdr+CHt/kZNJoPP0cd3QxCnCFyPXC4eybmyE98phEHkqZ5Jw==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.2.tgz",
+ "integrity": "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10294,24 +10291,24 @@
}
},
"node_modules/@smithy/service-error-classification": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.1.tgz",
- "integrity": "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.2.tgz",
+ "integrity": "sha512-LA86xeFpTKn270Hbkixqs5n73S+LVM0/VZco8dqd+JT75Dyx3Lcw/MraL7ybjmz786+160K8rPOmhsq0SocoJQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0"
+ "@smithy/types": "^4.2.0"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@smithy/shared-ini-file-loader": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.1.tgz",
- "integrity": "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz",
+ "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10319,16 +10316,16 @@
}
},
"node_modules/@smithy/signature-v4": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.0.1.tgz",
- "integrity": "sha512-nCe6fQ+ppm1bQuw5iKoeJ0MJfz2os7Ic3GBjOkLOPtavbD1ONoyE3ygjBfz2ythFWm4YnRm6OxW+8p/m9uCoIA==",
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.0.2.tgz",
+ "integrity": "sha512-Mz+mc7okA73Lyz8zQKJNyr7lIcHLiPYp0+oiqiMNc/t7/Kf2BENs5d63pEj7oPqdjaum6g0Fc8wC78dY1TgtXw==",
"license": "Apache-2.0",
"dependencies": {
"@smithy/is-array-buffer": "^4.0.0",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/types": "^4.2.0",
"@smithy/util-hex-encoding": "^4.0.0",
- "@smithy/util-middleware": "^4.0.1",
+ "@smithy/util-middleware": "^4.0.2",
"@smithy/util-uri-escape": "^4.0.0",
"@smithy/util-utf8": "^4.0.0",
"tslib": "^2.6.2"
@@ -10338,17 +10335,17 @@
}
},
"node_modules/@smithy/smithy-client": {
- "version": "4.1.6",
- "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.1.6.tgz",
- "integrity": "sha512-UYDolNg6h2O0L+cJjtgSyKKvEKCOa/8FHYJnBobyeoeWDmNpXjwOAtw16ezyeu1ETuuLEOZbrynK0ZY1Lx9Jbw==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.2.0.tgz",
+ "integrity": "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/core": "^3.1.5",
- "@smithy/middleware-endpoint": "^4.0.6",
- "@smithy/middleware-stack": "^4.0.1",
- "@smithy/protocol-http": "^5.0.1",
- "@smithy/types": "^4.1.0",
- "@smithy/util-stream": "^4.1.2",
+ "@smithy/core": "^3.2.0",
+ "@smithy/middleware-endpoint": "^4.1.0",
+ "@smithy/middleware-stack": "^4.0.2",
+ "@smithy/protocol-http": "^5.1.0",
+ "@smithy/types": "^4.2.0",
+ "@smithy/util-stream": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10356,9 +10353,9 @@
}
},
"node_modules/@smithy/types": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.1.0.tgz",
- "integrity": "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz",
+ "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==",
"license": "Apache-2.0",
"dependencies": {
"tslib": "^2.6.2"
@@ -10368,13 +10365,13 @@
}
},
"node_modules/@smithy/url-parser": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.1.tgz",
- "integrity": "sha512-gPXcIEUtw7VlK8f/QcruNXm7q+T5hhvGu9tl63LsJPZ27exB6dtNwvh2HIi0v7JcXJ5emBxB+CJxwaLEdJfA+g==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.2.tgz",
+ "integrity": "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/querystring-parser": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/querystring-parser": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10445,14 +10442,14 @@
}
},
"node_modules/@smithy/util-defaults-mode-browser": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.7.tgz",
- "integrity": "sha512-CZgDDrYHLv0RUElOsmZtAnp1pIjwDVCSuZWOPhIOBvG36RDfX1Q9+6lS61xBf+qqvHoqRjHxgINeQz47cYFC2Q==",
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.8.tgz",
+ "integrity": "sha512-ZTypzBra+lI/LfTYZeop9UjoJhhGRTg3pxrNpfSTQLd3AJ37r2z4AXTKpq1rFXiiUIJsYyFgNJdjWRGP/cbBaQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/property-provider": "^4.0.1",
- "@smithy/smithy-client": "^4.1.6",
- "@smithy/types": "^4.1.0",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/smithy-client": "^4.2.0",
+ "@smithy/types": "^4.2.0",
"bowser": "^2.11.0",
"tslib": "^2.6.2"
},
@@ -10461,17 +10458,17 @@
}
},
"node_modules/@smithy/util-defaults-mode-node": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.7.tgz",
- "integrity": "sha512-79fQW3hnfCdrfIi1soPbK3zmooRFnLpSx3Vxi6nUlqaaQeC5dm8plt4OTNDNqEEEDkvKghZSaoti684dQFVrGQ==",
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.8.tgz",
+ "integrity": "sha512-Rgk0Jc/UDfRTzVthye/k2dDsz5Xxs9LZaKCNPgJTRyoyBoeiNCnHsYGOyu1PKN+sDyPnJzMOz22JbwxzBp9NNA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/config-resolver": "^4.0.1",
- "@smithy/credential-provider-imds": "^4.0.1",
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/property-provider": "^4.0.1",
- "@smithy/smithy-client": "^4.1.6",
- "@smithy/types": "^4.1.0",
+ "@smithy/config-resolver": "^4.1.0",
+ "@smithy/credential-provider-imds": "^4.0.2",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/property-provider": "^4.0.2",
+ "@smithy/smithy-client": "^4.2.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10479,13 +10476,13 @@
}
},
"node_modules/@smithy/util-endpoints": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.0.1.tgz",
- "integrity": "sha512-zVdUENQpdtn9jbpD9SCFK4+aSiavRb9BxEtw9ZGUR1TYo6bBHbIoi7VkrFQ0/RwZlzx0wRBaRmPclj8iAoJCLA==",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.0.2.tgz",
+ "integrity": "sha512-6QSutU5ZyrpNbnd51zRTL7goojlcnuOB55+F9VBD+j8JpRY50IGamsjlycrmpn8PQkmJucFW8A0LSfXj7jjtLQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/node-config-provider": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/node-config-provider": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10505,12 +10502,12 @@
}
},
"node_modules/@smithy/util-middleware": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.0.1.tgz",
- "integrity": "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.0.2.tgz",
+ "integrity": "sha512-6GDamTGLuBQVAEuQ4yDQ+ti/YINf/MEmIegrEeg7DdB/sld8BX1lqt9RRuIcABOhAGTA50bRbPzErez7SlDtDQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.1.0",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10518,13 +10515,13 @@
}
},
"node_modules/@smithy/util-retry": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.1.tgz",
- "integrity": "sha512-WmRHqNVwn3kI3rKk1LsKcVgPBG6iLTBGC1iYOV3GQegwJ3E8yjzHytPt26VNzOWr1qu0xE03nK0Ug8S7T7oufw==",
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.2.tgz",
+ "integrity": "sha512-Qryc+QG+7BCpvjloFLQrmlSd0RsVRHejRXd78jNO3+oREueCjwG1CCEH1vduw/ZkM1U9TztwIKVIi3+8MJScGg==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/service-error-classification": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/service-error-classification": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10532,14 +10529,14 @@
}
},
"node_modules/@smithy/util-stream": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.1.2.tgz",
- "integrity": "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz",
+ "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/fetch-http-handler": "^5.0.1",
- "@smithy/node-http-handler": "^4.0.3",
- "@smithy/types": "^4.1.0",
+ "@smithy/fetch-http-handler": "^5.0.2",
+ "@smithy/node-http-handler": "^4.0.4",
+ "@smithy/types": "^4.2.0",
"@smithy/util-base64": "^4.0.0",
"@smithy/util-buffer-from": "^4.0.0",
"@smithy/util-hex-encoding": "^4.0.0",
@@ -10576,13 +10573,13 @@
}
},
"node_modules/@smithy/util-waiter": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.0.2.tgz",
- "integrity": "sha512-piUTHyp2Axx3p/kc2CIJkYSv0BAaheBQmbACZgQSSfWUumWNW+R1lL+H9PDBxKJkvOeEX+hKYEFiwO8xagL8AQ==",
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.0.3.tgz",
+ "integrity": "sha512-JtaY3FxmD+te+KSI2FJuEcfNC9T/DGGVf551babM7fAaXhjJUt7oSYurH1Devxd2+BOSUACCgt3buinx4UnmEA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/abort-controller": "^4.0.1",
- "@smithy/types": "^4.1.0",
+ "@smithy/abort-controller": "^4.0.2",
+ "@smithy/types": "^4.2.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -10596,59 +10593,41 @@
"license": "MIT"
},
"node_modules/@spectrum-icons/ui": {
- "version": "3.6.14",
- "resolved": "https://registry.npmjs.org/@spectrum-icons/ui/-/ui-3.6.14.tgz",
- "integrity": "sha512-g5GlWWzEBkqEy84SW5SYebWAKntp4CkIFqZHgKCCL4a5ISFss4lpE8mmEPpCGApog/HObsXFOBGHEWj8cyzwpQ==",
+ "version": "3.6.15",
+ "resolved": "https://registry.npmjs.org/@spectrum-icons/ui/-/ui-3.6.15.tgz",
+ "integrity": "sha512-Xozzn7/jwPHs6hy7OfJ5idAz5J00mBKDv7lfvIQ7glNIrbuOo7ekhn02vDXKnGpklKFPql+bVbtUWDQdBW3jaw==",
"license": "Apache-2.0",
"dependencies": {
"@adobe/react-spectrum-ui": "1.2.1",
- "@react-spectrum/icon": "^3.8.3",
+ "@react-spectrum/icon": "^3.8.4",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
- }
- },
- "node_modules/@spectrum-icons/ui/node_modules/@adobe/react-spectrum-ui": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@adobe/react-spectrum-ui/-/react-spectrum-ui-1.2.1.tgz",
- "integrity": "sha512-wcrbEE2O/9WnEn6avBnaVRRx88S5PLFsPLr4wffzlbMfXeQsy+RMQwaJd3cbzrn18/j04Isit7f7Emfn0dhrJA==",
- "license": "Apache-2.0",
- "peerDependencies": {
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0",
- "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0"
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@spectrum-icons/workflow": {
- "version": "4.2.19",
- "resolved": "https://registry.npmjs.org/@spectrum-icons/workflow/-/workflow-4.2.19.tgz",
- "integrity": "sha512-g4ySOXgH3yOrX1txBsCZ5ZpcjSZY5xFMyFQ151w6ve2vAOqzPsqDNHKbdVXYyUWGmR8H8z7+a9VkifOm2d7xvQ==",
+ "version": "4.2.20",
+ "resolved": "https://registry.npmjs.org/@spectrum-icons/workflow/-/workflow-4.2.20.tgz",
+ "integrity": "sha512-asNZ7TouEteIj9n9CQXe9e6H/bYF3bKB5fPsarTesdpwqrU3WU+eMGWUWGmgyG59hmxMigo2vQwQCVOWXEdSew==",
"license": "Apache-2.0",
"dependencies": {
"@adobe/react-spectrum-workflow": "2.3.5",
- "@react-spectrum/icon": "^3.8.3",
+ "@react-spectrum/icon": "^3.8.4",
"@swc/helpers": "^0.5.0"
},
"peerDependencies": {
"@react-spectrum/provider": "^3.0.0",
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
- }
- },
- "node_modules/@spectrum-icons/workflow/node_modules/@adobe/react-spectrum-workflow": {
- "version": "2.3.5",
- "resolved": "https://registry.npmjs.org/@adobe/react-spectrum-workflow/-/react-spectrum-workflow-2.3.5.tgz",
- "integrity": "sha512-b53VIPwPWKb/T5gzE3qs+QlGP5gVrw/LnWV3xMksDU+CRl3rzOKUwxIGiZO8ICyYh1WiyqY4myGlPU/nAynBUg==",
- "license": "Apache-2.0",
- "peerDependencies": {
- "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0",
- "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0"
+ "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1",
+ "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/@storybook/addon-actions": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.6.7.tgz",
- "integrity": "sha512-XgZCwIcZGThEyD7e2q7rN/jzg7ZHUxn/ln403eex04jWAGBBbtC2IVuowwCWV8HwDihnhpCZEP6HlgjakOYZbQ==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.6.12.tgz",
+ "integrity": "sha512-B5kfiRvi35oJ0NIo53CGH66H471A3XTzrfaa6SxXEJsgxxSeKScG5YeXcCvLiZfvANRQ7QDsmzPUgg0o3hdMXw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -10663,7 +10642,7 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-actions/node_modules/@types/uuid": {
@@ -10688,9 +10667,9 @@
}
},
"node_modules/@storybook/addon-backgrounds": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.6.7.tgz",
- "integrity": "sha512-aDFzi83gDhYn0+FGjRYbY5TfBtoG/UgVr9Abi7s5ceabZRhPrYikMyFX0o8V3Z8COl6wUmWmF1luYE4MfXgN2g==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.6.12.tgz",
+ "integrity": "sha512-lmIAma9BiiCTbJ8YfdZkXjpnAIrOUcgboLkt1f6XJ78vNEMnLNzD9gnh7Tssz1qrqvm34v9daDjIb+ggdiKp3Q==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -10703,13 +10682,13 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-controls": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.6.7.tgz",
- "integrity": "sha512-6ReB1Sc1qlqvAM7NUmtw2K1cKCgGBs8zYRgL44Q2ti+r55a2ownhm6WUm/kZs2ixSkV9ehm1osiqbGBfAn0Isw==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.6.12.tgz",
+ "integrity": "sha512-9VSRPJWQVb9wLp21uvpxDGNctYptyUX0gbvxIWOHMH3R2DslSoq41lsC/oQ4l4zSHVdL+nq8sCTkhBxIsjKqdQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -10722,20 +10701,20 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-docs": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.6.7.tgz",
- "integrity": "sha512-kgNPEVuLGNJE8EdVQi5Tg2DYgR66/gut07jvhqnJfNqUkj6UpBHad0JR1uwrd7xS3kJs29Fs7UyU87RJnSlwcg==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.6.12.tgz",
+ "integrity": "sha512-kEezQjAf/p3SpDzLABgg4fbT48B6dkT2LiZCKTRmCrJVtuReaAr4R9MMM6Jsph6XjbIj/SvOWf3CMeOPXOs9sg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@mdx-js/react": "^3.0.0",
- "@storybook/blocks": "8.6.7",
- "@storybook/csf-plugin": "8.6.7",
- "@storybook/react-dom-shim": "8.6.7",
+ "@storybook/blocks": "8.6.12",
+ "@storybook/csf-plugin": "8.6.12",
+ "@storybook/react-dom-shim": "8.6.12",
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
"ts-dedent": "^2.0.0"
@@ -10745,25 +10724,25 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-essentials": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.6.7.tgz",
- "integrity": "sha512-PFT62xuknk4wD1hTZEnYbGP1mJFPlhk7zVVlMjoldMUhmbHsFRhdWCpo93Vu9E3BWVxFxL3Jj+UwSwH4uVmekQ==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.6.12.tgz",
+ "integrity": "sha512-Y/7e8KFlttaNfv7q2zoHMPdX6hPXHdsuQMAjYl5NG9HOAJREu4XBy4KZpbcozRe4ApZ78rYsN/MO1EuA+bNMIA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@storybook/addon-actions": "8.6.7",
- "@storybook/addon-backgrounds": "8.6.7",
- "@storybook/addon-controls": "8.6.7",
- "@storybook/addon-docs": "8.6.7",
- "@storybook/addon-highlight": "8.6.7",
- "@storybook/addon-measure": "8.6.7",
- "@storybook/addon-outline": "8.6.7",
- "@storybook/addon-toolbars": "8.6.7",
- "@storybook/addon-viewport": "8.6.7",
+ "@storybook/addon-actions": "8.6.12",
+ "@storybook/addon-backgrounds": "8.6.12",
+ "@storybook/addon-controls": "8.6.12",
+ "@storybook/addon-docs": "8.6.12",
+ "@storybook/addon-highlight": "8.6.12",
+ "@storybook/addon-measure": "8.6.12",
+ "@storybook/addon-outline": "8.6.12",
+ "@storybook/addon-toolbars": "8.6.12",
+ "@storybook/addon-viewport": "8.6.12",
"ts-dedent": "^2.0.0"
},
"funding": {
@@ -10771,13 +10750,13 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-highlight": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.6.7.tgz",
- "integrity": "sha512-4KE1RF4XfqII7XrJPgf/1W0t0EWRKmik5Rrpb6WofXfgZ2QYzLFnyESjf67/g2TMgDnle2drfa/pt5tGV4+I2Q==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.6.12.tgz",
+ "integrity": "sha512-9FITVxdoycZ+eXuAZL9ElWyML/0fPPn9UgnnAkrU7zkMi+Segq/Tx7y+WWanC5zfWZrXAuG6WTOYEXeWQdm//w==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -10788,19 +10767,19 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-interactions": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-interactions/-/addon-interactions-8.6.7.tgz",
- "integrity": "sha512-FbEWWxCl/5DJDyEGTJqtTJ5XbxM2rOUGCPy+3CkPSpI9yvz3zprRTJRHPFrh7hUqQ4Qkqfjm7JCO29+0CmeE0g==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-interactions/-/addon-interactions-8.6.12.tgz",
+ "integrity": "sha512-cTAJlTq6uVZBEbtwdXkXoPQ4jHOAGKQnYSezBT4pfNkdjn/FnEeaQhMBDzf14h2wr5OgBnJa6Lmd8LD9ficz4A==",
"dev": true,
"license": "MIT",
"dependencies": {
"@storybook/global": "^5.0.0",
- "@storybook/instrumenter": "8.6.7",
- "@storybook/test": "8.6.7",
+ "@storybook/instrumenter": "8.6.12",
+ "@storybook/test": "8.6.12",
"polished": "^4.2.2",
"ts-dedent": "^2.2.0"
},
@@ -10809,13 +10788,13 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-measure": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.6.7.tgz",
- "integrity": "sha512-4dkkCltjKRcJH+ZMv5nbNT0LBQfcXIydVfN9mAvhDsiPFD5eZcHbN4XVfUslECWgrkaa/a6FE1W9PNEUBjCJaA==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.6.12.tgz",
+ "integrity": "sha512-tACmwqqOvutaQSduw8SMb62wICaT1rWaHtMN3vtWXuxgDPSdJQxLP+wdVyRYMAgpxhLyIO7YRf++Hfha9RHgFg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -10827,13 +10806,13 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-onboarding": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-onboarding/-/addon-onboarding-8.6.7.tgz",
- "integrity": "sha512-40D1O9abhriKI/i4SQ7iyOMLusO8xFkyoMIBdx1iz4lfwO4cKhR5ymE4slAm+pYLc6+voD0EESCIHyXTEHDJxQ==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-onboarding/-/addon-onboarding-8.6.12.tgz",
+ "integrity": "sha512-/cgxaLy6tr6xO0+QO+qV5rPZS5/c15Daywvg/F03lifLGkMuyn/JDuhu0J5i1LbFsL1RYdf4sjrTOmLXbOT6+Q==",
"dev": true,
"license": "MIT",
"funding": {
@@ -10841,13 +10820,13 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-outline": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.6.7.tgz",
- "integrity": "sha512-atCpCi2CqAWQwL1nu1l5VpIA4fRMnbD4RZMsEiib1suUfNyJv0RdsSgZhp/f+e9sUS0TtMdwhzWT36eEA7VxhQ==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.6.12.tgz",
+ "integrity": "sha512-1ylwm+n1s40S91No0v9T4tCjZORu3GbnjINlyjYTDLLhQHyBQd3nWR1Y1eewU4xH4cW9SnSLcMQFS/82xHqU6A==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -10859,7 +10838,7 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-styling-webpack": {
@@ -10876,9 +10855,9 @@
}
},
"node_modules/@storybook/addon-toolbars": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.6.7.tgz",
- "integrity": "sha512-gR+mRs+Cc5GINZdKgE7afJLFCSMHkz40+zzdrPu6yY2P4B3UOvuQpt+zC/Er5YQ31EEjIvM6/XMQTM0i2db8AA==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.6.12.tgz",
+ "integrity": "sha512-HEcSzo1DyFtIu5/ikVOmh5h85C1IvK9iFKSzBR6ice33zBOaehVJK+Z5f487MOXxPsZ63uvWUytwPyViGInj+g==",
"dev": true,
"license": "MIT",
"funding": {
@@ -10886,13 +10865,13 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-viewport": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.6.7.tgz",
- "integrity": "sha512-kTrt6ByCbBIbqoRqQO9watDl5nSIKCC+R0/EmpEl6ZtzBV3l8trZHdvCHhIqOyv7nfaa7pIeTTG1GD6Gdrxk3w==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.6.12.tgz",
+ "integrity": "sha512-EXK2LArAnABsPP0leJKy78L/lbMWow+EIJfytEP5fHaW4EhMR6h7Hzaqzre6U0IMMr/jVFa1ci+m0PJ0eQc2bw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -10903,7 +10882,7 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/addon-webpack5-compiler-swc": {
@@ -10921,9 +10900,9 @@
}
},
"node_modules/@storybook/blocks": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.6.7.tgz",
- "integrity": "sha512-IFhIKO7R1UPpnoG/5tZH0FgC79oYgXNf+7aGUwq29M/CQWy6p/Pvp0y4P962btY1UZRol+SsU//33nH8o6yNRw==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.6.12.tgz",
+ "integrity": "sha512-DohlTq6HM1jDbHYiXL4ZvZ00VkhpUp5uftzj/CZDLY1fYHRjqtaTwWm2/OpceivMA8zDitLcq5atEZN+f+siTg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -10937,7 +10916,7 @@
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
},
"peerDependenciesMeta": {
"react": {
@@ -10949,13 +10928,13 @@
}
},
"node_modules/@storybook/builder-webpack5": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/builder-webpack5/-/builder-webpack5-8.6.7.tgz",
- "integrity": "sha512-MRzfJto3wK6F4jKyyNJ71dMWqs1CQpj27bRjGanhvBsU+nUkZylcoaqGC52FJwzaEkuSzpGgKg/aLLd33VBM9g==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/builder-webpack5/-/builder-webpack5-8.6.12.tgz",
+ "integrity": "sha512-Z7RsQ/1+HbxdbM69JrEFcTL+pnVKUTMmeURMn5/eOvYTGjBtM18vbQTj0LjCUDIjC+v9U+uX8ZJEUVxFbGcxBw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@storybook/core-webpack": "8.6.7",
+ "@storybook/core-webpack": "8.6.12",
"@types/semver": "^7.3.4",
"browser-assert": "^1.2.1",
"case-sensitive-paths-webpack-plugin": "^2.4.0",
@@ -10985,7 +10964,7 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
},
"peerDependenciesMeta": {
"typescript": {
@@ -11020,15 +10999,29 @@
"ajv": "^6.9.1"
}
},
- "node_modules/@storybook/builder-webpack5/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "node_modules/@storybook/builder-webpack5/node_modules/chokidar": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
+ "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.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"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
}
},
"node_modules/@storybook/builder-webpack5/node_modules/css-loader": {
@@ -11115,26 +11108,26 @@
"url": "https://opencollective.com/webpack"
}
},
- "node_modules/@storybook/builder-webpack5/node_modules/json-schema-traverse": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@storybook/builder-webpack5/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "node_modules/@storybook/builder-webpack5/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
"dev": true,
"license": "ISC",
"dependencies": {
- "brace-expansion": "^1.1.7"
+ "is-glob": "^4.0.1"
},
"engines": {
- "node": "*"
+ "node": ">= 6"
}
},
+ "node_modules/@storybook/builder-webpack5/node_modules/json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/@storybook/builder-webpack5/node_modules/semver": {
"version": "7.7.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
@@ -11195,9 +11188,9 @@
}
},
"node_modules/@storybook/components": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.6.7.tgz",
- "integrity": "sha512-8pnjH1w7PZ/Iiuve1/BJY7EO/kmu0qdE34X1ZM8DyHzuy33EL/PfUuhxNkrL4ayMXrEDp/EJMHx2bqO1RdRV6A==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.6.12.tgz",
+ "integrity": "sha512-FiaE8xvCdvKC2arYusgtlDNZ77b8ysr8njAYQZwwaIHjy27TbR2tEpLDCmUwSbANNmivtc/xGEiDDwcNppMWlQ==",
"dev": true,
"license": "MIT",
"funding": {
@@ -11209,13 +11202,13 @@
}
},
"node_modules/@storybook/core": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/core/-/core-8.6.7.tgz",
- "integrity": "sha512-FcvLFA+Qn3+D6LgQkk0MOXA5FBz8DGc0UZmZuVbIwIUV4MV4ywCMwtKdG0cyhtzQg0YNyfiIYWJr7lZ4jLLhYg==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/core/-/core-8.6.12.tgz",
+ "integrity": "sha512-t+ZuDzAlsXKa6tLxNZT81gEAt4GNwsKP/Id2wluhmUWD/lwYW0uum1JiPUuanw8xD6TdakCW/7ULZc7aQUBLCQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@storybook/theming": "8.6.7",
+ "@storybook/theming": "8.6.12",
"better-opn": "^3.0.2",
"browser-assert": "^1.2.1",
"esbuild": "^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0",
@@ -11241,9 +11234,9 @@
}
},
"node_modules/@storybook/core-webpack": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/core-webpack/-/core-webpack-8.6.7.tgz",
- "integrity": "sha512-2mPRdRb27/UVO6ke64nCleNOTzUwjp0APFXs7bNhchb2evj6k4VeizCQjScGNy33ORKVwBImmHKyzHzzmAR/9A==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/core-webpack/-/core-webpack-8.6.12.tgz",
+ "integrity": "sha512-TiE+KOm0hxb/p0JxeGHKxqTNX+xnTOFsBh6uloCSuvodutJ5pR/XpxKVxwo1gtSc0Uq3qpgbMhW6qYlYQetnKA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -11254,7 +11247,7 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/core/node_modules/semver": {
@@ -11271,9 +11264,9 @@
}
},
"node_modules/@storybook/csf-plugin": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.6.7.tgz",
- "integrity": "sha512-HK7yQD4kFu04JOKnUwoFeR58r5WY6ucF0D8zfW4Gx+r8hBJ5K4t3z6k2dlIlRQF1X5+2vNkQOwD8liHjckuZ8Q==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.6.12.tgz",
+ "integrity": "sha512-6s8CnP1aoKPb3XtC0jRLUp8M5vTA8RhGAwQDKUsFpCC7g89JR9CaKs9FY2ZSzsNbjR15uASi7b3K8BzeYumYQg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -11284,7 +11277,7 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/global": {
@@ -11309,9 +11302,9 @@
}
},
"node_modules/@storybook/instrumenter": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.6.7.tgz",
- "integrity": "sha512-FeQiV0g5crCWs0P1wKY4xZzb4PxAYNcrm2+9LLGVqwnC7qzrSCPf0p10MlveVfwsen1m6Wbqfe+wl21c31Hfmg==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.6.12.tgz",
+ "integrity": "sha512-VK5fYAF8jMwWP/u3YsmSwKGh+FeSY8WZn78flzRUwirp2Eg1WWjsqPRubAk7yTpcqcC/km9YMF3KbqfzRv2s/A==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -11323,13 +11316,13 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/manager-api": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.6.7.tgz",
- "integrity": "sha512-BA8RxaLP07WGF660LWo7qB3Jomr/+MPuCZmuKPqXxPhfIovqYjr0hnugxJBjEah0ic31aNX4NucNfDRuV7F5sA==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.6.12.tgz",
+ "integrity": "sha512-O0SpISeJLNTQvhSBOsWzzkCgs8vCjOq1578rwqHlC6jWWm4QmtfdyXqnv7rR1Hk08kQ+Dzqh0uhwHx0nfwy4nQ==",
"dev": true,
"license": "MIT",
"funding": {
@@ -11341,9 +11334,9 @@
}
},
"node_modules/@storybook/node-logger": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-8.6.7.tgz",
- "integrity": "sha512-TuiHy91ug/1Scg7P3nekIj9pupGHhKJEyG4m8JK5qehAQ00G3mftqyvrojcciOthGNRARDVxpMSOHJoO5uLTPQ==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-8.6.12.tgz",
+ "integrity": "sha512-Jk7mQWsu60BptBwYJAd69kMmsEqBAbGDuA/fqban+8vfNiSKgR3PRkhis0DsGEk53bpAEfbkCcyvYRCrrq4M3Q==",
"dev": true,
"license": "MIT",
"funding": {
@@ -11355,14 +11348,14 @@
}
},
"node_modules/@storybook/preset-react-webpack": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/preset-react-webpack/-/preset-react-webpack-8.6.7.tgz",
- "integrity": "sha512-gacUEwKsbCyxpT8S2Qjr/Y3y3x31FPABXXL9pNwG59TjcYZ/IfP4hF+uIE06Q+gqVoG6v/HSkllGTYwyybF2Lw==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/preset-react-webpack/-/preset-react-webpack-8.6.12.tgz",
+ "integrity": "sha512-aCCHjR/jsVPVThRH7nK70wS0Od44M6hqkkakg3xr7LETZZGj99heen6t4VHvz8gcQYT9l6R/oZwCl7f/PQ3ZBQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@storybook/core-webpack": "8.6.7",
- "@storybook/react": "8.6.7",
+ "@storybook/core-webpack": "8.6.12",
+ "@storybook/react": "8.6.12",
"@storybook/react-docgen-typescript-plugin": "1.0.6--canary.9.0c3f3b7.0",
"@types/semver": "^7.3.4",
"find-up": "^5.0.0",
@@ -11383,7 +11376,7 @@
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
},
"peerDependenciesMeta": {
"typescript": {
@@ -11405,9 +11398,9 @@
}
},
"node_modules/@storybook/preview-api": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.6.7.tgz",
- "integrity": "sha512-Rz83Nx43v3Dn9/SjhIsorkcx1gPmlclueuzf6YywJTqE1E/L4dgoe2mOA9MfF0jr0bh3TwEA2J3ii0Jstg1Orw==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.6.12.tgz",
+ "integrity": "sha512-84FE3Hrs0AYKHqpDZOwx1S/ffOfxBdL65lhCoeI8GoWwCkzwa9zEP3kvXBo/BnEDO7nAfxvMhjASTZXbKRJh5Q==",
"dev": true,
"license": "MIT",
"funding": {
@@ -11419,18 +11412,18 @@
}
},
"node_modules/@storybook/react": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/react/-/react-8.6.7.tgz",
- "integrity": "sha512-6R8znSm7kzsoAJyRbEiDWE+5xjeAIzwEcfT60fqx+uMdd0vDFM7f2uT4fYy+CijWas1oFWcNV/LMd3EqSkBGsQ==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/react/-/react-8.6.12.tgz",
+ "integrity": "sha512-NzxlHLA5DkDgZM/dMwTYinuzRs6rsUPmlqP+NIv6YaciQ4NGnTYyOC7R/SqI6HHFm8ZZ5eMYvpfiFmhZ9rU+rQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@storybook/components": "8.6.7",
+ "@storybook/components": "8.6.12",
"@storybook/global": "^5.0.0",
- "@storybook/manager-api": "8.6.7",
- "@storybook/preview-api": "8.6.7",
- "@storybook/react-dom-shim": "8.6.7",
- "@storybook/theming": "8.6.7"
+ "@storybook/manager-api": "8.6.12",
+ "@storybook/preview-api": "8.6.12",
+ "@storybook/react-dom-shim": "8.6.12",
+ "@storybook/theming": "8.6.12"
},
"engines": {
"node": ">=18.0.0"
@@ -11440,10 +11433,10 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@storybook/test": "8.6.7",
+ "@storybook/test": "8.6.12",
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
- "storybook": "^8.6.7",
+ "storybook": "^8.6.12",
"typescript": ">= 4.2.x"
},
"peerDependenciesMeta": {
@@ -11475,49 +11468,6 @@
"webpack": ">= 4"
}
},
- "node_modules/@storybook/react-docgen-typescript-plugin/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/@storybook/react-docgen-typescript-plugin/node_modules/find-cache-dir": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz",
- "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "commondir": "^1.0.1",
- "make-dir": "^3.0.2",
- "pkg-dir": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/avajs/find-cache-dir?sponsor=1"
- }
- },
- "node_modules/@storybook/react-docgen-typescript-plugin/node_modules/find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/@storybook/react-docgen-typescript-plugin/node_modules/flat-cache": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz",
@@ -11555,74 +11505,6 @@
"url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/@storybook/react-docgen-typescript-plugin/node_modules/locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@storybook/react-docgen-typescript-plugin/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/@storybook/react-docgen-typescript-plugin/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@storybook/react-docgen-typescript-plugin/node_modules/p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@storybook/react-docgen-typescript-plugin/node_modules/pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "find-up": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/@storybook/react-docgen-typescript-plugin/node_modules/rimraf": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
@@ -11641,9 +11523,9 @@
}
},
"node_modules/@storybook/react-dom-shim": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.6.7.tgz",
- "integrity": "sha512-+JH7gbRI6NRbt9o0l1rY4wFdeVt8wGRddm0b55OBlwBGlFo2nvGVOH73J4AGphXVhfY7z33I3TXIjXQ561UdEQ==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.6.12.tgz",
+ "integrity": "sha512-51QvoimkBzYs8s3rCYnY5h0cFqLz/Mh0vRcughwYaXckWzDBV8l67WBO5Xf5nBsukCbWyqBVPpEQLww8s7mrLA==",
"dev": true,
"license": "MIT",
"funding": {
@@ -11653,19 +11535,19 @@
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/react-webpack5": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/react-webpack5/-/react-webpack5-8.6.7.tgz",
- "integrity": "sha512-xRgnrVqUxiBNJPtr1eTDwT/Drq47SIaII7v7dC0sGpeFdfLqjm+043YBMCGYTn67oGD0Sy5GrKBpeo1ahN4YLA==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/react-webpack5/-/react-webpack5-8.6.12.tgz",
+ "integrity": "sha512-wZOjPQ00gu85iQoKgwz5uvM3+bhXrQDVR0ppVAj7vVy6cvLEsJXmqNLHbXPCZuKPmvwzYr1QkslMLCIkF8OGdA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@storybook/builder-webpack5": "8.6.7",
- "@storybook/preset-react-webpack": "8.6.7",
- "@storybook/react": "8.6.7"
+ "@storybook/builder-webpack5": "8.6.12",
+ "@storybook/preset-react-webpack": "8.6.12",
+ "@storybook/react": "8.6.12"
},
"engines": {
"node": ">=18.0.0"
@@ -11677,7 +11559,7 @@
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
- "storybook": "^8.6.7",
+ "storybook": "^8.6.12",
"typescript": ">= 4.2.x"
},
"peerDependenciesMeta": {
@@ -11687,14 +11569,14 @@
}
},
"node_modules/@storybook/test": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/test/-/test-8.6.7.tgz",
- "integrity": "sha512-uF1JbBtdT7tuiXfEtHsUShBHIhm2vc0C39nKVJaTWyK9CybajXaj2Ny3IRa3oY9NKnklwGgN+kZ/Z9YiIOc4MQ==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/test/-/test-8.6.12.tgz",
+ "integrity": "sha512-0BK1Eg+VD0lNMB1BtxqHE3tP9FdkUmohtvWG7cq6lWvMrbCmAmh3VWai3RMCCDOukPFpjabOr8BBRLVvhNpv2w==",
"dev": true,
"license": "MIT",
"dependencies": {
"@storybook/global": "^5.0.0",
- "@storybook/instrumenter": "8.6.7",
+ "@storybook/instrumenter": "8.6.12",
"@testing-library/dom": "10.4.0",
"@testing-library/jest-dom": "6.5.0",
"@testing-library/user-event": "14.5.2",
@@ -11706,13 +11588,13 @@
"url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "storybook": "^8.6.7"
+ "storybook": "^8.6.12"
}
},
"node_modules/@storybook/theming": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.6.7.tgz",
- "integrity": "sha512-F/i4XS5bew9dvtNiHvDJF0mko1IUbPM9PUjTYPaw6cK8ytS0kdec703MsJ/GUA7seeEWBeGdZjV3ua0pys650A==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.6.12.tgz",
+ "integrity": "sha512-6VjZg8HJ2Op7+KV7ihJpYrDnFtd9D1jrQnUS8LckcpuBXrIEbaut5+34ObY8ssQnSqkk2GwIZBBBQYQBCVvkOw==",
"dev": true,
"license": "MIT",
"funding": {
@@ -11724,15 +11606,15 @@
}
},
"node_modules/@swc/core": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.11.11.tgz",
- "integrity": "sha512-pCVY2Wn6dV/labNvssk9b3Owi4WOYsapcbWm90XkIj4xH/56Z6gzja9fsU+4MdPuEfC2Smw835nZHcdCFGyX6A==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.11.21.tgz",
+ "integrity": "sha512-/Y3BJLcwd40pExmdar8MH2UGGvCBrqNN7hauOMckrEX2Ivcbv3IMhrbGX4od1dnF880Ed8y/E9aStZCIQi0EGw==",
"dev": true,
"hasInstallScript": true,
"license": "Apache-2.0",
"dependencies": {
"@swc/counter": "^0.1.3",
- "@swc/types": "^0.1.19"
+ "@swc/types": "^0.1.21"
},
"engines": {
"node": ">=10"
@@ -11742,19 +11624,19 @@
"url": "https://opencollective.com/swc"
},
"optionalDependencies": {
- "@swc/core-darwin-arm64": "1.11.11",
- "@swc/core-darwin-x64": "1.11.11",
- "@swc/core-linux-arm-gnueabihf": "1.11.11",
- "@swc/core-linux-arm64-gnu": "1.11.11",
- "@swc/core-linux-arm64-musl": "1.11.11",
- "@swc/core-linux-x64-gnu": "1.11.11",
- "@swc/core-linux-x64-musl": "1.11.11",
- "@swc/core-win32-arm64-msvc": "1.11.11",
- "@swc/core-win32-ia32-msvc": "1.11.11",
- "@swc/core-win32-x64-msvc": "1.11.11"
+ "@swc/core-darwin-arm64": "1.11.21",
+ "@swc/core-darwin-x64": "1.11.21",
+ "@swc/core-linux-arm-gnueabihf": "1.11.21",
+ "@swc/core-linux-arm64-gnu": "1.11.21",
+ "@swc/core-linux-arm64-musl": "1.11.21",
+ "@swc/core-linux-x64-gnu": "1.11.21",
+ "@swc/core-linux-x64-musl": "1.11.21",
+ "@swc/core-win32-arm64-msvc": "1.11.21",
+ "@swc/core-win32-ia32-msvc": "1.11.21",
+ "@swc/core-win32-x64-msvc": "1.11.21"
},
"peerDependencies": {
- "@swc/helpers": "*"
+ "@swc/helpers": ">=0.5.17"
},
"peerDependenciesMeta": {
"@swc/helpers": {
@@ -11763,9 +11645,9 @@
}
},
"node_modules/@swc/core-darwin-arm64": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.11.11.tgz",
- "integrity": "sha512-vJcjGVDB8cZH7zyOkC0AfpFYI/7GHKG0NSsH3tpuKrmoAXJyCYspKPGid7FT53EAlWreN7+Pew+bukYf5j+Fmg==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.11.21.tgz",
+ "integrity": "sha512-v6gjw9YFWvKulCw3ZA1dY+LGMafYzJksm1mD4UZFZ9b36CyHFowYVYug1ajYRIRqEvvfIhHUNV660zTLoVFR8g==",
"cpu": [
"arm64"
],
@@ -11781,9 +11663,9 @@
}
},
"node_modules/@swc/core-darwin-x64": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.11.11.tgz",
- "integrity": "sha512-/N4dGdqEYvD48mCF3QBSycAbbQd3yoZ2YHSzYesQf8usNc2YpIhYqEH3sql02UsxTjEFOJSf1bxZABDdhbSl6A==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.11.21.tgz",
+ "integrity": "sha512-CUiTiqKlzskwswrx9Ve5NhNoab30L1/ScOfQwr1duvNlFvarC8fvQSgdtpw2Zh3MfnfNPpyLZnYg7ah4kbT9JQ==",
"cpu": [
"x64"
],
@@ -11799,9 +11681,9 @@
}
},
"node_modules/@swc/core-linux-arm-gnueabihf": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.11.11.tgz",
- "integrity": "sha512-hsBhKK+wVXdN3x9MrL5GW0yT8o9GxteE5zHAI2HJjRQel3HtW7m5Nvwaq+q8rwMf4YQRd8ydbvwl4iUOZx7i2Q==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.11.21.tgz",
+ "integrity": "sha512-YyBTAFM/QPqt1PscD8hDmCLnqPGKmUZpqeE25HXY8OLjl2MUs8+O4KjwPZZ+OGxpdTbwuWFyMoxjcLy80JODvg==",
"cpu": [
"arm"
],
@@ -11817,9 +11699,9 @@
}
},
"node_modules/@swc/core-linux-arm64-gnu": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.11.11.tgz",
- "integrity": "sha512-YOCdxsqbnn/HMPCNM6nrXUpSndLXMUssGTtzT7ffXqr7WuzRg2e170FVDVQFIkb08E7Ku5uOnnUVAChAJQbMOQ==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.11.21.tgz",
+ "integrity": "sha512-DQD+ooJmwpNsh4acrftdkuwl5LNxxg8U4+C/RJNDd7m5FP9Wo4c0URi5U0a9Vk/6sQNh9aSGcYChDpqCDWEcBw==",
"cpu": [
"arm64"
],
@@ -11835,9 +11717,9 @@
}
},
"node_modules/@swc/core-linux-arm64-musl": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.11.11.tgz",
- "integrity": "sha512-nR2tfdQRRzwqR2XYw9NnBk9Fdvff/b8IiJzDL28gRR2QiJWLaE8LsRovtWrzCOYq6o5Uu9cJ3WbabWthLo4jLw==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.11.21.tgz",
+ "integrity": "sha512-y1L49+snt1a1gLTYPY641slqy55QotPdtRK9Y6jMi4JBQyZwxC8swWYlQWb+MyILwxA614fi62SCNZNznB3XSA==",
"cpu": [
"arm64"
],
@@ -11853,9 +11735,9 @@
}
},
"node_modules/@swc/core-linux-x64-gnu": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.11.11.tgz",
- "integrity": "sha512-b4gBp5HA9xNWNC5gsYbdzGBJWx4vKSGybGMGOVWWuF+ynx10+0sA/o4XJGuNHm8TEDuNh9YLKf6QkIO8+GPJ1g==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.11.21.tgz",
+ "integrity": "sha512-NesdBXv4CvVEaFUlqKj+GA4jJMNUzK2NtKOrUNEtTbXaVyNiXjFCSaDajMTedEB0jTAd9ybB0aBvwhgkJUWkWA==",
"cpu": [
"x64"
],
@@ -11871,9 +11753,9 @@
}
},
"node_modules/@swc/core-linux-x64-musl": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.11.11.tgz",
- "integrity": "sha512-dEvqmQVswjNvMBwXNb8q5uSvhWrJLdttBSef3s6UC5oDSwOr00t3RQPzyS3n5qmGJ8UMTdPRmsopxmqaODISdg==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.11.21.tgz",
+ "integrity": "sha512-qFV60pwpKVOdmX67wqQzgtSrUGWX9Cibnp1CXyqZ9Mmt8UyYGvmGu7p6PMbTyX7vdpVUvWVRf8DzrW2//wmVHg==",
"cpu": [
"x64"
],
@@ -11889,9 +11771,9 @@
}
},
"node_modules/@swc/core-win32-arm64-msvc": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.11.11.tgz",
- "integrity": "sha512-aZNZznem9WRnw2FbTqVpnclvl8Q2apOBW2B316gZK+qxbe+ktjOUnYaMhdCG3+BYggyIBDOnaJeQrXbKIMmNdw==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.11.21.tgz",
+ "integrity": "sha512-DJJe9k6gXR/15ZZVLv1SKhXkFst8lYCeZRNHH99SlBodvu4slhh/MKQ6YCixINRhCwliHrpXPym8/5fOq8b7Ig==",
"cpu": [
"arm64"
],
@@ -11907,9 +11789,9 @@
}
},
"node_modules/@swc/core-win32-ia32-msvc": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.11.11.tgz",
- "integrity": "sha512-DjeJn/IfjgOddmJ8IBbWuDK53Fqw7UvOz7kyI/728CSdDYC3LXigzj3ZYs4VvyeOt+ZcQZUB2HA27edOifomGw==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.11.21.tgz",
+ "integrity": "sha512-TqEXuy6wedId7bMwLIr9byds+mKsaXVHctTN88R1UIBPwJA92Pdk0uxDgip0pEFzHB/ugU27g6d8cwUH3h2eIw==",
"cpu": [
"ia32"
],
@@ -11925,9 +11807,9 @@
}
},
"node_modules/@swc/core-win32-x64-msvc": {
- "version": "1.11.11",
- "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.11.11.tgz",
- "integrity": "sha512-Gp/SLoeMtsU4n0uRoKDOlGrRC6wCfifq7bqLwSlAG8u8MyJYJCcwjg7ggm0rhLdC2vbiZ+lLVl3kkETp+JUvKg==",
+ "version": "1.11.21",
+ "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.11.21.tgz",
+ "integrity": "sha512-BT9BNNbMxdpUM1PPAkYtviaV0A8QcXttjs2MDtOeSqqvSJaPtyM+Fof2/+xSwQDmDEFzbGCcn75M5+xy3lGqpA==",
"cpu": [
"x64"
],
@@ -11950,18 +11832,18 @@
"license": "Apache-2.0"
},
"node_modules/@swc/helpers": {
- "version": "0.5.15",
- "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz",
- "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==",
+ "version": "0.5.17",
+ "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.17.tgz",
+ "integrity": "sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==",
"license": "Apache-2.0",
"dependencies": {
"tslib": "^2.8.0"
}
},
"node_modules/@swc/types": {
- "version": "0.1.19",
- "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.19.tgz",
- "integrity": "sha512-WkAZaAfj44kh/UFdAQcrMP1I0nwRqpt27u+08LMBYMqmQfwwMofYoMh/48NGkMMRfC4ynpfwRbJuu8ErfNloeA==",
+ "version": "0.1.21",
+ "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.21.tgz",
+ "integrity": "sha512-2YEtj5HJVbKivud9N4bpPBAyZhj4S2Ipe5LkUG94alTpr7in/GU/EARgPAd3BwU+YOmFVJC2+kjqhGRi3r0ZpQ==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@@ -14228,9 +14110,9 @@
}
},
"node_modules/@types/babel__generator": {
- "version": "7.6.8",
- "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz",
- "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==",
+ "version": "7.27.0",
+ "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz",
+ "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -14249,9 +14131,9 @@
}
},
"node_modules/@types/babel__traverse": {
- "version": "7.20.6",
- "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz",
- "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==",
+ "version": "7.20.7",
+ "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz",
+ "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -14316,9 +14198,9 @@
"license": "MIT"
},
"node_modules/@types/chai": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.0.tgz",
- "integrity": "sha512-FWnQYdrG9FAC8KgPVhDFfrPL1FBsL3NtIt2WsxKvwu/61K6HiuDF3xAb7c7w/k9ML2QOUHcwTgU7dKLFPK6sBg==",
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.1.tgz",
+ "integrity": "sha512-iu1JLYmGmITRzUgNiLMZD3WCoFzpYtueuyAgHTXqgwSRAMIlFTnZqG6/xenkpUGRJEzSfklUTI4GNSzks/dc0w==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -14685,16 +14567,16 @@
"license": "MIT"
},
"node_modules/@types/dom-mediacapture-record": {
- "version": "1.0.21",
- "resolved": "https://registry.npmjs.org/@types/dom-mediacapture-record/-/dom-mediacapture-record-1.0.21.tgz",
- "integrity": "sha512-JwJc6MRVy5xnOUKUgzgGRZA/DOZO14x+4B4hJNZ8c4T5Cs+U00ca62RJHXaj4F9NWZoorKT2PxW5Cq+ENT+E7w==",
+ "version": "1.0.22",
+ "resolved": "https://registry.npmjs.org/@types/dom-mediacapture-record/-/dom-mediacapture-record-1.0.22.tgz",
+ "integrity": "sha512-mUMZLK3NvwRLcAAT9qmcK+9p7tpU2FHdDsntR3YI4+GY88XrgG4XiE7u1Q2LAN2/FZOz/tdMDC3GQCR4T8nFuw==",
"dev": true,
"license": "MIT"
},
"node_modules/@types/dom-speech-recognition": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/@types/dom-speech-recognition/-/dom-speech-recognition-0.0.4.tgz",
- "integrity": "sha512-zf2GwV/G6TdaLwpLDcGTIkHnXf8JEf/viMux+khqKQKDa8/8BAUtXXZS563GnvJ4Fg0PBLGAaFf2GekEVSZ6GQ==",
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/@types/dom-speech-recognition/-/dom-speech-recognition-0.0.6.tgz",
+ "integrity": "sha512-o7pAVq9UQPJL5RDjO1f/fcpfFHdgiMnR4PoIU2N/ZQrYOS3C5rzdOJMsrpqeBCbii2EE9mERXgqspQqPDdPahw==",
"license": "MIT"
},
"node_modules/@types/dompurify": {
@@ -14728,9 +14610,9 @@
}
},
"node_modules/@types/estree": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz",
- "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==",
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz",
+ "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==",
"license": "MIT"
},
"node_modules/@types/estree-jsx": {
@@ -14753,15 +14635,14 @@
}
},
"node_modules/@types/express": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/@types/express/-/express-5.0.0.tgz",
- "integrity": "sha512-DvZriSMehGHL1ZNLzi6MidnsDhUZM/x2pRdDIKdwbUNqqwHxMlRdkxtn6/EPKyqKpHqTl/4nRZsRNLpZxZRpPQ==",
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@types/express/-/express-5.0.1.tgz",
+ "integrity": "sha512-UZUw8vjpWFXuDnjFTh7/5c2TWDlQqeXHi6hcN7F2XSVT5P+WmUnnbFS3KA6Jnc6IsEqI2qCVu2bK0R0J4A8ZQQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@types/body-parser": "*",
"@types/express-serve-static-core": "^5.0.0",
- "@types/qs": "*",
"@types/serve-static": "*"
}
},
@@ -15071,12 +14952,12 @@
"license": "MIT"
},
"node_modules/@types/node": {
- "version": "22.13.10",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.10.tgz",
- "integrity": "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==",
+ "version": "22.14.1",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz",
+ "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==",
"license": "MIT",
"dependencies": {
- "undici-types": "~6.20.0"
+ "undici-types": "~6.21.0"
}
},
"node_modules/@types/node-fetch": {
@@ -15195,10 +15076,13 @@
"license": "MIT"
},
"node_modules/@types/pdf-parse": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/@types/pdf-parse/-/pdf-parse-1.1.4.tgz",
- "integrity": "sha512-+gbBHbNCVGGYw1S9lAIIvrHW47UYOhMIFUsJcMkMrzy1Jf0vulBN3XQIjPgnoOXveMuHnF3b57fXROnY/Or7eg==",
- "license": "MIT"
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/@types/pdf-parse/-/pdf-parse-1.1.5.tgz",
+ "integrity": "sha512-kBfrSXsloMnUJOKi25s3+hRmkycHfLK6A09eRGqF/N8BkQoPUmaCr+q8Cli5FnfohEz/rsv82zAiPz/LXtOGhA==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/node": "*"
+ }
},
"node_modules/@types/prop-types": {
"version": "15.7.14",
@@ -15231,9 +15115,9 @@
}
},
"node_modules/@types/react": {
- "version": "18.3.18",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.18.tgz",
- "integrity": "sha512-t4yC+vtgnkYjNSKlFx1jkAhH8LgTo2N/7Qvi83kdEaUtMDiwpbLAktKDaAMlRcJ5eSxZkH74eEGt1ky31d7kfQ==",
+ "version": "18.3.20",
+ "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.20.tgz",
+ "integrity": "sha512-IPaCZN7PShZK/3t6Q87pfTkRm6oLTd4vztyoj+cbHUF1g3FfVb2tFIL79uCRKEfv16AhqDMBywP2VW3KIZUvcg==",
"license": "MIT",
"dependencies": {
"@types/prop-types": "*",
@@ -15264,9 +15148,9 @@
}
},
"node_modules/@types/react-dom": {
- "version": "18.3.5",
- "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.5.tgz",
- "integrity": "sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==",
+ "version": "18.3.6",
+ "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.6.tgz",
+ "integrity": "sha512-nf22//wEbKXusP6E9pfOCDwFdHAX4u172eaJI4YkDRQEZiorm6KfYnSC2SWLDMVWUOWPERmJnN0ujeAfTBLvrw==",
"devOptional": true,
"license": "MIT",
"peerDependencies": {
@@ -15412,9 +15296,9 @@
"license": "MIT"
},
"node_modules/@types/semver": {
- "version": "7.5.8",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz",
- "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==",
+ "version": "7.7.0",
+ "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz",
+ "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==",
"dev": true,
"license": "MIT"
},
@@ -15569,9 +15453,9 @@
}
},
"node_modules/@types/web": {
- "version": "0.0.213",
- "resolved": "https://registry.npmjs.org/@types/web/-/web-0.0.213.tgz",
- "integrity": "sha512-LuVykOBqlH+P9GI9Q2IWL3bwoV9oJqVGfjutUW0c1LJL4Jdceq5455cJHwcjyhip7+w9hmgv9IvaKXf+FWvRNg==",
+ "version": "0.0.219",
+ "resolved": "https://registry.npmjs.org/@types/web/-/web-0.0.219.tgz",
+ "integrity": "sha512-wFwx7XinfnVKE31SGA5trj9vGG1r8dzlKsUUyNmg69YXfvYCAcgROooOYsC1pA2MIKTMRDym3lQb/mkY6goY+Q==",
"license": "Apache-2.0"
},
"node_modules/@types/webgl-ext": {
@@ -15635,9 +15519,9 @@
}
},
"node_modules/@types/ws": {
- "version": "8.18.0",
- "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.0.tgz",
- "integrity": "sha512-8svvI3hMyvN0kKCJMvTJP/x6Y/EoQbepff882wL+Sn5QsXb3etnamgrJq4isrBxSJj5L2AuXcI0+bgkoAXGUJw==",
+ "version": "8.18.1",
+ "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz",
+ "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -15677,17 +15561,17 @@
"license": "MIT"
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.26.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.26.1.tgz",
- "integrity": "sha512-2X3mwqsj9Bd3Ciz508ZUtoQQYpOhU/kWoUqIf49H8Z0+Vbh6UF/y0OEYp0Q0axOGzaBGs7QxRwq0knSQ8khQNA==",
+ "version": "8.30.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.30.1.tgz",
+ "integrity": "sha512-v+VWphxMjn+1t48/jO4t950D6KR8JaJuNXzi33Ve6P8sEmPr5k6CEXjdGwT6+LodVnEa91EQCtwjWNUCPweo+Q==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.26.1",
- "@typescript-eslint/type-utils": "8.26.1",
- "@typescript-eslint/utils": "8.26.1",
- "@typescript-eslint/visitor-keys": "8.26.1",
+ "@typescript-eslint/scope-manager": "8.30.1",
+ "@typescript-eslint/type-utils": "8.30.1",
+ "@typescript-eslint/utils": "8.30.1",
+ "@typescript-eslint/visitor-keys": "8.30.1",
"graphemer": "^1.4.0",
"ignore": "^5.3.1",
"natural-compare": "^1.4.0",
@@ -15707,16 +15591,16 @@
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "8.26.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.26.1.tgz",
- "integrity": "sha512-w6HZUV4NWxqd8BdeFf81t07d7/YV9s7TCWrQQbG5uhuvGUAW+fq1usZ1Hmz9UPNLniFnD8GLSsDpjP0hm1S4lQ==",
+ "version": "8.30.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.30.1.tgz",
+ "integrity": "sha512-H+vqmWwT5xoNrXqWs/fesmssOW70gxFlgcMlYcBaWNPIEWDgLa4W9nkSPmhuOgLnXq9QYgkZ31fhDyLhleCsAg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/scope-manager": "8.26.1",
- "@typescript-eslint/types": "8.26.1",
- "@typescript-eslint/typescript-estree": "8.26.1",
- "@typescript-eslint/visitor-keys": "8.26.1",
+ "@typescript-eslint/scope-manager": "8.30.1",
+ "@typescript-eslint/types": "8.30.1",
+ "@typescript-eslint/typescript-estree": "8.30.1",
+ "@typescript-eslint/visitor-keys": "8.30.1",
"debug": "^4.3.4"
},
"engines": {
@@ -15732,14 +15616,14 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "8.26.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.26.1.tgz",
- "integrity": "sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg==",
+ "version": "8.30.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.30.1.tgz",
+ "integrity": "sha512-+C0B6ChFXZkuaNDl73FJxRYT0G7ufVPOSQkqkpM/U198wUwUFOtgo1k/QzFh1KjpBitaK7R1tgjVz6o9HmsRPg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.26.1",
- "@typescript-eslint/visitor-keys": "8.26.1"
+ "@typescript-eslint/types": "8.30.1",
+ "@typescript-eslint/visitor-keys": "8.30.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -15750,14 +15634,14 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "8.26.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.26.1.tgz",
- "integrity": "sha512-Kcj/TagJLwoY/5w9JGEFV0dclQdyqw9+VMndxOJKtoFSjfZhLXhYjzsQEeyza03rwHx2vFEGvrJWJBXKleRvZg==",
+ "version": "8.30.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.30.1.tgz",
+ "integrity": "sha512-64uBF76bfQiJyHgZISC7vcNz3adqQKIccVoKubyQcOnNcdJBvYOILV1v22Qhsw3tw3VQu5ll8ND6hycgAR5fEA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/typescript-estree": "8.26.1",
- "@typescript-eslint/utils": "8.26.1",
+ "@typescript-eslint/typescript-estree": "8.30.1",
+ "@typescript-eslint/utils": "8.30.1",
"debug": "^4.3.4",
"ts-api-utils": "^2.0.1"
},
@@ -15774,9 +15658,9 @@
}
},
"node_modules/@typescript-eslint/types": {
- "version": "8.26.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.1.tgz",
- "integrity": "sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ==",
+ "version": "8.30.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.30.1.tgz",
+ "integrity": "sha512-81KawPfkuulyWo5QdyG/LOKbspyyiW+p4vpn4bYO7DM/hZImlVnFwrpCTnmNMOt8CvLRr5ojI9nU1Ekpw4RcEw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -15788,14 +15672,14 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.26.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.26.1.tgz",
- "integrity": "sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA==",
+ "version": "8.30.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.30.1.tgz",
+ "integrity": "sha512-kQQnxymiUy9tTb1F2uep9W6aBiYODgq5EMSk6Nxh4Z+BDUoYUSa029ISs5zTzKBFnexQEh71KqwjKnRz58lusQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.26.1",
- "@typescript-eslint/visitor-keys": "8.26.1",
+ "@typescript-eslint/types": "8.30.1",
+ "@typescript-eslint/visitor-keys": "8.30.1",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -15814,6 +15698,16 @@
"typescript": ">=4.8.4 <5.9.0"
}
},
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
"node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": {
"version": "9.0.5",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
@@ -15844,16 +15738,16 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "8.26.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.26.1.tgz",
- "integrity": "sha512-V4Urxa/XtSUroUrnI7q6yUTD3hDtfJ2jzVfeT3VK0ciizfK2q/zGC0iDh1lFMUZR8cImRrep6/q0xd/1ZGPQpg==",
+ "version": "8.30.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.30.1.tgz",
+ "integrity": "sha512-T/8q4R9En2tcEsWPQgB5BQ0XJVOtfARcUvOa8yJP3fh9M/mXraLxZrkCfGb6ChrO/V3W+Xbd04RacUEqk1CFEQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "8.26.1",
- "@typescript-eslint/types": "8.26.1",
- "@typescript-eslint/typescript-estree": "8.26.1"
+ "@typescript-eslint/scope-manager": "8.30.1",
+ "@typescript-eslint/types": "8.30.1",
+ "@typescript-eslint/typescript-estree": "8.30.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -15868,13 +15762,13 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "8.26.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.1.tgz",
- "integrity": "sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg==",
+ "version": "8.30.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.30.1.tgz",
+ "integrity": "sha512-aEhgas7aJ6vZnNFC7K4/vMGDGyOiqWcYZPpIWrTKuTAlsvDNKy2GFDqh9smL+iq069ZvR0YzEeq0B8NJlLzjFA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.26.1",
+ "@typescript-eslint/types": "8.30.1",
"eslint-visitor-keys": "^4.2.0"
},
"engines": {
@@ -15892,9 +15786,9 @@
"license": "ISC"
},
"node_modules/@vis.gl/react-mapbox": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/@vis.gl/react-mapbox/-/react-mapbox-8.0.1.tgz",
- "integrity": "sha512-s/OokvgK1T43Ev2/4hj21C0DKrf79nIigBCdYPtAkEX88qGLRQ5t5zCRqg5Zl+44xXfVxcVpX2/vWUKd9oYGKQ==",
+ "version": "8.0.4",
+ "resolved": "https://registry.npmjs.org/@vis.gl/react-mapbox/-/react-mapbox-8.0.4.tgz",
+ "integrity": "sha512-NFk0vsWcNzSs0YCsVdt2100Zli9QWR+pje8DacpLkkGEAXFaJsFtI1oKD0Hatiate4/iAIW39SQHhgfhbeEPfQ==",
"license": "MIT",
"peerDependencies": {
"mapbox-gl": ">=3.5.0",
@@ -15908,9 +15802,9 @@
}
},
"node_modules/@vis.gl/react-maplibre": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/@vis.gl/react-maplibre/-/react-maplibre-8.0.1.tgz",
- "integrity": "sha512-IFguo7DKIDZ9U9uRI4thZRfc5aTHEH4lWlIjedBeCpLeMm7wdrqtU2JshyEQt8dDO85kkEE7CbrtjMx5MplaoA==",
+ "version": "8.0.4",
+ "resolved": "https://registry.npmjs.org/@vis.gl/react-maplibre/-/react-maplibre-8.0.4.tgz",
+ "integrity": "sha512-HwZyfLjEu+y1mUFvwDAkVxinGm8fEegaWN+O8np/WZ2Sqe5Lv6OXFpV6GWz9LOEvBYMbGuGk1FQdejo+4HCJ5w==",
"license": "MIT",
"dependencies": {
"@maplibre/maplibre-gl-style-spec": "^19.2.1"
@@ -16289,6 +16183,15 @@
"integrity": "sha512-gRzeti2YS4did7UJnPQ47wrjD+vp+CJIe9zbsu0bJ987d8QVLvLNG9757rqiQTIy4hGIeFauTTJt5Xkn51UkXg==",
"license": "MIT"
},
+ "node_modules/@xmldom/xmldom": {
+ "version": "0.9.8",
+ "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz",
+ "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=14.6"
+ }
+ },
"node_modules/@xtuc/ieee754": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
@@ -16929,9 +16832,9 @@
"license": "MIT"
},
"node_modules/axios": {
- "version": "1.8.3",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.3.tgz",
- "integrity": "sha512-iP4DebzoNlP/YN2dpwCgb8zoCmhtkajzS48JvwmkSkXvPI3DHc7m+XYL5tGnSlJtR6nImXZmdCuN5aP8dh1d8A==",
+ "version": "1.8.4",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz",
+ "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==",
"license": "MIT",
"dependencies": {
"follow-redirects": "^1.15.6",
@@ -16977,13 +16880,13 @@
}
},
"node_modules/babel-plugin-polyfill-corejs2": {
- "version": "0.4.12",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.12.tgz",
- "integrity": "sha512-CPWT6BwvhrTO2d8QVorhTCQw9Y43zOu7G9HigcfxvepOU6b8o3tcWad6oVgZIsZCTt42FFv97aA7ZJsbM4+8og==",
+ "version": "0.4.13",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.13.tgz",
+ "integrity": "sha512-3sX/eOms8kd3q2KZ6DAhKPc0dgm525Gqq5NtWKZ7QYYZEv57OQ54KtblzJzH1lQF/eQxO8KjWGIK9IPUJNus5g==",
"license": "MIT",
"dependencies": {
"@babel/compat-data": "^7.22.6",
- "@babel/helper-define-polyfill-provider": "^0.6.3",
+ "@babel/helper-define-polyfill-provider": "^0.6.4",
"semver": "^6.3.1"
},
"peerDependencies": {
@@ -17004,12 +16907,12 @@
}
},
"node_modules/babel-plugin-polyfill-regenerator": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.3.tgz",
- "integrity": "sha512-LiWSbl4CRSIa5x/JAU6jZiG9eit9w6mz+yVMFwDE83LAWvt0AfGBoZ7HS/mkhrKuh2ZlzfVZYKoLjXdqw6Yt7Q==",
+ "version": "0.6.4",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.4.tgz",
+ "integrity": "sha512-7gD3pRadPrbjhjLyxebmx/WrFYcuSjZ0XbdUujQMZ/fcE9oeewk2U/7PCvez84UeuK3oSjmPZ0Ch0dlupQvGzw==",
"license": "MIT",
"dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.6.3"
+ "@babel/helper-define-polyfill-provider": "^0.6.4"
},
"peerDependencies": {
"@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
@@ -17075,24 +16978,32 @@
"optional": true
},
"node_modules/bare-fs": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.0.1.tgz",
- "integrity": "sha512-ilQs4fm/l9eMfWY2dY0WCIUplSUp7U0CT1vrqMg1MUdeZl4fypu5UP0XcDBK5WBQPJAKP1b7XEodISmekH/CEg==",
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.1.2.tgz",
+ "integrity": "sha512-8wSeOia5B7LwD4+h465y73KOdj5QHsbbuoUfPBi+pXgFJIPuG7SsiOdJuijWMyfid49eD+WivpfY7KT8gbAzBA==",
"license": "Apache-2.0",
"optional": true,
"dependencies": {
- "bare-events": "^2.0.0",
+ "bare-events": "^2.5.4",
"bare-path": "^3.0.0",
- "bare-stream": "^2.0.0"
+ "bare-stream": "^2.6.4"
},
"engines": {
- "bare": ">=1.7.0"
+ "bare": ">=1.16.0"
+ },
+ "peerDependencies": {
+ "bare-buffer": "*"
+ },
+ "peerDependenciesMeta": {
+ "bare-buffer": {
+ "optional": true
+ }
}
},
"node_modules/bare-os": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-3.6.0.tgz",
- "integrity": "sha512-BUrFS5TqSBdA0LwHop4OjPJwisqxGy6JsWVqV6qaFoe965qqtaKfDzHY5T2YA1gUL0ZeeQeA+4BBc1FJTcHiPw==",
+ "version": "3.6.1",
+ "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-3.6.1.tgz",
+ "integrity": "sha512-uaIjxokhFidJP+bmmvKSgiMzj2sV5GPHaZVAIktcxcpCyBFFWO+YlikVAdhmUo2vYFvFhOXIAlldqV29L8126g==",
"license": "Apache-2.0",
"optional": true,
"engines": {
@@ -17291,9 +17202,9 @@
}
},
"node_modules/better-react-mathjax": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/better-react-mathjax/-/better-react-mathjax-2.1.0.tgz",
- "integrity": "sha512-RrHudli76sgoVu+YtjHTKhCkjO2eH1B7Xje1sa0YPjhKzq2y/GIwOt9+tuel3s2L+mCPmFbYBFLDFfo3pEa8rQ==",
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/better-react-mathjax/-/better-react-mathjax-2.3.0.tgz",
+ "integrity": "sha512-K0ceQC+jQmB+NLDogO5HCpqmYf18AU2FxDbLdduYgkHYWZApFggkHE4dIaXCV1NqeoscESYXXo1GSkY6fA295w==",
"license": "MIT",
"dependencies": {
"mathjax-full": "^3.2.2"
@@ -17328,9 +17239,9 @@
}
},
"node_modules/bignumber.js": {
- "version": "9.1.2",
- "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz",
- "integrity": "sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==",
+ "version": "9.2.1",
+ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.2.1.tgz",
+ "integrity": "sha512-+NzaKgOUvInq9TIUZ1+DRspzf/HApkCwD4btfuasFTdrfnOxqx853TgDpMolp+uv4RpRp7bPcEU2zKr9+fRmyw==",
"license": "MIT",
"engines": {
"node": "*"
@@ -17481,9 +17392,9 @@
"license": "ISC"
},
"node_modules/bootstrap": {
- "version": "5.3.3",
- "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz",
- "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==",
+ "version": "5.3.5",
+ "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.5.tgz",
+ "integrity": "sha512-ct1CHKtiobRimyGzmsSldEtM03E8fcEX4Tb3dGXz1V8faRwM50+vfHwTzOxB3IlKO7m+9vTH3s/3C6T2EAPeTA==",
"funding": [
{
"type": "github",
@@ -17506,12 +17417,13 @@
"license": "MIT"
},
"node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"license": "MIT",
"dependencies": {
- "balanced-match": "^1.0.0"
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
}
},
"node_modules/braces": {
@@ -17818,9 +17730,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001706",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001706.tgz",
- "integrity": "sha512-3ZczoTApMAZwPKYWmwVbQMFpXBDds3/0VciVoUwPUbldlYyVLmRVuRs/PcUZtHpbLRpzzDvrvnFuREsGt6lUug==",
+ "version": "1.0.30001714",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001714.tgz",
+ "integrity": "sha512-mtgapdwDLSSBnCI3JokHM7oEQBLxiJKVRtg10AxM1AyeiKcM96f0Mkbqeq+1AbiCtvMcHRulAAEMu693JrSWqg==",
"funding": [
{
"type": "opencollective",
@@ -17960,9 +17872,9 @@
}
},
"node_modules/chart.js": {
- "version": "4.4.8",
- "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.8.tgz",
- "integrity": "sha512-IkGZlVpXP+83QpMm4uxEiGqSI7jFizwVtF3+n5Pc3k7sMO+tkd0qxh2OzLhenM0K80xtmAONWGBn082EiBQSDA==",
+ "version": "4.4.9",
+ "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.9.tgz",
+ "integrity": "sha512-EyZ9wWKgpAU0fLJ43YAEIF8sr5F2W3LqbS40ZJyHIner2lY14ufqv2VMp69MAiZ2rpwxEUxEhIH/0U3xyRynxg==",
"license": "MIT",
"dependencies": {
"@kurkle/color": "^0.3.0"
@@ -18062,39 +17974,31 @@
"license": "ISC"
},
"node_modules/chokidar": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
- "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz",
+ "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
"license": "MIT",
"dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.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"
+ "readdirp": "^4.0.1"
},
"engines": {
- "node": ">= 8.10.0"
+ "node": ">= 14.16.0"
},
"funding": {
"url": "https://paulmillr.com/funding/"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
}
},
- "node_modules/chokidar/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.1"
- },
+ "node_modules/chokidar/node_modules/readdirp": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
+ "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
+ "license": "MIT",
"engines": {
- "node": ">= 6"
+ "node": ">= 14.18.0"
+ },
+ "funding": {
+ "type": "individual",
+ "url": "https://paulmillr.com/funding/"
}
},
"node_modules/chownr": {
@@ -18104,9 +18008,9 @@
"license": "ISC"
},
"node_modules/chromatic": {
- "version": "11.27.0",
- "resolved": "https://registry.npmjs.org/chromatic/-/chromatic-11.27.0.tgz",
- "integrity": "sha512-jQ2ufjS+ePpg+NtcPI9B2eOi+pAzlRd2nhd1LgNMsVCC9Bzf5t8mJtyd8v2AUuJS0LdX0QVBgkOnlNv9xviHzA==",
+ "version": "11.28.2",
+ "resolved": "https://registry.npmjs.org/chromatic/-/chromatic-11.28.2.tgz",
+ "integrity": "sha512-aCmUPcZUs4/p9zRZdMreOoO/5JqO2DiJC3md1/vRx8dlMRcmR/YI5ZbgXZcai2absVR+6hsXZ5XiPxV2sboTuQ==",
"dev": true,
"license": "MIT",
"bin": {
@@ -18137,9 +18041,9 @@
}
},
"node_modules/chromium-bidi": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-2.1.2.tgz",
- "integrity": "sha512-vtRWBK2uImo5/W2oG6/cDkkHSm+2t6VHgnj+Rcwhb0pP74OoUb4GipyRX/T/y39gYQPhioP0DPShn+A7P6CHNw==",
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-3.0.0.tgz",
+ "integrity": "sha512-ZOGRDAhBMX1uxL2Cm2TDuhImbrsEz5A/tTcVU6RpXEWaTNUNwsHW6njUXizh51Ir6iqHbKAfhA2XK33uBcLo5A==",
"license": "Apache-2.0",
"dependencies": {
"mitt": "^3.0.1",
@@ -18383,9 +18287,9 @@
}
},
"node_modules/cohere-ai": {
- "version": "7.16.0",
- "resolved": "https://registry.npmjs.org/cohere-ai/-/cohere-ai-7.16.0.tgz",
- "integrity": "sha512-hrG3EtVNSJLxJTaEeGRli+5rX34GiQC/UZ2WuUpaWiRwYbfzz7zKflfU/tg8SFFjkvYHDyS43UvVESepNd8C4w==",
+ "version": "7.17.1",
+ "resolved": "https://registry.npmjs.org/cohere-ai/-/cohere-ai-7.17.1.tgz",
+ "integrity": "sha512-GI/uWVYYGIN3gdjJRlbjEaLJNJVXsUJyOlPqwBWgAmK18kP4CJoErxKwU0aLe3tHHOBcC2RqXe6PmGO0dz7dpQ==",
"dependencies": {
"@aws-sdk/client-sagemaker": "^3.583.0",
"@aws-sdk/credential-providers": "^3.583.0",
@@ -18654,9 +18558,9 @@
}
},
"node_modules/confbox": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.1.tgz",
- "integrity": "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg==",
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz",
+ "integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==",
"license": "MIT"
},
"node_modules/connect-flash": {
@@ -18858,16 +18762,6 @@
"copyup": "copyfiles"
}
},
- "node_modules/copyfiles/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
"node_modules/copyfiles/node_modules/glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
@@ -18889,18 +18783,6 @@
"url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/copyfiles/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/core-js": {
"version": "3.41.0",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.41.0.tgz",
@@ -19244,9 +19126,9 @@
"license": "MIT"
},
"node_modules/cytoscape": {
- "version": "3.31.1",
- "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.31.1.tgz",
- "integrity": "sha512-Hx5Mtb1+hnmAKaZZ/7zL1Y5HTFYOjdDswZy/jD+1WINRU8KVi1B7+vlHdsTwY+VCFucTreoyu1RDzQJ9u0d2Hw==",
+ "version": "3.31.2",
+ "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.31.2.tgz",
+ "integrity": "sha512-/eOXg2uGdMdpGlEes5Sf6zE+jUG+05f3htFNQIxLxduOH/SsaUZiPBfAwP1btVIVzsnhiNOdi+hvDRLYfMZjGw==",
"license": "MIT",
"engines": {
"node": ">=0.10"
@@ -20188,6 +20070,30 @@
"node": ">=10"
}
},
+ "node_modules/depcheck/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/depcheck/node_modules/minimatch": {
+ "version": "7.4.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz",
+ "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==",
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
"node_modules/depcheck/node_modules/semver": {
"version": "7.7.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
@@ -20273,9 +20179,9 @@
}
},
"node_modules/devtools-protocol": {
- "version": "0.0.1413902",
- "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1413902.tgz",
- "integrity": "sha512-yRtvFD8Oyk7C9Os3GmnFZLu53yAfsnyw1s+mLmHHUK0GQEc9zthHWvS1r67Zqzm5t7v56PILHIVZ7kmFMaL2yQ==",
+ "version": "0.0.1425554",
+ "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1425554.tgz",
+ "integrity": "sha512-uRfxR6Nlzdzt0ihVIkV+sLztKgs7rgquY/Mhcv1YNCWDh5IZgl5mnn2aeEnW5stYTE0wwiF4RYVz8eMEpV1SEw==",
"license": "BSD-3-Clause"
},
"node_modules/dezalgo": {
@@ -20398,9 +20304,9 @@
}
},
"node_modules/dompurify": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.4.tgz",
- "integrity": "sha512-ysFSFEDVduQpyhzAob/kkuJjf5zWkZD8/A9ywSp1byueyuCfHamrCBa14/Oc2iiB0e51B+NpxSl5gmzn+Ms/mg==",
+ "version": "3.2.5",
+ "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.5.tgz",
+ "integrity": "sha512-mLPd29uoRe9HpvwP2TxClGQBzGXeEC/we/q+bFlmPPmj2p2Ugl3r6ATu/UU1v77DXNcehiBg9zsr1dREyA/dJQ==",
"license": "(MPL-2.0 OR Apache-2.0)",
"optionalDependencies": {
"@types/trusted-types": "^2.0.7"
@@ -20431,9 +20337,9 @@
}
},
"node_modules/dotenv": {
- "version": "16.4.7",
- "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz",
- "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==",
+ "version": "16.5.0",
+ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.5.0.tgz",
+ "integrity": "sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg==",
"license": "BSD-2-Clause",
"engines": {
"node": ">=12"
@@ -20531,9 +20437,9 @@
"license": "MIT"
},
"node_modules/electron-to-chromium": {
- "version": "1.5.120",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.120.tgz",
- "integrity": "sha512-oTUp3gfX1gZI+xfD2djr2rzQdHCwHzPQrrK0CD7WpTdF0nPdQ/INcRVjWgLdCT4a9W3jFObR9DAfsuyFQnI8CQ==",
+ "version": "1.5.137",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.137.tgz",
+ "integrity": "sha512-/QSJaU2JyIuTbbABAo/crOs+SuAZLS+fVVS10PVrIT9hrRkmZl8Hb0xPSkKRUUWHQtYzXHpQUW3Dy5hwMzGZkA==",
"license": "ISC"
},
"node_modules/emoji-regex": {
@@ -20983,9 +20889,9 @@
"license": "MIT"
},
"node_modules/esbuild": {
- "version": "0.25.1",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.1.tgz",
- "integrity": "sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ==",
+ "version": "0.25.2",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.2.tgz",
+ "integrity": "sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
@@ -20996,31 +20902,31 @@
"node": ">=18"
},
"optionalDependencies": {
- "@esbuild/aix-ppc64": "0.25.1",
- "@esbuild/android-arm": "0.25.1",
- "@esbuild/android-arm64": "0.25.1",
- "@esbuild/android-x64": "0.25.1",
- "@esbuild/darwin-arm64": "0.25.1",
- "@esbuild/darwin-x64": "0.25.1",
- "@esbuild/freebsd-arm64": "0.25.1",
- "@esbuild/freebsd-x64": "0.25.1",
- "@esbuild/linux-arm": "0.25.1",
- "@esbuild/linux-arm64": "0.25.1",
- "@esbuild/linux-ia32": "0.25.1",
- "@esbuild/linux-loong64": "0.25.1",
- "@esbuild/linux-mips64el": "0.25.1",
- "@esbuild/linux-ppc64": "0.25.1",
- "@esbuild/linux-riscv64": "0.25.1",
- "@esbuild/linux-s390x": "0.25.1",
- "@esbuild/linux-x64": "0.25.1",
- "@esbuild/netbsd-arm64": "0.25.1",
- "@esbuild/netbsd-x64": "0.25.1",
- "@esbuild/openbsd-arm64": "0.25.1",
- "@esbuild/openbsd-x64": "0.25.1",
- "@esbuild/sunos-x64": "0.25.1",
- "@esbuild/win32-arm64": "0.25.1",
- "@esbuild/win32-ia32": "0.25.1",
- "@esbuild/win32-x64": "0.25.1"
+ "@esbuild/aix-ppc64": "0.25.2",
+ "@esbuild/android-arm": "0.25.2",
+ "@esbuild/android-arm64": "0.25.2",
+ "@esbuild/android-x64": "0.25.2",
+ "@esbuild/darwin-arm64": "0.25.2",
+ "@esbuild/darwin-x64": "0.25.2",
+ "@esbuild/freebsd-arm64": "0.25.2",
+ "@esbuild/freebsd-x64": "0.25.2",
+ "@esbuild/linux-arm": "0.25.2",
+ "@esbuild/linux-arm64": "0.25.2",
+ "@esbuild/linux-ia32": "0.25.2",
+ "@esbuild/linux-loong64": "0.25.2",
+ "@esbuild/linux-mips64el": "0.25.2",
+ "@esbuild/linux-ppc64": "0.25.2",
+ "@esbuild/linux-riscv64": "0.25.2",
+ "@esbuild/linux-s390x": "0.25.2",
+ "@esbuild/linux-x64": "0.25.2",
+ "@esbuild/netbsd-arm64": "0.25.2",
+ "@esbuild/netbsd-x64": "0.25.2",
+ "@esbuild/openbsd-arm64": "0.25.2",
+ "@esbuild/openbsd-x64": "0.25.2",
+ "@esbuild/sunos-x64": "0.25.2",
+ "@esbuild/win32-arm64": "0.25.2",
+ "@esbuild/win32-ia32": "0.25.2",
+ "@esbuild/win32-x64": "0.25.2"
}
},
"node_modules/esbuild-register": {
@@ -21095,18 +21001,18 @@
}
},
"node_modules/eslint": {
- "version": "9.22.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.22.0.tgz",
- "integrity": "sha512-9V/QURhsRN40xuHXWjV64yvrzMjcz7ZyNoF2jJFmy9j/SLk0u1OLSZgXi28MrXjymnjEGSR80WCdab3RGMDveQ==",
+ "version": "9.24.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.24.0.tgz",
+ "integrity": "sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==",
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.12.1",
- "@eslint/config-array": "^0.19.2",
- "@eslint/config-helpers": "^0.1.0",
+ "@eslint/config-array": "^0.20.0",
+ "@eslint/config-helpers": "^0.2.0",
"@eslint/core": "^0.12.0",
- "@eslint/eslintrc": "^3.3.0",
- "@eslint/js": "9.22.0",
+ "@eslint/eslintrc": "^3.3.1",
+ "@eslint/js": "9.24.0",
"@eslint/plugin-kit": "^0.2.7",
"@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
@@ -21155,9 +21061,9 @@
}
},
"node_modules/eslint-plugin-react": {
- "version": "7.37.4",
- "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.4.tgz",
- "integrity": "sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==",
+ "version": "7.37.5",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz",
+ "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -21171,7 +21077,7 @@
"hasown": "^2.0.2",
"jsx-ast-utils": "^2.4.1 || ^3.0.0",
"minimatch": "^3.1.2",
- "object.entries": "^1.1.8",
+ "object.entries": "^1.1.9",
"object.fromentries": "^2.0.8",
"object.values": "^1.2.1",
"prop-types": "^15.8.1",
@@ -21187,30 +21093,6 @@
"eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7"
}
},
- "node_modules/eslint-plugin-react/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/eslint-plugin-react/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/eslint-plugin-react/node_modules/resolve": {
"version": "2.0.0-next.5",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz",
@@ -21258,9 +21140,9 @@
}
},
"node_modules/eslint-webpack-plugin": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-5.0.0.tgz",
- "integrity": "sha512-iDhXf2r55KO1UhMfpus8oGp93wdNF+934q5kEkwa7qn3BH9f51QEC11xQidt+8jfqRnEYYZa2/8lhac7U/vqWw==",
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-5.0.1.tgz",
+ "integrity": "sha512-Ur100Vi+z0uP7j4Z8Ccah0pXmNHhl3f7P2hCYZj3mZCOSc33G5c1R/vZ4KCapwWikPgRyD4dkangx6JW3KaVFQ==",
"license": "MIT",
"dependencies": {
"@types/eslint": "^9.6.1",
@@ -21297,34 +21179,12 @@
"url": "https://github.com/sponsors/epoberezkin"
}
},
- "node_modules/eslint/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
"node_modules/eslint/node_modules/json-schema-traverse": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
"license": "MIT"
},
- "node_modules/eslint/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/esm": {
"version": "3.2.25",
"resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz",
@@ -21781,10 +21641,10 @@
}
},
"node_modules/extract-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/extract-colors/-/extract-colors-4.1.1.tgz",
- "integrity": "sha512-Gi56cSrlCWr1DnX+0hN6c12auiAtQwyq5SI1GXb/jxmKKADGbshOYvfOq8YPCicBi9LdBLJstCUu0r1HzjlNXg==",
- "license": "GPL-3.0"
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/extract-colors/-/extract-colors-4.2.0.tgz",
+ "integrity": "sha512-+0X1EMDSea/upbny8RMEoBZdB0in6yiWFVDNZy2d/ehXINRCly+PXC8gp7enSJomeB9dhD7Sud4jzROStuHOJA==",
+ "license": "MIT"
},
"node_modules/extract-zip": {
"version": "2.0.1",
@@ -21944,9 +21804,9 @@
"license": "BSD-3-Clause"
},
"node_modules/fast-xml-parser": {
- "version": "5.0.9",
- "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.0.9.tgz",
- "integrity": "sha512-2mBwCiuW3ycKQQ6SOesSB8WeF+fIGb6I/GG5vU5/XEptwFFhp9PE8b9O7fbs2dpq9fXn4ULR3UsfydNUCntf5A==",
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.2.0.tgz",
+ "integrity": "sha512-Uw9+Mjt4SBRud1IcaYuW/O0lW8SKKdMl5g7g24HiIuyH5fQSD+AVLybSlJtqLYEbytVFjWQa5DMGcNgeksdRBg==",
"funding": [
{
"type": "github",
@@ -22196,6 +22056,24 @@
"traverse-chain": "~0.1.0"
}
},
+ "node_modules/find-cache-dir": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz",
+ "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "commondir": "^1.0.1",
+ "make-dir": "^3.0.2",
+ "pkg-dir": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/avajs/find-cache-dir?sponsor=1"
+ }
+ },
"node_modules/find-in-files": {
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/find-in-files/-/find-in-files-0.5.0.tgz",
@@ -22278,9 +22156,9 @@
"license": "ISC"
},
"node_modules/flexlayout-react": {
- "version": "0.8.7",
- "resolved": "https://registry.npmjs.org/flexlayout-react/-/flexlayout-react-0.8.7.tgz",
- "integrity": "sha512-eWGS+Kn50T8MW6W3R+NpEvV6RTOZBbkrNv875qrWdhRNR+vkrM7lPlAOg9jKGIonNXP1AujTjE6ZTk3W2zwjZA==",
+ "version": "0.8.12",
+ "resolved": "https://registry.npmjs.org/flexlayout-react/-/flexlayout-react-0.8.12.tgz",
+ "integrity": "sha512-9/6ZSIdT2vdq72d6OhdvbED6amv1ExNV20CCTe+JRunQxeYHz78CoKBb/t2ZHmRMj0xjv/ua7Gztoux8JsPlWw==",
"license": "ISC",
"peerDependencies": {
"react": "^18.0.0 || ^19.0.0",
@@ -22396,14 +22274,14 @@
}
},
"node_modules/fork-ts-checker-webpack-plugin": {
- "version": "9.0.2",
- "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-9.0.2.tgz",
- "integrity": "sha512-Uochze2R8peoN1XqlSi/rGUkDQpRogtLFocP9+PGu68zk1BDAKXfdeCdyVZpgTk8V8WFVQXdEz426VKjXLO1Gg==",
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-9.1.0.tgz",
+ "integrity": "sha512-mpafl89VFPJmhnJ1ssH+8wmM2b50n+Rew5x42NeI2U78aRWgtkEtGmctp7iT16UjquJTjorEmIfESj3DxdW84Q==",
"license": "MIT",
"dependencies": {
"@babel/code-frame": "^7.16.7",
"chalk": "^4.1.2",
- "chokidar": "^3.5.3",
+ "chokidar": "^4.0.1",
"cosmiconfig": "^8.2.0",
"deepmerge": "^4.2.2",
"fs-extra": "^10.0.0",
@@ -22415,8 +22293,7 @@
"tapable": "^2.2.1"
},
"engines": {
- "node": ">=12.13.0",
- "yarn": ">=1.0.0"
+ "node": ">=14.21.3"
},
"peerDependencies": {
"typescript": ">3.6.0",
@@ -22454,16 +22331,6 @@
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"license": "Python-2.0"
},
- "node_modules/fork-ts-checker-webpack-plugin/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
"node_modules/fork-ts-checker-webpack-plugin/node_modules/cosmiconfig": {
"version": "8.3.6",
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz",
@@ -22508,18 +22375,6 @@
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
"license": "MIT"
},
- "node_modules/fork-ts-checker-webpack-plugin/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/fork-ts-checker-webpack-plugin/node_modules/schema-utils": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
@@ -22668,17 +22523,17 @@
}
},
"node_modules/fullcalendar": {
- "version": "6.1.15",
- "resolved": "https://registry.npmjs.org/fullcalendar/-/fullcalendar-6.1.15.tgz",
- "integrity": "sha512-CFnh1yswjRh9puJVDk8VGwTlyZ6eXxr4qLI7QCA0+bozyAm+BluP1US5mOtgk0gEq23nQxGSNDoBvAraz++saQ==",
+ "version": "6.1.17",
+ "resolved": "https://registry.npmjs.org/fullcalendar/-/fullcalendar-6.1.17.tgz",
+ "integrity": "sha512-5pq3jYo9cJnVn8TrnukJdP3uNZWk2V1uiTqVXIaSbO5qIXeF3H1jE11PAB5fBOacnZ9HLI/98IT82Y1rz/2VIw==",
"license": "MIT",
"dependencies": {
- "@fullcalendar/core": "~6.1.15",
- "@fullcalendar/daygrid": "~6.1.15",
- "@fullcalendar/interaction": "~6.1.15",
- "@fullcalendar/list": "~6.1.15",
- "@fullcalendar/multimonth": "~6.1.15",
- "@fullcalendar/timegrid": "~6.1.15"
+ "@fullcalendar/core": "~6.1.17",
+ "@fullcalendar/daygrid": "~6.1.17",
+ "@fullcalendar/interaction": "~6.1.17",
+ "@fullcalendar/list": "~6.1.17",
+ "@fullcalendar/multimonth": "~6.1.17",
+ "@fullcalendar/timegrid": "~6.1.17"
}
},
"node_modules/function-bind": {
@@ -23101,6 +22956,15 @@
"integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
"license": "BSD-2-Clause"
},
+ "node_modules/glob/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
"node_modules/glob/node_modules/minimatch": {
"version": "9.0.5",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
@@ -23235,9 +23099,9 @@
}
},
"node_modules/googleapis": {
- "version": "146.0.0",
- "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-146.0.0.tgz",
- "integrity": "sha512-NewqvhnBZOJsugCAOo636O0BGE/xY7Cg/v8Rjm1+5LkJCjcqAzLleJ6igd5vrRExJLSKrY9uHy9iKE7r0PrfhQ==",
+ "version": "148.0.0",
+ "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-148.0.0.tgz",
+ "integrity": "sha512-8PDG5VItm6E1TdZWDqtRrUJSlBcNwz0/MwCa6AL81y/RxPGXJRUwKqGZfCoVX1ZBbfr3I4NkDxBmeTyOAZSWqw==",
"license": "Apache-2.0",
"dependencies": {
"google-auth-library": "^9.0.0",
@@ -23304,9 +23168,9 @@
}
},
"node_modules/got": {
- "version": "14.4.6",
- "resolved": "https://registry.npmjs.org/got/-/got-14.4.6.tgz",
- "integrity": "sha512-rnhwfM/PhMNJ1i17k3DuDqgj0cKx3IHxBKVv/WX1uDKqrhi2Gv3l7rhPThR/Cc6uU++dD97W9c8Y0qyw9x0jag==",
+ "version": "14.4.7",
+ "resolved": "https://registry.npmjs.org/got/-/got-14.4.7.tgz",
+ "integrity": "sha512-DI8zV1231tqiGzOiOzQWDhsBmncFW7oQDH6Zgy6pDPrqJuVZMtoSgPLLsBZQj8Jg4JFfwoOsDA8NGtLQLnIx2g==",
"license": "MIT",
"dependencies": {
"@sindresorhus/is": "^7.0.1",
@@ -23846,9 +23710,9 @@
}
},
"node_modules/html-entities": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz",
- "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==",
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz",
+ "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==",
"funding": [
{
"type": "github",
@@ -24056,9 +23920,9 @@
}
},
"node_modules/http-parser-js": {
- "version": "0.5.9",
- "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.9.tgz",
- "integrity": "sha512-n1XsPy3rXVxlqxVioEWdC+0+M+SQw0DpJynwtOPo1X+ZlvdzTLtDBIJJlDQTnwZIFJrZSzSGmIOUdP8tu+SgLw==",
+ "version": "0.5.10",
+ "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.10.tgz",
+ "integrity": "sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA==",
"dev": true,
"license": "MIT"
},
@@ -24239,9 +24103,9 @@
"license": "ISC"
},
"node_modules/iink-ts": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/iink-ts/-/iink-ts-3.0.0.tgz",
- "integrity": "sha512-EfmLwn2JrRryE87ut7GIHPRBHhNosBTKLrmJoO473inK5X+5dD53xQquS1a3tdNWao6VEGKN7r8D+rNGjZhpAQ==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/iink-ts/-/iink-ts-3.0.1.tgz",
+ "integrity": "sha512-JdfotEcK+hXrR/BhlOHKd0p71Kji86XmU/jJm6MDVeYSht/v1d2/t/U1I+56b9MJS/E8+lTnMEonVMX8flrvhg==",
"license": "Apache-2.0",
"dependencies": {
"json-css": "^1.5.6"
@@ -24262,16 +24126,6 @@
"image-data-uri": "bin/magicli.js"
}
},
- "node_modules/image-data-uri/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
"node_modules/image-data-uri/node_modules/fs-extra": {
"version": "0.26.7",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.26.7.tgz",
@@ -24315,18 +24169,6 @@
"graceful-fs": "^4.1.6"
}
},
- "node_modules/image-data-uri/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/image-data-uri/node_modules/rimraf": {
"version": "2.7.1",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
@@ -24356,9 +24198,9 @@
"license": "MIT"
},
"node_modules/image-size": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/image-size/-/image-size-2.0.1.tgz",
- "integrity": "sha512-NI6NK/2zchlZopsQrcVIS7jxA0/rtIy74B+/rx5s7rKQyFebmQjZVhzxXgRZJROk+WhhOq+S6sUaODxp0L5hfg==",
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/image-size/-/image-size-2.0.2.tgz",
+ "integrity": "sha512-IRqXKlaXwgSMAMtpNzZa1ZAe8m+Sa1770Dhk8VkSsP9LS+iHD62Zd8FQKs8fbPiagBE7BzoFX23cxFnwshpV6w==",
"license": "MIT",
"bin": {
"image-size": "bin/image-size.js"
@@ -24380,7 +24222,7 @@
"node_modules/image-size-stream/node_modules/image-size": {
"version": "0.3.5",
"resolved": "git+ssh://git@github.com/netroy/image-size.git#da2c863807a3e9602617bdd357b0de3ab4a064c1",
- "integrity": "sha512-bOV/01RFEAMM7OJU4alHoipipEYAdVk1W9rto2aN1ZnEZsZ1A1OCVJJ2iMaaJIKidVXGZNbP9knmW/3wWTZ4/Q==",
+ "integrity": "sha512-nF4/PT7i5t72LJKRBAXfM8PCzUDQurOUzPsNUjQDpUhFpLNuCpSY0+XIHNcc/LtoU3GqSCK3wQDU+CCty3Bfcw==",
"license": "MIT",
"bin": {
"image-size": "bin/image-size"
@@ -24420,9 +24262,9 @@
"license": "MIT"
},
"node_modules/immutable": {
- "version": "5.0.3",
- "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz",
- "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==",
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.1.tgz",
+ "integrity": "sha512-3jatXi9ObIsPGr3N5hGw/vWWcTkq6hUYhpQz4k0wLC+owqWi/LiugIw9x0EdNZ2yGedKN/HzePiBvaJRXa0Ujg==",
"license": "MIT"
},
"node_modules/import-fresh": {
@@ -24469,70 +24311,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/import-local/node_modules/find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "license": "MIT",
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/import-local/node_modules/locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "license": "MIT",
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/import-local/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "license": "MIT",
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/import-local/node_modules/p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "license": "MIT",
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/import-local/node_modules/pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "license": "MIT",
- "dependencies": {
- "find-up": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/imurmurhash": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
@@ -24806,15 +24584,15 @@
}
},
"node_modules/intl-messageformat": {
- "version": "10.7.15",
- "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.7.15.tgz",
- "integrity": "sha512-LRyExsEsefQSBjU2p47oAheoKz+EOJxSLDdjOaEjdriajfHsMXOmV/EhMvYSg9bAgCUHasuAC+mcUBe/95PfIg==",
+ "version": "10.7.16",
+ "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.7.16.tgz",
+ "integrity": "sha512-UmdmHUmp5CIKKjSoE10la5yfU+AYJAaiYLsodbjL4lji83JNvgOQUjGaGhGrpFCb0Uh7sl7qfP1IyILa8Z40ug==",
"license": "BSD-3-Clause",
"dependencies": {
- "@formatjs/ecma402-abstract": "2.3.3",
- "@formatjs/fast-memoize": "2.2.6",
- "@formatjs/icu-messageformat-parser": "2.11.1",
- "tslib": "2"
+ "@formatjs/ecma402-abstract": "2.3.4",
+ "@formatjs/fast-memoize": "2.2.7",
+ "@formatjs/icu-messageformat-parser": "2.11.2",
+ "tslib": "^2.8.0"
}
},
"node_modules/invariant": {
@@ -25668,16 +25446,6 @@
"node": ">=14"
}
},
- "node_modules/jpeg-autorotate/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
"node_modules/jpeg-autorotate/node_modules/glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
@@ -25699,18 +25467,6 @@
"url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/jpeg-autorotate/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/jpeg-js": {
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.4.tgz",
@@ -25777,15 +25533,14 @@
}
},
"node_modules/jsdom": {
- "version": "26.0.0",
- "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-26.0.0.tgz",
- "integrity": "sha512-BZYDGVAIriBWTpIxYzrXjv3E/4u8+/pSG5bQdIYCbNCGOvsPkDQfTVLAIXAf9ETdCpduCVTkDe2NNZ8NIwUVzw==",
+ "version": "26.1.0",
+ "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-26.1.0.tgz",
+ "integrity": "sha512-Cvc9WUhxSMEo4McES3P7oK3QaXldCfNWp7pl2NNeiIFlCoLr3kfq9kb1fxftiwk1FLV7CvpvDfonxtzUDeSOPg==",
"license": "MIT",
"dependencies": {
"cssstyle": "^4.2.1",
"data-urls": "^5.0.0",
- "decimal.js": "^10.4.3",
- "form-data": "^4.0.1",
+ "decimal.js": "^10.5.0",
"html-encoding-sniffer": "^4.0.0",
"http-proxy-agent": "^7.0.2",
"https-proxy-agent": "^7.0.6",
@@ -25795,12 +25550,12 @@
"rrweb-cssom": "^0.8.0",
"saxes": "^6.0.0",
"symbol-tree": "^3.2.4",
- "tough-cookie": "^5.0.0",
+ "tough-cookie": "^5.1.1",
"w3c-xmlserializer": "^5.0.0",
"webidl-conversions": "^7.0.0",
"whatwg-encoding": "^3.1.1",
"whatwg-mimetype": "^4.0.0",
- "whatwg-url": "^14.1.0",
+ "whatwg-url": "^14.1.1",
"ws": "^8.18.0",
"xml-name-validator": "^5.0.0"
},
@@ -26047,9 +25802,9 @@
}
},
"node_modules/katex": {
- "version": "0.16.21",
- "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.21.tgz",
- "integrity": "sha512-XvqR7FgOHtWupfMiigNzmh+MgUVmDGU2kXZm899ZkPfcuoPuFxyHmXsgATDpFZDAXCI8tvinaVcDo8PIIJSo4A==",
+ "version": "0.16.22",
+ "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.22.tgz",
+ "integrity": "sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==",
"funding": [
"https://opencollective.com/katex",
"https://github.com/sponsors/katex"
@@ -26206,9 +25961,9 @@
}
},
"node_modules/langium": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/langium/-/langium-3.0.0.tgz",
- "integrity": "sha512-+Ez9EoiByeoTu/2BXmEaZ06iPNXM6thWJp02KfBO/raSMyCJ4jw7AkWWa+zBCTm0+Tw1Fj9FOxdqSskyN5nAwg==",
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/langium/-/langium-3.3.1.tgz",
+ "integrity": "sha512-QJv/h939gDpvT+9SiLVlY7tZC3xB2qK57v0J04Sh9wpMb6MP1q8gB21L3WIo8T5P1MSMg3Ep14L7KkDCFG3y4w==",
"license": "MIT",
"dependencies": {
"chevrotain": "~11.0.3",
@@ -26287,9 +26042,9 @@
}
},
"node_modules/ldrs": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/ldrs/-/ldrs-1.1.2.tgz",
- "integrity": "sha512-Szurh/3n8C1UZAPFKZ+1gXOuEunkzcmbao3GHZKwmxwzNzPuPIY4Zubtue2TIswdVN9amre6NwqAdaJIPHHkzQ==",
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/ldrs/-/ldrs-1.1.6.tgz",
+ "integrity": "sha512-cyFUYjmhjHaEnFXcZFeNg/jfDYUuzdf7sj71uqQeUoniFzcifSe3zxCf3qWqGD4R49wtAFTrHOpqPyCuzMik9g==",
"license": "MIT"
},
"node_modules/leac": {
@@ -26598,15 +26353,6 @@
"node": ">=4"
}
},
- "node_modules/magicli/node_modules/p-try": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
- "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==",
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/magicli/node_modules/path-exists": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
@@ -26647,9 +26393,9 @@
"license": "MIT"
},
"node_modules/mapbox-gl": {
- "version": "3.10.0",
- "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-3.10.0.tgz",
- "integrity": "sha512-YnQxjlthuv/tidcxGYU2C8nRDVXMlAHa3qFhuOJeX4AfRP72OMRBf9ApL+M+k5VWcAXi2fcNOUVgphknjLumjA==",
+ "version": "3.11.0",
+ "resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-3.11.0.tgz",
+ "integrity": "sha512-0bJoYMgwn/z0RSJH7j/kYq3xlTX8Vt4dBkWAKJFneB49PAiq+rAAZRAeUhMxCr8PoGLRaDBagF3fTsA/WK6Q4A==",
"license": "SEE LICENSE IN LICENSE.txt",
"workspaces": [
"src/style-spec",
@@ -26750,9 +26496,9 @@
}
},
"node_modules/marked": {
- "version": "15.0.7",
- "resolved": "https://registry.npmjs.org/marked/-/marked-15.0.7.tgz",
- "integrity": "sha512-dgLIeKGLx5FwziAnsk4ONoGwHwGPJzselimvlVskE9XLN4Orv9u2VA3GWw/lYUqjfA0rUT/6fqKwfZJapP9BEg==",
+ "version": "15.0.8",
+ "resolved": "https://registry.npmjs.org/marked/-/marked-15.0.8.tgz",
+ "integrity": "sha512-rli4l2LyZqpQuRve5C0rkn6pj3hT8EWPC+zkAxFTAJLxRbENfTAhEQq9itrmf1Y81QtAX5D/MYlGlIomNgj9lA==",
"license": "MIT",
"bin": {
"marked": "bin/marked.js"
@@ -27209,14 +26955,14 @@
}
},
"node_modules/mermaid": {
- "version": "11.5.0",
- "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-11.5.0.tgz",
- "integrity": "sha512-IYhyukID3zzDj1EihKiN1lp+PXNImoJ3Iyz73qeDAgnus4BNGsJV1n471P4PyeGxPVONerZxignwGxGTSwZnlg==",
+ "version": "11.6.0",
+ "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-11.6.0.tgz",
+ "integrity": "sha512-PE8hGUy1LDlWIHWBP05SFdqUHGmRcCcK4IzpOKPE35eOw+G9zZgcnMpyunJVUEOgb//KBORPjysKndw8bFLuRg==",
"license": "MIT",
"dependencies": {
"@braintree/sanitize-url": "^7.0.4",
"@iconify/utils": "^2.1.33",
- "@mermaid-js/parser": "^0.3.0",
+ "@mermaid-js/parser": "^0.4.0",
"@types/d3": "^7.4.3",
"cytoscape": "^3.29.3",
"cytoscape-cose-bilkent": "^4.1.0",
@@ -27914,18 +27660,15 @@
"license": "ISC"
},
"node_modules/minimatch": {
- "version": "7.4.6",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz",
- "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==",
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"license": "ISC",
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "brace-expansion": "^1.1.7"
},
"engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "node": "*"
}
},
"node_modules/minimist": {
@@ -28133,6 +27876,41 @@
"dev": true,
"license": "Python-2.0"
},
+ "node_modules/mocha/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/mocha/node_modules/chokidar": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
+ "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.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"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
"node_modules/mocha/node_modules/cliui": {
"version": "8.0.1",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
@@ -28155,6 +27933,19 @@
"dev": true,
"license": "MIT"
},
+ "node_modules/mocha/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
"node_modules/mocha/node_modules/js-yaml": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
@@ -28329,14 +28120,14 @@
}
},
"node_modules/mongoose": {
- "version": "8.12.1",
- "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-8.12.1.tgz",
- "integrity": "sha512-UW22y8QFVYmrb36hm8cGncfn4ARc/XsYWQwRTaj0gxtQk1rDuhzDO1eBantS+hTTatfAIS96LlRCJrcNHvW5+Q==",
+ "version": "8.13.2",
+ "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-8.13.2.tgz",
+ "integrity": "sha512-riCBqZmNkYBWjXpM3qWLDQw7QmTKsVZDPhLXFJqC87+OjocEVpvS3dA2BPPUiLAu+m0/QmEj5pSXKhH+/DgerQ==",
"license": "MIT",
"dependencies": {
"bson": "^6.10.3",
"kareem": "2.6.3",
- "mongodb": "~6.14.0",
+ "mongodb": "~6.15.0",
"mpath": "0.9.0",
"mquery": "5.0.0",
"ms": "2.1.3",
@@ -28350,52 +28141,6 @@
"url": "https://opencollective.com/mongoose"
}
},
- "node_modules/mongoose/node_modules/mongodb": {
- "version": "6.14.2",
- "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.14.2.tgz",
- "integrity": "sha512-kMEHNo0F3P6QKDq17zcDuPeaywK/YaJVCEQRzPF3TOM/Bl9MFg64YE5Tu7ifj37qZJMhwU1tl2Ioivws5gRG5Q==",
- "license": "Apache-2.0",
- "dependencies": {
- "@mongodb-js/saslprep": "^1.1.9",
- "bson": "^6.10.3",
- "mongodb-connection-string-url": "^3.0.0"
- },
- "engines": {
- "node": ">=16.20.1"
- },
- "peerDependencies": {
- "@aws-sdk/credential-providers": "^3.188.0",
- "@mongodb-js/zstd": "^1.1.0 || ^2.0.0",
- "gcp-metadata": "^5.2.0",
- "kerberos": "^2.0.1",
- "mongodb-client-encryption": ">=6.0.0 <7",
- "snappy": "^7.2.2",
- "socks": "^2.7.1"
- },
- "peerDependenciesMeta": {
- "@aws-sdk/credential-providers": {
- "optional": true
- },
- "@mongodb-js/zstd": {
- "optional": true
- },
- "gcp-metadata": {
- "optional": true
- },
- "kerberos": {
- "optional": true
- },
- "mongodb-client-encryption": {
- "optional": true
- },
- "snappy": {
- "optional": true
- },
- "socks": {
- "optional": true
- }
- }
- },
"node_modules/mpath": {
"version": "0.9.0",
"resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz",
@@ -28468,28 +28213,6 @@
"integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
"license": "MIT"
},
- "node_modules/multimatch/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/multimatch/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/murmurhash-js": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/murmurhash-js/-/murmurhash-js-1.0.0.tgz",
@@ -28734,9 +28457,9 @@
}
},
"node_modules/nodemailer": {
- "version": "6.10.0",
- "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.10.0.tgz",
- "integrity": "sha512-SQ3wZCExjeSatLE/HBaXS5vqUOQk6GtBdIIKxiFdmm01mOQZX/POJkO3SUX1wDiYcwUOJwT23scFSC9fY2H8IA==",
+ "version": "6.10.1",
+ "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.10.1.tgz",
+ "integrity": "sha512-Z+iLaBGVaSjbIzQ4pX6XV41HrooLsQ10ZWPUehGmuantvzWoDVBnmsdUcOIDM1t+yPor5pDhVlDESgOMEGxhHA==",
"license": "MIT-0",
"engines": {
"node": ">=6.0.0"
@@ -28770,14 +28493,40 @@
"url": "https://opencollective.com/nodemon"
}
},
- "node_modules/nodemon/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "node_modules/nodemon/node_modules/chokidar": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
+ "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
"license": "MIT",
"dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.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"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/nodemon/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
}
},
"node_modules/nodemon/node_modules/has-flag": {
@@ -28789,18 +28538,6 @@
"node": ">=4"
}
},
- "node_modules/nodemon/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/nodemon/node_modules/semver": {
"version": "7.7.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
@@ -28881,9 +28618,9 @@
}
},
"node_modules/npm": {
- "version": "11.2.0",
- "resolved": "https://registry.npmjs.org/npm/-/npm-11.2.0.tgz",
- "integrity": "sha512-PcnFC6gTo9VDkxVaQ1/mZAS3JoWrDjAI+a6e2NgfYQSGDwftJlbdV0jBMi2V8xQPqbGcWaa7p3UP0SKF+Bhm2g==",
+ "version": "11.3.0",
+ "resolved": "https://registry.npmjs.org/npm/-/npm-11.3.0.tgz",
+ "integrity": "sha512-luthFIP0nFX3+nTfYbWI3p4hP4CiVnKOZ5jdxnF2x7B+Shz8feiSJCLLzgJUNxQ2cDdTaVUiH6RRsMT++vIMZg==",
"bundleDependencies": [
"@isaacs/string-locale-compare",
"@npmcli/arborist",
@@ -28962,20 +28699,20 @@
],
"dependencies": {
"@isaacs/string-locale-compare": "^1.1.0",
- "@npmcli/arborist": "^9.0.1",
- "@npmcli/config": "^10.1.0",
+ "@npmcli/arborist": "^9.0.2",
+ "@npmcli/config": "^10.2.0",
"@npmcli/fs": "^4.0.0",
"@npmcli/map-workspaces": "^4.0.2",
"@npmcli/package-json": "^6.1.1",
"@npmcli/promise-spawn": "^8.0.2",
"@npmcli/redact": "^3.1.1",
- "@npmcli/run-script": "^9.0.1",
+ "@npmcli/run-script": "^9.1.0",
"@sigstore/tuf": "^3.0.0",
"abbrev": "^3.0.0",
"archy": "~1.0.0",
"cacache": "^19.0.1",
"chalk": "^5.4.1",
- "ci-info": "^4.1.0",
+ "ci-info": "^4.2.0",
"cli-columns": "^4.0.0",
"fastest-levenshtein": "^1.0.16",
"fs-minipass": "^3.0.3",
@@ -28987,11 +28724,11 @@
"is-cidr": "^5.1.1",
"json-parse-even-better-errors": "^4.0.0",
"libnpmaccess": "^10.0.0",
- "libnpmdiff": "^8.0.1",
- "libnpmexec": "^10.1.0",
- "libnpmfund": "^7.0.1",
+ "libnpmdiff": "^8.0.2",
+ "libnpmexec": "^10.1.1",
+ "libnpmfund": "^7.0.2",
"libnpmorg": "^8.0.0",
- "libnpmpack": "^9.0.1",
+ "libnpmpack": "^9.0.2",
"libnpmpublish": "^11.0.0",
"libnpmsearch": "^9.0.0",
"libnpmteam": "^8.0.0",
@@ -29001,7 +28738,7 @@
"minipass": "^7.1.1",
"minipass-pipeline": "^1.2.4",
"ms": "^2.1.2",
- "node-gyp": "^11.1.0",
+ "node-gyp": "^11.2.0",
"nopt": "^8.1.0",
"normalize-package-data": "^7.0.0",
"npm-audit-report": "^6.0.0",
@@ -29151,7 +28888,7 @@
}
},
"node_modules/npm/node_modules/@npmcli/arborist": {
- "version": "9.0.1",
+ "version": "9.0.2",
"inBundle": true,
"license": "ISC",
"dependencies": {
@@ -29198,7 +28935,7 @@
}
},
"node_modules/npm/node_modules/@npmcli/config": {
- "version": "10.1.0",
+ "version": "10.2.0",
"inBundle": true,
"license": "ISC",
"dependencies": {
@@ -29352,7 +29089,7 @@
}
},
"node_modules/npm/node_modules/@npmcli/run-script": {
- "version": "9.0.2",
+ "version": "9.1.0",
"inBundle": true,
"license": "ISC",
"dependencies": {
@@ -29579,12 +29316,11 @@
}
},
"node_modules/npm/node_modules/cacache/node_modules/minizlib": {
- "version": "3.0.1",
+ "version": "3.0.2",
"inBundle": true,
"license": "MIT",
"dependencies": {
- "minipass": "^7.0.4",
- "rimraf": "^5.0.5"
+ "minipass": "^7.1.2"
},
"engines": {
"node": ">= 18"
@@ -29648,7 +29384,7 @@
}
},
"node_modules/npm/node_modules/ci-info": {
- "version": "4.1.0",
+ "version": "4.2.0",
"funding": [
{
"type": "github",
@@ -30079,11 +29815,11 @@
}
},
"node_modules/npm/node_modules/libnpmdiff": {
- "version": "8.0.1",
+ "version": "8.0.2",
"inBundle": true,
"license": "ISC",
"dependencies": {
- "@npmcli/arborist": "^9.0.1",
+ "@npmcli/arborist": "^9.0.2",
"@npmcli/installed-package-contents": "^3.0.0",
"binary-extensions": "^3.0.0",
"diff": "^7.0.0",
@@ -30097,11 +29833,11 @@
}
},
"node_modules/npm/node_modules/libnpmexec": {
- "version": "10.1.0",
+ "version": "10.1.1",
"inBundle": true,
"license": "ISC",
"dependencies": {
- "@npmcli/arborist": "^9.0.1",
+ "@npmcli/arborist": "^9.0.2",
"@npmcli/package-json": "^6.1.1",
"@npmcli/run-script": "^9.0.1",
"ci-info": "^4.0.0",
@@ -30118,11 +29854,11 @@
}
},
"node_modules/npm/node_modules/libnpmfund": {
- "version": "7.0.1",
+ "version": "7.0.2",
"inBundle": true,
"license": "ISC",
"dependencies": {
- "@npmcli/arborist": "^9.0.1"
+ "@npmcli/arborist": "^9.0.2"
},
"engines": {
"node": "^20.17.0 || >=22.9.0"
@@ -30141,11 +29877,11 @@
}
},
"node_modules/npm/node_modules/libnpmpack": {
- "version": "9.0.1",
+ "version": "9.0.2",
"inBundle": true,
"license": "ISC",
"dependencies": {
- "@npmcli/arborist": "^9.0.1",
+ "@npmcli/arborist": "^9.0.2",
"@npmcli/run-script": "^9.0.1",
"npm-package-arg": "^12.0.0",
"pacote": "^21.0.0"
@@ -30278,7 +30014,7 @@
}
},
"node_modules/npm/node_modules/minipass-fetch": {
- "version": "4.0.0",
+ "version": "4.0.1",
"inBundle": true,
"license": "MIT",
"dependencies": {
@@ -30294,12 +30030,11 @@
}
},
"node_modules/npm/node_modules/minipass-fetch/node_modules/minizlib": {
- "version": "3.0.1",
+ "version": "3.0.2",
"inBundle": true,
"license": "MIT",
"dependencies": {
- "minipass": "^7.0.4",
- "rimraf": "^5.0.5"
+ "minipass": "^7.1.2"
},
"engines": {
"node": ">= 18"
@@ -30419,19 +30154,19 @@
}
},
"node_modules/npm/node_modules/node-gyp": {
- "version": "11.1.0",
+ "version": "11.2.0",
"inBundle": true,
"license": "MIT",
"dependencies": {
"env-paths": "^2.2.0",
"exponential-backoff": "^3.1.1",
- "glob": "^10.3.10",
"graceful-fs": "^4.2.6",
"make-fetch-happen": "^14.0.3",
"nopt": "^8.0.0",
"proc-log": "^5.0.0",
"semver": "^7.3.5",
"tar": "^7.4.3",
+ "tinyglobby": "^0.2.12",
"which": "^5.0.0"
},
"bin": {
@@ -30450,12 +30185,11 @@
}
},
"node_modules/npm/node_modules/node-gyp/node_modules/minizlib": {
- "version": "3.0.1",
+ "version": "3.0.2",
"inBundle": true,
"license": "MIT",
"dependencies": {
- "minipass": "^7.0.4",
- "rimraf": "^5.0.5"
+ "minipass": "^7.1.2"
},
"engines": {
"node": ">= 18"
@@ -30634,12 +30368,11 @@
}
},
"node_modules/npm/node_modules/npm-registry-fetch/node_modules/minizlib": {
- "version": "3.0.1",
+ "version": "3.0.2",
"inBundle": true,
"license": "MIT",
"dependencies": {
- "minipass": "^7.0.4",
- "rimraf": "^5.0.5"
+ "minipass": "^7.1.2"
},
"engines": {
"node": ">= 18"
@@ -30848,20 +30581,6 @@
"node": ">= 4"
}
},
- "node_modules/npm/node_modules/rimraf": {
- "version": "5.0.10",
- "inBundle": true,
- "license": "ISC",
- "dependencies": {
- "glob": "^10.3.7"
- },
- "bin": {
- "rimraf": "dist/esm/bin.mjs"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/npm/node_modules/safer-buffer": {
"version": "2.1.2",
"inBundle": true,
@@ -31130,6 +30849,45 @@
"inBundle": true,
"license": "MIT"
},
+ "node_modules/npm/node_modules/tinyglobby": {
+ "version": "0.2.12",
+ "inBundle": true,
+ "license": "MIT",
+ "dependencies": {
+ "fdir": "^6.4.3",
+ "picomatch": "^4.0.2"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/SuperchupuDev"
+ }
+ },
+ "node_modules/npm/node_modules/tinyglobby/node_modules/fdir": {
+ "version": "6.4.3",
+ "inBundle": true,
+ "license": "MIT",
+ "peerDependencies": {
+ "picomatch": "^3 || ^4"
+ },
+ "peerDependenciesMeta": {
+ "picomatch": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/npm/node_modules/tinyglobby/node_modules/picomatch": {
+ "version": "4.0.2",
+ "inBundle": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
"node_modules/npm/node_modules/treeverse": {
"version": "3.0.0",
"inBundle": true,
@@ -31357,9 +31115,9 @@
}
},
"node_modules/nwsapi": {
- "version": "2.2.19",
- "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.19.tgz",
- "integrity": "sha512-94bcyI3RsqiZufXjkr3ltkI86iEl+I7uiHVDtcq9wJUTwYQJ5odHDeSzkkrRzi80jJ8MaeZgqKjH1bAWAFw9bA==",
+ "version": "2.2.20",
+ "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz",
+ "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==",
"license": "MIT"
},
"node_modules/oauth": {
@@ -31599,9 +31357,9 @@
}
},
"node_modules/open": {
- "version": "10.1.0",
- "resolved": "https://registry.npmjs.org/open/-/open-10.1.0.tgz",
- "integrity": "sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==",
+ "version": "10.1.1",
+ "resolved": "https://registry.npmjs.org/open/-/open-10.1.1.tgz",
+ "integrity": "sha512-zy1wx4+P3PfhXSEPJNtZmJXfhkkIaxU1VauWIrDZw1O7uJRDRJtKr9n3Ic4NgbA16KyOxOXO2ng9gYwCdXuSXA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -31618,9 +31376,9 @@
}
},
"node_modules/openai": {
- "version": "4.87.4",
- "resolved": "https://registry.npmjs.org/openai/-/openai-4.87.4.tgz",
- "integrity": "sha512-lsfM20jZY4A0lNexfoUAkfmrEXxaTXvv8OKYicpeAJUNHObpRgkvC7pxPgMnB6gc9ID8OCwzzhEhBpNy69UR7w==",
+ "version": "4.95.0",
+ "resolved": "https://registry.npmjs.org/openai/-/openai-4.95.0.tgz",
+ "integrity": "sha512-tWHLTA+/HHyWlP8qg0mQLDSpI2NQLhk6zHLJL8yb59qn2pEI8rbEiAGSDPViLvi3BRDoQZIX5scaJ3xYGr2nhw==",
"license": "Apache-2.0",
"dependencies": {
"@types/node": "^18.11.18",
@@ -31648,9 +31406,9 @@
}
},
"node_modules/openai/node_modules/@types/node": {
- "version": "18.19.80",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.80.tgz",
- "integrity": "sha512-kEWeMwMeIvxYkeg1gTc01awpwLbfMRZXdIhwRcakd/KlK53jmRC26LqcbIt7fnAQTu5GzlnWmzA3H6+l1u6xxQ==",
+ "version": "18.19.86",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.86.tgz",
+ "integrity": "sha512-fifKayi175wLyKyc5qUfyENhQ1dCNI1UNjp653d8kuYcPQN5JhX3dGuP/XmvPTg/xRBn1VTLpbmi+H/Mr7tLfQ==",
"license": "MIT",
"dependencies": {
"undici-types": "~5.26.4"
@@ -31841,12 +31599,12 @@
}
},
"node_modules/p-try": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
- "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
+ "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==",
"license": "MIT",
"engines": {
- "node": ">=6"
+ "node": ">=4"
}
},
"node_modules/pac-proxy-agent": {
@@ -32316,9 +32074,9 @@
}
},
"node_modules/pdfjs-dist": {
- "version": "5.0.375",
- "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-5.0.375.tgz",
- "integrity": "sha512-QDRlEVldf/cX88CElGAyRhjqNOO69kmB3HZlalDAfqJ/IvmqJNkipomhBZy4cWATfLVlkQTXE3H4yFvMF2uPsg==",
+ "version": "5.1.91",
+ "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-5.1.91.tgz",
+ "integrity": "sha512-qSIADdagooJB4wWCBnrBJjRvASevmxL0BwafvOuKJG5uTQdYoFBrhrRYnucKNiSc9qS6JIk0hC5y1yktFljXkA==",
"license": "Apache-2.0",
"engines": {
"node": ">=20"
@@ -32475,6 +32233,79 @@
"node": ">=12.13.0"
}
},
+ "node_modules/pkg-dir": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
+ "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
+ "license": "MIT",
+ "dependencies": {
+ "find-up": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/pkg-dir/node_modules/find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+ "license": "MIT",
+ "dependencies": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/pkg-dir/node_modules/locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+ "license": "MIT",
+ "dependencies": {
+ "p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/pkg-dir/node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "license": "MIT",
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/pkg-dir/node_modules/p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+ "license": "MIT",
+ "dependencies": {
+ "p-limit": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/pkg-dir/node_modules/p-try": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
"node_modules/pkg-types": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.1.0.tgz",
@@ -32881,9 +32712,9 @@
"peer": true
},
"node_modules/prosemirror-commands": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/prosemirror-commands/-/prosemirror-commands-1.7.0.tgz",
- "integrity": "sha512-6toodS4R/Aah5pdsrIwnTYPEjW70SlO5a66oo5Kk+CIrgJz3ukOoS+FYDGqvQlAX5PxoGWDX1oD++tn5X3pyRA==",
+ "version": "1.7.1",
+ "resolved": "https://registry.npmjs.org/prosemirror-commands/-/prosemirror-commands-1.7.1.tgz",
+ "integrity": "sha512-rT7qZnQtx5c0/y/KlYaGvtG411S97UaL6gdp6RIZ23DLHanMYLyfGBV5DtSnZdthQql7W+lEVbpSfwtO8T+L2w==",
"license": "MIT",
"dependencies": {
"prosemirror-model": "^1.0.0",
@@ -32973,9 +32804,9 @@
}
},
"node_modules/prosemirror-view": {
- "version": "1.38.1",
- "resolved": "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.38.1.tgz",
- "integrity": "sha512-4FH/uM1A4PNyrxXbD+RAbAsf0d/mM0D/wAKSVVWK7o0A9Q/oOXJBrw786mBf2Vnrs/Edly6dH6Z2gsb7zWwaUw==",
+ "version": "1.39.1",
+ "resolved": "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.39.1.tgz",
+ "integrity": "sha512-GhLxH1xwnqa5VjhJ29LfcQITNDp+f1jzmMPXQfGW9oNrF0lfjPzKvV5y/bjIQkyKpwCX3Fp+GA4dBpMMk8g+ZQ==",
"license": "MIT",
"dependencies": {
"prosemirror-model": "^1.20.0",
@@ -33213,17 +33044,17 @@
}
},
"node_modules/puppeteer": {
- "version": "24.4.0",
- "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-24.4.0.tgz",
- "integrity": "sha512-E4JhJzjS8AAI+6N/b+Utwarhz6zWl3+MR725fal+s3UlOlX2eWdsvYYU+Q5bXMjs9eZEGkNQroLkn7j11s2k1Q==",
+ "version": "24.6.1",
+ "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-24.6.1.tgz",
+ "integrity": "sha512-/4ocGfu8LNvDbWUqJZV2VmwEWpbOdJa69y2Jivd213tV0ekAtUh/bgT1hhW63SDN/CtrEucOPwoomZ+9M+eBEg==",
"hasInstallScript": true,
"license": "Apache-2.0",
"dependencies": {
- "@puppeteer/browsers": "2.8.0",
- "chromium-bidi": "2.1.2",
+ "@puppeteer/browsers": "2.10.0",
+ "chromium-bidi": "3.0.0",
"cosmiconfig": "^9.0.0",
- "devtools-protocol": "0.0.1413902",
- "puppeteer-core": "24.4.0",
+ "devtools-protocol": "0.0.1425554",
+ "puppeteer-core": "24.6.1",
"typed-query-selector": "^2.12.0"
},
"bin": {
@@ -33234,15 +33065,15 @@
}
},
"node_modules/puppeteer-core": {
- "version": "24.4.0",
- "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.4.0.tgz",
- "integrity": "sha512-eFw66gCnWo0X8Hyf9KxxJtms7a61NJVMiSaWfItsFPzFBsjsWdmcNlBdsA1WVwln6neoHhsG+uTVesKmTREn/g==",
+ "version": "24.6.1",
+ "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.6.1.tgz",
+ "integrity": "sha512-sMCxsY+OPWO2fecBrhIeCeJbWWXJ6UaN997sTid6whY0YT9XM0RnxEwLeUibluIS5/fRmuxe1efjb5RMBsky7g==",
"license": "Apache-2.0",
"dependencies": {
- "@puppeteer/browsers": "2.8.0",
- "chromium-bidi": "2.1.2",
+ "@puppeteer/browsers": "2.10.0",
+ "chromium-bidi": "3.0.0",
"debug": "^4.4.0",
- "devtools-protocol": "0.0.1413902",
+ "devtools-protocol": "0.0.1425554",
"typed-query-selector": "^2.12.0",
"ws": "^8.18.1"
},
@@ -33321,9 +33152,9 @@
}
},
"node_modules/quansync": {
- "version": "0.2.8",
- "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.8.tgz",
- "integrity": "sha512-4+saucphJMazjt7iOM27mbFCk+D9dd/zmgMDCzRZ8MEoBfYp7lAvoN38et/phRQF6wOPMy/OROBGgoWeSKyluA==",
+ "version": "0.2.10",
+ "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.10.tgz",
+ "integrity": "sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==",
"funding": [
{
"type": "individual",
@@ -33580,53 +33411,53 @@
}
},
"node_modules/react-aria": {
- "version": "3.38.1",
- "resolved": "https://registry.npmjs.org/react-aria/-/react-aria-3.38.1.tgz",
- "integrity": "sha512-DDdWsAlHPKVQ5E8G0kfDHNs0Lk1Xrs3G7soz6Ew8Ls5vNfp1BusbR2b1wC7ppqq2jDQiyJS816UNmDuGyQVyxA==",
- "license": "Apache-2.0",
- "dependencies": {
- "@internationalized/string": "^3.2.5",
- "@react-aria/breadcrumbs": "^3.5.22",
- "@react-aria/button": "^3.12.1",
- "@react-aria/calendar": "^3.7.2",
- "@react-aria/checkbox": "^3.15.3",
- "@react-aria/color": "^3.0.5",
- "@react-aria/combobox": "^3.12.1",
- "@react-aria/datepicker": "^3.14.1",
- "@react-aria/dialog": "^3.5.23",
- "@react-aria/disclosure": "^3.0.3",
- "@react-aria/dnd": "^3.9.1",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/gridlist": "^3.11.1",
- "@react-aria/i18n": "^3.12.7",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/label": "^3.7.16",
- "@react-aria/landmark": "^3.0.1",
- "@react-aria/link": "^3.7.10",
- "@react-aria/listbox": "^3.14.2",
- "@react-aria/menu": "^3.18.1",
- "@react-aria/meter": "^3.4.21",
- "@react-aria/numberfield": "^3.11.12",
- "@react-aria/overlays": "^3.26.1",
- "@react-aria/progress": "^3.4.21",
- "@react-aria/radio": "^3.11.1",
- "@react-aria/searchfield": "^3.8.2",
- "@react-aria/select": "^3.15.3",
- "@react-aria/selection": "^3.23.1",
- "@react-aria/separator": "^3.4.7",
- "@react-aria/slider": "^3.7.17",
- "@react-aria/ssr": "^3.9.7",
- "@react-aria/switch": "^3.7.1",
- "@react-aria/table": "^3.17.1",
- "@react-aria/tabs": "^3.10.1",
- "@react-aria/tag": "^3.5.1",
- "@react-aria/textfield": "^3.17.1",
- "@react-aria/toast": "^3.0.1",
- "@react-aria/tooltip": "^3.8.1",
- "@react-aria/tree": "^3.0.1",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/visually-hidden": "^3.8.21",
- "@react-types/shared": "^3.28.0"
+ "version": "3.39.0",
+ "resolved": "https://registry.npmjs.org/react-aria/-/react-aria-3.39.0.tgz",
+ "integrity": "sha512-zXCjR01WnfW4uW0f294uWrvdfwEMHgDFSwMwMBwRafAvmsQea87X5VTAfDmQOAbPa+iQFcngIyH0Pn5CfXNrjw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@internationalized/string": "^3.2.6",
+ "@react-aria/breadcrumbs": "^3.5.23",
+ "@react-aria/button": "^3.13.0",
+ "@react-aria/calendar": "^3.8.0",
+ "@react-aria/checkbox": "^3.15.4",
+ "@react-aria/color": "^3.0.6",
+ "@react-aria/combobox": "^3.12.2",
+ "@react-aria/datepicker": "^3.14.2",
+ "@react-aria/dialog": "^3.5.24",
+ "@react-aria/disclosure": "^3.0.4",
+ "@react-aria/dnd": "^3.9.2",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/gridlist": "^3.12.0",
+ "@react-aria/i18n": "^3.12.8",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/label": "^3.7.17",
+ "@react-aria/landmark": "^3.0.2",
+ "@react-aria/link": "^3.8.0",
+ "@react-aria/listbox": "^3.14.3",
+ "@react-aria/menu": "^3.18.2",
+ "@react-aria/meter": "^3.4.22",
+ "@react-aria/numberfield": "^3.11.13",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/progress": "^3.4.22",
+ "@react-aria/radio": "^3.11.2",
+ "@react-aria/searchfield": "^3.8.3",
+ "@react-aria/select": "^3.15.4",
+ "@react-aria/selection": "^3.24.0",
+ "@react-aria/separator": "^3.4.8",
+ "@react-aria/slider": "^3.7.18",
+ "@react-aria/ssr": "^3.9.8",
+ "@react-aria/switch": "^3.7.2",
+ "@react-aria/table": "^3.17.2",
+ "@react-aria/tabs": "^3.10.2",
+ "@react-aria/tag": "^3.5.2",
+ "@react-aria/textfield": "^3.17.2",
+ "@react-aria/toast": "^3.0.2",
+ "@react-aria/tooltip": "^3.8.2",
+ "@react-aria/tree": "^3.0.2",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/visually-hidden": "^3.8.22",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1",
@@ -33634,36 +33465,38 @@
}
},
"node_modules/react-aria-components": {
- "version": "1.7.1",
- "resolved": "https://registry.npmjs.org/react-aria-components/-/react-aria-components-1.7.1.tgz",
- "integrity": "sha512-kTAlrxcW7n+rQDwlZSz5+o+HknjPGv/pn0OQ1FF92WsjoTaqQMJtWbEAHXrhrQaiW/3T4CANTpdR1soai4uK6g==",
- "license": "Apache-2.0",
- "dependencies": {
- "@internationalized/date": "^3.7.0",
- "@internationalized/string": "^3.2.5",
- "@react-aria/autocomplete": "3.0.0-beta.1",
- "@react-aria/collections": "3.0.0-beta.1",
- "@react-aria/dnd": "^3.9.1",
- "@react-aria/focus": "^3.20.1",
- "@react-aria/interactions": "^3.24.1",
- "@react-aria/live-announcer": "^3.4.1",
- "@react-aria/toolbar": "3.0.0-beta.14",
- "@react-aria/utils": "^3.28.1",
- "@react-aria/virtualizer": "^4.1.3",
- "@react-stately/autocomplete": "3.0.0-beta.0",
- "@react-stately/layout": "^4.2.1",
- "@react-stately/selection": "^3.20.0",
- "@react-stately/table": "^3.14.0",
- "@react-stately/utils": "^3.10.5",
- "@react-stately/virtualizer": "^4.3.1",
- "@react-types/form": "^3.7.10",
- "@react-types/grid": "^3.3.0",
- "@react-types/shared": "^3.28.0",
- "@react-types/table": "^3.11.0",
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/react-aria-components/-/react-aria-components-1.8.0.tgz",
+ "integrity": "sha512-qNJ/Z4opj1/NKFf1ch/V8rNYar5MXu4J8YVAt2pFgnBRLjVlIlfnENN8Oa5OFiYFCzMPRFdq5mI8RuYIEnvZfg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@internationalized/date": "^3.8.0",
+ "@internationalized/string": "^3.2.6",
+ "@react-aria/autocomplete": "3.0.0-beta.2",
+ "@react-aria/collections": "3.0.0-rc.0",
+ "@react-aria/dnd": "^3.9.2",
+ "@react-aria/focus": "^3.20.2",
+ "@react-aria/interactions": "^3.25.0",
+ "@react-aria/live-announcer": "^3.4.2",
+ "@react-aria/overlays": "^3.27.0",
+ "@react-aria/ssr": "^3.9.8",
+ "@react-aria/toolbar": "3.0.0-beta.15",
+ "@react-aria/utils": "^3.28.2",
+ "@react-aria/virtualizer": "^4.1.4",
+ "@react-stately/autocomplete": "3.0.0-beta.1",
+ "@react-stately/layout": "^4.2.2",
+ "@react-stately/selection": "^3.20.1",
+ "@react-stately/table": "^3.14.1",
+ "@react-stately/utils": "^3.10.6",
+ "@react-stately/virtualizer": "^4.3.2",
+ "@react-types/form": "^3.7.11",
+ "@react-types/grid": "^3.3.1",
+ "@react-types/shared": "^3.29.0",
+ "@react-types/table": "^3.12.0",
"@swc/helpers": "^0.5.0",
"client-only": "^0.0.1",
- "react-aria": "^3.38.1",
- "react-stately": "^3.36.1",
+ "react-aria": "^3.39.0",
+ "react-stately": "^3.37.0",
"use-sync-external-store": "^1.4.0"
},
"peerDependencies": {
@@ -33796,9 +33629,9 @@
}
},
"node_modules/react-datepicker": {
- "version": "8.2.1",
- "resolved": "https://registry.npmjs.org/react-datepicker/-/react-datepicker-8.2.1.tgz",
- "integrity": "sha512-1pyALWM9mTZ7DG7tfcApwBy2kkld9Kz/EI++LhPnoXJAASbvuq6fdsDfkoB3q1JrxF7vhghVmQ759H/rOwUNNw==",
+ "version": "8.3.0",
+ "resolved": "https://registry.npmjs.org/react-datepicker/-/react-datepicker-8.3.0.tgz",
+ "integrity": "sha512-DhfrIJnTPJTUVRtXU7c7zooug40rD6q+Fc8UTCt19dYEotLpDQgTN98MfocY6Rc4S99oOFFEoxyanOM/TKauuw==",
"license": "MIT",
"dependencies": {
"@floating-ui/react": "^0.27.3",
@@ -33919,9 +33752,9 @@
}
},
"node_modules/react-is": {
- "version": "19.0.0",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.0.0.tgz",
- "integrity": "sha512-H91OHcwjZsbq3ClIDHMzBShc1rotbfACdWENsmEf0IFvZ3FgGPtdHMcsv45bQ1hAbgdfiA8SnxTKfDS+x/8m2g==",
+ "version": "19.1.0",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.1.0.tgz",
+ "integrity": "sha512-Oe56aUPnkHyyDxxkvqtd7KkdQP5uIUfHxd5XTb3wE9d/kRnZLmKbDB0GWk919tdQ+mxxPtG6EAs6RMT6i1qtHg==",
"license": "MIT"
},
"node_modules/react-jsx-parser": {
@@ -33973,13 +33806,13 @@
}
},
"node_modules/react-map-gl": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/react-map-gl/-/react-map-gl-8.0.1.tgz",
- "integrity": "sha512-VQjLcZdtyJCPXxy5xVL2QIgfA+YG3v+PzSdt07WWbVmXFhV4wUuy6DZSQYDdfqVH2BujKo/ImdL5zfEJApRnpg==",
+ "version": "8.0.4",
+ "resolved": "https://registry.npmjs.org/react-map-gl/-/react-map-gl-8.0.4.tgz",
+ "integrity": "sha512-SHdpvFIvswsZBg6BCPcwY/nbKuCo3sJM1Cj7Sd+gA3gFRFOixD+KtZ2XSuUWq2WySL2emYEXEgrLZoXsV4Ut4Q==",
"license": "MIT",
"dependencies": {
- "@vis.gl/react-mapbox": "8.0.1",
- "@vis.gl/react-maplibre": "8.0.1"
+ "@vis.gl/react-mapbox": "8.0.4",
+ "@vis.gl/react-maplibre": "8.0.4"
},
"peerDependencies": {
"mapbox-gl": ">=1.13.0",
@@ -34098,46 +33931,46 @@
}
},
"node_modules/react-stately": {
- "version": "3.36.1",
- "resolved": "https://registry.npmjs.org/react-stately/-/react-stately-3.36.1.tgz",
- "integrity": "sha512-H9kiGAylNec/iE5qk7qQLV1cvtSAIVq3mgt87zx2EA+f+/sYy2oBtchFPaDiBf/m7xMEKf0Fr9zSLU6G99xQ8g==",
- "license": "Apache-2.0",
- "dependencies": {
- "@react-stately/calendar": "^3.7.1",
- "@react-stately/checkbox": "^3.6.12",
- "@react-stately/collections": "^3.12.2",
- "@react-stately/color": "^3.8.3",
- "@react-stately/combobox": "^3.10.3",
- "@react-stately/data": "^3.12.2",
- "@react-stately/datepicker": "^3.13.0",
- "@react-stately/disclosure": "^3.0.2",
- "@react-stately/dnd": "^3.5.2",
- "@react-stately/form": "^3.1.2",
- "@react-stately/list": "^3.12.0",
- "@react-stately/menu": "^3.9.2",
- "@react-stately/numberfield": "^3.9.10",
- "@react-stately/overlays": "^3.6.14",
- "@react-stately/radio": "^3.10.11",
- "@react-stately/searchfield": "^3.5.10",
- "@react-stately/select": "^3.6.11",
- "@react-stately/selection": "^3.20.0",
- "@react-stately/slider": "^3.6.2",
- "@react-stately/table": "^3.14.0",
- "@react-stately/tabs": "^3.8.0",
- "@react-stately/toast": "^3.0.0",
- "@react-stately/toggle": "^3.8.2",
- "@react-stately/tooltip": "^3.5.2",
- "@react-stately/tree": "^3.8.8",
- "@react-types/shared": "^3.28.0"
+ "version": "3.37.0",
+ "resolved": "https://registry.npmjs.org/react-stately/-/react-stately-3.37.0.tgz",
+ "integrity": "sha512-fm2LRM3XN5lJD48+WQKWvESx54kAIHw0JztCRHMsFmTDgYWX/VASuXKON7LECv227stSEadrxGa8LhPkcelljw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@react-stately/calendar": "^3.8.0",
+ "@react-stately/checkbox": "^3.6.13",
+ "@react-stately/collections": "^3.12.3",
+ "@react-stately/color": "^3.8.4",
+ "@react-stately/combobox": "^3.10.4",
+ "@react-stately/data": "^3.12.3",
+ "@react-stately/datepicker": "^3.14.0",
+ "@react-stately/disclosure": "^3.0.3",
+ "@react-stately/dnd": "^3.5.3",
+ "@react-stately/form": "^3.1.3",
+ "@react-stately/list": "^3.12.1",
+ "@react-stately/menu": "^3.9.3",
+ "@react-stately/numberfield": "^3.9.11",
+ "@react-stately/overlays": "^3.6.15",
+ "@react-stately/radio": "^3.10.12",
+ "@react-stately/searchfield": "^3.5.11",
+ "@react-stately/select": "^3.6.12",
+ "@react-stately/selection": "^3.20.1",
+ "@react-stately/slider": "^3.6.3",
+ "@react-stately/table": "^3.14.1",
+ "@react-stately/tabs": "^3.8.1",
+ "@react-stately/toast": "^3.1.0",
+ "@react-stately/toggle": "^3.8.3",
+ "@react-stately/tooltip": "^3.5.3",
+ "@react-stately/tree": "^3.8.9",
+ "@react-types/shared": "^3.29.0"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1"
}
},
"node_modules/react-textarea-autosize": {
- "version": "8.5.8",
- "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.5.8.tgz",
- "integrity": "sha512-iUiIj70JefrTuSJ4LbVFiSqWiHHss5L63L717bqaWHMgkm9sz6eEvro4vZ3uQfGJbevzwT6rHOszHKA8RkhRMg==",
+ "version": "8.5.9",
+ "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.5.9.tgz",
+ "integrity": "sha512-U1DGlIQN5AwgjTyOEnI1oCcMuEr1pv1qOtklB2l4nyMGbHzWrI0eFsYK0zos2YWqAolJyG0IWJaqWmWj5ETh0A==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.20.13",
@@ -34264,6 +34097,15 @@
"minimatch": "^5.1.0"
}
},
+ "node_modules/readdir-glob/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
"node_modules/readdir-glob/node_modules/minimatch": {
"version": "5.1.6",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
@@ -34335,9 +34177,9 @@
}
},
"node_modules/recharts": {
- "version": "2.15.1",
- "resolved": "https://registry.npmjs.org/recharts/-/recharts-2.15.1.tgz",
- "integrity": "sha512-v8PUTUlyiDe56qUj82w/EDVuzEFXwEHp9/xOowGAZwfLjB9uAy3GllQVIYMWF6nU+qibx85WF75zD7AjqoT54Q==",
+ "version": "2.15.2",
+ "resolved": "https://registry.npmjs.org/recharts/-/recharts-2.15.2.tgz",
+ "integrity": "sha512-xv9lVztv3ingk7V3Jf05wfAZbM9Q2umJzu5t/cfnAK7LUslNrGT7LPBr74G+ok8kSCeFMaePmWMg0rcYOnczTw==",
"license": "MIT",
"dependencies": {
"clsx": "^2.0.0",
@@ -34637,9 +34479,9 @@
}
},
"node_modules/remark-rehype": {
- "version": "11.1.1",
- "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.1.tgz",
- "integrity": "sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==",
+ "version": "11.1.2",
+ "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.2.tgz",
+ "integrity": "sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==",
"license": "MIT",
"dependencies": {
"@types/hast": "^3.0.0",
@@ -35083,9 +34925,9 @@
}
},
"node_modules/reveal.js": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/reveal.js/-/reveal.js-5.1.0.tgz",
- "integrity": "sha512-KDt7m0+xwKV6nAZt4CNPVFBf42sTKRQapg0bGGKB5PKO5XvChnMfwlZkybydHiQJ7p5+6LbHKRGrhXODdoNIaA==",
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/reveal.js/-/reveal.js-5.2.1.tgz",
+ "integrity": "sha512-r7//6mIM5p34hFiDMvYfXgyjXqGRta+/psd9YtytsgRlrpRzFv4RbH76TXd2qD+7ZPZEbpBDhdRhJaFgfQ7zNQ==",
"license": "MIT",
"engines": {
"node": ">=18.0.0"
@@ -35110,6 +34952,15 @@
"url": "https://github.com/sponsors/isaacs"
}
},
+ "node_modules/rimraf/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
"node_modules/rimraf/node_modules/glob": {
"version": "11.0.1",
"resolved": "https://registry.npmjs.org/glob/-/glob-11.0.1.tgz",
@@ -35149,9 +35000,9 @@
}
},
"node_modules/rimraf/node_modules/lru-cache": {
- "version": "11.0.2",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.2.tgz",
- "integrity": "sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==",
+ "version": "11.1.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz",
+ "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==",
"license": "ISC",
"engines": {
"node": "20 || >=22"
@@ -35341,9 +35192,9 @@
"license": "MIT"
},
"node_modules/sass": {
- "version": "1.86.0",
- "resolved": "https://registry.npmjs.org/sass/-/sass-1.86.0.tgz",
- "integrity": "sha512-zV8vGUld/+mP4KbMLJMX7TyGCuUp7hnkOScgCMsWuHtns8CWBoz+vmEhoGMXsaJrbUP8gj+F1dLvVe79sK8UdA==",
+ "version": "1.86.3",
+ "resolved": "https://registry.npmjs.org/sass/-/sass-1.86.3.tgz",
+ "integrity": "sha512-iGtg8kus4GrsGLRDLRBRHY9dNVA78ZaS7xr01cWnS7PEMQyFtTqBiyCrfpTYTZXRWM94akzckYjh8oADfFNTzw==",
"license": "MIT",
"dependencies": {
"chokidar": "^4.0.0",
@@ -35400,34 +35251,6 @@
}
}
},
- "node_modules/sass/node_modules/chokidar": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz",
- "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
- "license": "MIT",
- "dependencies": {
- "readdirp": "^4.0.1"
- },
- "engines": {
- "node": ">= 14.16.0"
- },
- "funding": {
- "url": "https://paulmillr.com/funding/"
- }
- },
- "node_modules/sass/node_modules/readdirp": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
- "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
- "license": "MIT",
- "engines": {
- "node": ">= 14.18.0"
- },
- "funding": {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
- }
- },
"node_modules/sax": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz",
@@ -35670,9 +35493,9 @@
}
},
"node_modules/serializr": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/serializr/-/serializr-3.0.3.tgz",
- "integrity": "sha512-Be5bpqNfLqD107XksBHCeCtupZdqBRutAH++YJod2EL1Zqti/rEdEYtxKpGwUzuw5DOBrfqHrFrgM96xU2Oc7Q==",
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/serializr/-/serializr-3.0.4.tgz",
+ "integrity": "sha512-c7eDG9G4GM1lU48zud3n7adtlRXGNBnIee/E+cNVVMO42eIWJAjBFhXXx8IjD4yd5GYdXMMrPlDcMBBA2+hY9w==",
"license": "MIT"
},
"node_modules/serve-index": {
@@ -36454,26 +36277,26 @@
}
},
"node_modules/speech-rule-engine": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/speech-rule-engine/-/speech-rule-engine-4.0.7.tgz",
- "integrity": "sha512-sJrL3/wHzNwJRLBdf6CjJWIlxC04iYKkyXvYSVsWVOiC2DSkHmxsqOhEeMsBA9XK+CHuNcsdkbFDnoUfAsmp9g==",
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/speech-rule-engine/-/speech-rule-engine-4.1.1.tgz",
+ "integrity": "sha512-r30kdFJZa/hvmy13eldwjrnMeW74zQGP1++t7xyKQxbsdVVNbhKzfrvY0u2ecIXy0riBSLsl2KbzWevPPJogvw==",
"license": "Apache-2.0",
"dependencies": {
- "commander": "9.2.0",
- "wicked-good-xpath": "1.3.0",
- "xmldom-sre": "0.1.31"
+ "@xmldom/xmldom": "0.9.8",
+ "commander": "13.1.0",
+ "wicked-good-xpath": "1.3.0"
},
"bin": {
"sre": "bin/sre"
}
},
"node_modules/speech-rule-engine/node_modules/commander": {
- "version": "9.2.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz",
- "integrity": "sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==",
+ "version": "13.1.0",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-13.1.0.tgz",
+ "integrity": "sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==",
"license": "MIT",
"engines": {
- "node": "^12.20.0 || >=14"
+ "node": ">=18"
}
},
"node_modules/splaytree-ts": {
@@ -36594,13 +36417,13 @@
}
},
"node_modules/storybook": {
- "version": "8.6.7",
- "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.6.7.tgz",
- "integrity": "sha512-9gktoFMQDSCINNGQH869d/sar9rVtAhr0HchcvDA6bssAqgQJvTphY4qC9lH54SxfTJm/7Sy+BKEngMK+dziJg==",
+ "version": "8.6.12",
+ "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.6.12.tgz",
+ "integrity": "sha512-Z/nWYEHBTLK1ZBtAWdhxC0l5zf7ioJ7G4+zYqtTdYeb67gTnxNj80gehf8o8QY9L2zA2+eyMRGLC2V5fI7Z3Tw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@storybook/core": "8.6.7"
+ "@storybook/core": "8.6.12"
},
"bin": {
"getstorybook": "bin/index.cjs",
@@ -37080,9 +36903,9 @@
}
},
"node_modules/styled-components": {
- "version": "6.1.16",
- "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.1.16.tgz",
- "integrity": "sha512-KpWB6ORAWGmbWM10cDJfEV6sXc/uVkkkQV3SLwTNQ/E/PqWgNHIoMSLh1Lnk2FkB9+JHK7uuMq1i+9ArxDD7iQ==",
+ "version": "6.1.17",
+ "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.1.17.tgz",
+ "integrity": "sha512-97D7DwWanI7nN24v0D4SvbfjLE9656umNSJZkBkDIWL37aZqG/wRQ+Y9pWtXyBIM/NSfcBzHLErEsqHmJNSVUg==",
"license": "MIT",
"dependencies": {
"@emotion/is-prop-valid": "1.2.2",
@@ -37605,21 +37428,21 @@
}
},
"node_modules/tldts": {
- "version": "6.1.84",
- "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.84.tgz",
- "integrity": "sha512-aRGIbCIF3teodtUFAYSdQONVmDRy21REM3o6JnqWn5ZkQBJJ4gHxhw6OfwQ+WkSAi3ASamrS4N4nyazWx6uTYg==",
+ "version": "6.1.86",
+ "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.86.tgz",
+ "integrity": "sha512-WMi/OQ2axVTf/ykqCQgXiIct+mSQDFdH2fkwhPwgEwvJ1kSzZRiinb0zF2Xb8u4+OqPChmyI6MEu4EezNJz+FQ==",
"license": "MIT",
"dependencies": {
- "tldts-core": "^6.1.84"
+ "tldts-core": "^6.1.86"
},
"bin": {
"tldts": "bin/cli.js"
}
},
"node_modules/tldts-core": {
- "version": "6.1.84",
- "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.84.tgz",
- "integrity": "sha512-NaQa1W76W2aCGjXybvnMYzGSM4x8fvG2AN/pla7qxcg0ZHbooOPhA8kctmOZUDfZyhDL27OGNbwAeig8P4p1vg==",
+ "version": "6.1.86",
+ "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.86.tgz",
+ "integrity": "sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA==",
"license": "MIT"
},
"node_modules/to-regex-range": {
@@ -37726,9 +37549,9 @@
}
},
"node_modules/tr46": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.0.tgz",
- "integrity": "sha512-IUWnUK7ADYR5Sl1fZlO1INDUhVhatWl7BtJWsIhwJ0UAK7ilzzIa8uIqOO/aYVWHZPJkKbEL+362wrzoeRF7bw==",
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz",
+ "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==",
"license": "MIT",
"dependencies": {
"punycode": "^2.3.1"
@@ -37805,9 +37628,9 @@
"license": "MIT"
},
"node_modules/ts-api-utils": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.1.tgz",
- "integrity": "sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==",
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz",
+ "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -37949,15 +37772,29 @@
}
}
},
- "node_modules/ts-node-dev/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "node_modules/ts-node-dev/node_modules/chokidar": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
+ "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.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"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
}
},
"node_modules/ts-node-dev/node_modules/glob": {
@@ -37982,17 +37819,17 @@
"url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/ts-node-dev/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "node_modules/ts-node-dev/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
"dev": true,
"license": "ISC",
"dependencies": {
- "brace-expansion": "^1.1.7"
+ "is-glob": "^4.0.1"
},
"engines": {
- "node": "*"
+ "node": ">= 6"
}
},
"node_modules/ts-node-dev/node_modules/rimraf": {
@@ -38129,16 +37966,6 @@
"tslint": ">=4.0.0"
}
},
- "node_modules/tslint-loader/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
"node_modules/tslint-loader/node_modules/glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
@@ -38186,18 +38013,6 @@
"node": ">=4.0.0"
}
},
- "node_modules/tslint-loader/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/tslint-loader/node_modules/mkdirp": {
"version": "0.5.6",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
@@ -38244,16 +38059,6 @@
"node": ">=4"
}
},
- "node_modules/tslint/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
"node_modules/tslint/node_modules/chalk": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
@@ -38337,18 +38142,6 @@
"node": ">=4"
}
},
- "node_modules/tslint/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/tslint/node_modules/mkdirp": {
"version": "0.5.6",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
@@ -38453,9 +38246,9 @@
}
},
"node_modules/type-fest": {
- "version": "4.37.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.37.0.tgz",
- "integrity": "sha512-S/5/0kFftkq27FPNye0XM1e2NsnoD/3FS+pBmbjmmtLT6I+i344KoOf7pvXreaFsDamWeaJX55nczA1m5PsBDg==",
+ "version": "4.40.0",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.40.0.tgz",
+ "integrity": "sha512-ABHZ2/tS2JkvH1PEjxFDTUWC8dB5OsIGZP4IFLhR293GqT5Y5qB1WwL2kMPYhQW9DVgVD8Hd7I8gjwPIf5GFkw==",
"license": "(MIT OR CC0-1.0)",
"engines": {
"node": ">=16"
@@ -38562,9 +38355,9 @@
"license": "MIT"
},
"node_modules/typescript": {
- "version": "5.8.2",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz",
- "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==",
+ "version": "5.8.3",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz",
+ "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==",
"license": "Apache-2.0",
"bin": {
"tsc": "bin/tsc",
@@ -38581,15 +38374,15 @@
"license": "MIT"
},
"node_modules/typescript-eslint": {
- "version": "8.26.1",
- "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.26.1.tgz",
- "integrity": "sha512-t/oIs9mYyrwZGRpDv3g+3K6nZ5uhKEMt2oNmAPwaY4/ye0+EH4nXIPYNtkYFS6QHm+1DFg34DbglYBz5P9Xysg==",
+ "version": "8.30.1",
+ "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.30.1.tgz",
+ "integrity": "sha512-D7lC0kcehVH7Mb26MRQi64LMyRJsj3dToJxM1+JVTl53DQSV5/7oUGWQLcKl1C1KnoVHxMMU2FNQMffr7F3Row==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/eslint-plugin": "8.26.1",
- "@typescript-eslint/parser": "8.26.1",
- "@typescript-eslint/utils": "8.26.1"
+ "@typescript-eslint/eslint-plugin": "8.30.1",
+ "@typescript-eslint/parser": "8.30.1",
+ "@typescript-eslint/utils": "8.30.1"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -38643,9 +38436,9 @@
"license": "MIT"
},
"node_modules/ufo": {
- "version": "1.5.4",
- "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.4.tgz",
- "integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==",
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz",
+ "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==",
"license": "MIT"
},
"node_modules/uid-safe": {
@@ -38701,9 +38494,9 @@
}
},
"node_modules/undici-types": {
- "version": "6.20.0",
- "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz",
- "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==",
+ "version": "6.21.0",
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
+ "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
"license": "MIT"
},
"node_modules/unicode-canonical-property-names-ecmascript": {
@@ -39176,9 +38969,9 @@
}
},
"node_modules/use-sync-external-store": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.4.0.tgz",
- "integrity": "sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==",
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.5.0.tgz",
+ "integrity": "sha512-Rb46I4cGGVBmjamjphe8L/UnvJD+uPPtTkNvX5mZgqdbavhI4EbgIWJiIHXJ8bc/i9EQGPRh4DwEURJ552Do0A==",
"license": "MIT",
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
@@ -39527,9 +39320,9 @@
}
},
"node_modules/webpack": {
- "version": "5.98.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.98.0.tgz",
- "integrity": "sha512-UFynvx+gM44Gv9qFgj0acCQK2VE1CtdfwFdimkapco3hlPCJ/zeq73n2yVKimVbtm+TnApIugGhLJnkU6gjYXA==",
+ "version": "5.99.5",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.99.5.tgz",
+ "integrity": "sha512-q+vHBa6H9qwBLUlHL4Y7L0L1/LlyBKZtS9FHNCQmtayxjI5RKC9yD8gpvLeqGv5lCQp1Re04yi0MF40pf30Pvg==",
"license": "MIT",
"dependencies": {
"@types/eslint-scope": "^3.7.7",
@@ -39693,15 +39486,16 @@
}
},
"node_modules/webpack-dev-server": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-5.2.0.tgz",
- "integrity": "sha512-90SqqYXA2SK36KcT6o1bvwvZfJFcmoamqeJY7+boioffX9g9C0wjjJRGUrQIuh43pb0ttX7+ssavmj/WN2RHtA==",
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-5.2.1.tgz",
+ "integrity": "sha512-ml/0HIj9NLpVKOMq+SuBPLHcmbG+TGIjXRHsYfZwocUBIqEvws8NnS/V9AFQ5FKP+tgn5adwVwRrTEpGL33QFQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@types/bonjour": "^3.5.13",
"@types/connect-history-api-fallback": "^1.5.4",
"@types/express": "^4.17.21",
+ "@types/express-serve-static-core": "^4.17.21",
"@types/serve-index": "^1.9.4",
"@types/serve-static": "^1.15.5",
"@types/sockjs": "^0.3.36",
@@ -39775,10 +39569,48 @@
"@types/send": "*"
}
},
+ "node_modules/webpack-dev-server/node_modules/chokidar": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
+ "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.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"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/webpack-dev-server/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
"node_modules/webpack-dev-server/node_modules/http-proxy-middleware": {
- "version": "2.0.7",
- "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.7.tgz",
- "integrity": "sha512-fgVY8AV7qU7z/MmXJ/rxwbrtQH4jBQ9m7kp3llF0liB7glmFeVZFBepQb32T3y8n8k2+AEYuMPCpinYW+/CuRA==",
+ "version": "2.0.9",
+ "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz",
+ "integrity": "sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -40370,15 +40202,6 @@
"integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
"license": "MIT"
},
- "node_modules/xmldom-sre": {
- "version": "0.1.31",
- "resolved": "https://registry.npmjs.org/xmldom-sre/-/xmldom-sre-0.1.31.tgz",
- "integrity": "sha512-f9s+fUkX04BxQf+7mMWAp5zk61pciie+fFLC9hX9UVvCeJQfNHRHXpeo5MPcR0EUf57PYLdt+ZO4f3Ipk2oZUw==",
- "license": "(LGPL-2.0 or MIT)",
- "engines": {
- "node": ">=0.1"
- }
- },
"node_modules/xmlhttprequest-ssl": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.1.2.tgz",
@@ -40559,9 +40382,9 @@
}
},
"node_modules/yocto-queue": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.0.tgz",
- "integrity": "sha512-KHBC7z61OJeaMGnF3wqNZj+GGNXOyypZviiKpQeiHirG5Ib1ImwcLBH70rbMSkKfSmUNBsdf2PwaEJtKvgmkNw==",
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.1.tgz",
+ "integrity": "sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==",
"license": "MIT",
"engines": {
"node": ">=12.20"
@@ -40585,9 +40408,9 @@
}
},
"node_modules/zod": {
- "version": "3.24.2",
- "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.2.tgz",
- "integrity": "sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==",
+ "version": "3.24.3",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.3.tgz",
+ "integrity": "sha512-HhY1oqzWCQWuUqvBFnsyrtZRhyPeR7SUGv+C4+MsisMuVfSPx8HpwWqH8tRahSlt6M3PiFAcoeFhZAqIXTxoSg==",
"license": "MIT",
"funding": {
"url": "https://github.com/sponsors/colinhacks"
diff --git a/package.json b/package.json
index 1038c470e..07e72792c 100644
--- a/package.json
+++ b/package.json
@@ -132,7 +132,7 @@
"@types/d3-color": "^3.1.3",
"@types/d3-scale": "^4.0.8",
"@types/d3-selection": "^3.0.10",
- "@types/dom-speech-recognition": "0.0.4",
+ "@types/dom-speech-recognition": "^0.0.6",
"@types/find-in-files": "^0.5.3",
"@types/fluent-ffmpeg": "^2.1.24",
"@types/formidable": "3.4.5",
@@ -144,7 +144,7 @@
"@types/reveal": "^4.2.0",
"@types/supercluster": "^7.1.3",
"@types/textfit": "^2.4.4",
- "@types/web": "^0.0.213",
+ "@types/web": "^0.0.219",
"@types/webpack-hot-middleware": "^2.25.9",
"@webscopeio/react-textarea-autocomplete": "^4.9.2",
"adm-zip": "^0.5.10",
@@ -220,7 +220,7 @@
"gl-matrix": "^3.4.3",
"golden-layout": "^2.6.0",
"google-auth-library": "^9.4.1",
- "googleapis": "^146.0.0",
+ "googleapis": "^148.0.0",
"googlephotos": "^0.3.5",
"got": "^14.4.5",
"howler": "^2.2.4",
@@ -263,7 +263,7 @@
"node-stream-zip": "^1.15.0",
"nodemailer": "^6.9.7",
"nodemon": "^3.0.2",
- "npm": "^11.1.0",
+ "npm": "^11.3.0",
"openai": "^4.75.0",
"p-limit": "^6.1.0",
"parse-multipart-data": "^1.5.0",
diff --git a/src/ClientUtils.ts b/src/ClientUtils.ts
index e1f490c1a..03ff13924 100644
--- a/src/ClientUtils.ts
+++ b/src/ClientUtils.ts
@@ -476,7 +476,10 @@ export function smoothScrollHorizontal(duration: number, element: HTMLElement |
export function addStyleSheet() {
const style = document.createElement('style');
const sheets = document.head.appendChild(style);
- return sheets.sheet;
+ return sheets;
+}
+export function removeStyleSheet(sheet?: HTMLStyleElement) {
+ sheet && document.head.removeChild(sheet);
}
export function addStyleSheetRule(sheet: CSSStyleSheet | null, selector: string, css: string | { [key: string]: string }, selectorPrefix = '.') {
const propText =
diff --git a/src/client/Network.ts b/src/client/Network.ts
index a2ecf1bea..b11dcb379 100644
--- a/src/client/Network.ts
+++ b/src/client/Network.ts
@@ -21,10 +21,10 @@ export namespace Networking {
'Content-Type': 'application/json',
},
body: body ? JSON.stringify(body) : undefined,
- }).then(async response => {
+ }).then(response => {
if (response.ok) return response.json() as object;
- return await response.text().then(text => ({ error: '' + response.status + ':' + response.statusText + '-' + text }));
+ return response.text().then(text => ({ error: '' + response.status + ':' + response.statusText + '-' + text }));
});
}
diff --git a/src/client/documents/DocUtils.ts b/src/client/documents/DocUtils.ts
index f5eee84aa..7b36c3a66 100644
--- a/src/client/documents/DocUtils.ts
+++ b/src/client/documents/DocUtils.ts
@@ -55,13 +55,13 @@ export namespace DocUtils {
const matchLink = (val: string, anchor: Doc) => {
const linkedToExp = (val ?? '').split('=');
if (linkedToExp.length === 1) return Field.toScriptString(anchor) === val;
- return Field.toScriptString(DocCast(anchor[linkedToExp[0]])) === linkedToExp[1];
+ return DocCast(anchor[linkedToExp[0]]) && Field.toScriptString(DocCast(anchor[linkedToExp[0]])!) === linkedToExp[1];
};
// prettier-ignore
return (value === Doc.FilterNone && !allLinks.length) ||
(value === Doc.FilterAny && !!allLinks.length) ||
- (allLinks.some(link => matchLink(value as string, DocCast(link.link_anchor_1)) ||
- matchLink(value as string, DocCast(link.link_anchor_2)) ));
+ (allLinks.some(link => (DocCast(link.link_anchor_1) && matchLink(value as string, DocCast(link.link_anchor_1)!)) ||
+ (DocCast(link.link_anchor_2) && matchLink(value as string, DocCast(link.link_anchor_2)!)) ));
}
if (typeof value === 'string') {
value = value.replace(`,${ClientUtils.noRecursionHack}`, '');
@@ -266,7 +266,7 @@ export namespace DocUtils {
Object.keys(funcs)
.filter(key => !key.endsWith('-setter'))
.forEach(key => {
- const cfield = ComputedField.WithoutComputed(() => FieldValue(doc[key]));
+ const cfield = ComputedField.DisableCompute(() => FieldValue(doc[key]));
const func = funcs[key];
if (ScriptCast(cfield)?.script.originalScript !== func) {
const setFunc = Cast(funcs[key + '-setter'], 'string', null);
@@ -375,12 +375,13 @@ export namespace DocUtils {
const documentList: ContextMenuProps[] = foo
.filter(btnDoc => !btnDoc.hidden)
- .map(btnDoc => Cast(btnDoc?.dragFactory, Doc, null))
+ .map(btnDoc => DocCast(btnDoc?.dragFactory))
.filter(doc => doc && doc !== Doc.UserDoc().emptyTrail && doc.title)
+ .map(doc => doc!)
.map(dragDoc => ({
description: ':' + StrCast(dragDoc.title).replace('Untitled ', ''),
event: undoable(() => {
- const newDoc = DocUtils.copyDragFactory(dragDoc);
+ const newDoc = (dragDoc.isTemplateDoc ? DocUtils.delegateDragFactory : DocUtils.copyDragFactory)(dragDoc);
if (newDoc) {
newDoc._author = ClientUtils.CurrentUserEmail();
newDoc.x = x;
@@ -437,6 +438,7 @@ export namespace DocUtils {
.filter(btnDoc => !btnDoc.hidden)
.map(btnDoc => Cast(btnDoc?.dragFactory, Doc, null))
.filter(doc => doc && doc !== Doc.UserDoc().emptyTrail && doc !== Doc.UserDoc().emptyNote && doc.title)
+ .map(doc => doc!)
.map(dragDoc => ({
description: ':' + StrCast(dragDoc.title).replace('Untitled ', ''),
event: undoable(() => {
@@ -494,11 +496,11 @@ export namespace DocUtils {
.map(btnDoc => (btnDoc.dragFactory as Doc) || btnDoc)
.filter(d => d.isTemplateDoc);
// bcz: this is hacky -- want to have different templates be applied depending on the "type" of a document. but type is not reliable and there could be other types of template searches so this should be generalized
- // first try to find a template that matches the specific document type (<typeName>_<templateName>). otherwise, fallback to a general match on <templateName>
+ // first try to find a template that matches the specific document type (<typeName><TemplateName>). otherwise, fallback to a general match on <templateName>
!docLayoutTemplate &&
allTemplates.forEach(tempDoc => {
const templateType = StrCast(doc[templateName + '_fieldKey'] || doc.type);
- StrCast(tempDoc.title) === templateName + '_' + templateType && (docLayoutTemplate = tempDoc);
+ StrCast(tempDoc.title) === templateName + (templateType[0].toUpperCase() + templateType.slice(1)) && (docLayoutTemplate = tempDoc);
});
!docLayoutTemplate &&
allTemplates.forEach(tempDoc => {
@@ -522,18 +524,13 @@ export namespace DocUtils {
Doc.ApplyTemplateTo(docLayoutTemplate, doc, customName, undefined);
}
} else {
- let fieldTemplate: Opt<Doc>;
- if (doc.data instanceof RichTextField || typeof doc.data === 'string') {
- fieldTemplate = Docs.Create.TextDocument('', options);
- } else if (doc.data instanceof PdfField) {
- fieldTemplate = Docs.Create.PdfDocument('http://www.msn.com', options);
- } else if (doc.data instanceof VideoField) {
- fieldTemplate = Docs.Create.VideoDocument('http://www.cs.brown.edu', options);
- } else if (doc.data instanceof AudioField) {
- fieldTemplate = Docs.Create.AudioDocument('http://www.cs.brown.edu', options);
- } else if (doc.data instanceof ImageField) {
- fieldTemplate = Docs.Create.ImageDocument('http://www.cs.brown.edu', options);
- }
+ const fieldTemplate = (() => {
+ if (doc.data instanceof RichTextField || typeof doc.data === 'string') return Docs.Create.TextDocument('', options);
+ if (doc.data instanceof PdfField) return Docs.Create.PdfDocument('http://www.msn.com', options);
+ if (doc.data instanceof VideoField) return Docs.Create.VideoDocument('http://www.cs.brown.edu', options);
+ if (doc.data instanceof AudioField) return Docs.Create.AudioDocument('http://www.cs.brown.edu', options);
+ if (doc.data instanceof ImageField) return Docs.Create.ImageDocument('http://www.cs.brown.edu', options);
+ })();
const docTemplate = creator?.(fieldTemplate ? [fieldTemplate] : [], { title: customName + '(' + doc.title + ')', isTemplateDoc: true, _width: _width + 20, _height: Math.max(100, _height + 45) });
fieldTemplate && Doc.MakeMetadataFieldTemplate(fieldTemplate, docTemplate ? Doc.GetProto(docTemplate) : docTemplate);
docTemplate && Doc.ApplyTemplateTo(docTemplate, doc, customName, undefined);
@@ -714,34 +711,9 @@ export namespace DocUtils {
nativeWidth: 40,
nativeHeight: 40,
})
- : defaultTextTemplate?.type === DocumentType.JOURNAL
- ? Docs.Create.DailyJournalDocument('', {
- annotationOn,
- backgroundColor,
- x,
- y,
- title,
- ...(defaultTextTemplate
- ? {} // if the new doc will inherit from a template, don't set any layout fields since that would block the inheritance
- : {
- _width: width || BoolCast(Doc.UserDoc().fitBox) ? Number(StrCast(Doc.UserDoc().fontSize).replace('px', '')) * 1.5 * 6 : 200,
- _height: BoolCast(Doc.UserDoc().fitBox) ? Number(StrCast(Doc.UserDoc().fontSize).replace('px', '')) * 1.5 : 35,
- _layout_fitWidth: true,
- _layout_autoHeight: true,
- backgroundColor: StrCast(Doc.UserDoc().textBackgroundColor),
- borderColor: Doc.UserDoc().borderColor as string,
- borderWidth: Doc.UserDoc().borderWidth as number,
- text_centered: BoolCast(Doc.UserDoc().textCentered),
- text_fitBox: BoolCast(Doc.UserDoc().fitBox),
- text_align: StrCast(Doc.UserDoc().textAlign),
- text_fontColor: StrCast(Doc.UserDoc().fontColor),
- text_fontFamily: StrCast(Doc.UserDoc().fontFamily),
- text_fontWeight: StrCast(Doc.UserDoc().fontWeight),
- text_fontStyle: StrCast(Doc.UserDoc().fontStyle),
- text_fontDecoration: StrCast(Doc.UserDoc().fontDecoration),
- }),
- })
- : Docs.Create.TextDocument('', {
+ : (defaultTextTemplate?.type === DocumentType.JOURNAL ? Docs.Create.DailyJournalDocument:Docs.Create.TextDocument)(
+ '',
+ {
annotationOn,
backgroundColor,
x,
@@ -752,7 +724,6 @@ export namespace DocUtils {
: {
_width: width || BoolCast(Doc.UserDoc().fitBox) ? Number(StrCast(Doc.UserDoc().fontSize).replace('px', '')) * 1.5 * 6 : 200,
_height: BoolCast(Doc.UserDoc().fitBox) ? Number(StrCast(Doc.UserDoc().fontSize).replace('px', '')) * 1.5 : 35,
- _layout_fitWidth: true,
_layout_autoHeight: true,
backgroundColor: StrCast(Doc.UserDoc().textBackgroundColor),
borderColor: Doc.UserDoc().borderColor as string,
@@ -899,13 +870,13 @@ export namespace DocUtils {
const ndoc = Doc.MakeDelegateWithProto(dragFactory);
if (ndoc && dragFactory.dragFactory_count !== undefined) {
dragFactory.dragFactory_count = NumCast(dragFactory.dragFactory_count) + 1;
- Doc.GetProto(ndoc).title = ndoc.title + ' ' + NumCast(dragFactory.dragFactory_count).toString();
+ Doc.GetProto(ndoc).title = ndoc.title;
}
return ndoc;
}
- export async function Zip(doc: Doc, zipFilename = 'dashExport.zip') {
- const { clone, map, linkMap } = await Doc.MakeClone(doc);
+ export function Zip(doc: Doc, zipFilename = 'dashExport.zip') {
+ const { clone, map, linkMap } = Doc.MakeClone(doc);
const proms = new Set<string>();
function replacer(key: string, value: { url: string; [key: string]: unknown }) {
if (key && ['branchOf', 'cloneOf', 'cursors'].includes(key)) return undefined;
diff --git a/src/client/documents/DocumentTypes.ts b/src/client/documents/DocumentTypes.ts
index dd0985182..5c6559836 100644
--- a/src/client/documents/DocumentTypes.ts
+++ b/src/client/documents/DocumentTypes.ts
@@ -36,7 +36,7 @@ export enum DocumentType {
// special purpose wrappers that either take no data or are compositions of lower level types
LINK = 'link',
PRES = 'presentation',
- PRESELEMENT = 'preselement',
+ PRESSLIDE = 'presslide',
COMPARISON = 'comparison',
PUSHPIN = 'pushpin',
MAPROUTE = 'maproute',
diff --git a/src/client/documents/Documents.ts b/src/client/documents/Documents.ts
index 0e3c614fe..bf9cc5bd4 100644
--- a/src/client/documents/Documents.ts
+++ b/src/client/documents/Documents.ts
@@ -217,11 +217,10 @@ export class DocumentOptions {
author?: string; // STRt = new StrInfo('creator of document'); // bcz: don't change this. Otherwise, the userDoc's field Infos will have a FieldInfo assigned to its author field which will render it unreadable
author_date?: DATEt = new DateInfo('date the document was created', true);
annotationOn?: DOCt = new DocInfo('document annotated by this document', false);
- rootDocument?: DOCt = new DocInfo('document that supplies the information needed for a rendering template (eg, pres slide for PresElement)');
+ rootDocument?: DOCt = new DocInfo('document that stores the data for compound template documents.');
color?: STRt = new StrInfo('foreground color data doc', false);
hidden?: BOOLt = new BoolInfo('whether the document is not rendered by its collection', false);
backgroundColor?: STRt = new StrInfo('background color for data doc', false);
- _override_backgroundColor?: BOOLt = new BoolInfo("whether the layout template overrides the data doc's background color");
opacity?: NUMt = new NumInfo('document opacity', false);
viewTransitionTime?: NUMt = new NumInfo('transition duration for view parameters', false);
dontRegisterView?: BOOLt = new BoolInfo('are views of this document registered so that they can be found when following links, etc', false);
@@ -284,7 +283,7 @@ export class DocumentOptions {
_layout_curPage?: NUMt = new NumInfo('current page of a PDF or other? paginated document', false);
_layout_currentTimecode?: NUMt = new NumInfo('the current timecode of a time-based document (e.g., current time of a video) value is in seconds', false);
_layout_fitWidth?: BOOLt = new BoolInfo('whether document should scale its contents to fit its rendered width or not (e.g., for PDFviews)');
- _layout_fieldKey?: STRt = new StrInfo('the field key containing the current layout definition', false);
+ layout_fieldKey?: STRt = new StrInfo('the field key containing the current layout definition', false);
_layout_enableAltContentUI?: BOOLt = new BoolInfo('whether to show alternate content button');
_layout_flashcardType?: STRt = new StrInfo('flashcard style to render in ComparisonBox. currently just "flashcard".');
_layout_showTitle?: string; // field name to display in header (:hover is an optional suffix)
@@ -678,7 +677,7 @@ export namespace Docs {
// whatever options pertain to this specific prototype
const options: DocumentOptions = {
isSystem: true,
- _layout_fieldKey: 'layout',
+ layout_fieldKey: 'layout',
title,
type,
isBaseProto: true,
@@ -1140,8 +1139,8 @@ export namespace Docs {
return InstanceFromProto(Prototypes.get(DocumentType.FONTICON), undefined, { ...(options || {}) });
}
- export function PresElementBoxDocument() {
- return Prototypes.get(DocumentType.PRESELEMENT);
+ export function PresSlideDocument() {
+ return Prototypes.get(DocumentType.PRESSLIDE);
}
export function DataVizDocument(url: string, options?: DocumentOptions, overwriteDoc?: Doc) {
@@ -1149,7 +1148,7 @@ export namespace Docs {
}
export function AnnoPaletteDocument(options?: DocumentOptions) {
- return InstanceFromProto(Prototypes.get(DocumentType.ANNOPALETTE), new List([Doc.MyStickers]), { ...(options || {}) });
+ return InstanceFromProto(Prototypes.get(DocumentType.ANNOPALETTE), new List([...(Doc.MyStickers ? [Doc.MyStickers] : [])]), { ...(options || {}) });
}
export function DockDocument(documents: Array<Doc>, config: string, options: DocumentOptions, id?: string) {
diff --git a/src/client/util/CaptureManager.tsx b/src/client/util/CaptureManager.tsx
index 47f31612f..80af78898 100644
--- a/src/client/util/CaptureManager.tsx
+++ b/src/client/util/CaptureManager.tsx
@@ -13,7 +13,7 @@ import './CaptureManager.scss';
export class CaptureManager extends React.Component<object> {
// eslint-disable-next-line no-use-before-define
public static Instance: CaptureManager;
- static _settingsStyle = addStyleSheet();
+ static _settingsStyle = addStyleSheet().sheet;
@observable _document: Opt<Doc> = undefined;
@observable isOpen: boolean = false; // whether the CaptureManager is to be displayed or not.
diff --git a/src/client/util/CurrentUserUtils.ts b/src/client/util/CurrentUserUtils.ts
index 4c492cae0..99a67ebb2 100644
--- a/src/client/util/CurrentUserUtils.ts
+++ b/src/client/util/CurrentUserUtils.ts
@@ -144,14 +144,16 @@ export class CurrentUserUtils {
static setupNoteTemplates(doc: Doc, field="template_notes") {
const tempNotes = DocCast(doc[field]);
const reqdTempOpts:DocumentOptions[] = [
- { title: "Postit", _override_backgroundColor: true, backgroundColor: "yellow", icon: "sticky-note", _layout_showTitle: "title", layout_borderRounding: "5px"},
- { title: "Idea", _override_backgroundColor: true, backgroundColor: "pink", icon: "lightbulb" , _layout_showTitle: "title"},
- { title: "Topic", _override_backgroundColor: true, backgroundColor: "lightblue", icon: "book-open" , _layout_showTitle: "title"}];
+ { title: "Postit", backgroundColor: "yellow", icon: "sticky-note", _layout_showTitle: "title", layout_borderRounding: "5px"},
+ { title: "Idea", backgroundColor: "pink", icon: "lightbulb" , _layout_showTitle: "title"},
+ { title: "Topic", backgroundColor: "lightblue", icon: "book-open" , _layout_showTitle: "title"}];
+
+ const metanote = DocCast(doc.emptyMetaNote);
const reqdNoteList = [...reqdTempOpts.map(opts => {
const reqdOpts = {...opts, isSystem:true, width:200, layout_autoHeight: true, layout_fitWidth: true};
const noteTemp = tempNotes ? DocListCast(tempNotes.data).find(fdoc => fdoc.title === opts.title): undefined;
return DocUtils.AssignOpts(noteTemp, reqdOpts) ?? MakeTemplate(Docs.Create.TextDocument("",reqdOpts));
- }), ... DocListCast(tempNotes?.data).filter(note => !reqdTempOpts.find(reqd => reqd.title === note.title))];
+ }), ...(metanote ? [metanote]:[]), ... DocListCast(tempNotes?.data).filter(note => !reqdTempOpts.find(reqd => reqd.title === note.title))];
const reqdOpts:DocumentOptions = { title: "Note Layouts", _height: 75, isSystem: true };
return DocUtils.AssignOpts(tempNotes, reqdOpts, reqdNoteList) ?? (doc[field] = Docs.Create.TreeDocument(reqdNoteList, reqdOpts));
@@ -209,7 +211,7 @@ export class CurrentUserUtils {
const fontBox = (opts:DocumentOptions, fieldKey:string) => Docs.Create.FontIconDocument({ layout:FontIconBox.LayoutString(fieldKey), _nativeHeight: 30, _nativeWidth: 30, _width: 30, _height: 30, ...opts });
const makeIconTemplate = (name: DocumentType | string | undefined, templateField: string, opts:DocumentOptions) => {
- const title = "icon" + (name ? "_" + name : "");
+ const title = "icon" + (name ? name[0].toUpperCase()+name.slice(1) : "");
const curIcon = DocCast(templateIconsDoc[title]);
const creator = (() => { switch (opts.iconTemplate) {
case DocumentType.IMG : return imageBox;
@@ -247,7 +249,6 @@ export class CurrentUserUtils {
title: string, toolTip: string, icon: string, ignoreClick?: boolean, dragFactory?: Doc,
backgroundColor?: string, openFactoryAsDelegate?:boolean, openFactoryLocation?:string, clickFactory?: Doc, scripts?: { onClick?: string, onDragStart?: string}, funcs?: {onDragStart?:string, hidden?: string},
}[] {
- const standardOps = (key:string) => ({ title : "Untitled "+ key, _layout_fitWidth: false, isSystem: true, "dragFactory_count": 0, cloneFieldFilter: new List<string>(["isSystem"]) });
const json = {
doc: {
type: "doc",
@@ -272,17 +273,17 @@ export class CurrentUserUtils {
// " <FormattedTextBox {...props} fieldKey={'header'} dontSelectOnLoad={'true'} ignoreAutoHeight={'true'} pointerEvents='{this._header_pointerEvents||`none`}' fontSize='{this._header_fontSize}px' height='{this._header_height}px' background='{this._header_color}' />" +
// " <FormattedTextBox {...props} fieldKey={'text'} position='absolute' top='{this._header_height}px' height='calc(100% - {this._header_height}px)'/>" +
// "</div>";
- const headerBtnHgt = 10;
- const headerTemplate = (opts:DocumentOptions) =>
- MakeTemplate(Docs.Create.RTFDocument(new RichTextField(JSON.stringify(json), ""), { ...opts, title: "Header Template",
+ const metadataBtnHght = 10;
+ const metaNoteTemplate = (opts:DocumentOptions) =>
+ MakeTemplate(Docs.Create.RTFDocument(new RichTextField(JSON.stringify(json), ""), { ...opts, title: "MetaNote",
layout:`<HTMLdiv transformOrigin='top left' width='100%' height='100%'>
- <FormattedTextBox {...props} dontScale='true' fieldKey={'text'} height='calc(100% - ${headerBtnHgt}px - {this._header_height||0}px)' />
- <FormattedTextBox {...props} dontScale='true' fieldKey={'header'} dontSelectOnLoad='true' ignoreAutoHeight='true' fontSize='{this._header_fontSize||9}px' height='{(this._header_height||0)}px' backgroundColor='{this._header_color || "lightGray"}' />
- <HTMLdiv fontSize='${headerBtnHgt - 1}px' height='${headerBtnHgt}px' backgroundColor='yellow'
- onClick={‘(this._header_height=(this._header_height===0?50:0)) + (this._layout_autoHeightMargins=this._header_height ? this._header_height+${headerBtnHgt}:0)’} > Metadata
+ <FormattedTextBox {...props} dontScale='true' fieldKey={'text'} height='calc(100% - ${metadataBtnHght}px - {this._header_height||0}px)' />
+ <FormattedTextBox {...props} noSidebar='true' dontScale='true' fieldKey={'header'} dontSelectOnLoad='true' ignoreAutoHeight='true' fontSize='{this._header_fontSize||9}px' height='{(this._header_height||0)}px' backgroundColor='{this._header_color || "lightGray"}' />
+ <HTMLdiv fontSize='${metadataBtnHght - 1}px' height='${metadataBtnHght}px' backgroundColor='yellow'
+ onClick={‘(this._header_height=(this._header_height===0?50:0)) + (this._layout_autoHeightMargins=this._header_height ? this._header_height+${metadataBtnHght}:0)’} > Metadata
</HTMLdiv>
</HTMLdiv>`
- }, "header"));
+ }, "metaNote"));
const slideView = (opts:DocumentOptions) =>
MakeTemplate(Docs.Create.MultirowDocument(
[
@@ -405,9 +406,9 @@ pie title Minerals in my tap water
{key: "Script", creator: opts => Docs.Create.ScriptingDocument(null, opts), opts: { _width: 200, _height: 250, }},
{key: "DataViz", creator: opts => Docs.Create.DataVizDocument("", opts), opts: { _width: 300, _height: 300, }},
// AARAV ADD //
- {key: "DailyJournal",creator:opts => Docs.Create.DailyJournalDocument("", opts),opts:{ _width: 300, _height: 300}},
+ {key: "DailyJournal",creator:opts => Docs.Create.DailyJournalDocument("", opts),opts: { _width: 300, _height: 300, }},
{key: "Chat", creator: Docs.Create.ChatDocument, opts: { _width: 500, _height: 500, _layout_fitWidth: true, }},
- {key: "Header", creator: headerTemplate, opts: { _width: 300, _height: 120, _header_pointerEvents: "all", _header_height: 50, _header_fontSize: 9,_layout_autoHeightMargins: 50, _layout_autoHeight: true, treeView_HideUnrendered: true}},
+ {key: "MetaNote", creator: metaNoteTemplate, opts: { _width: 300, _height: 120, _header_pointerEvents: "all", _header_height: 50, _header_fontSize: 9,_layout_autoHeightMargins: 50, _layout_autoHeight: true, treeView_HideUnrendered: true}},
{key: "ViewSlide", creator: slideView, opts: { _width: 400, _height: 300, _xMargin: 3, _yMargin: 3,}},
{key: "Trail", creator: Docs.Create.PresDocument, opts: { _width: 400, _height: 30, _type_collection: CollectionViewType.Stacking, _layout_dontCenter:'xy', dropAction: dropActionType.embed, treeView_HideTitle: true, _layout_fitWidth:true, layout_boxShadow: "0 0" }},
{key: "Tab", creator: opts => Docs.Create.FreeformDocument([], opts), opts: { _width: 500, _height: 800, _layout_fitWidth: true, _freeform_backgroundGrid: true, }},
@@ -420,40 +421,45 @@ pie title Minerals in my tap water
{key: "Plotly", creator: plotlyView, opts: { _width: 300, _height: 300, }},
];
+ const standardOps = (key:string) => ({ title : "Untitled "+ key, _layout_fitWidth: false, isSystem: true, "dragFactory_count": 0, cloneFieldFilter: new List<string>(["isSystem"]) });
emptyThings.forEach(
thing => DocUtils.AssignDocField(doc, "empty"+thing.key, (opts) => thing.creator(opts), {...standardOps(thing.key), ...thing.opts}, undefined, thing.scripts, thing.funcs));
-
+ const metanote = DocCast(Doc.UserDoc().emptyMetaNote);
+ if (metanote) {
+ metanote.title = "MetaNote"; // hack: metanotes are used a template, so 'untitled metaNote' is an awkward name
+ }
+
return [
- { toolTip: "Tap or drag to create a note", title: "Note", icon: "sticky-note", dragFactory: doc.emptyNote as Doc, clickFactory: DocCast(doc.emptyNote)},
- { toolTip: "Tap or drag to create a flashcard", title: "Flashcard", icon: "id-card", dragFactory: doc.emptyFlashcard as Doc, clickFactory: DocCast(doc.emptyFlashcard)},
- { toolTip: "Tap or drag to create an equation", title: "Math", icon: "calculator", dragFactory: doc.emptyEquation as Doc, clickFactory: DocCast(doc.emptyEquation)},
- { toolTip: "Tap or drag to create a mermaid node", title: "Mermaids", icon: "rocket", dragFactory: doc.emptyMermaids as Doc, clickFactory: DocCast(doc.emptyMermaids)},
- { toolTip: "Tap or drag to create a plotly node", title: "Plotly", icon: "rocket", dragFactory: doc.emptyPlotly as Doc, clickFactory: DocCast(doc.emptyMermaids)},
- { toolTip: "Tap or drag to create a note board", title: "Notes", icon: "book", dragFactory: doc.emptyNoteboard as Doc, clickFactory: DocCast(doc.emptyNoteboard)},
- { toolTip: "Tap or drag to create an image", title: "Image", icon: "image", dragFactory: doc.emptyImage as Doc, clickFactory: DocCast(doc.emptyImage)},
- { toolTip: "Tap or drag to create a collection", title: "Col", icon: "folder", dragFactory: doc.emptyCollection as Doc, clickFactory: DocCast(doc.emptyTab)},
- { toolTip: "Tap or drag to create a webpage", title: "Web", icon: "globe-asia", dragFactory: doc.emptyWebpage as Doc, clickFactory: DocCast(doc.emptyWebpage)},
- { toolTip: "Tap or drag to create a comparison box", title: "Compare", icon: "columns", dragFactory: doc.emptyComparison as Doc, clickFactory: DocCast(doc.emptyComparison)},
- { toolTip: "Tap or drag to create a diagram", title: "Diagram", icon: "tree", dragFactory: doc.emptyDiagram as Doc, clickFactory: DocCast(doc.emptyDiagram)},
- { toolTip: "Tap or drag to create an audio recorder", title: "Audio", icon: "microphone", dragFactory: doc.emptyAudio as Doc, clickFactory: DocCast(doc.emptyAudio), openFactoryLocation: OpenWhere.overlay},
- { toolTip: "Tap or drag to create a map", title: "Map", icon: "map-marker-alt", dragFactory: doc.emptyMap as Doc, clickFactory: DocCast(doc.emptyMap)},
- { toolTip: "Tap or drag to create a chat assistant", title: "Assistant Chat", icon: "book",dragFactory: doc.emptyChat as Doc, clickFactory: DocCast(doc.emptyChat)},
- { toolTip: "Tap or drag to create a screen grabber", title: "Grab", icon: "photo-video", dragFactory: doc.emptyScreengrab as Doc, clickFactory: DocCast(doc.emptyScreengrab), openFactoryLocation: OpenWhere.overlay, funcs: { hidden: "IsNoviceMode()"}},
- { toolTip: "Tap or drag to create a WebCam recorder", title: "WebCam", icon: "photo-video", dragFactory: doc.emptyWebCam as Doc, clickFactory: DocCast(doc.emptyWebCam), openFactoryLocation: OpenWhere.overlay, funcs: { hidden: "IsNoviceMode()"}},
- { toolTip: "Tap or drag to create a button", title: "Button", icon: "circle", dragFactory: doc.emptyButton as Doc, clickFactory: DocCast(doc.emptyButton)},
- { toolTip: "Tap or drag to create a scripting box", title: "Script", icon: "terminal", dragFactory: doc.emptyScript as Doc, clickFactory: DocCast(doc.emptyScript), funcs: { hidden: "IsNoviceMode()"}},
- { toolTip: "Tap or drag to create a data viz node", title: "DataViz", icon: "chart-bar", dragFactory: doc.emptyDataViz as Doc, clickFactory: DocCast(doc.emptyDataViz)},
- { toolTip: "Tap or drag to create a journal entry", title: "Journal", icon: "book", dragFactory: doc.emptyDailyJournal as Doc,clickFactory:DocCast(doc.emptyDataJournal), },
- { toolTip: "Tap or drag to create a bullet slide", title: "PPT Slide", icon: "person-chalkboard", dragFactory: doc.emptySlide as Doc, clickFactory: DocCast(doc.emptySlide), openFactoryLocation: OpenWhere.overlay,funcs: { hidden: "IsNoviceMode()"}},
- { toolTip: "Tap or drag to create a view slide", title: "View Slide", icon: "address-card", dragFactory: doc.emptyViewSlide as Doc, clickFactory: DocCast(doc.emptyViewSlide), openFactoryLocation: OpenWhere.overlay,funcs: { hidden: "IsNoviceMode()"}},
- { toolTip: "Tap or drag to create a data note", title: "DataNote", icon: "window-maximize", dragFactory: doc.emptyHeader as Doc, clickFactory: DocCast(doc.emptyHeader), openFactoryAsDelegate: true, funcs: { hidden: "IsNoviceMode()"} },
- { toolTip: "Toggle a Calculator REPL", title: "replviewer", icon: "calculator", clickFactory: '<ScriptingRepl />' as unknown as Doc, openFactoryLocation: OpenWhere.overlay}, // hack: clickFactory is not a Doc but will get interpreted as a custom UI by the openDoc() onClick script
+ { toolTip: "Tap or drag to create a note", title: "Note", icon: "sticky-note", dragFactory: doc.emptyNote as Doc, clickFactory: DocCast(doc.emptyNote)},
+ { toolTip: "Tap or drag to create a flashcard", title: "Flashcard", icon: "id-card", dragFactory: doc.emptyFlashcard as Doc, clickFactory: DocCast(doc.emptyFlashcard)},
+ { toolTip: "Tap or drag to create an equation", title: "Math", icon: "calculator", dragFactory: doc.emptyEquation as Doc, clickFactory: DocCast(doc.emptyEquation)},
+ { toolTip: "Tap or drag to create a mermaid node", title: "Mermaids", icon: "rocket", dragFactory: doc.emptyMermaids as Doc, clickFactory: DocCast(doc.emptyMermaids)},
+ { toolTip: "Tap or drag to create a plotly node", title: "Plotly", icon: "rocket", dragFactory: doc.emptyPlotly as Doc, clickFactory: DocCast(doc.emptyMermaids)},
+ { toolTip: "Tap or drag to create a note board", title: "Notes", icon: "book", dragFactory: doc.emptyNoteboard as Doc, clickFactory: DocCast(doc.emptyNoteboard)},
+ { toolTip: "Tap or drag to create an image", title: "Image", icon: "image", dragFactory: doc.emptyImage as Doc, clickFactory: DocCast(doc.emptyImage)},
+ { toolTip: "Tap or drag to create a collection", title: "Col", icon: "folder", dragFactory: doc.emptyCollection as Doc, clickFactory: DocCast(doc.emptyTab)},
+ { toolTip: "Tap or drag to create a webpage", title: "Web", icon: "globe-asia", dragFactory: doc.emptyWebpage as Doc, clickFactory: DocCast(doc.emptyWebpage)},
+ { toolTip: "Tap or drag to create a comparison box", title: "Compare", icon: "columns", dragFactory: doc.emptyComparison as Doc, clickFactory: DocCast(doc.emptyComparison)},
+ { toolTip: "Tap or drag to create a diagram", title: "Diagram", icon: "tree", dragFactory: doc.emptyDiagram as Doc, clickFactory: DocCast(doc.emptyDiagram)},
+ { toolTip: "Tap or drag to create an audio recorder", title: "Audio", icon: "microphone", dragFactory: doc.emptyAudio as Doc, clickFactory: DocCast(doc.emptyAudio), openFactoryLocation: OpenWhere.overlay},
+ { toolTip: "Tap or drag to create a map", title: "Map", icon: "map-marker-alt", dragFactory: doc.emptyMap as Doc, clickFactory: DocCast(doc.emptyMap)},
+ { toolTip: "Tap or drag to create a chat assistant", title: "Chat Assist", icon: "book", dragFactory: doc.emptyChat as Doc, clickFactory: DocCast(doc.emptyChat)},
+ { toolTip: "Tap or drag to create a screen grabber", title: "Grab", icon: "photo-video", dragFactory: doc.emptyScreengrab as Doc, clickFactory: DocCast(doc.emptyScreengrab), openFactoryLocation: OpenWhere.overlay, funcs: { hidden: "IsNoviceMode()"}},
+ { toolTip: "Tap or drag to create a WebCam recorder", title: "WebCam", icon: "photo-video", dragFactory: doc.emptyWebCam as Doc, clickFactory: DocCast(doc.emptyWebCam), openFactoryLocation: OpenWhere.overlay, funcs: { hidden: "IsNoviceMode()"}},
+ { toolTip: "Tap or drag to create a button", title: "Button", icon: "circle", dragFactory: doc.emptyButton as Doc, clickFactory: DocCast(doc.emptyButton)},
+ { toolTip: "Tap or drag to create a scripting box", title: "Script", icon: "terminal", dragFactory: doc.emptyScript as Doc, clickFactory: DocCast(doc.emptyScript), funcs: { hidden: "IsNoviceMode()"}},
+ { toolTip: "Tap or drag to create a data viz node", title: "DataViz", icon: "chart-bar", dragFactory: doc.emptyDataViz as Doc, clickFactory: DocCast(doc.emptyDataViz)},
+ { toolTip: "Tap or drag to create a journal entry", title: "Journal", icon: "book", dragFactory:doc.emptyDailyJournal as Doc,clickFactory: DocCast(doc.emptyDataJournal), },
+ { toolTip: "Tap or drag to create a bullet slide", title: "PPT Slide", icon:"person-chalkboard",dragFactory: doc.emptySlide as Doc, clickFactory: DocCast(doc.emptySlide), openFactoryLocation: OpenWhere.overlay, funcs: { hidden: "IsNoviceMode()"}},
+ { toolTip: "Tap or drag to create a view slide", title: "View Slide", icon: "address-card", dragFactory: doc.emptyViewSlide as Doc, clickFactory: DocCast(doc.emptyViewSlide), openFactoryLocation: OpenWhere.overlay, funcs: { hidden: "IsNoviceMode()"}},
+ { toolTip: "Tap or drag to create a data note", title: "MetaNote", icon: "window-maximize", dragFactory: doc.emptyMetaNote as Doc, clickFactory: DocCast(doc.emptyMetaNote), openFactoryAsDelegate: true, funcs: { hidden: "IsNoviceMode()"} },
+ { toolTip: "Toggle a Calculator REPL", title: "replviewer", icon: "calculator", clickFactory: '<ScriptingRepl />' as unknown as Doc, openFactoryLocation: OpenWhere.overlay}, // hack: clickFactory is not a Doc but will get interpreted as a custom UI by the openDoc() onClick script
].map(tuple => (
{ openFactoryLocation: OpenWhere.addRight,
scripts: { onClick: 'openDoc(copyDragFactory(this.clickFactory,this.openFactoryAsDelegate), this.openFactoryLocation)',
onDragStart: '{ return copyDragFactory(this.dragFactory,this.openFactoryAsDelegate); }'},
funcs: tuple.funcs,
- ...tuple, }))
+ ...tuple, }));
}
/// Initalizes the "creator" buttons for the sidebar-- eg. the default set of draggable document creation tools
@@ -487,7 +493,7 @@ pie title Minerals in my tap water
{ title: "Tools", toolTip: "Tools", target: this.setupToolsBtnPanel(doc, "myTools"), icon: "wrench", },
{ title: "Imports", toolTip: "Imports ⌘I", target: this.setupImportSidebar(doc, "myImports"), icon: "upload", },
{ title: "Closed", toolTip: "Recently Closed", target: this.setupRecentlyClosed(doc, "myRecentlyClosed"), icon: "archive", hidden: true }, // this doc is hidden from the Sidebar, but it's still being used in MyFilesystem which ignores the hidden field
- { title: "Shared", toolTip: "Shared Docs", target: Doc.MySharedDocs, icon: "users", funcs: {badgeValue: badgeValue}},
+ { title: "Shared", toolTip: "Shared Docs", target: Doc.MySharedDocs??Doc.UserDoc(), icon: "users", funcs: {badgeValue: badgeValue}},
{ title: "Trails", toolTip: "Trails ⌘R", target: Doc.UserDoc(), icon: "pres-trail", funcs: {target: getActiveDashTrails}},
{ title: "Image Grouper", toolTip: "Image Grouper", target: this.setupImageGrouper(doc, "myImageGrouper"), icon: "folder-open", hidden: false },
{ title: "Faces", toolTip: "Unique Faces", target: this.setupFaceCollection(doc, "myFaceCollection"), icon: "face-smile", hidden: false },
@@ -548,7 +554,6 @@ pie title Minerals in my tap water
const creatorBtns = CurrentUserUtils.setupCreatorButtons(doc, allTools?.length ? allTools[0]:undefined);
const userTools = allTools && allTools?.length > 1 ? allTools[1]:undefined;
const userBtns = CurrentUserUtils.setupUserDocumentCreatorButtons(doc, userTools);
- // doc.myUserBtns = new PrefetchProxy(userBtns);
const reqdToolOps:DocumentOptions = {
title: "My Tools", isSystem: true, ignoreClick: true, layout_boxShadow: "0 0",
layout_explainer: "This is a palette of documents that can be created.", _layout_dontCenter: "y",
@@ -972,7 +977,10 @@ pie title Minerals in my tap water
};
DocUtils.AssignDocField(doc, "mySharedDocs", opts => Docs.Create.TreeDocument([], opts, sharingDocumentId + "layout", sharingDocumentId), sharedDocOpts, undefined, sharedScripts);
- if (!Doc.GetProto(DocCast(doc.mySharedDocs)).data_dashboards) Doc.GetProto(DocCast(doc.mySharedDocs)).data_dashboards = new List<Doc>();
+ const sharedDocs = DocCast(doc.mySharedDocs);
+ if (sharedDocs) {
+ if (!Doc.GetProto(sharedDocs).data_dashboards) Doc.GetProto(sharedDocs).data_dashboards = new List<Doc>();
+ }
}
/// Import option on the left side button panel
@@ -997,9 +1005,9 @@ pie title Minerals in my tap water
static updateUserDocument(docIn: Doc, sharingDocumentId: string, linkDatabaseId: string) {
const doc = docIn;
DocUtils.AssignDocField(doc, "globalGroupDatabase", () => Docs.Prototypes.MainGroupDocument(), {});
- reaction(() => DateCast(DocCast(doc.globalGroupDatabase).data_modificationDate),
+ reaction(() => DateCast(DocCast(doc.globalGroupDatabase)?.data_modificationDate),
async () => {
- const groups = await DocListCastAsync(DocCast(doc.globalGroupDatabase).data);
+ const groups = await DocListCastAsync(DocCast(doc.globalGroupDatabase)?.data);
const mygroups = groups?.filter(group => JSON.parse(StrCast(group.members)).includes(ClientUtils.CurrentUserEmail())) || [];
SetCachedGroups(["Guest", ...(mygroups?.map(g => StrCast(g.title))??[])]);
}, { fireImmediately: true });
@@ -1055,11 +1063,13 @@ pie title Minerals in my tap water
SelectionManager.DeselectAll(); // this forces SelectionManager implementation to copy over to DocumentView's API. This also triggers the LinkManager to be created
- Doc.AddDocToList(Doc.MyFilesystem, undefined, Doc.MyDashboards);
- Doc.AddDocToList(Doc.MyFilesystem, undefined, Doc.MySharedDocs);
- Doc.AddDocToList(Doc.MyFilesystem, undefined, Doc.MyRecentlyClosed);
+ if (Doc.MyFilesystem) {
+ Doc.MyDashboards && Doc.AddDocToList(Doc.MyFilesystem, undefined, Doc.MyDashboards);
+ Doc.MyDashboards && Doc.AddDocToList(Doc.MyFilesystem, undefined, Doc.MyDashboards);
+ Doc.MyRecentlyClosed && Doc.AddDocToList(Doc.MyFilesystem, undefined, Doc.MyRecentlyClosed);
+ }
- Doc.GetProto(DocCast(Doc.UserDoc().emptyWebpage)).data = new WebField("https://www.wikipedia.org");
+ DocCast(Doc.UserDoc().emptyWebpage) && (Doc.GetProto(DocCast(Doc.UserDoc().emptyWebpage)!).data = new WebField("https://www.wikipedia.org"));
DocServer.CacheNeedsUpdate() && setTimeout(UPDATE_SERVER_CACHE, 2500);
setInterval(UPDATE_SERVER_CACHE, 120000);
@@ -1139,7 +1149,7 @@ pie title Minerals in my tap water
const file = input.files?.[0];
if (file?.type === 'application/zip' || file?.type === 'application/x-zip-compressed') {
const doc = await Doc.importDocument(file);
- const list = Cast(Doc.MyImports.data, listSpec(Doc), null);
+ const list = Cast(Doc.MyImports?.data, listSpec(Doc), null);
doc instanceof Doc && list?.splice(0, 0, doc);
} else if (input.files && input.files.length !== 0) {
const disposer = OverlayView.ShowSpinner();
@@ -1147,7 +1157,7 @@ pie title Minerals in my tap water
if (results.length !== input.files?.length) {
alert("Error uploading files - possibly due to unsupported file types");
}
- const list = Cast(Doc.MyImports.data, listSpec(Doc), null);
+ const list = Cast(Doc.MyImports?.data, listSpec(Doc), null);
list?.splice(0, 0, ...results);
disposer();
} else {
diff --git a/src/client/util/DictationManager.ts b/src/client/util/DictationManager.ts
index 2eef3da0e..dcef4a4fe 100644
--- a/src/client/util/DictationManager.ts
+++ b/src/client/util/DictationManager.ts
@@ -364,7 +364,7 @@ export namespace DictationManager {
case 'nested collection':return Docs.Create.FreeformDocument([], {});
} // prettier-ignore
})();
- created && Doc.AddDocToList(target.dataDoc, Doc.LayoutFieldKey(target.Document), created);
+ created && Doc.AddDocToList(target.dataDoc, Doc.LayoutDataKey(target.Document), created);
}
}
},
diff --git a/src/client/util/DocumentManager.ts b/src/client/util/DocumentManager.ts
index 5ce005811..ad57c2a62 100644
--- a/src/client/util/DocumentManager.ts
+++ b/src/client/util/DocumentManager.ts
@@ -183,7 +183,7 @@ export class DocumentManager {
static _howl: Howl;
static playAudioAnno(doc: Doc) {
- const anno = Cast(doc[Doc.LayoutFieldKey(doc) + '_audioAnnotations'], listSpec(AudioField), null)?.lastElement();
+ const anno = Cast(doc[Doc.LayoutDataKey(doc) + '_audioAnnotations'], listSpec(AudioField), null)?.lastElement();
if (anno) {
this._howl?.stop();
if (anno instanceof AudioField) {
diff --git a/src/client/util/DragManager.ts b/src/client/util/DragManager.ts
index e2e4c0fe4..a66e6998b 100644
--- a/src/client/util/DragManager.ts
+++ b/src/client/util/DragManager.ts
@@ -234,29 +234,27 @@ export namespace DragManager {
dropDoc instanceof Doc && CreateLinkToActiveAudio(() => dropDoc);
return dropDoc;
};
- const finishDrag = async (e: DragCompleteEvent) => {
+ const finishDrag = (e: DragCompleteEvent) => {
const { docDragData } = e;
setTimeout(() => dragData.dragEnding?.());
onDropCompleted?.(e); // glr: optional additional function to be called - in this case with presentation trails
if (docDragData && !docDragData.droppedDocuments.length) {
docDragData.dropAction = dragData.userDropAction || dragData.dropAction;
- docDragData.droppedDocuments = (
- await Promise.all(
- dragData.draggedDocuments.map(async d =>
- !dragData.isDocDecorationMove && !dragData.userDropAction && ScriptCast(d.onDragStart)
- ? addAudioTag(ScriptCast(d.onDragStart).script.run({ this: d }).result as Doc)
- : docDragData.dropAction === dropActionType.embed
- ? Doc.BestEmbedding(d)
- : docDragData.dropAction === dropActionType.add
- ? d
- : docDragData.dropAction === dropActionType.proto
- ? d[DocData]
- : docDragData.dropAction === dropActionType.copy
- ? (await Doc.MakeClone(d)).clone
- : d
- )
+ docDragData.droppedDocuments = dragData.draggedDocuments
+ .map(d =>
+ !dragData.isDocDecorationMove && !dragData.userDropAction && ScriptCast(d.onDragStart)
+ ? addAudioTag(ScriptCast(d.onDragStart)!.script.run({ this: d }).result as Doc)
+ : docDragData.dropAction === dropActionType.embed
+ ? Doc.BestEmbedding(d)
+ : docDragData.dropAction === dropActionType.add
+ ? d
+ : docDragData.dropAction === dropActionType.proto
+ ? d[DocData]
+ : docDragData.dropAction === dropActionType.copy
+ ? Doc.MakeClone(d).clone
+ : d
)
- ).filter(d => d);
+ .filter(d => d);
![dropActionType.same, dropActionType.proto].includes(StrCast(docDragData.dropAction) as dropActionType) &&
docDragData.droppedDocuments
// .filter(drop => !drop.dragOnlyWithinContainer || ['embed', 'copy'].includes(docDragData.dropAction as any))
@@ -364,7 +362,7 @@ export namespace DragManager {
};
}
- async function dispatchDrag(target: Element, e: PointerEvent, complete: DragCompleteEvent, pos: { x: number; y: number }, finishDrag?: (e: DragCompleteEvent) => void, options?: DragOptions, endDrag?: () => void) {
+ function dispatchDrag(target: Element, e: PointerEvent, complete: DragCompleteEvent, pos: { x: number; y: number }, finishDrag?: (e: DragCompleteEvent) => void, options?: DragOptions, endDrag?: () => void) {
const dropArgs = {
cancelable: true, // allows preventDefault() to be called to cancel the drop
bubbles: true,
@@ -380,7 +378,7 @@ export namespace DragManager {
};
target.dispatchEvent(new CustomEvent<DropEvent>('dashPreDrop', dropArgs));
UndoManager.StartTempBatch(); // run drag/drop in temp batch in case drop is not allowed (so we can undo any intermediate changes)
- await finishDrag?.(complete);
+ finishDrag?.(complete);
UndoManager.EndTempBatch(target.dispatchEvent(new CustomEvent<DropEvent>('dashOnDrop', dropArgs))); // event return val is true unless the event preventDefault() is called
options?.dragComplete?.(complete);
endDrag?.();
@@ -566,11 +564,11 @@ export namespace DragManager {
const targClassName = e.target instanceof HTMLElement && typeof e.target.className === 'string' ? e.target.className : '';
if (['lm_tab', 'lm_title_wrap', 'lm_tabs', 'lm_header'].includes(targClassName) && docDragData.draggedDocuments.length === 1) {
if (!startWindowDragTimer) {
- startWindowDragTimer = setTimeout(async () => {
+ startWindowDragTimer = setTimeout(() => {
startWindowDragTimer = undefined;
docDragData.dropAction = docDragData.userDropAction || dropActionType.same;
AbortDrag();
- await finishDrag?.(new DragCompleteEvent(true, docDragData));
+ finishDrag?.(new DragCompleteEvent(true, docDragData));
DragManager.StartWindowDrag?.(e, docDragData.droppedDocuments, aborted => {
if (!aborted && (docDragData?.dropAction === dropActionType.move || docDragData?.dropAction === dropActionType.same)) {
docDragData.removeDocument?.(docDragData?.draggedDocuments[0]);
diff --git a/src/client/util/DropConverter.ts b/src/client/util/DropConverter.ts
index 7d3f63448..b6b111930 100644
--- a/src/client/util/DropConverter.ts
+++ b/src/client/util/DropConverter.ts
@@ -3,7 +3,7 @@ import { DocData, DocLayout } from '../../fields/DocSymbols';
import { ObjectField } from '../../fields/ObjectField';
import { RichTextField } from '../../fields/RichTextField';
import { ComputedField, ScriptField } from '../../fields/ScriptField';
-import { StrCast } from '../../fields/Types';
+import { DocCast, StrCast } from '../../fields/Types';
import { ImageField } from '../../fields/URLField';
import { Docs, DocumentOptions } from '../documents/Documents';
import { DocumentType } from '../documents/DocumentTypes';
@@ -23,7 +23,7 @@ import { ScriptingGlobals } from './ScriptingGlobals';
*/
function makeTemplate(doc: Doc, first: boolean = true): boolean {
const layoutDoc = doc.layout instanceof Doc && doc.layout.isTemplateForField ? doc.layout : doc;
- if (layoutDoc.layout instanceof Doc) {
+ if (DocCast(layoutDoc.layout)) {
return true; // its already a template
}
const layout = StrCast(layoutDoc.layout).match(/fieldKey={'[^']*'}/)?.[0];
@@ -68,7 +68,7 @@ export function MakeTemplate(doc: Doc) {
* Makes a draggable button or image that will create a template doc Instance
*/
export function makeUserTemplateButtonOrImage(doc: Doc, image?: string) {
- const layoutDoc = doc; // doc.layout instanceof Doc && doc.layout.isTemplateForField ? doc.layout : doc;
+ const layoutDoc = doc;
if (layoutDoc.type !== DocumentType.FONTICON) {
!layoutDoc.isTemplateDoc && makeTemplate(layoutDoc);
}
diff --git a/src/client/util/Import & Export/ImageUtils.ts b/src/client/util/Import & Export/ImageUtils.ts
index 9c32ca25a..eae3460b3 100644
--- a/src/client/util/Import & Export/ImageUtils.ts
+++ b/src/client/util/Import & Export/ImageUtils.ts
@@ -15,7 +15,7 @@ export namespace ImageUtils {
export const AssignImgInfo = (document: Doc, data?: Upload.InspectionResults) => {
if (data) {
data.nativeWidth && (document._height = (NumCast(document._width) * data.nativeHeight) / data.nativeWidth);
- const field = '$' + Doc.LayoutFieldKey(document);
+ const field = '$' + Doc.LayoutDataKey(document);
document[`${field}_nativeWidth`] = data.nativeWidth;
document[`${field}_nativeHeight`] = data.nativeHeight;
document[`${field}_path`] = data.source;
diff --git a/src/client/util/LinkFollower.ts b/src/client/util/LinkFollower.ts
index 0e67dcfaa..6081c3fae 100644
--- a/src/client/util/LinkFollower.ts
+++ b/src/client/util/LinkFollower.ts
@@ -43,13 +43,13 @@ export class LinkFollower {
};
public static traverseLink(link: Opt<Doc>, sourceDoc: Doc, finished?: () => void, traverseBacklink?: boolean) {
- const getView = (doc: Doc) => DocumentView.getFirstDocumentView(DocCast(doc.layout_unrendered ? doc.annotationOn : doc));
- const isAnchor = (source: Doc, anchor: Doc) => Doc.AreProtosEqual(anchor, source) || Doc.AreProtosEqual(anchor.annotationOn as Doc, source);
+ const getView = (doc: Doc) => DocumentView.getFirstDocumentView(DocCast(doc.layout_unrendered ? doc.annotationOn : doc)!);
+ const isAnchor = (source?: Doc, anchor?: Doc) => Doc.AreProtosEqual(anchor, source) || Doc.AreProtosEqual(DocCast(anchor?.annotationOn), source);
const linkDocs = link ? [link] : Doc.Links(sourceDoc);
- const fwdLinks = linkDocs.filter(l => isAnchor(sourceDoc, l.link_anchor_1 as Doc)); // link docs where 'sourceDoc' is link_anchor_1
- const backLinks = linkDocs.filter(l => isAnchor(sourceDoc, l.link_anchor_2 as Doc)); // link docs where 'sourceDoc' is link_anchor_2
- const fwdLinkWithoutTargetView = fwdLinks.find(l => !getView(DocCast(l.link_anchor_2)));
- const backLinkWithoutTargetView = backLinks.find(l => !getView(DocCast(l.link_anchor_1)));
+ const fwdLinks = linkDocs.filter(l => isAnchor(sourceDoc, DocCast(l.link_anchor_1))); // link docs where 'sourceDoc' is link_anchor_1
+ const backLinks = linkDocs.filter(l => isAnchor(sourceDoc, DocCast(l.link_anchor_2))); // link docs where 'sourceDoc' is link_anchor_2
+ const fwdLinkWithoutTargetView = fwdLinks.find(l => !DocCast(l.link_anchor_2) || !getView(DocCast(l.link_anchor_2)!));
+ const backLinkWithoutTargetView = backLinks.find(l => !DocCast(l.link_anchor_1) || !getView(DocCast(l.link_anchor_1)!));
const linkWithoutTargetDoc = traverseBacklink === undefined ? (fwdLinkWithoutTargetView ?? backLinkWithoutTargetView) : traverseBacklink ? backLinkWithoutTargetView : fwdLinkWithoutTargetView;
const linkDocList = linkWithoutTargetDoc && !sourceDoc.followAllLinks ? [linkWithoutTargetDoc] : traverseBacklink === undefined ? fwdLinks.concat(backLinks) : traverseBacklink ? backLinks : fwdLinks;
const followLinks = sourceDoc.followLinkToggle || sourceDoc.followAllLinks ? linkDocList : linkDocList.slice(0, 1);
@@ -60,17 +60,17 @@ export class LinkFollower {
return false;
}
followLinks.forEach(async linkDoc => {
- const target = (
+ const target = DocCast(
sourceDoc === linkDoc.link_anchor_1
? linkDoc.link_anchor_2
: sourceDoc === linkDoc.link_anchor_2
? linkDoc.link_anchor_1
- : Doc.AreProtosEqual(sourceDoc, linkDoc.link_anchor_1 as Doc) || Doc.AreProtosEqual((linkDoc.link_anchor_1 as Doc).annotationOn as Doc, sourceDoc)
+ : Doc.AreProtosEqual(sourceDoc, DocCast(linkDoc.link_anchor_1)) || Doc.AreProtosEqual(DocCast(DocCast(linkDoc.link_anchor_1)?.annotationOn), sourceDoc)
? linkDoc.link_anchor_2
: linkDoc.link_anchor_1
- ) as Doc;
- const srcAnchor: Doc = Doc.getOppositeAnchor(linkDoc, target) ?? sourceDoc;
+ );
if (target) {
+ const srcAnchor = Doc.getOppositeAnchor(linkDoc, target) ?? sourceDoc;
const doFollow = (canToggle?: boolean) => {
const toggleTarget = canToggle && BoolCast(sourceDoc.followLinkToggle);
const options: FocusViewOptions = {
@@ -102,14 +102,16 @@ export class LinkFollower {
if (srcAnchor.followLinkLocation === OpenWhere.inParent) {
const sourceDocParent = DocCast(sourceDoc.embedContainer);
if (target.embedContainer instanceof Doc && target.embedContainer !== sourceDocParent) {
- Doc.RemoveDocFromList(target.embedContainer, Doc.LayoutFieldKey(target.embedContainer), target);
+ Doc.RemoveDocFromList(target.embedContainer, Doc.LayoutDataKey(target.embedContainer), target);
movedTarget = true;
}
- if (!DocListCast(sourceDocParent[Doc.LayoutFieldKey(sourceDocParent)]).includes(target)) {
- Doc.AddDocToList(sourceDocParent, Doc.LayoutFieldKey(sourceDocParent), target);
- movedTarget = true;
+ if (sourceDocParent) {
+ if (!DocListCast(sourceDocParent[Doc.LayoutDataKey(sourceDocParent)]).includes(target)) {
+ Doc.AddDocToList(sourceDocParent, Doc.LayoutDataKey(sourceDocParent), target);
+ movedTarget = true;
+ }
+ Doc.SetContainer(target, sourceDocParent);
}
- Doc.SetContainer(target, sourceDocParent);
}
const moveTo = [NumCast(sourceDoc.x) + NumCast(sourceDoc.followLinkXoffset), NumCast(sourceDoc.y) + NumCast(sourceDoc.followLinkYoffset)];
if (srcAnchor.followLinkXoffset !== undefined && moveTo[0] !== target.x) {
diff --git a/src/client/util/LinkManager.ts b/src/client/util/LinkManager.ts
index 3f98ab3c4..344e2e4c0 100644
--- a/src/client/util/LinkManager.ts
+++ b/src/client/util/LinkManager.ts
@@ -136,7 +136,7 @@ export class LinkManager {
true
);
FieldLoader.ServerLoadStatus.message = 'links';
- this.addLinkDB(Doc.LinkDBDoc());
+ Doc.LinkDBDoc() && this.addLinkDB(Doc.LinkDBDoc()!);
}
public createlink_relationshipLists = () => {
@@ -148,16 +148,21 @@ export class LinkManager {
public addLink(linkDoc: Doc, checkExists = false) {
Doc.AddDocToList(Doc.UserDoc(), 'links', linkDoc);
- if (!checkExists || !DocListCast(Doc.LinkDBDoc().data).includes(linkDoc)) {
- Doc.AddDocToList(Doc.LinkDBDoc(), 'data', linkDoc);
- // eslint-disable-next-line no-use-before-define
- setTimeout(UPDATE_SERVER_CACHE, 100);
+ if (Doc.LinkDBDoc()) {
+ if (!checkExists || !DocListCast(Doc.LinkDBDoc()!.data).includes(linkDoc)) {
+ Doc.AddDocToList(Doc.LinkDBDoc()!, 'data', linkDoc);
+ // eslint-disable-next-line no-use-before-define
+ setTimeout(UPDATE_SERVER_CACHE, 100);
+ }
}
}
public deleteLink(linkDoc: Doc) {
- const ret = Doc.RemoveDocFromList(Doc.LinkDBDoc(), 'data', linkDoc);
- linkDoc.$link_anchor_1 = linkDoc.$link_anchor_2 = undefined;
- return ret;
+ if (Doc.LinkDBDoc()) {
+ const ret = Doc.RemoveDocFromList(Doc.LinkDBDoc()!, 'data', linkDoc);
+ linkDoc.$link_anchor_1 = linkDoc.$link_anchor_2 = undefined;
+ return ret;
+ }
+ return false;
}
public deleteAllLinksOnAnchor(anchor: Doc) {
LinkManager.Instance.relatedLinker(anchor).forEach(LinkManager.Instance.deleteLink);
@@ -178,8 +183,8 @@ export class LinkManager {
}
const dirLinks = Array.from(anchor[DocData][DirectLinks]).filter(l => Doc.GetProto(anchor) === anchor[DocData] || ['1', '2'].includes(LinkManager.anchorIndex(l, anchor) as '0' | '1' | '2'));
- const anchorRoot = DocCast(anchor.rootDocument, anchor); // template Doc fields store annotations on the topmost root of a template (not on themselves since the template layout items are only for layout)
- const annos = DocListCast(anchorRoot[Doc.LayoutFieldKey(anchor) + '_annotations']);
+ const anchorRoot = DocCast(anchor.rootDocument, anchor)!; // template Doc fields store annotations on the topmost root of a template (not on themselves since the template layout items are only for layout)
+ const annos = DocListCast(anchorRoot[Doc.LayoutDataKey(anchor) + '_annotations']);
return Array.from(
annos.reduce((set, anno) => {
if (!processed.includes(anno)) {
@@ -242,11 +247,13 @@ export function UPDATE_SERVER_CACHE() {
.filter(doc => doc instanceof Doc)
.map(doc => doc as Doc);
const references = new Set<Doc>(prototypes);
+ DocCast(Doc.UserDoc().myLinkDatabase) && references.add(DocCast(Doc.UserDoc().myLinkDatabase)!); // prevent crawling through link database here -- see below
Doc.FindReferences(Doc.UserDoc(), references, undefined);
- DocListCast(DocCast(Doc.UserDoc().myLinkDatabase).data).forEach(link => {
- if (!references.has(DocCast(link.link_anchor_1)) && !references.has(DocCast(link.link_anchor_2))) {
- Doc.RemoveDocFromList(DocCast(Doc.UserDoc().myLinkDatabase), 'data', link);
- Doc.AddDocToList(Doc.MyRecentlyClosed, undefined, link);
+
+ DocListCast(DocCast(Doc.UserDoc().myLinkDatabase)?.data).forEach(link => {
+ if (DocCast(link.link_anchor_1) && !references.has(DocCast(link.link_anchor_1)!) && DocCast(link.link_anchor_2) && !references.has(DocCast(link.link_anchor_2)!)) {
+ DocCast(Doc.UserDoc().myLinkDatabase) && Doc.RemoveDocFromList(DocCast(Doc.UserDoc().myLinkDatabase)!, 'data', link);
+ Doc.MyRecentlyClosed && Doc.AddDocToList(Doc.MyRecentlyClosed, undefined, link);
}
});
LinkManager.Instance.userLinkDBs.forEach(linkDb => Doc.FindReferences(linkDb, references, undefined));
@@ -257,10 +264,10 @@ export function UPDATE_SERVER_CACHE() {
cacheDocumentIds = newCacheUpdate;
// print out cached docs
- //Doc.MyDockedBtns.linearView_IsOpen && console.log('Set cached docs = ');
- // const isFiltered = filtered.filter(doc => !Doc.IsSystem(doc));
- // const strings = isFiltered.map(doc => StrCast(doc.title) + ' ' + (Doc.IsDataProto(doc) ? '(data)' : '(embedding)'));
- //Doc.MyDockedBtns.linearView_IsOpen && strings.sort().forEach((str, i) => console.log(i.toString() + ' ' + str));
+ Doc.MyDockedBtns?.linearView_IsOpen && console.log('Set cached docs = ');
+ const isFiltered = filtered.filter(doc => !Doc.IsSystem(doc));
+ const strings = isFiltered.map(doc => StrCast(doc.title) + ' ' + (Doc.IsDataProto(doc) ? '(data)' : '(embedding)'));
+ Doc.MyDockedBtns?.linearView_IsOpen && strings.sort().forEach((str, i) => console.log(i.toString() + ' ' + str));
rp.post(ClientUtils.prepend('/setCacheDocumentIds'), {
body: {
diff --git a/src/client/util/SearchUtil.ts b/src/client/util/SearchUtil.ts
index 733eae5f4..e4adcaa7e 100644
--- a/src/client/util/SearchUtil.ts
+++ b/src/client/util/SearchUtil.ts
@@ -9,7 +9,7 @@ export namespace SearchUtil {
export type HighlightingResult = { [id: string]: { [key: string]: string[] } };
export function SearchCollection(collectionDoc: Opt<Doc>, queryIn: string, matchKeyNames: boolean, onlyKeys?: string[]) {
- const blockedTypes = [DocumentType.PRESELEMENT, DocumentType.CONFIG, DocumentType.KVP, DocumentType.FONTICON, DocumentType.BUTTON, DocumentType.SCRIPTING];
+ const blockedTypes = [DocumentType.PRESSLIDE, DocumentType.CONFIG, DocumentType.KVP, DocumentType.FONTICON, DocumentType.BUTTON, DocumentType.SCRIPTING];
const blockedKeys = matchKeyNames
? []
: Object.entries(DocOptions)
@@ -21,7 +21,7 @@ export namespace SearchUtil {
const results = new ObservableMap<Doc, string[]>();
if (collectionDoc) {
- const docs = DocListCast(collectionDoc[Doc.LayoutFieldKey(collectionDoc)]);
+ const docs = DocListCast(collectionDoc[Doc.LayoutDataKey(collectionDoc)]);
// eslint-disable-next-line @typescript-eslint/ban-types
const docIDs: String[] = [];
SearchUtil.foreachRecursiveDoc(docs, (depth: number, doc: Doc) => {
@@ -77,7 +77,7 @@ export namespace SearchUtil {
// eslint-disable-next-line no-loop-func
docs.filter(d => d && !visited.includes(d)).forEach(d => {
visited.push(d);
- const fieldKey = Doc.LayoutFieldKey(d);
+ const fieldKey = Doc.LayoutDataKey(d);
const annos = !Field.toString(Doc.LayoutField(d) as FieldType).includes('CollectionView');
const data = d[annos ? fieldKey + '_annotations' : fieldKey];
data && newarray.push(...DocListCast(data));
diff --git a/src/client/util/SettingsManager.tsx b/src/client/util/SettingsManager.tsx
index 89e3686b2..9e79fd870 100644
--- a/src/client/util/SettingsManager.tsx
+++ b/src/client/util/SettingsManager.tsx
@@ -30,7 +30,7 @@ export enum ColorScheme {
export class SettingsManager extends React.Component<object> {
// eslint-disable-next-line no-use-before-define
public static Instance: SettingsManager;
- static _settingsStyle = addStyleSheet();
+ static _settingsStyle = addStyleSheet().sheet;
@observable private _passwordResultText = '';
@observable private _playgroundMode = false;
@@ -578,7 +578,7 @@ export class SettingsManager extends React.Component<object> {
<div className="settings-username" style={{ color: SettingsManager.userBackgroundColor }}>
{ClientUtils.CurrentUserEmail()}
</div>
- <Button text={Doc.GuestDashboard ? 'Exit' : 'Log Out'} type={Type.TERT} color={SettingsManager.userVariantColor} onClick={() => window.location.assign(ClientUtils.prepend('/logout'))} />
+ <Button text={Doc.GuestDashboard ? 'Exit' : 'Log Out'} type={Type.TERT} color={SettingsManager.userVariantColor} background={SettingsManager.userColor} onClick={() => window.location.assign(ClientUtils.prepend('/logout'))} />
</div>
</div>
diff --git a/src/client/util/request-image-size.ts b/src/client/util/request-image-size.ts
index 32ab23618..798390c7d 100644
--- a/src/client/util/request-image-size.ts
+++ b/src/client/util/request-image-size.ts
@@ -33,27 +33,25 @@ export function requestImageSize(url: string): Promise<ISizeCalculationResult> {
res.on('data', chunk => {
buffer = Buffer.concat([buffer, chunk]);
- });
-
- res.on('error', reject);
-
- res.on('end', () => {
- try {
- size = imageSize(buffer);
- if (size) {
- resolve(size);
- req.abort();
+ })
+ .on('error', reject)
+ .on('end', () => {
+ try {
+ size = imageSize(buffer);
+ if (size) {
+ resolve(size);
+ req.abort();
+ }
+ } catch (err) {
+ /* empty */
+ console.log('Error: ', err);
+ }
+ if (!size) {
+ reject(new Error('Image has no size'));
+ return;
}
- } catch (err) {
- /* empty */
- console.log('Error: ', err);
- }
- if (!size) {
- reject(new Error('Image has no size'));
- return;
- }
- resolve(size);
- });
+ resolve(size);
+ });
});
req.on('error', reject);
diff --git a/src/client/views/DocComponent.tsx b/src/client/views/DocComponent.tsx
index 45c80c6f7..1ecd82dbc 100644
--- a/src/client/views/DocComponent.tsx
+++ b/src/client/views/DocComponent.tsx
@@ -48,7 +48,7 @@ export function DocComponent<P extends DocComponentProps>() {
* This Doc inherits from the dataDoc, and may or may not inherit (or be) the layoutDoc.
*/
get rootDoc() {
- return DocCast(this.Document.rootDocument, this.Document);
+ return DocCast(this.Document.rootDocument, this.Document)!;
}
/**
@@ -64,7 +64,7 @@ export function DocComponent<P extends DocComponentProps>() {
* This may or may not inherit from the data doc.
*/
@computed get layoutDoc() {
- return this._props.LayoutTemplateString ? this.Document : Doc.Layout(this.Document, this._props.LayoutTemplate?.());
+ return this._props.LayoutTemplateString ? this.Document : Doc.LayoutDoc(this.Document, this._props.LayoutTemplate?.());
}
/**
@@ -115,7 +115,7 @@ export function ViewBoxBaseComponent<P extends FieldViewProps>() {
* consider: Document, layoutDoc, dataDoc
*/
get rootDoc() {
- return DocCast(this.Document.rootDocument, this.Document);
+ return DocCast(this.Document.rootDocument, this.Document)!;
}
/**
* This is the document being rendered by the React component. In the
@@ -189,7 +189,7 @@ export function ViewBoxAnnotatableComponent<P extends FieldViewProps>() {
* other Doc options (Document, layoutDoc, dataDoc)
*/
@computed get rootDoc() {
- return DocCast(this.Document.rootDocument, this.Document);
+ return DocCast(this.Document.rootDocument, this.Document)!;
}
/**
* This is the document being rendered. It may be a template so it may or may no inherit from the data doc.
diff --git a/src/client/views/DocumentButtonBar.tsx b/src/client/views/DocumentButtonBar.tsx
index 9a57a5e6c..8a850467a 100644
--- a/src/client/views/DocumentButtonBar.tsx
+++ b/src/client/views/DocumentButtonBar.tsx
@@ -303,7 +303,7 @@ export class DocumentButtonBar extends ObservableReactComponent<{ views: () => (
DocumentView.Selected().forEach(dv => {
dv.layoutDoc._layout_showTags = !showing;
if (e.shiftKey)
- DocListCast(dv.Document[Doc.LayoutFieldKey(dv.Document) + '_annotations']).forEach(doc => {
+ DocListCast(dv.Document[Doc.LayoutDataKey(dv.Document) + '_annotations']).forEach(doc => {
if (doc.face) doc.hidden = showing;
});
});
@@ -479,13 +479,13 @@ export class DocumentButtonBar extends ObservableReactComponent<{ views: () => (
const doc = rootView?.Document;
if (doc) {
const anchor = rootView.ComponentView?.getAnchor?.(true) ?? doc;
- const trail = DocCast(anchor.presentationTrail) ?? Doc.MakeCopy(DocCast(Doc.UserDoc().emptyTrail), true);
+ const trail = DocCast(anchor.presentationTrail) ?? (DocCast(Doc.UserDoc().emptyTrail) ? Doc.MakeCopy(DocCast(Doc.UserDoc().emptyTrail)!, true) : undefined);
if (trail !== anchor.presentationTrail) {
- DocUtils.MakeLink(anchor, trail, { link_relationship: 'link trail' });
+ trail && DocUtils.MakeLink(anchor, trail, { link_relationship: 'link trail' });
anchor.presentationTrail = trail;
}
Doc.ActivePresentation = trail;
- this._props.views().lastElement()?._props.addDocTab(trail, OpenWhere.replaceRight);
+ trail && this._props.views().lastElement()?._props.addDocTab(trail, OpenWhere.replaceRight);
}
e.stopPropagation();
};
@@ -512,7 +512,7 @@ export class DocumentButtonBar extends ObservableReactComponent<{ views: () => (
<div className="documentButtonBar-button">{this.pinButton}</div>
<div className="documentButtonBar-button">{this.recordButton}</div>
<div className="documentButtonBar-button">{this.calendarButton}</div>
- <div className="documentButtonBar-button">{this.aiEditorButton}</div>
+ {this.view0?.HasAIEditor ? <div className="documentButtonBar-button">{this.aiEditorButton}</div> : null}
<div className="documentButtonBar-button">{this.keywordButton}</div>
{!Doc.UserDoc().documentLinksButton_fullMenu ? null : <div className="documentButtonBar-button">{this.shareButton}</div>}
<div className="documentButtonBar-button">{this.menuButton}</div>
diff --git a/src/client/views/DocumentDecorations.tsx b/src/client/views/DocumentDecorations.tsx
index 0756d3d9e..120467e8a 100644
--- a/src/client/views/DocumentDecorations.tsx
+++ b/src/client/views/DocumentDecorations.tsx
@@ -551,7 +551,7 @@ export class DocumentDecorations extends ObservableReactComponent<DocumentDecora
scale.x === 1 ? (scale.x = scale.y) : (scale.y = scale.x);
}
- if (['right', 'left'].includes(opts.dragHdl) && modifyNativeDim && Doc.NativeWidth(doc)) {
+ if (['right', 'left', 'bottomRight'].includes(opts.dragHdl) && modifyNativeDim && Doc.NativeWidth(doc)) {
const setData = Doc.NativeWidth(doc[DocData]) === doc.nativeWidth;
doc.nativeWidth = scale.x * Doc.NativeWidth(doc);
if (setData) Doc.SetNativeWidth(doc[DocData], NumCast(doc.nativeWidth));
@@ -559,7 +559,7 @@ export class DocumentDecorations extends ObservableReactComponent<DocumentDecora
doc._nativeHeight = (initHeight / initWidth) * nwidth; // initializes the nativeHeight for a PDF
}
}
- if (['bottom', 'top'].includes(opts.dragHdl) && modifyNativeDim && Doc.NativeHeight(doc)) {
+ if (['bottom', 'top', 'bottomRight'].includes(opts.dragHdl) && modifyNativeDim && Doc.NativeHeight(doc)) {
const setData = Doc.NativeHeight(doc[DocData]) === doc.nativeHeight && (!doc.layout_reflowVertical || opts.ctrlKey);
doc._nativeHeight = scale.y * Doc.NativeHeight(doc);
if (setData) Doc.SetNativeHeight(doc[DocData], NumCast(doc._nativeHeight));
diff --git a/src/client/views/FilterPanel.tsx b/src/client/views/FilterPanel.tsx
index c3b3f9d0c..848a77004 100644
--- a/src/client/views/FilterPanel.tsx
+++ b/src/client/views/FilterPanel.tsx
@@ -182,7 +182,7 @@ export class FilterPanel extends ObservableReactComponent<filterProps> {
return targetView?.ComponentView?.annotationKey || (targetView?.ComponentView?.fieldKey ?? 'data');
}
@computed get targetDocChildren() {
- return [...DocListCast(this.Document?.[this.targetDocChildKey] || Doc.ActiveDashboard?.data), ...DocListCast(this.Document[Doc.LayoutFieldKey(this.Document) + '_sidebar'])];
+ return [...DocListCast(this.Document?.[this.targetDocChildKey] || Doc.ActiveDashboard?.data), ...DocListCast(this.Document[Doc.LayoutDataKey(this.Document) + '_sidebar'])];
}
@computed get rangeFilters() {
@@ -236,7 +236,7 @@ export class FilterPanel extends ObservableReactComponent<filterProps> {
if (facetVal instanceof RichTextField || typeof facetVal === 'string') rtFields++;
facetVal !== undefined && valueSet.add(Field.toString(facetVal as FieldType));
(facetVal === true || facetVal === false) && valueSet.add(Field.toString(!facetVal));
- const fieldKey = Doc.LayoutFieldKey(t);
+ const fieldKey = Doc.LayoutDataKey(t);
const annos = !Field.toString(Doc.LayoutField(t) as FieldType).includes('CollectionView');
DocListCast(t[annos ? fieldKey + '_annotations' : fieldKey]).forEach(newdoc => newarray.push(newdoc));
annos && DocListCast(t[fieldKey + '_sidebar']).forEach(newdoc => newarray.push(newdoc));
diff --git a/src/client/views/GlobalKeyHandler.ts b/src/client/views/GlobalKeyHandler.ts
index 94c023330..948beec74 100644
--- a/src/client/views/GlobalKeyHandler.ts
+++ b/src/client/views/GlobalKeyHandler.ts
@@ -239,7 +239,7 @@ export class KeyManager {
break;
case 'i':
{
- const importBtn = DocListCast(Doc.MyLeftSidebarMenu.data).find(d => d.target === Doc.MyImports);
+ const importBtn = DocListCast(Doc.MyLeftSidebarMenu?.data).find(d => d.target === Doc.MyImports);
if (importBtn) {
MainView.Instance.selectLeftSidebarButton(importBtn);
}
@@ -247,7 +247,7 @@ export class KeyManager {
break;
case 's':
{
- const trailsBtn = DocListCast(Doc.MyLeftSidebarMenu.data).find(d => d.target === Doc.MyTrails);
+ const trailsBtn = DocListCast(Doc.MyLeftSidebarMenu?.data).find(d => d.target === Doc.MyTrails);
if (trailsBtn) {
MainView.Instance.selectLeftSidebarButton(trailsBtn);
}
@@ -257,7 +257,7 @@ export class KeyManager {
if (DocumentView.Selected().length === 1 && DocumentView.Selected()[0].ComponentView?.search) {
DocumentView.Selected()[0].ComponentView?.search?.('', false, false);
} else {
- const searchBtn = DocListCast(Doc.MyLeftSidebarMenu.data).find(d => d.target === Doc.MySearcher);
+ const searchBtn = DocListCast(Doc.MyLeftSidebarMenu?.data).find(d => d.target === Doc.MySearcher);
if (searchBtn) {
MainView.Instance.selectLeftSidebarButton(searchBtn);
}
diff --git a/src/client/views/InkStrokeProperties.ts b/src/client/views/InkStrokeProperties.ts
index 6854476e2..425f5b6bb 100644
--- a/src/client/views/InkStrokeProperties.ts
+++ b/src/client/views/InkStrokeProperties.ts
@@ -341,7 +341,7 @@ export class InkStrokeProperties {
*/
snapControl = (inkView: DocumentView, controlIndex: number) => {
const inkDoc = inkView.Document;
- const ink = Cast(inkDoc[Doc.LayoutFieldKey(inkDoc)], InkField)?.inkData;
+ const ink = Cast(inkDoc[Doc.LayoutDataKey(inkDoc)], InkField)?.inkData;
if (ink) {
const screenDragPt = inkView.ComponentView?.ptToScreen?.(ink[controlIndex]);
diff --git a/src/client/views/InkTranscription.tsx b/src/client/views/InkTranscription.tsx
index 1293aa9d0..2e6b477e9 100644
--- a/src/client/views/InkTranscription.tsx
+++ b/src/client/views/InkTranscription.tsx
@@ -118,9 +118,9 @@ export class InkTranscription extends React.Component {
const times: number[] = [];
validInks
- .filter(i => Cast(i[Doc.LayoutFieldKey(i)], InkField))
+ .filter(i => Cast(i[Doc.LayoutDataKey(i)], InkField))
.forEach(i => {
- const d = Cast(i[Doc.LayoutFieldKey(i)], InkField, null);
+ const d = Cast(i[Doc.LayoutDataKey(i)], InkField, null);
const inkStroke = DocumentView.getDocumentView(i)?.ComponentView as InkingStroke;
strokes.push(d.inkData.map(pd => inkStroke.ptToScreen({ X: pd.X, Y: pd.Y })));
times.push(DateCast(i.author_date).getDate().getTime());
@@ -382,7 +382,7 @@ export class InkTranscription extends React.Component {
render() {
return (
- <div className="ink-transcription" style={{pointerEvents: 'none'}}>
+ <div className="ink-transcription" style={{ pointerEvents: 'none' }}>
<div className="math-editor" ref={this.setMathRef}></div>
<div className="text-editor" ref={this.setTextRef}></div>
</div>
diff --git a/src/client/views/LightboxView.tsx b/src/client/views/LightboxView.tsx
index de2c7cd09..0eb21b943 100644
--- a/src/client/views/LightboxView.tsx
+++ b/src/client/views/LightboxView.tsx
@@ -136,7 +136,7 @@ export class LightboxView extends ObservableReactComponent<LightboxViewProps> {
return this.SetLightboxDoc(
doc,
undefined,
- [...DocListCast(doc[Doc.LayoutFieldKey(doc) + '_annotations']).filter(anno => anno.annotationOn !== doc), ...this._future].sort((a, b) => NumCast(b._timecodeToShow) - NumCast(a._timecodeToShow)),
+ [...DocListCast(doc[Doc.LayoutDataKey(doc) + '_annotations']).filter(anno => anno.annotationOn !== doc), ...this._future].sort((a, b) => NumCast(b._timecodeToShow) - NumCast(a._timecodeToShow)),
layoutTemplate
);
};
@@ -187,7 +187,7 @@ export class LightboxView extends ObservableReactComponent<LightboxViewProps> {
saved: this._savedState,
});
if (this._docTarget) {
- const fieldKey = Doc.LayoutFieldKey(this._docTarget);
+ const fieldKey = Doc.LayoutDataKey(this._docTarget);
const contents = [...DocListCast(this._docTarget[fieldKey]), ...DocListCast(this._docTarget[fieldKey + '_annotations'])];
const links = Doc.Links(this._docTarget)
.map(link => Doc.getOppositeAnchor(link, this._docTarget!)!)
diff --git a/src/client/views/Main.tsx b/src/client/views/Main.tsx
index 22725a2b9..e4bbb1c0f 100644
--- a/src/client/views/Main.tsx
+++ b/src/client/views/Main.tsx
@@ -61,7 +61,7 @@ import { FootnoteView } from './nodes/formattedText/FootnoteView';
import { FormattedTextBox } from './nodes/formattedText/FormattedTextBox';
import { SummaryView } from './nodes/formattedText/SummaryView';
import { ImportElementBox } from './nodes/importBox/ImportElementBox';
-import { PresBox, PresElementBox } from './nodes/trails';
+import { PresBox, PresSlideBox } from './nodes/trails';
import { FaceRecognitionHandler } from './search/FaceRecognitionHandler';
import { SearchBox } from './search/SearchBox';
import { StickerPalette } from './smartdraw/StickerPalette';
@@ -135,7 +135,7 @@ FieldLoader.ServerLoadStatus = { requested: 0, retrieved: 0, message: 'cache' };
AudioBox,
RecordingBox,
PresBox,
- PresElementBox,
+ PresSlideBox,
SearchBox,
ImageLabelBox,
FaceCollectionBox,
diff --git a/src/client/views/MainView.tsx b/src/client/views/MainView.tsx
index be6e2fecb..ad6bb09c7 100644
--- a/src/client/views/MainView.tsx
+++ b/src/client/views/MainView.tsx
@@ -93,7 +93,7 @@ export class MainView extends ObservableReactComponent<object> {
@observable private _dashUIWidth: number = 0; // width of entire main dashboard region including left menu buttons and properties panel (but not including the dashboard selector button row)
@observable private _dashUIHeight: number = 0; // height of entire main dashboard region including top menu buttons
@observable private _panelContent: string = 'none';
- @observable private _sidebarContent: Doc = Doc.MyLeftSidebarPanel;
+ @observable private _sidebarContent?: Doc = Doc.MyLeftSidebarPanel;
@observable private _leftMenuFlyoutWidth: number = 0;
@computed get _hideUI() {
return SnappingManager.HideUI || (this.mainDoc && this.mainDoc._type_collection !== CollectionViewType.Docking);
@@ -173,7 +173,7 @@ export class MainView extends ObservableReactComponent<object> {
views => views.length > 1 && document.activeElement instanceof HTMLElement && document.activeElement?.blur()
);
reaction(
- () => Doc.MyDockedBtns.linearView_IsOpen,
+ () => Doc.MyDockedBtns?.linearView_IsOpen,
open => SnappingManager.SetPrintToConsole(!!open)
);
const scriptTag = document.createElement('script');
@@ -199,7 +199,7 @@ export class MainView extends ObservableReactComponent<object> {
ele.outerHTML = '';
}, 1000);
}
- this._sidebarContent.proto = undefined;
+ this._sidebarContent && (this._sidebarContent.proto = undefined);
if (!MainView.Live) {
DocServer.setLivePlaygroundFields([
'dataTransition',
@@ -636,8 +636,10 @@ export class MainView extends ObservableReactComponent<object> {
openPresentation = (pres: Doc) => {
if (pres.type === DocumentType.PRES) {
CollectionDockingView.AddSplit(pres, OpenWhereMod.right, undefined, PresBox.PanelName);
- Doc.MyTrails && (Doc.ActivePresentation = pres);
- Doc.AddDocToList(Doc.MyTrails, 'data', pres);
+ if (Doc.MyTrails) {
+ Doc.ActivePresentation = pres;
+ Doc.AddDocToList(Doc.MyTrails, 'data', pres);
+ }
this.closeFlyout();
}
};
@@ -645,16 +647,16 @@ export class MainView extends ObservableReactComponent<object> {
@action
createNewFolder = async () => {
const folder = Docs.Create.TreeDocument([], { title: 'Untitled folder', _dragOnlyWithinContainer: true, isFolder: true });
- Doc.AddDocToList(Doc.MyFilesystem, 'data', folder);
+ Doc.MyFilesystem && Doc.AddDocToList(Doc.MyFilesystem, 'data', folder);
};
waitForDoubleClick = () => (SnappingManager.ExploreMode ? 'never' : undefined);
headerBarScreenXf = () => new Transform(-this.leftScreenOffsetOfMainDocView - this.leftMenuFlyoutWidth(), -this.headerBarDocHeight(), 1);
mainScreenToLocalXf = () => new Transform(-this.leftScreenOffsetOfMainDocView - this.leftMenuFlyoutWidth(), -this.topOfMainDocContent, 1);
- addHeaderDoc = (docs: Doc | Doc[]) => toList(docs).reduce((done, doc) => Doc.AddDocToList(this.headerBarDoc, 'data', doc), true);
- removeHeaderDoc = (docs: Doc | Doc[]) => toList(docs).reduce((done, doc) => Doc.RemoveDocFromList(this.headerBarDoc, 'data', doc), true);
+ addHeaderDoc = (docs: Doc | Doc[]) => toList(docs).reduce((done, doc) => !!this.headerBarDoc && Doc.AddDocToList(this.headerBarDoc, 'data', doc), true);
+ removeHeaderDoc = (docs: Doc | Doc[]) => toList(docs).reduce((done, doc) => !!this.headerBarDoc && Doc.RemoveDocFromList(this.headerBarDoc, 'data', doc), true);
@computed get headerBarDocView() {
- return (
+ return !this.headerBarDoc ? null : (
<div className="mainView-headerBar" style={{ height: this.headerBarDocHeight() }}>
<DocumentView
key="headerBarDoc"
@@ -792,16 +794,16 @@ export class MainView extends ObservableReactComponent<object> {
<div key="flyout" className="mainView-libraryFlyout-out">
{this.docButtons}
</div>
- ) : (
+ ) : !this._sidebarContent ? null : (
<div key="libFlyout" className="mainView-libraryFlyout" style={{ minWidth: this._leftMenuFlyoutWidth, width: this._leftMenuFlyoutWidth }}>
<div className="mainView-contentArea">
<DocumentView
- Document={DocCast(this._sidebarContent.proto, this._sidebarContent)}
+ Document={DocCast(this._sidebarContent?.proto, this._sidebarContent)!}
addDocument={undefined}
addDocTab={DocumentViewInternal.addDocTabFunc}
pinToPres={DocumentView.PinDoc}
containerViewPath={returnEmptyDocViewList}
- styleProvider={this._sidebarContent.proto === Doc.MyDashboards || this._sidebarContent.proto === Doc.MyFilesystem || this._sidebarContent.proto === Doc.MyTrails ? DashboardStyleProvider : DefaultStyleProvider}
+ styleProvider={this._sidebarContent?.proto === Doc.MyDashboards || this._sidebarContent.proto === Doc.MyFilesystem || this._sidebarContent.proto === Doc.MyTrails ? DashboardStyleProvider : DefaultStyleProvider}
removeDocument={returnFalse}
ScreenToLocalTransform={this.mainContainerXf}
PanelWidth={this.leftMenuFlyoutWidth}
@@ -821,7 +823,7 @@ export class MainView extends ObservableReactComponent<object> {
}
@computed get leftMenuPanel() {
- return (
+ return !Doc.MyLeftSidebarMenu ? null : (
<div key="menu" className="mainView-leftMenuPanel" style={{ background: SnappingManager.userBackgroundColor, display: DocumentView.LightboxDoc() ? 'none' : undefined }}>
<DocumentView
Document={Doc.MyLeftSidebarMenu}
@@ -861,7 +863,7 @@ export class MainView extends ObservableReactComponent<object> {
break;
default:
this._leftMenuFlyoutWidth = this._leftMenuFlyoutWidth || 250;
- this._sidebarContent.proto = DocCast(button.target);
+ this._sidebarContent && (this._sidebarContent.proto = DocCast(button.target));
SnappingManager.SetLastPressedBtn(button[Id]);
}
}
@@ -875,8 +877,10 @@ export class MainView extends ObservableReactComponent<object> {
*/
addHotKey = (hotKey: string) => {
const filterIcons = DocCast(DocCast(Doc.UserDoc().myContextMenuBtns)?.Filter);
- const menuDoc = CurrentUserUtils.setupContextMenuBtn(CurrentUserUtils.filterBtnDesc(ToTagName(hotKey), 'question'), filterIcons);
- Doc.AddToFilterHotKeys(menuDoc);
+ if (filterIcons) {
+ const menuDoc = CurrentUserUtils.setupContextMenuBtn(CurrentUserUtils.filterBtnDesc(ToTagName(hotKey), 'question'), filterIcons);
+ Doc.AddToFilterHotKeys(menuDoc);
+ }
};
@computed get mainInnerContent() {
@@ -941,13 +945,13 @@ export class MainView extends ObservableReactComponent<object> {
closeFlyout = action(() => {
SnappingManager.SetLastPressedBtn('');
this._panelContent = 'none';
- this._sidebarContent.proto = undefined;
+ this._sidebarContent && (this._sidebarContent.proto = undefined);
this._leftMenuFlyoutWidth = 0;
});
- remButtonDoc = (docs: Doc | Doc[]) => toList(docs).reduce((flg: boolean, doc) => flg && !doc.dragOnlyWithinContainer && Doc.RemoveDocFromList(Doc.MyDockedBtns, 'data', doc), true);
+ remButtonDoc = (docs: Doc | Doc[]) => toList(docs).reduce((flg: boolean, doc) => flg && !doc.dragOnlyWithinContainer && !!Doc.MyDockedBtns && Doc.RemoveDocFromList(Doc.MyDockedBtns!, 'data', doc), true);
moveButtonDoc = (docs: Doc | Doc[], targetCol: Doc | undefined, addDocument: (document: Doc | Doc[]) => boolean) => this.remButtonDoc(docs) && addDocument(docs);
- addButtonDoc = (docs: Doc | Doc[]) => toList(docs).reduce((flg: boolean, doc) => flg && Doc.AddDocToList(Doc.MyDockedBtns, 'data', doc), true);
+ addButtonDoc = (docs: Doc | Doc[]) => toList(docs).reduce((flg: boolean, doc) => flg && !!Doc.MyDockedBtns && Doc.AddDocToList(Doc.MyDockedBtns!, 'data', doc), true);
buttonBarXf = () => {
if (!this._docBtnRef.current) return Transform.Identity();
diff --git a/src/client/views/PinFuncs.ts b/src/client/views/PinFuncs.ts
index d756830da..805dd9a49 100644
--- a/src/client/views/PinFuncs.ts
+++ b/src/client/views/PinFuncs.ts
@@ -70,13 +70,13 @@ export function PinDocView(pinDocIn: Doc, pinProps: PinProps, targetDoc: Doc) {
pinProps.pinData.dataview ||
pinProps.pinData.poslayoutview ||
pinProps?.activeFrame !== undefined;
- const fkey = Doc.LayoutFieldKey(targetDoc);
+ const fkey = Doc.LayoutDataKey(targetDoc);
if (pinProps.pinData.dataview) {
pinDoc.config_usePath = targetDoc[fkey + '_usePath'];
pinDoc.config_data = Field.Copy(targetDoc[fkey]);
}
if (pinProps.pinData.dataannos) {
- const fieldKey = '$' + Doc.LayoutFieldKey(targetDoc) + +'_annotations';
+ const fieldKey = '$' + Doc.LayoutDataKey(targetDoc) + +'_annotations';
pinDoc.config_annotations = new List<Doc>(DocListCast(targetDoc[fieldKey]).filter(doc => !doc.layout_unrendered));
}
if (pinProps.pinData.inkable) {
@@ -87,7 +87,7 @@ export function PinDocView(pinDocIn: Doc, pinProps: PinProps, targetDoc: Doc) {
}
if (pinProps.pinData.scrollable) pinDoc.config_scrollTop = targetDoc._layout_scrollTop;
if (pinProps.pinData.clippable) {
- const fieldKey = Doc.LayoutFieldKey(targetDoc);
+ const fieldKey = Doc.LayoutDataKey(targetDoc);
pinDoc.config_clipWidth = targetDoc[fieldKey + '_clipWidth'];
}
if (pinProps.pinData.datarange) {
@@ -127,7 +127,7 @@ export function PinDocView(pinDocIn: Doc, pinProps: PinProps, targetDoc: Doc) {
}
if (pinProps.pinData.temporal) {
pinDoc.config_clipStart = targetDoc._layout_currentTimecode;
- const duration = NumCast(pinDoc[`${Doc.LayoutFieldKey(pinDoc)}_duration`], NumCast(targetDoc.config_clipStart) + 0.1);
+ const duration = NumCast(pinDoc[`${Doc.LayoutDataKey(pinDoc)}_duration`], NumCast(targetDoc.config_clipStart) + 0.1);
pinDoc.config_clipEnd = NumCast(pinDoc.config_clipStart) + NumCast(targetDoc.clipEnd, duration);
}
}
diff --git a/src/client/views/PropertiesButtons.tsx b/src/client/views/PropertiesButtons.tsx
index 6778a6691..66936c64c 100644
--- a/src/client/views/PropertiesButtons.tsx
+++ b/src/client/views/PropertiesButtons.tsx
@@ -447,7 +447,7 @@ export class PropertiesButtons extends React.Component {
};
render() {
- const layoutField = this.selectedDoc?.[Doc.LayoutFieldKey(this.selectedDoc)];
+ const layoutField = this.selectedDoc?.[Doc.LayoutDataKey(this.selectedDoc)];
const isText = DocumentView.Selected().lastElement()?.ComponentView instanceof FormattedTextBox;
const isInk = this.selectedDoc?.layout_isSvg;
const isImage = layoutField instanceof ImageField;
diff --git a/src/client/views/PropertiesView.tsx b/src/client/views/PropertiesView.tsx
index 7fcb15afe..e7186c0e3 100644
--- a/src/client/views/PropertiesView.tsx
+++ b/src/client/views/PropertiesView.tsx
@@ -525,7 +525,7 @@ export class PropertiesView extends ObservableReactComponent<PropertiesViewProps
let permission;
if (this.layoutDocAcls) {
if (target[DocAcl][userKey]) permission = HierarchyMapping.get(target[DocAcl][userKey])?.name;
- else if (target.embedContainer) permission = StrCast(Doc.GetProto(DocCast(target.embedContainer))[userKey]);
+ else if (DocCast(target.embedContainer)) permission = StrCast(Doc.GetProto(DocCast(target.embedContainer)!)[userKey]);
else permission = StrCast(Doc.GetProto(target)?.[userKey]);
} else permission = StrCast(target[userKey]);
individualTableEntries.unshift(this.sharingItem(userEmail, showAdmin, permission!, false)); // adds each user
@@ -546,7 +546,7 @@ export class PropertiesView extends ObservableReactComponent<PropertiesViewProps
if (this.layoutDocAcls) {
if (target[DocAcl][groupKey]) {
permission = HierarchyMapping.get(target[DocAcl][groupKey])?.name;
- } else if (target.embedContainer) permission = StrCast(Doc.GetProto(DocCast(target.embedContainer))[groupKey]);
+ } else if (DocCast(target.embedContainer)) permission = StrCast(Doc.GetProto(DocCast(target.embedContainer)!)[groupKey]);
else permission = StrCast(Doc.GetProto(target)?.[groupKey]);
} else permission = StrCast(target[groupKey]);
groupTableEntries.unshift(this.sharingItem(StrCast(group.title), showAdmin, permission!, false));
@@ -1921,7 +1921,9 @@ export class PropertiesView extends ObservableReactComponent<PropertiesViewProps
const selectedItem: boolean = PresBox.Instance.selectedArray.size > 0;
const type = [DocumentType.AUDIO, DocumentType.VID].includes(DocCast(PresBox.Instance.activeItem?.annotationOn)?.type as DocumentType)
? (DocCast(PresBox.Instance.activeItem?.annotationOn)?.type as DocumentType)
- : PresBox.targetRenderedDoc(PresBox.Instance.activeItem)?.type;
+ : PresBox.Instance.activeItem
+ ? PresBox.targetRenderedDoc(PresBox.Instance.activeItem)?.type
+ : undefined;
return (
<div className="propertiesView" style={{ width: this._props.width }}>
<div className="propertiesView-sectionTitle" style={{ width: this._props.width }}>
diff --git a/src/client/views/SidebarAnnos.tsx b/src/client/views/SidebarAnnos.tsx
index b7e6318b1..573c28ccf 100644
--- a/src/client/views/SidebarAnnos.tsx
+++ b/src/client/views/SidebarAnnos.tsx
@@ -1,7 +1,7 @@
import { computed, makeObservable } from 'mobx';
import { observer } from 'mobx-react';
import * as React from 'react';
-import { ClientUtils, returnAll, returnFalse, returnOne, returnZero } from '../../ClientUtils';
+import { ClientUtils, returnFalse, returnOne, returnZero } from '../../ClientUtils';
import { emptyFunction } from '../../Utils';
import { Doc, DocListCast, Field, FieldResult, FieldType, StrListCast } from '../../fields/Doc';
import { Id } from '../../fields/FieldSymbols';
@@ -253,7 +253,6 @@ export class SidebarAnnos extends ObservableReactComponent<FieldViewProps & Extr
renderDepth={this._props.renderDepth + 1}
type_collection={CollectionViewType.Stacking}
fieldKey={this.sidebarKey}
- pointerEvents={returnAll}
/>
</div>
</div>
diff --git a/src/client/views/StyleProvider.tsx b/src/client/views/StyleProvider.tsx
index e8876f96f..9110e198f 100644
--- a/src/client/views/StyleProvider.tsx
+++ b/src/client/views/StyleProvider.tsx
@@ -129,7 +129,7 @@ export function DefaultStyleProvider(doc: Opt<Doc>, props: Opt<FieldViewProps &
// prettier-ignore
switch (property.split(':')[0]) {
case StyleProp.TreeViewIcon: {
- const img = ImageCast(doc?.icon ?? doc?.[doc ? Doc.LayoutFieldKey(doc) : ""]);
+ const img = ImageCast(doc?.icon ?? doc?.[doc ? Doc.LayoutDataKey(doc) : ""]);
if (img) {
const ext = extname(img.url.href);
const url = doc?.icon ? img.url.href : img.url.href.replace(ext, '_s' + ext);
@@ -164,7 +164,7 @@ export function DefaultStyleProvider(doc: Opt<Doc>, props: Opt<FieldViewProps &
return undefined;
case StyleProp.DocContents: return undefined;
case StyleProp.WidgetColor: return isAnnotated ? Colors.LIGHT_BLUE : 'dimgrey';
- case StyleProp.Opacity: return componentView?.isUnstyledView?.() ? 1 : Cast(doc?._opacity, "number", Cast(doc?.opacity, 'number', null));
+ case StyleProp.Opacity: return componentView?.isUnstyledView?.() ? 1 : Cast(doc?._opacity, "number", Cast(doc?.opacity, 'number', null) ?? null);
case StyleProp.FontColor: return StrCast(doc?.[fieldKey + 'fontColor'], isCaption ? lightOrDark(backgroundCol()) : StrCast(Doc.UserDoc().fontColor, color()));
case StyleProp.FontSize: return StrCast(doc?.[fieldKey + 'fontSize'], StrCast(Doc.UserDoc().fontSize));
case StyleProp.FontFamily: return StrCast(doc?.[fieldKey + 'fontFamily'], StrCast(Doc.UserDoc().fontFamily));
@@ -248,13 +248,13 @@ export function DefaultStyleProvider(doc: Opt<Doc>, props: Opt<FieldViewProps &
: 0;
case StyleProp.BackgroundColor: {
if (SnappingManager.LastPressedBtn === doc?.[Id]) return SnappingManager.userColor; // hack to indicate active menu panel item
- const dataKey = doc ? Doc.LayoutFieldKey(doc) : '';
+ const dataKey = doc ? Doc.LayoutDataKey(doc) : '';
const usePath = StrCast(doc?.[dataKey + '_usePath']);
const alternate = usePath.includes(':hover') ? ( isHovering?.() ? '_' + usePath.replace(':hover','') : '') : usePath ? "_" +usePath:usePath;
let docColor:Opt<string> = layoutDoc &&
StrCast(alternate ? layoutDoc['backgroundColor' + alternate]:undefined,
- doc.rootDocument
- ? StrCast(layoutDoc.backgroundColor, StrCast(DocCast(doc.rootDocument).backgroundColor)) // for nested templates: use template's color, then root doc's color
+ DocCast(doc.rootDocument)
+ ? StrCast(layoutDoc.backgroundColor, StrCast(DocCast(doc.rootDocument)!.backgroundColor)) // for nested templates: use template's color, then root doc's color
: layoutDoc === doc
? StrCast(doc.backgroundColor)
: StrCast(StrCast(Doc.GetT(layoutDoc, 'backgroundColor', 'string', true), StrCast(doc.backgroundColor, StrCast(layoutDoc.backgroundColor)) // otherwise, use expanded template coloor, then root doc's color, then template's inherited color
@@ -262,7 +262,7 @@ export function DefaultStyleProvider(doc: Opt<Doc>, props: Opt<FieldViewProps &
// prettier-ignore
switch (layoutDoc?.type) {
- case DocumentType.PRESELEMENT: docColor = docColor || ""; break;
+ case DocumentType.PRESSLIDE: docColor = docColor || ""; break;
case DocumentType.PRES: docColor = docColor || 'transparent'; break;
case DocumentType.FONTICON: docColor = boxBackground ? undefined : docColor || SnappingManager.userBackgroundColor; break;
case DocumentType.RTF: docColor = docColor || StrCast(Doc.UserDoc().textBackgroundColor, Colors.LIGHT_GRAY); break;
diff --git a/src/client/views/StyleProviderQuiz.tsx b/src/client/views/StyleProviderQuiz.tsx
index b4a1f53c5..fe76bce28 100644
--- a/src/client/views/StyleProviderQuiz.tsx
+++ b/src/client/views/StyleProviderQuiz.tsx
@@ -67,7 +67,7 @@ export namespace styleProviderQuiz {
newCol.zIndex = 1000;
newCol.forceActive = true;
newCol.quiz = text;
- newCol['$' + Doc.LayoutFieldKey(newCol) + '_transform'] = 'none';
+ newCol['$' + Doc.LayoutDataKey(newCol) + '_transform'] = 'none';
Doc.AddDocToList(img.Document, 'quizBoxes', newCol);
img.addDocument(newCol);
// img._loading = false;
diff --git a/src/client/views/TagsView.tsx b/src/client/views/TagsView.tsx
index 79c4d8af1..40d4f108d 100644
--- a/src/client/views/TagsView.tsx
+++ b/src/client/views/TagsView.tsx
@@ -21,6 +21,7 @@ import { FaceRecognitionHandler } from './search/FaceRecognitionHandler';
import { IconTagBox } from './nodes/IconTagBox';
import { Id } from '../../fields/FieldSymbols';
import { StyleProp } from './StyleProp';
+import { Docs } from '../documents/Documents';
/**
* The TagsView is a metadata input/display panel shown at the bottom of a DocumentView in a freeform collection.
@@ -171,6 +172,7 @@ export class TagItem extends ObservableReactComponent<TagItemProps> {
const newEmbeddings = TagItem.allDocsWithTag(this._props.tag).map(doc => Doc.MakeEmbedding(doc));
// Create a new collection and set up configurations.
+ const emptyCol = DocCast(Doc.UserDoc().emptyCollection);
const newCollection = ((doc: Doc) => {
doc.$data = new List<Doc>(newEmbeddings);
doc.$title = this._props.tag;
@@ -182,7 +184,7 @@ export class TagItem extends ObservableReactComponent<TagItemProps> {
doc.layout_fitWidth = true;
doc._layout_showTags = true;
return doc;
- })(Doc.MakeCopy(Doc.UserDoc().emptyCollection as Doc, true));
+ })(emptyCol ? Doc.MakeCopy(emptyCol, true) : Docs.Create.FreeformDocument([], {}));
newEmbeddings.forEach(embed => Doc.SetContainer(embed, newCollection));
// Add the collection to the tag document's list of associated smart collections.
@@ -342,7 +344,7 @@ export class TagsView extends ObservableReactComponent<TagViewProps> {
const tagsList = new Set<string>(StrListCast(this.View.dataDoc.tags));
const chatTagsList = new Set<string>(StrListCast(this.View.dataDoc.tags_chat));
const facesList = new Set<string>(
- DocListCast(this.View.dataDoc[Doc.LayoutFieldKey(this.View.Document) + '_annotations'])
+ DocListCast(this.View.dataDoc[Doc.LayoutDataKey(this.View.Document) + '_annotations'])
.concat(this.View.Document)
.filter(d => d.face)
.map(doc => StrCast(DocCast(doc.face)?.title))
diff --git a/src/client/views/TemplateMenu.scss b/src/client/views/TemplateMenu.scss
index 8879fc20d..049945517 100644
--- a/src/client/views/TemplateMenu.scss
+++ b/src/client/views/TemplateMenu.scss
@@ -40,12 +40,16 @@
height: 100%;
width: 100%;
max-height: 250px;
+ overflow: auto;
.templateToggle,
.chromeToggle {
text-align: left;
color: black;
}
+ .collectionTreeView {
+ height: fit-content !important;
+ }
input {
margin-right: 10px;
diff --git a/src/client/views/animationtimeline/Timeline.tsx b/src/client/views/animationtimeline/Timeline.tsx
index cd2c7df1b..814e9a7a0 100644
--- a/src/client/views/animationtimeline/Timeline.tsx
+++ b/src/client/views/animationtimeline/Timeline.tsx
@@ -92,7 +92,7 @@ export class Timeline extends ObservableReactComponent<FieldViewProps & { Doc: D
private get children(): Doc[] {
const annotatedDoc = [DocumentType.IMG, DocumentType.VID, DocumentType.PDF, DocumentType.MAP].includes(StrCast(this._props.Doc.type) as unknown as DocumentType);
if (annotatedDoc) {
- return DocListCast(this._props.Doc[Doc.LayoutFieldKey(this._props.Doc) + '_annotations']);
+ return DocListCast(this._props.Doc[Doc.LayoutDataKey(this._props.Doc) + '_annotations']);
}
return DocListCast(this._props.Doc[this._props.fieldKey]);
}
diff --git a/src/client/views/collections/CollectionCarouselView.tsx b/src/client/views/collections/CollectionCarouselView.tsx
index 2d3f8cb0e..975dc52fe 100644
--- a/src/client/views/collections/CollectionCarouselView.tsx
+++ b/src/client/views/collections/CollectionCarouselView.tsx
@@ -77,7 +77,8 @@ export class CollectionCarouselView extends CollectionSubView() {
focus = (anchor: Doc, options: FocusViewOptions): Opt<number> => {
const docs = DocListCast(this.Document[this.fieldKey]);
if (anchor.type === DocumentType.CONFIG || docs.includes(anchor)) {
- const newIndex = anchor.config_carousel_index ?? docs.getIndex(DocCast(anchor.annotationOn, anchor));
+ const annoOn = DocCast(anchor.annotationOn, anchor);
+ const newIndex = NumCast(anchor.config_carousel_index, (annoOn && docs.getIndex(annoOn)) ?? 0);
options.didMove = newIndex !== this.layoutDoc._carousel_index;
options.didMove && (this.layoutDoc._carousel_index = newIndex);
}
diff --git a/src/client/views/collections/CollectionDockingView.tsx b/src/client/views/collections/CollectionDockingView.tsx
index 12a131deb..ea6259a32 100644
--- a/src/client/views/collections/CollectionDockingView.tsx
+++ b/src/client/views/collections/CollectionDockingView.tsx
@@ -60,7 +60,7 @@ export class CollectionDockingView extends CollectionSubView() {
public get HasFullScreen() {
return this._goldenLayout._maximisedItem !== null;
}
- static _highlightStyleSheet = addStyleSheet();
+ static _highlightStyleSheet = addStyleSheet().sheet;
constructor(props: SubCollectionViewProps) {
super(props);
@@ -473,11 +473,11 @@ export class CollectionDockingView extends CollectionSubView() {
}
return undefined;
}
- public static async TakeSnapshot(doc: Doc | undefined, clone = false) {
+ public static TakeSnapshot(doc: Doc | undefined, clone = false) {
if (!doc) return undefined;
let json = StrCast(doc.dockingConfig);
if (clone) {
- const cloned = await Doc.MakeClone(doc);
+ const cloned = Doc.MakeClone(doc);
Array.from(cloned.map.entries()).forEach(entry => {
json = json.replace(entry[0], entry[1][Id]);
});
@@ -524,11 +524,11 @@ export class CollectionDockingView extends CollectionSubView() {
this._flush = this._flush ?? UndoManager.StartBatch('tab movement');
const dashDoc = tab.DashDoc;
if (dashDoc && ![DocumentType.PRES].includes(dashDoc.type) && !tab.contentItem.config.props.keyValue) {
- Doc.AddDocToList(Doc.MyHeaderBar, 'data', dashDoc, undefined, undefined, true);
+ Doc.MyHeaderBar && Doc.AddDocToList(Doc.MyHeaderBar, 'data', dashDoc, undefined, undefined, true);
// if you close a tab that is not embedded somewhere else (an embedded Doc can be opened simultaneously in a tab), then add the tab to recently closed
if (dashDoc.embedContainer === this.Document) dashDoc.embedContainer = undefined;
if (!dashDoc.embedContainer) {
- Doc.AddDocToList(Doc.MyRecentlyClosed, 'data', dashDoc, undefined, true, true);
+ Doc.MyRecentlyClosed && Doc.AddDocToList(Doc.MyRecentlyClosed, 'data', dashDoc, undefined, true, true);
Doc.RemoveEmbedding(dashDoc, dashDoc);
}
}
@@ -562,7 +562,7 @@ export class CollectionDockingView extends CollectionSubView() {
_layout_fitWidth: true,
title: `Untitled Tab ${NumCast(dashboard.$myPaneCount)}`,
});
- Doc.AddDocToList(Doc.MyHeaderBar, 'data', docToAdd, undefined, undefined, true);
+ Doc.MyHeaderBar && Doc.AddDocToList(Doc.MyHeaderBar, 'data', docToAdd, undefined, undefined, true);
inheritParentAcls(this.Document, docToAdd, false);
CollectionDockingView.AddSplit(docToAdd, OpenWhereMod.none, stack);
}
@@ -579,7 +579,7 @@ export class CollectionDockingView extends CollectionSubView() {
_freeform_backgroundGrid: true,
title: `Untitled Tab ${NumCast(dashboard.$myPaneCount)}`,
});
- Doc.AddDocToList(Doc.MyHeaderBar, 'data', docToAdd, undefined, undefined, true);
+ Doc.MyHeaderBar && Doc.AddDocToList(Doc.MyHeaderBar, 'data', docToAdd, undefined, undefined, true);
inheritParentAcls(this.dataDoc, docToAdd, false);
CollectionDockingView.AddSplit(docToAdd, OpenWhereMod.none, stack);
}
@@ -668,7 +668,5 @@ ScriptingGlobals.add(
);
// eslint-disable-next-line prefer-arrow-callback
ScriptingGlobals.add(async function snapshotDashboard() {
- const batch = UndoManager.StartBatch('snapshot');
- await CollectionDockingView.TakeSnapshot(Doc.ActiveDashboard);
- batch.end();
+ undoable(() => CollectionDockingView.TakeSnapshot(Doc.ActiveDashboard), 'snapshot dashboard');
}, 'creates a snapshot copy of a dashboard');
diff --git a/src/client/views/collections/CollectionNoteTakingView.tsx b/src/client/views/collections/CollectionNoteTakingView.tsx
index 173147f64..7f639a11e 100644
--- a/src/client/views/collections/CollectionNoteTakingView.tsx
+++ b/src/client/views/collections/CollectionNoteTakingView.tsx
@@ -321,11 +321,10 @@ export class CollectionNoteTakingView extends CollectionSubView() {
return Math.min(maxWidth - CollectionNoteTakingViewColumn.ColumnMargin, width < maxWidth ? width : maxWidth);
};
- // how to get the height of a document. Nothing special here.
getDocHeight(d?: Doc) {
if (!d || d.hidden) return 0;
- const childLayoutDoc = Doc.Layout(d, this._props.childLayoutTemplate?.());
- const childDataDoc = !d.isTemplateDoc && !d.isTemplateForField ? undefined : this._props.TemplateDataDocument;
+ const childLayoutDoc = Doc.LayoutDoc(d, this._props.childLayoutTemplate?.());
+ const childDataDoc = d.isTemplateDoc || d.isTemplateForField ? this._props.TemplateDataDocument : undefined;
const maxHeight = (lim => (lim === 0 ? this._props.PanelWidth() : lim === -1 ? 10000 : lim))(NumCast(this.layoutDoc.childLimitHeight, -1));
const nw = Doc.NativeWidth(childLayoutDoc, childDataDoc) || (!(childLayoutDoc._layout_fitWidth || this._props.childLayoutFitWidth?.(d)) ? NumCast(d._width) : 0);
const nh = Doc.NativeHeight(childLayoutDoc, childDataDoc) || (!(childLayoutDoc._layout_fitWidth || this._props.childLayoutFitWidth?.(d)) ? NumCast(d._height) : 0);
@@ -566,7 +565,7 @@ export class CollectionNoteTakingView extends CollectionSubView() {
@undoBatch
remColumn = (value: SchemaHeaderField) => {
- const colHdrData = Array.from(Cast(this.Document[this._props.fieldKey + '_columnHeaders'], listSpec(SchemaHeaderField), null));
+ const colHdrData = Array.from(Cast(this.Document[this._props.fieldKey + '_columnHeaders'], listSpec(SchemaHeaderField), null) ?? []);
if (value) {
const index = colHdrData.indexOf(value);
index !== -1 && colHdrData.splice(index, 1);
@@ -585,7 +584,7 @@ export class CollectionNoteTakingView extends CollectionSubView() {
}
return undefined;
});
- const columnHeaders = Array.from(Cast(this.dataDoc[this.fieldKey + '_columnHeaders'], listSpec(SchemaHeaderField), null));
+ const columnHeaders = Array.from(Cast(this.dataDoc[this.fieldKey + '_columnHeaders'], listSpec(SchemaHeaderField), null) ?? []);
const newColWidth = 1 / (this.numGroupColumns + 1);
columnHeaders.push(new SchemaHeaderField(value, undefined, undefined, newColWidth));
value && this.resizeColumns(columnHeaders);
@@ -642,7 +641,7 @@ export class CollectionNoteTakingView extends CollectionSubView() {
leftHeader.setWidth(leftHeader.width + movementX / this.availableWidth);
rightHeader.setWidth(rightHeader.width - movementX / this.availableWidth);
const headers = Cast(this.dataDoc[this.fieldKey + '_columnHeaders'], listSpec(SchemaHeaderField), null);
- headers.splice(headers.indexOf(leftHeader), 1, leftHeader[Copy]());
+ headers?.splice(headers.indexOf(leftHeader), 1, leftHeader[Copy]());
};
// renderedSections returns a list of all of the JSX elements used (columns and dividers). If the view
diff --git a/src/client/views/collections/CollectionStackingView.tsx b/src/client/views/collections/CollectionStackingView.tsx
index 4f60acb18..9155227dd 100644
--- a/src/client/views/collections/CollectionStackingView.tsx
+++ b/src/client/views/collections/CollectionStackingView.tsx
@@ -315,8 +315,8 @@ export class CollectionStackingView extends CollectionSubView<Partial<collection
e.stopPropagation?.();
const layoutFieldKey = StrCast(textBox.fieldKey);
const newDoc = Doc.MakeCopy(textBox.Document, true);
- const dataField = textBox.Document[Doc.LayoutFieldKey(newDoc)];
- newDoc['$' + Doc.LayoutFieldKey(newDoc)] = dataField === undefined || Cast(dataField, listSpec(Doc), null)?.length !== undefined ? new List<Doc>([]) : undefined;
+ const dataField = textBox.Document[Doc.LayoutDataKey(newDoc)];
+ newDoc['$' + Doc.LayoutDataKey(newDoc)] = dataField === undefined || Cast(dataField, listSpec(Doc), null)?.length !== undefined ? new List<Doc>([]) : undefined;
if (layoutFieldKey !== 'layout' && textBox.Document[layoutFieldKey] instanceof Doc) {
newDoc[layoutFieldKey] = textBox.Document[layoutFieldKey];
}
@@ -340,7 +340,7 @@ export class CollectionStackingView extends CollectionSubView<Partial<collection
isChildButtonContentActive = () => (this._props.childDocumentsActive?.() === false || this.Document.childDocumentsActive === false ? false : undefined);
@observable docRefs = new ObservableMap<Doc, DocumentView>();
- childFitWidth = (doc: Doc) => Cast(this.Document.childLayoutFitWidth, 'boolean', this._props.childLayoutFitWidth?.(doc) ?? Cast(doc.layout_fitWidth, 'boolean', null));
+ childFitWidth = (doc: Doc) => Cast(this.Document.childLayoutFitWidth, 'boolean', this._props.childLayoutFitWidth?.(doc) ?? Cast(doc.layout_fitWidth, 'boolean', null) ?? null);
// this is what renders the document that you see on the screen
// called in Children: this actually adds a document to our children list
getDisplayDoc(doc: Doc, trans: () => string, count: number) {
@@ -408,7 +408,7 @@ export class CollectionStackingView extends CollectionSubView<Partial<collection
});
getDocWidth = computedFn((d?: Doc) => () => {
if (!d) return 0;
- const childLayoutDoc = Doc.Layout(d, this._props.childLayoutTemplate?.());
+ const childLayoutDoc = Doc.LayoutDoc(d, this._props.childLayoutTemplate?.());
const maxWidth = this.columnWidth / this.numGroupColumns;
if (!this.layoutDoc._columnsFill && !this.childFitWidth(childLayoutDoc)) {
return Math.min(NumCast(d._width), maxWidth);
@@ -418,8 +418,8 @@ export class CollectionStackingView extends CollectionSubView<Partial<collection
getDocTransition = computedFn((d?: Doc) => () => StrCast(d?.dataTransition));
getDocHeight = computedFn((d?: Doc) => () => {
if (!d || d.hidden) return 0;
- const childLayoutDoc = Doc.Layout(d, this._props.childLayoutTemplate?.());
- const childDataDoc = !d.isTemplateDoc && !d.isTemplateForField ? undefined : this._props.TemplateDataDocument;
+ const childLayoutDoc = Doc.LayoutDoc(d, this._props.childLayoutTemplate?.());
+ const childDataDoc = d.isTemplateDoc || d.isTemplateForField ? this._props.TemplateDataDocument : undefined;
const maxHeight = (lim => (lim === 0 ? this._props.PanelWidth() : lim === -1 ? 10000 : lim))(NumCast(this.layoutDoc.childLimitHeight, -1));
const nw = Doc.NativeWidth(childLayoutDoc, childDataDoc) || (!this.childFitWidth(childLayoutDoc) ? NumCast(d._width) : 0);
const nh = Doc.NativeHeight(childLayoutDoc, childDataDoc) || (!this.childFitWidth(childLayoutDoc) ? NumCast(d._height) : 0);
@@ -720,7 +720,7 @@ export class CollectionStackingView extends CollectionSubView<Partial<collection
return this._props.isContentActive() === false ? 'none' : undefined;
}
- onPassiveWheel = (e: WheelEvent) => e.stopPropagation();
+ onPassiveWheel = (e: WheelEvent) => this._props.isContentActive() && e.stopPropagation();
render() {
TraceMobx();
const editableViewProps = {
diff --git a/src/client/views/collections/CollectionStackingViewFieldColumn.tsx b/src/client/views/collections/CollectionStackingViewFieldColumn.tsx
index 66839ba7f..994669734 100644
--- a/src/client/views/collections/CollectionStackingViewFieldColumn.tsx
+++ b/src/client/views/collections/CollectionStackingViewFieldColumn.tsx
@@ -274,7 +274,7 @@ export class CollectionStackingViewFieldColumn extends ObservableReactComponent<
const container = DocCast(this._props.Doc.rootDocument)?.[DocData] ? Doc.GetProto(this._props.Doc) : this._props.Doc;
if (container.isTemplateDoc) {
Doc.MakeMetadataFieldTemplate(created, container);
- return Doc.AddDocToList(container, Doc.LayoutFieldKey(container), created);
+ return Doc.AddDocToList(container, Doc.LayoutDataKey(container), created);
}
return this._props.addDocument?.(created) || false;
}
@@ -316,7 +316,7 @@ export class CollectionStackingViewFieldColumn extends ObservableReactComponent<
ref={this._headerRef}
style={{
marginTop: this._props.yMargin,
- width: this._props.columnWidth
+ width: this._props.columnWidth,
}}>
{/* the default bucket (no key value) has a tooltip that describes what it is.
Further, it does not have a color and cannot be deleted. */}
diff --git a/src/client/views/collections/CollectionSubView.tsx b/src/client/views/collections/CollectionSubView.tsx
index 375c0fe53..bc7d6f897 100644
--- a/src/client/views/collections/CollectionSubView.tsx
+++ b/src/client/views/collections/CollectionSubView.tsx
@@ -3,7 +3,7 @@ import * as React from 'react';
import * as rp from 'request-promise';
import { ClientUtils, DashColor, returnFalse } from '../../../ClientUtils';
import CursorField from '../../../fields/CursorField';
-import { Doc, DocListCast, GetDocFromUrl, GetHrefFromHTML, Opt, RTFIsFragment, StrListCast } from '../../../fields/Doc';
+import { Doc, DocListCast, expandedFieldName, GetDocFromUrl, GetHrefFromHTML, Opt, RTFIsFragment, StrListCast } from '../../../fields/Doc';
import { AclPrivate, DocData } from '../../../fields/DocSymbols';
import { Id } from '../../../fields/FieldSymbols';
import { List } from '../../../fields/List';
@@ -132,16 +132,23 @@ export function CollectionSubView<X>() {
hasChildDocs = () => this.childLayoutPairs.map(pair => pair.layout);
@computed get childLayoutPairs(): { layout: Doc; data: Doc }[] {
- const { TemplateDataDocument } = this._props;
- const validPairs = this.childDocs
- .map(doc => Doc.GetLayoutDataDocPair(this.Document, !this._props.isAnnotationOverlay ? TemplateDataDocument : undefined, doc))
- .filter(
- pair =>
- // filter out any documents that have a proto that we don't have permissions to
- !pair.layout?.hidden && pair.layout && (!pair.layout.proto || (pair.layout.proto instanceof Doc && GetEffectiveAcl(pair.layout.proto) !== AclPrivate))
- )
- .filter(pair => !this._filterFunc?.(pair.layout!));
- return validPairs.map(({ data, layout }) => ({ data: data as Doc, layout: layout! })); // this mapping is a bit of a hack to coerce types
+ const lastEle = this.DocumentView?.();
+ if (!lastEle?.IsInvalid(this.Document)) {
+ const rootTemplate = lastEle && Doc.LayoutDoc(lastEle.rootDoc).isTemplateDoc && Doc.LayoutDoc(lastEle.rootDoc);
+ const templateFieldKey = rootTemplate &&
+ [expandedFieldName(rootTemplate),
+ ...this._props.docViewPath()
+ .filter(dv => dv.Document.isTemplateForField)
+ .map(dv => dv.Document.title),
+ ].join('_'); // prettier-ignore
+ return this.childDocs
+ .map(doc => Doc.GetLayoutDataDocPair(this.Document, !this._props.isAnnotationOverlay ? this._props.TemplateDataDocument : undefined, doc, templateFieldKey || ""))
+ .filter(pair => // filter out any documents that have a proto that we don't have permissions to
+ !pair.layout?.hidden && pair.layout && (!pair.layout.proto || (pair.layout.proto instanceof Doc && GetEffectiveAcl(pair.layout.proto) !== AclPrivate)))
+ .filter(pair => !this._filterFunc?.(pair.layout!))
+ .map(({ data, layout }) => ({ data: data!, layout: layout! })); // prettier-ignore
+ }
+ return [];
}
/**
* This is the raw, stored list of children on a collection. If you modify this list, the database will be updated
@@ -161,7 +168,7 @@ export function CollectionSubView<X>() {
};
collectionFilters = () => this._focusFilters ?? StrListCast(this.Document._childFilters);
- collectionRangeDocFilters = () => this._focusRangeFilters ?? Cast(this.Document._childFiltersByRanges, listSpec('string'), []);
+ collectionRangeDocFilters = () => this._focusRangeFilters ?? StrListCast(this.Document._childFiltersByRanges);
// child filters apply to the descendants of the documents in this collection
childDocFilters = () => [...(this._props.childFilters?.().filter(f => ClientUtils.IsRecursiveFilter(f)) || []), ...this.collectionFilters()];
// unrecursive filters apply to the documents in the collection, but no their children. See Utils.noRecursionHack
@@ -178,7 +185,7 @@ export function CollectionSubView<X>() {
rawdocs = [this.dataField];
} else if (Cast(this.dataField, listSpec(Doc), null)) {
// otherwise, if the collection data is a list, then use it.
- rawdocs = Cast(this.dataField, listSpec(Doc), null);
+ rawdocs = DocListCast(this.dataField);
} else if (this.dataField) {
// Finally, if it's not a doc or a list and the document is a template, we try to render the root doc.
// For example, if an image doc is rendered with a slide template, the template will try to render the data field as a collection.
@@ -206,7 +213,7 @@ export function CollectionSubView<X>() {
let notFiltered = d.z || Doc.IsSystem(d) || DocUtils.FilterDocs([d], this.unrecursiveDocFilters(), childFiltersByRanges, this.Document).length > 0;
if (notFiltered) {
notFiltered = (!searchDocs.length || searchDocs.includes(d)) && DocUtils.FilterDocs([d], childDocFilters, childFiltersByRanges, this.Document).length > 0;
- const fieldKey = Doc.LayoutFieldKey(d);
+ const fieldKey = Doc.LayoutDataKey(d);
const isAnnotatableDoc = d[fieldKey] instanceof List && !(d[fieldKey] as List<Doc>)?.some(ele => !(ele instanceof Doc));
const docChildDocs = d[isAnnotatableDoc ? fieldKey + '_annotations' : fieldKey];
const sidebarDocs = isAnnotatableDoc && d[fieldKey + '_sidebar'];
@@ -219,7 +226,7 @@ export function CollectionSubView<X>() {
newarray = [];
// eslint-disable-next-line no-loop-func
subDocs.forEach(t => {
- const docFieldKey = Doc.LayoutFieldKey(t);
+ const docFieldKey = Doc.LayoutDataKey(t);
const isSubDocAnnotatable = t[docFieldKey] instanceof List && !(t[docFieldKey] as List<Doc>)?.some(ele => !(ele instanceof Doc));
notFiltered =
notFiltered || ((!searchDocs.length || searchDocs.includes(t)) && ((!childDocFilters.length && !childFiltersByRanges.length) || DocUtils.FilterDocs([t], childDocFilters, childFiltersByRanges, d).length));
diff --git a/src/client/views/collections/CollectionTreeView.tsx b/src/client/views/collections/CollectionTreeView.tsx
index 962fbdcd7..3497a62cb 100644
--- a/src/client/views/collections/CollectionTreeView.tsx
+++ b/src/client/views/collections/CollectionTreeView.tsx
@@ -467,7 +467,7 @@ export class CollectionTreeView extends CollectionSubView<Partial<collectionTree
const scale = this._props.NativeDimScaling?.() || 1;
return (
- <div style={{ transform: `scale(${scale})`, transformOrigin: 'top left', width: `${100 / scale}%`, height: `${100 / scale}%` }}>
+ <div className="collectionTreeView" style={{ transform: `scale(${scale})`, transformOrigin: 'top left', width: `${100 / scale}%`, height: `${100 / scale}%` }}>
{!(this.Document instanceof Doc) || !this.treeChildren ? null : this.Document.treeView_HasOverlay ? (
<CollectionFreeFormView
{...this._props}
diff --git a/src/client/views/collections/TabDocView.tsx b/src/client/views/collections/TabDocView.tsx
index 568a08792..4348bc7dc 100644
--- a/src/client/views/collections/TabDocView.tsx
+++ b/src/client/views/collections/TabDocView.tsx
@@ -15,7 +15,7 @@ import { Id } from '../../../fields/FieldSymbols';
import { List } from '../../../fields/List';
import { FieldId } from '../../../fields/RefField';
import { ComputedField } from '../../../fields/ScriptField';
-import { Cast, NumCast, StrCast, toList } from '../../../fields/Types';
+import { Cast, DocCast, NumCast, StrCast, toList } from '../../../fields/Types';
import { DocServer } from '../../DocServer';
import { CollectionViewType, DocumentType } from '../../documents/DocumentTypes';
import { Docs } from '../../documents/Documents';
@@ -145,7 +145,7 @@ export class TabMinimapView extends ObservableReactComponent<TabMinimapViewProps
select={emptyFunction}
isSelected={returnFalse}
dontRegisterView
- fieldKey={Doc.LayoutFieldKey(this._props.doc)}
+ fieldKey={Doc.LayoutDataKey(this._props.doc)}
addDocument={returnFalse}
moveDocument={returnFalse}
removeDocument={returnFalse}
@@ -173,7 +173,7 @@ export class TabMinimapView extends ObservableReactComponent<TabMinimapViewProps
);
};
render() {
- return this._props.doc.layout !== CollectionView.LayoutString(Doc.LayoutFieldKey(this._props.doc)) || this._props.doc?._type_collection !== CollectionViewType.Freeform ? null : (
+ return this._props.doc.layout !== CollectionView.LayoutString(Doc.LayoutDataKey(this._props.doc)) || this._props.doc?._type_collection !== CollectionViewType.Freeform ? null : (
<div className="miniMap-hidden">
<Popup icon={<FontAwesomeIcon icon="globe-asia" size="lg" />} color={SnappingManager.userVariantColor} type={Type.TERT} onPointerDown={e => e.stopPropagation()} placement="top-end" popup={this.popup} />
</div>
@@ -207,10 +207,10 @@ export class TabDocView extends ObservableReactComponent<TabDocViewProps> {
const docs = toList(docIn);
const batch = UndoManager.StartBatch('Pin doc to pres trail');
- const curPres = Doc.ActivePresentation ?? Doc.MakeCopy(Doc.UserDoc().emptyTrail as Doc, true);
+ const curPres = Doc.ActivePresentation ?? (DocCast(Doc.UserDoc().emptyTrail) ? Doc.MakeCopy(DocCast(Doc.UserDoc().emptyTrail)!, true) : Docs.Create.PresDocument({}));
if (!Doc.ActivePresentation) {
- Doc.AddDocToList(Doc.MyTrails, 'data', curPres);
+ Doc.MyTrails && Doc.AddDocToList(Doc.MyTrails, 'data', curPres);
Doc.ActivePresentation = curPres;
}
@@ -236,7 +236,7 @@ export class TabDocView extends ObservableReactComponent<TabDocViewProps> {
pinDoc.treeView_FieldKey = 'data'; // tree view will treat the 'data' field as the field where the hierarchical children are located instead of using the document's layout string field
pinDoc.treeView_ExpandedView = 'data'; // in case the data doc has an expandedView set, this will mask that field and use the 'data' field when expanding the tree view
pinDoc.treeView_HideHeaderIfTemplate = true; // this will force the document to render itself as the tree view header
- const duration = NumCast(doc[`${Doc.LayoutFieldKey(pinDoc)}_duration`], null);
+ const duration = NumCast(doc[`${Doc.LayoutDataKey(pinDoc)}_duration`], null);
if (pinProps.pinViewport) PinDocView(pinDoc, pinProps, anchorDoc ?? doc);
if (!pinProps?.audioRange && duration !== undefined) {
@@ -566,7 +566,7 @@ export class TabDocView extends ObservableReactComponent<TabDocViewProps> {
return false;
};
- getCurrentFrame = () => NumCast(Cast(PresBox.Instance.activeItem.presentation_targetDoc, Doc, null)._currentFrame);
+ getCurrentFrame = () => NumCast(DocCast(PresBox.Instance.activeItem?.presentation_targetDoc)?._currentFrame);
focusFunc = () => {
if (!this.tab.header.parent._activeContentItem || this.tab.header.parent._activeContentItem !== this.tab.contentItem) {
this.tab.header.parent.setActiveContentItem(this.tab.contentItem); // glr: Panning does not work when this is set - (this line is for trying to make a tab that is not topmost become topmost)
diff --git a/src/client/views/collections/TreeView.tsx b/src/client/views/collections/TreeView.tsx
index 4dc937864..4beb75074 100644
--- a/src/client/views/collections/TreeView.tsx
+++ b/src/client/views/collections/TreeView.tsx
@@ -159,7 +159,7 @@ export class TreeView extends ObservableReactComponent<TreeViewProps> {
return this.Document[DocLayout];
}
@computed get fieldKey() {
- return StrCast(this.Document._treeView_FieldKey, Doc.LayoutFieldKey(this.Document));
+ return StrCast(this.Document._treeView_FieldKey, Doc.LayoutDataKey(this.Document));
}
@computed get childDocs() {
return this.childDocList(this.fieldKey);
@@ -186,7 +186,7 @@ export class TreeView extends ObservableReactComponent<TreeViewProps> {
moving: boolean = false;
@undoBatch move = (doc: Doc | Doc[], target: Doc | undefined, addDoc: (doc: Doc | Doc[]) => boolean) => {
if (this.Document !== target && addDoc !== returnFalse) {
- const canAdd1 = (this._props.parentTreeView as TreeView).dropping || !(ComputedField.WithoutComputed(() => FieldValue(this._props.parentTreeView?.Document.data)) instanceof ComputedField);
+ const canAdd1 = (this._props.parentTreeView as TreeView).dropping || !(ComputedField.DisableCompute(() => FieldValue(this._props.parentTreeView?.Document.data)) instanceof ComputedField);
// bcz: this should all be running in a Temp undo batch instead of hackily testing for returnFalse
if (canAdd1 && this._props.removeDoc?.(doc) === true) {
@@ -431,9 +431,9 @@ export class TreeView extends ObservableReactComponent<TreeViewProps> {
localAdd = (docs: Doc | Doc[]): boolean => {
const innerAdd = (doc: Doc): boolean => {
- const dataIsComputed = ComputedField.WithoutComputed(() => FieldValue(this.dataDoc[this.fieldKey])) instanceof ComputedField;
+ const dataIsComputed = ComputedField.DisableCompute(() => FieldValue(this.dataDoc[this.fieldKey])) instanceof ComputedField;
const added = (!dataIsComputed || (this.dropping && this.moving)) && Doc.AddDocToList(this.dataDoc, this.fieldKey, doc);
- dataIsComputed && Doc.SetContainer(doc, DocCast(this.Document.embedContainer));
+ dataIsComputed && DocCast(this.Document.embedContainer) && Doc.SetContainer(doc, DocCast(this.Document.embedContainer)!);
return added;
};
return toList(docs).reduce((flg, doc) => flg && innerAdd(doc), true as boolean);
@@ -511,9 +511,9 @@ export class TreeView extends ObservableReactComponent<TreeViewProps> {
const moveDoc = (docs: Doc | Doc[], target: Doc | undefined, addDoc: (doc: Doc | Doc[]) => boolean) => this.move(docs, target, addDoc);
const addDoc = (docs: Doc | Doc[], addBefore?: Doc, before?: boolean) => {
const innerAdd = (iDoc: Doc) => {
- const dataIsComputed = ComputedField.WithoutComputed(() => FieldValue(this.dataDoc[key])) instanceof ComputedField;
+ const dataIsComputed = ComputedField.DisableCompute(() => FieldValue(this.dataDoc[key])) instanceof ComputedField;
const added = (!dataIsComputed || (this.dropping && this.moving)) && Doc.AddDocToList(this.dataDoc, key, iDoc, addBefore, before, false, true);
- dataIsComputed && Doc.SetContainer(iDoc, DocCast(this.Document.embedContainer));
+ dataIsComputed && DocCast(this.Document.embedContainer) && Doc.SetContainer(iDoc, DocCast(this.Document.embedContainer)!);
return added;
};
return toList(docs).reduce((flg, iDoc) => flg && innerAdd(iDoc), true as boolean);
@@ -633,7 +633,7 @@ export class TreeView extends ObservableReactComponent<TreeViewProps> {
d.zIndex = i;
});
}
- const dataIsComputed = ComputedField.WithoutComputed(() => FieldValue(this.dataDoc[key])) instanceof ComputedField;
+ const dataIsComputed = ComputedField.DisableCompute(() => FieldValue(this.dataDoc[key])) instanceof ComputedField;
const added = (!dataIsComputed || (this.dropping && this.moving)) && Doc.AddDocToList(this.dataDoc, key, doc, addBefore, before, false);
!dataIsComputed && added && Doc.SetContainer(doc, this.Document);
@@ -883,8 +883,8 @@ export class TreeView extends ObservableReactComponent<TreeViewProps> {
];
};
childContextMenuItems = () => {
- const customScripts = Cast(this.Document.childContextMenuScripts, listSpec(ScriptField), []);
- const customFilters = Cast(this.Document.childContextMenuFilters, listSpec(ScriptField), []);
+ const customScripts = Cast(this.Document.childContextMenuScripts, listSpec(ScriptField), [])!;
+ const customFilters = Cast(this.Document.childContextMenuFilters, listSpec(ScriptField), [])!;
const icons = StrListCast(this.Document.childContextMenuIcons);
return StrListCast(this.Document.childContextMenuLabels).map((label, i) => ({ script: customScripts[i], filter: customFilters[i], icon: icons[i], label }));
};
@@ -1296,7 +1296,7 @@ export class TreeView extends ObservableReactComponent<TreeViewProps> {
const dentDoc = (editTitle: boolean, newParent: Doc, addAfter: Doc | undefined, parent: TreeView | CollectionTreeView | undefined) => {
if (parent instanceof TreeView && parent._props.treeView.fileSysMode && !newParent.isFolder) return;
- const fieldKey = Doc.LayoutFieldKey(newParent);
+ const fieldKey = Doc.LayoutDataKey(newParent);
if (remove && fieldKey && Cast(newParent[fieldKey], listSpec(Doc)) !== undefined) {
remove(child);
DocumentView.SetSelectOnLoad(child);
diff --git a/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx b/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx
index 626538976..842293358 100644
--- a/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx
+++ b/src/client/views/collections/collectionFreeForm/CollectionFreeFormView.tsx
@@ -275,7 +275,7 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
onChildDoubleClickHandler = () => this._props.childDoubleClickScript || ScriptCast(this.Document.onChildDoubleClick);
elementFunc = () => this._layoutElements;
viewTransition = () => (this._panZoomTransition ? '' + this._panZoomTransition : undefined);
- panZoomTransition = () => (this._panZoomTransition ? `transform ${this._panZoomTransition}ms` : Cast(this.layoutDoc._viewTransition, 'string', Cast(this.Document._viewTransition, 'string', null)));
+ panZoomTransition = () => (this._panZoomTransition ? `transform ${this._panZoomTransition}ms` : (Cast(this.layoutDoc._viewTransition, 'string', Cast(this.Document._viewTransition, 'string', null) ?? null) ?? ''));
fitContentOnce = () => {
const { cx, cy, scale } = this.contentBounds(); // prettier-ignore
this.layoutDoc._freeform_panX = cx;
@@ -388,7 +388,7 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
if (options.easeFunc) this.setPresEaseFunc(options.easeFunc);
if (this._lightboxDoc) return undefined;
if (options.pointFocus) return this.focusOnPoint(options);
- const anchorInCollection = DocListCast(this.Document[this.fieldKey ?? Doc.LayoutFieldKey(this.Document)]).includes(anchor);
+ const anchorInCollection = DocListCast(this.Document[this.fieldKey ?? Doc.LayoutDataKey(this.Document)]).includes(anchor);
const anchorInChildViews = this.childLayoutPairs.map(pair => pair.layout).includes(anchor);
if (!anchorInCollection && !anchorInChildViews) {
return undefined;
@@ -1308,7 +1308,7 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
SnappingManager.TriggerUserPanned();
if (this.layoutDoc._Transform || this.Document.treeView_OutlineMode === TreeViewType.outline) return;
e.stopPropagation();
- const docHeight = NumCast(this.Document[Doc.LayoutFieldKey(this.Document) + '_nativeHeight'], this.nativeHeight);
+ const docHeight = NumCast(this.Document[Doc.LayoutDataKey(this.Document) + '_nativeHeight'], this.nativeHeight);
const scrollable = this.isAnnotationOverlay && NumCast(this.layoutDoc[this.scaleFieldKey], 1) === 1 && docHeight > this._props.PanelHeight() / this.nativeDimScaling + 1e-4;
switch (
!e.ctrlKey && !e.shiftKey && !e.metaKey && !e.altKey ?//
@@ -1489,12 +1489,15 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
*/
createTextDocCopy = undoable((textBox: FormattedTextBox, below: boolean) => {
const textDoc = DocCast(textBox.Document);
- const newDoc = Doc.MakeCopy(textDoc, true);
- newDoc['$' + Doc.LayoutFieldKey(newDoc)] = undefined; // the copy should not copy the text contents of it source, just the render style
- newDoc.x = NumCast(textDoc.x) + (below ? 0 : NumCast(textDoc._width) + 10);
- newDoc.y = NumCast(textDoc.y) + (below ? NumCast(textDoc._height) + 10 : 0);
- DocumentView.SetSelectOnLoad(newDoc);
- return this.addDocument?.(newDoc);
+ if (textDoc) {
+ const newDoc = Doc.MakeCopy(textDoc, true);
+ newDoc['$' + Doc.LayoutDataKey(newDoc)] = undefined; // the copy should not copy the text contents of it source, just the render style
+ newDoc.x = NumCast(textDoc.x) + (below ? 0 : NumCast(textDoc._width) + 10);
+ newDoc.y = NumCast(textDoc.y) + (below ? NumCast(textDoc._height) + 10 : 0);
+ DocumentView.SetSelectOnLoad(newDoc);
+ return this.addDocument?.(newDoc);
+ }
+ return false;
}, 'copied text note');
onKey = (e: KeyboardEvent, textBox: FormattedTextBox) => {
@@ -1741,7 +1744,7 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
if (addAsAnnotation) {
if (Cast(this.dataDoc[this._props.fieldKey + '_annotations'], listSpec(Doc), null) !== undefined) {
- Cast(this.dataDoc[this._props.fieldKey + '_annotations'], listSpec(Doc), []).push(anchor);
+ Cast(this.dataDoc[this._props.fieldKey + '_annotations'], listSpec(Doc), [])?.push(anchor);
} else {
this.dataDoc[this._props.fieldKey + '_annotations'] = new List<Doc>([anchor]);
}
@@ -1985,7 +1988,7 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
optionItems.push({
description: 'Use Background Color as Default',
event: () => {
- Cast(Doc.UserDoc().emptyCollection, Doc, null).backgroundColor = StrCast(this.layoutDoc.backgroundColor);
+ DocCast(Doc.UserDoc().emptyCollection) && (DocCast(Doc.UserDoc().emptyCollection)!.backgroundColor = StrCast(this.layoutDoc.backgroundColor));
},
icon: 'palette',
});
@@ -2085,7 +2088,7 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
lightboxPanelHeight = () => Math.max(0, this._props.PanelHeight() - 30);
lightboxScreenToLocal = () => this.ScreenToLocalBoxXf().translate(-15, -15);
onPassiveWheel = (e: WheelEvent) => {
- const docHeight = NumCast(this.Document[Doc.LayoutFieldKey(this.Document) + '_nativeHeight'], this.nativeHeight);
+ const docHeight = NumCast(this.Document[Doc.LayoutDataKey(this.Document) + '_nativeHeight'], this.nativeHeight);
const scrollable = NumCast(this.layoutDoc[this.scaleFieldKey], 1) === 1 && docHeight > this._props.PanelHeight() / this.nativeDimScaling;
this._props.isSelected() && !scrollable && e.preventDefault();
};
@@ -2108,7 +2111,7 @@ export class CollectionFreeFormView extends CollectionSubView<Partial<collection
</div>
);
}
- transitionFunc = () => (this._panZoomTransition ? `transform ${this._panZoomTransition}ms ${this._presEaseFunc}` : Cast(this.layoutDoc._viewTransition, 'string', Cast(this.Document._viewTransition, 'string', null)));
+ transitionFunc = () => (this._panZoomTransition ? `transform ${this._panZoomTransition}ms ${this._presEaseFunc}` : (Cast(this.layoutDoc._viewTransition, 'string', Cast(this.Document._viewTransition, 'string', null) ?? null) ?? ''));
get pannableContents() {
this.incrementalRender(); // needs to happen synchronously or freshly typed text documents will flash and miss their first characters
return (
@@ -2385,7 +2388,7 @@ ScriptingGlobals.add(function datavizFromSchema() {
const keys = Cast(view.layoutDoc.schema_columnKeys, listSpec('string'))?.filter(key => key !== 'text');
if (!keys) return;
- const children = DocListCast(view.Document[Doc.LayoutFieldKey(view.Document)]);
+ const children = DocListCast(view.Document[Doc.LayoutDataKey(view.Document)]);
const csvRows = [];
csvRows.push(keys.join(','));
for (let i = 0; i < children.length; i++) {
diff --git a/src/client/views/collections/collectionFreeForm/FaceCollectionBox.tsx b/src/client/views/collections/collectionFreeForm/FaceCollectionBox.tsx
index c7aa410c6..72485aa86 100644
--- a/src/client/views/collections/collectionFreeForm/FaceCollectionBox.tsx
+++ b/src/client/views/collections/collectionFreeForm/FaceCollectionBox.tsx
@@ -187,7 +187,7 @@ export class UniqueFaceBox extends ViewBoxBaseComponent<FieldViewProps>() {
ele?.addEventListener('wheel', this.onPassiveWheel, { passive: false });
})}>
{FaceRecognitionHandler.UniqueFaceImages(this.Document).map((doc, i) => {
- const [name, type] = ImageCastToNameType(doc[Doc.LayoutFieldKey(doc)]) ?? ['-missing-', '.png'];
+ const [name, type] = ImageCastToNameType(doc[Doc.LayoutDataKey(doc)]) ?? ['-missing-', '.png'];
return (
<div
className="image-wrapper"
diff --git a/src/client/views/collections/collectionFreeForm/ImageLabelBox.tsx b/src/client/views/collections/collectionFreeForm/ImageLabelBox.tsx
index 7c8ccb92d..ff9fb14e7 100644
--- a/src/client/views/collections/collectionFreeForm/ImageLabelBox.tsx
+++ b/src/client/views/collections/collectionFreeForm/ImageLabelBox.tsx
@@ -165,7 +165,7 @@ export class ImageLabelBox extends ViewBoxBaseComponent<FieldViewProps>() {
const imageInfos = this._selectedImages.map(async doc => {
if (!doc.$tags_chat) {
- const url = ImageCastWithSuffix(doc[Doc.LayoutFieldKey(doc)], '_o') ?? '';
+ const url = ImageCastWithSuffix(doc[Doc.LayoutDataKey(doc)], '_o') ?? '';
return imageUrlToBase64(url).then(hrefBase64 =>
!hrefBase64 ? undefined :
gptImageLabel(hrefBase64,'Give three labels to describe this image.').then(labels =>
@@ -310,7 +310,7 @@ export class ImageLabelBox extends ViewBoxBaseComponent<FieldViewProps>() {
{this._displayImageInformation ? (
<div className="image-information-list">
{this._selectedImages.map(doc => {
- const [name, type] = ImageCastToNameType(doc[Doc.LayoutFieldKey(doc)]);
+ const [name, type] = ImageCastToNameType(doc[Doc.LayoutDataKey(doc)]);
return (
<div className="image-information" style={{ borderColor: SettingsManager.userColor }} key={Utils.GenerateGuid()}>
<img
diff --git a/src/client/views/collections/collectionFreeForm/MarqueeView.tsx b/src/client/views/collections/collectionFreeForm/MarqueeView.tsx
index 5fbf72f39..3cc7c0f2d 100644
--- a/src/client/views/collections/collectionFreeForm/MarqueeView.tsx
+++ b/src/client/views/collections/collectionFreeForm/MarqueeView.tsx
@@ -8,7 +8,7 @@ import { AclAdmin, AclAugment, AclEdit, DocData } from '../../../../fields/DocSy
import { Id } from '../../../../fields/FieldSymbols';
import { InkData, InkTool } from '../../../../fields/InkField';
import { List } from '../../../../fields/List';
-import { Cast, NumCast, ScriptCast, StrCast } from '../../../../fields/Types';
+import { Cast, DocCast, NumCast, ScriptCast, StrCast } from '../../../../fields/Types';
import { ImageField } from '../../../../fields/URLField';
import { GetEffectiveAcl } from '../../../../fields/util';
import { DocUtils } from '../../../documents/DocUtils';
@@ -376,7 +376,7 @@ export class MarqueeView extends ObservableReactComponent<SubCollectionViewProps
doc.$title = makeGroup ? 'grouping' : 'nested freeform';
doc._freeform_panX = doc._freeform_panY = 0;
return doc;
- })(Doc.MakeCopy(Doc.UserDoc().emptyCollection as Doc, true));
+ })(DocCast(Doc.UserDoc().emptyCollection) ? Doc.MakeCopy(DocCast(Doc.UserDoc().emptyCollection)!, true) : Docs.Create.FreeformDocument([], {}));
newCollection.isSystem = undefined;
newCollection._width = bounds.width || 1; // if width/height are unset/0, then groups won't autoexpand to contain their children
newCollection._height = bounds.height || 1;
@@ -437,7 +437,7 @@ export class MarqueeView extends ObservableReactComponent<SubCollectionViewProps
*/
@undoBatch
classifyImages = async () => {
- const groupButton = DocListCast(Doc.MyLeftSidebarMenu.data).find(d => d.target === Doc.MyImageGrouper);
+ const groupButton = DocListCast(Doc.MyLeftSidebarMenu?.data).find(d => d.target === Doc.MyImageGrouper);
if (groupButton) {
this._selectedDocs = this.marqueeSelect(false, DocumentType.IMG);
ImageLabelBoxData.Instance.setData(this._selectedDocs);
diff --git a/src/client/views/collections/collectionLinear/CollectionLinearView.tsx b/src/client/views/collections/collectionLinear/CollectionLinearView.tsx
index 80116dd2f..8d3947653 100644
--- a/src/client/views/collections/collectionLinear/CollectionLinearView.tsx
+++ b/src/client/views/collections/collectionLinear/CollectionLinearView.tsx
@@ -102,7 +102,7 @@ export class CollectionLinearView extends CollectionSubView() {
getLinkUI = () =>
!DocumentLinksButton.StartLink ? null : (
- <span className="bottomPopup-background" style={{ pointerEvents: 'all' }} onPointerDown={e => e.stopPropagation()}>
+ <span key="-link-ui-" className="bottomPopup-background" style={{ pointerEvents: 'all' }} onPointerDown={e => e.stopPropagation()}>
<span className="bottomPopup-text">
Creating link from:{' '}
<b>
@@ -126,7 +126,7 @@ export class CollectionLinearView extends CollectionSubView() {
);
getCurrentlyPlayingUI = () =>
!DocumentView.CurrentlyPlaying?.length ? null : (
- <span className="bottomPopup-background">
+ <span key="-currently-playing-" className="bottomPopup-background">
<span className="bottomPopup-text">
Currently playing:
{DocumentView.CurrentlyPlaying.map((clip, i) => (
diff --git a/src/client/views/collections/collectionSchema/CollectionSchemaView.tsx b/src/client/views/collections/collectionSchema/CollectionSchemaView.tsx
index 5803acca0..82ca96839 100644
--- a/src/client/views/collections/collectionSchema/CollectionSchemaView.tsx
+++ b/src/client/views/collections/collectionSchema/CollectionSchemaView.tsx
@@ -1193,7 +1193,7 @@ export class CollectionSchemaView extends CollectionSubView() {
let notFiltered = d.z || Doc.IsSystem(d) || DocUtils.FilterDocs([d], this.unrecursiveDocFilters(), childFiltersByRanges, this.Document).length > 0;
if (notFiltered) {
notFiltered = (!searchDocs.length || searchDocs.includes(d)) && DocUtils.FilterDocs([d], childDocFilters, childFiltersByRanges, this.Document).length > 0;
- const fieldKey = Doc.LayoutFieldKey(d);
+ const fieldKey = Doc.LayoutDataKey(d);
const isAnnotatableDoc = d[fieldKey] instanceof List && !(d[fieldKey] as List<Doc>)?.some(ele => !(ele instanceof Doc));
const docChildDocs = d[isAnnotatableDoc ? fieldKey + '_annotations' : fieldKey];
const sidebarDocs = isAnnotatableDoc && d[fieldKey + '_sidebar'];
@@ -1206,7 +1206,7 @@ export class CollectionSchemaView extends CollectionSubView() {
newarray = [];
// eslint-disable-next-line no-loop-func
subDocs.forEach(t => {
- const docFieldKey = Doc.LayoutFieldKey(t);
+ const docFieldKey = Doc.LayoutDataKey(t);
const isSubDocAnnotatable = t[docFieldKey] instanceof List && !(t[docFieldKey] as List<Doc>)?.some(ele => !(ele instanceof Doc));
notFiltered = notFiltered || ((!searchDocs.length || searchDocs.includes(t)) && ((!childDocFilters.length && !childFiltersByRanges.length) || DocUtils.FilterDocs([t], childDocFilters, childFiltersByRanges, d).length));
DocListCast(t[isSubDocAnnotatable ? docFieldKey + '_annotations' : docFieldKey]).forEach(newdoc => newarray.push(newdoc));
diff --git a/src/client/views/collections/collectionSchema/SchemaTableCell.tsx b/src/client/views/collections/collectionSchema/SchemaTableCell.tsx
index 173984dc7..8e1edc1ee 100644
--- a/src/client/views/collections/collectionSchema/SchemaTableCell.tsx
+++ b/src/client/views/collections/collectionSchema/SchemaTableCell.tsx
@@ -326,7 +326,7 @@ export class SchemaImageCell extends ObservableReactComponent<SchemaTableCellPro
const field = Cast(this._props.Doc[this._props.fieldKey], ImageField, null); // retrieve the primary image URL that is being rendered from the data doc
const alts = DocListCast(this._props.Doc[this._props.fieldKey + '_alternates']); // retrieve alternate documents that may be rendered as alternate images
const altpaths = alts
- .map(doc => Cast(doc[Doc.LayoutFieldKey(doc)], ImageField, null)?.url)
+ .map(doc => Cast(doc[Doc.LayoutDataKey(doc)], ImageField, null)?.url)
.filter(url => url)
.map(url => this.choosePath(url)); // access the primary layout data of the alternate documents
const paths = field ? [this.choosePath(field.url), ...altpaths] : altpaths;
diff --git a/src/client/views/global/globalScripts.ts b/src/client/views/global/globalScripts.ts
index 32afb3d3d..f4beb1004 100644
--- a/src/client/views/global/globalScripts.ts
+++ b/src/client/views/global/globalScripts.ts
@@ -76,7 +76,7 @@ ScriptingGlobals.add(function setBorderColor(color?: string, checkResult?: boole
const selView = selectedViews.lastElement();
const layoutFrameNumber = Cast(selView.containerViewPath?.().lastElement()?.Document?._currentFrame, 'number'); // frame number that container is at which determines layout frame values
const contentFrameNumber = Cast(selView.Document?._currentFrame, 'number', layoutFrameNumber ?? null); // frame number that content is at which determines what content is displayed
- return CollectionFreeFormDocumentView.getStringValues(selView?.Document, contentFrameNumber)[fieldKey] || defaultBorder();
+ return (contentFrameNumber !== undefined && CollectionFreeFormDocumentView.getStringValues(selView?.Document, contentFrameNumber)[fieldKey]) || defaultBorder();
}
setDefaultBorder(color ?? 'transparent');
selectedViews.forEach(dv => {
@@ -87,7 +87,7 @@ ScriptingGlobals.add(function setBorderColor(color?: string, checkResult?: boole
obj[fieldKey] = color;
CollectionFreeFormDocumentView.setStringValues(contentFrameNumber, dv.Document, obj);
} else {
- const dataKey = Doc.LayoutFieldKey(dv.Document);
+ const dataKey = Doc.LayoutDataKey(dv.Document);
const alternate = (dv.layoutDoc[dataKey + '_usePath'] ? '_' + dv.layoutDoc[dataKey + '_usePath'] : '').replace(':hover', '');
dv.layoutDoc[fieldKey + alternate] = undefined;
dv.dataDoc[fieldKey + alternate] = color;
@@ -133,7 +133,7 @@ ScriptingGlobals.add(function setBackgroundColor(color?: string, checkResult?: b
CollectionFreeFormDocumentView.setStringValues(contentFrameNumber, dv.Document, obj);
} else {
const colorDoc = dv.isTemplateForField ? dv.layoutDoc : dv.dataDoc; // assigning to a template's compoment field should not assign to the data doc
- const dataKey = Doc.LayoutFieldKey(colorDoc);
+ const dataKey = Doc.LayoutDataKey(colorDoc);
const alternate = (dv.layoutDoc[dataKey + '_usePath'] ? '_' + dv.layoutDoc[dataKey + '_usePath'] : '').replace(':hover', '');
colorDoc[fieldKey + alternate] = color;
}
@@ -158,7 +158,7 @@ ScriptingGlobals.add(function setDefaultTemplate(checkResult?: boolean) {
// eslint-disable-next-line prefer-arrow-callback
ScriptingGlobals.add(function setHeaderColor(color?: string, checkResult?: boolean) {
if (checkResult) {
- return DocumentView.Selected().length ? StrCast(DocumentView.SelectedDocs().lastElement().layout_headingColor) : Doc.SharingDoc().headingColor;
+ return DocumentView.Selected().length ? StrCast(DocumentView.SelectedDocs().lastElement().layout_headingColor) : Doc.SharingDoc()?.headingColor;
}
if (DocumentView.Selected().length) {
DocumentView.SelectedDocs().forEach(doc => {
@@ -166,8 +166,11 @@ ScriptingGlobals.add(function setHeaderColor(color?: string, checkResult?: boole
doc.layout_showTitle = color === 'transparent' ? undefined : StrCast(doc.layout_showTitle, 'title');
});
} else {
- Doc.SharingDoc().headingColor = undefined;
- Doc.GetProto(Doc.SharingDoc()).headingColor = color === 'transparent' ? undefined : color;
+ const sharing = Doc.SharingDoc();
+ if (sharing) {
+ sharing.headingColor = undefined;
+ Doc.GetProto(sharing).headingColor = color === 'transparent' ? undefined : color;
+ }
Doc.UserDoc().layout_showTitle = color === 'transparent' ? undefined : StrCast(Doc.UserDoc().layout_showTitle, 'title');
}
return undefined;
@@ -234,30 +237,30 @@ ScriptingGlobals.add(function showFreeform(
setDoc: (doc: Doc) => { doc._freeform_useClusters = !doc._freeform_useClusters; },
}],
['time', {
- checkResult: (doc: Doc) => StrCast(doc?.[Doc.LayoutFieldKey(doc)+"_sort"]) === "time",
- setDoc: (doc: Doc, dv: DocumentView) => { doc[Doc.LayoutFieldKey(doc)+"_sort"] === "time" ? doc[Doc.LayoutFieldKey(doc)+"_sort"] = '' : doc[Doc.LayoutFieldKey(doc)+"_sort"] = docSortings.Time}, // prettier-ignore
+ checkResult: (doc: Doc) => StrCast(doc?.[Doc.LayoutDataKey(doc)+"_sort"]) === "time",
+ setDoc: (doc: Doc, dv: DocumentView) => { doc[Doc.LayoutDataKey(doc)+"_sort"] === "time" ? doc[Doc.LayoutDataKey(doc)+"_sort"] = '' : doc[Doc.LayoutDataKey(doc)+"_sort"] = docSortings.Time}, // prettier-ignore
}],
['docType', {
- checkResult: (doc: Doc) => StrCast(doc?.[Doc.LayoutFieldKey(doc)+"_sort"]) === "type",
- setDoc: (doc: Doc, dv: DocumentView) => { doc[Doc.LayoutFieldKey(doc)+"_sort"] === "type" ? doc[Doc.LayoutFieldKey(doc)+"_sort"] = '' : doc[Doc.LayoutFieldKey(doc)+"_sort"] = docSortings.Type}, // prettier-ignore
+ checkResult: (doc: Doc) => StrCast(doc?.[Doc.LayoutDataKey(doc)+"_sort"]) === "type",
+ setDoc: (doc: Doc, dv: DocumentView) => { doc[Doc.LayoutDataKey(doc)+"_sort"] === "type" ? doc[Doc.LayoutDataKey(doc)+"_sort"] = '' : doc[Doc.LayoutDataKey(doc)+"_sort"] = docSortings.Type}, // prettier-ignore
}],
['color', {
- checkResult: (doc: Doc) => StrCast(doc?.[Doc.LayoutFieldKey(doc)+"_sort"]) === "color",
- setDoc: (doc: Doc, dv: DocumentView) => { doc?.[Doc.LayoutFieldKey(doc)+"_sort"] === "color" ? doc[Doc.LayoutFieldKey(doc)+"_sort"] = '' : doc[Doc.LayoutFieldKey(doc)+"_sort"] = docSortings.Color}, // prettier-ignore
+ checkResult: (doc: Doc) => StrCast(doc?.[Doc.LayoutDataKey(doc)+"_sort"]) === "color",
+ setDoc: (doc: Doc, dv: DocumentView) => { doc?.[Doc.LayoutDataKey(doc)+"_sort"] === "color" ? doc[Doc.LayoutDataKey(doc)+"_sort"] = '' : doc[Doc.LayoutDataKey(doc)+"_sort"] = docSortings.Color}, // prettier-ignore
}],
['tag', {
- checkResult: (doc: Doc) => StrCast(doc?.[Doc.LayoutFieldKey(doc)+"_sort"]) === "tag",
- setDoc: (doc: Doc, dv: DocumentView) => { doc[Doc.LayoutFieldKey(doc)+"_sort"] === "tag" ? doc[Doc.LayoutFieldKey(doc)+"_sort"] = '' : doc[Doc.LayoutFieldKey(doc)+"_sort"] = docSortings.Tag}, // prettier-ignore
+ checkResult: (doc: Doc) => StrCast(doc?.[Doc.LayoutDataKey(doc)+"_sort"]) === "tag",
+ setDoc: (doc: Doc, dv: DocumentView) => { doc[Doc.LayoutDataKey(doc)+"_sort"] === "tag" ? doc[Doc.LayoutDataKey(doc)+"_sort"] = '' : doc[Doc.LayoutDataKey(doc)+"_sort"] = docSortings.Tag}, // prettier-ignore
}],
['reverse', {
- checkResult: (doc: Doc) => BoolCast(doc?.[Doc.LayoutFieldKey(doc)+"_sort_reverse"]),
- setDoc: (doc: Doc, dv: DocumentView) => { doc[Doc.LayoutFieldKey(doc)+"_sort_reverse"] = !doc[Doc.LayoutFieldKey(doc)+"_sort_reverse"]; },
+ checkResult: (doc: Doc) => BoolCast(doc?.[Doc.LayoutDataKey(doc)+"_sort_reverse"]),
+ setDoc: (doc: Doc, dv: DocumentView) => { doc[Doc.LayoutDataKey(doc)+"_sort_reverse"] = !doc[Doc.LayoutDataKey(doc)+"_sort_reverse"]; },
}],
['toggle-chat', {
checkResult: (doc: Doc) => SnappingManager.ChatVisible,
setDoc: (doc: Doc, dv: DocumentView) => {
if (SnappingManager.ChatVisible){
- doc[Doc.LayoutFieldKey(doc)+"_sort"] = '';
+ doc[Doc.LayoutDataKey(doc)+"_sort"] = '';
SnappingManager.SetChatVisible(false);
} else {
SnappingManager.SetChatVisible(true);
diff --git a/src/client/views/newlightbox/NewLightboxView.tsx b/src/client/views/newlightbox/NewLightboxView.tsx
index b060fc0b6..87cef01d2 100644
--- a/src/client/views/newlightbox/NewLightboxView.tsx
+++ b/src/client/views/newlightbox/NewLightboxView.tsx
@@ -77,7 +77,7 @@ export class NewLightboxView extends React.Component<LightboxViewProps> {
NewLightboxView.SetNewLightboxDoc(
doc,
undefined,
- [...DocListCast(doc[Doc.LayoutFieldKey(doc)]), ...DocListCast(doc[Doc.LayoutFieldKey(doc) + '_annotations']).filter(anno => anno.annotationOn !== doc), ...(NewLightboxView._future ?? [])].sort(
+ [...DocListCast(doc[Doc.LayoutDataKey(doc)]), ...DocListCast(doc[Doc.LayoutDataKey(doc) + '_annotations']).filter(anno => anno.annotationOn !== doc), ...(NewLightboxView._future ?? [])].sort(
(a: Doc, b: Doc) => NumCast(b._timecodeToShow) - NumCast(a._timecodeToShow)
),
layoutTemplate
diff --git a/src/client/views/nodes/AudioBox.tsx b/src/client/views/nodes/AudioBox.tsx
index e0d59cc9d..d4c512342 100644
--- a/src/client/views/nodes/AudioBox.tsx
+++ b/src/client/views/nodes/AudioBox.tsx
@@ -396,7 +396,7 @@ export class AudioBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
returnFalse,
action(() => {
const newDoc = DocUtils.GetNewTextDoc('', NumCast(this.Document.x), NumCast(this.Document.y) + NumCast(this.layoutDoc._height) + 10, NumCast(this.layoutDoc._width), 2 * NumCast(this.layoutDoc._height));
- const textField = Doc.LayoutFieldKey(newDoc);
+ const textField = Doc.LayoutDataKey(newDoc);
const newDocData = newDoc[DocData];
newDocData[`${textField}_recordingSource`] = this.dataDoc;
newDocData[`${textField}_recordingStart`] = ComputedField.MakeFunction(`this.${textField}_recordingSource.${this.fieldKey}_recordingStart`);
diff --git a/src/client/views/nodes/CollectionFreeFormDocumentView.tsx b/src/client/views/nodes/CollectionFreeFormDocumentView.tsx
index 53a3d3631..940c4cb99 100644
--- a/src/client/views/nodes/CollectionFreeFormDocumentView.tsx
+++ b/src/client/views/nodes/CollectionFreeFormDocumentView.tsx
@@ -71,7 +71,7 @@ export class CollectionFreeFormDocumentView extends DocComponent<CollectionFreeF
{ key: 'freeform_panY' },
]; // fields that are configured to be animatable using animation frames
public static animStringFields = ['backgroundColor', 'borderColor', 'color', 'fillColor']; // fields that are configured to be animatable using animation frames
- public static animDataFields = (doc: Doc) => (Doc.LayoutFieldKey(doc) ? [Doc.LayoutFieldKey(doc)] : []); // fields that are configured to be animatable using animation frames
+ public static animDataFields = (doc: Doc) => (Doc.LayoutDataKey(doc) ? [Doc.LayoutDataKey(doc)] : []); // fields that are configured to be animatable using animation frames
public static from(dv?: DocumentView): CollectionFreeFormDocumentView | undefined {
return dv?._props.reactParent instanceof CollectionFreeFormDocumentView ? dv._props.reactParent : undefined;
}
@@ -187,7 +187,7 @@ export class CollectionFreeFormDocumentView extends DocComponent<CollectionFreeF
}
public static gotoKeyFrame(doc: Doc, newFrame: number) {
if (doc) {
- const childDocs = DocListCast(doc[Doc.LayoutFieldKey(doc)]);
+ const childDocs = DocListCast(doc[Doc.LayoutDataKey(doc)]);
const currentFrame = Cast(doc._currentFrame, 'number', null);
if (currentFrame === undefined) {
doc._currentFrame = 0;
diff --git a/src/client/views/nodes/DataVizBox/DataVizBox.tsx b/src/client/views/nodes/DataVizBox/DataVizBox.tsx
index 117eb05f8..c80e8ebc1 100644
--- a/src/client/views/nodes/DataVizBox/DataVizBox.tsx
+++ b/src/client/views/nodes/DataVizBox/DataVizBox.tsx
@@ -352,7 +352,7 @@ export class DataVizBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
const getFrom = DocCast(this.layoutDoc.dataViz_asSchema);
if (!getFrom?.schema_columnKeys) return undefined;
const keys = StrListCast(getFrom?.schema_columnKeys).filter(key => key !== 'text');
- const children = DocListCast(getFrom?.[Doc.LayoutFieldKey(getFrom)]);
+ const children = DocListCast(getFrom?.[Doc.LayoutDataKey(getFrom)]);
const current: { [key: string]: string }[] = [];
children
.filter(child => child)
diff --git a/src/client/views/nodes/DocumentContentsView.tsx b/src/client/views/nodes/DocumentContentsView.tsx
index 6f004bed3..504c1491e 100644
--- a/src/client/views/nodes/DocumentContentsView.tsx
+++ b/src/client/views/nodes/DocumentContentsView.tsx
@@ -188,8 +188,8 @@ export class DocumentContentsView extends ObservableReactComponent<DocumentConte
this._props.LayoutTemplate?.() ||
(this._props.LayoutTemplateString && this._props.Document) ||
(this._props.layoutFieldKey && StrCast(this._props.Document[this._props.layoutFieldKey]) && this._props.Document) ||
- Doc.Layout(this._props.Document, DocCast(this._props.Document[this._props.layoutFieldKey]));
- return Doc.expandTemplateLayout(template, this._props.Document);
+ Doc.LayoutDoc(this._props.Document, DocCast(this._props.Document[this._props.layoutFieldKey]));
+ return Doc.expandTemplateLayout(template, this._props.Document, this._props.layoutFieldKey);
}
CreateBindings(onClick: Opt<ScriptField>, onInput: Opt<ScriptField>): JsxBindings {
diff --git a/src/client/views/nodes/DocumentView.tsx b/src/client/views/nodes/DocumentView.tsx
index bec5ea5c1..284014e54 100644
--- a/src/client/views/nodes/DocumentView.tsx
+++ b/src/client/views/nodes/DocumentView.tsx
@@ -169,9 +169,7 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
}
componentDidMount() {
- runInAction(() => {
- this._mounted = true;
- });
+ runInAction(() => (this._mounted = true));
this.setupHandlers();
this._disposers.contentActive = reaction(
() =>
@@ -183,16 +181,12 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
: Doc.ActiveTool !== InkTool.None || SnappingManager.CanEmbed || this.rootSelected() || this.Document.forceActive || this._componentView?.isAnyChildContentActive?.() || this._props.isContentActive()
? true
: undefined,
- active => {
- this._isContentActive = active;
- },
+ active => (this._isContentActive = active),
{ fireImmediately: true }
);
this._disposers.pointerevents = reaction(
() => this.style(this.Document, StyleProp.PointerEvents) as Property.PointerEvents | undefined,
- pointerevents => {
- this._pointerEvents = pointerevents;
- },
+ pointerevents => (this._pointerEvents = pointerevents),
{ fireImmediately: true }
);
}
@@ -305,7 +299,7 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
};
const clickFunc = this.onClickFunc?.()?.script ? () => (this.onClickFunc?.()?.script.run(scriptProps, console.log).result as Opt<{ select: boolean }>)?.select && this._props.select(false) : undefined;
if (!clickFunc) {
- // onDragStart implies a button doc that we don't want to select when clicking. RootDocument & isTemplateForField implies we're clicking on part of a template instance and we want to select the whole template, not the part
+ // onDragStart implies a button doc that we don't want to select when clicking.
if (this.layoutDoc.onDragStart && !(e.ctrlKey || e.button > 0)) stopPropagate = false;
preventDefault = false;
}
@@ -502,7 +496,7 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
const items = this._props.styleProvider?.(this.Document, this._props, StyleProp.ContextMenuItems) as ContextMenuProps[];
items?.forEach(item => ContextMenu.Instance.addItem(item));
- const customScripts = Cast(this.Document.contextMenuScripts, listSpec(ScriptField), []);
+ const customScripts = Cast(this.Document.contextMenuScripts, listSpec(ScriptField), [])!;
StrListCast(this.Document.contextMenuLabels).forEach((label, i) =>
cm.addItem({ description: label, event: () => customScripts[i]?.script.run({ documentView: this, this: this.Document, scriptContext: this._props.scriptContext }), icon: 'sticky-note' })
);
@@ -523,7 +517,7 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
appearanceItems.splice(0, 0, { description: 'Open in Lightbox', event: () => DocumentView.SetLightboxDoc(this.Document), icon: 'external-link-alt' });
}
appearanceItems.push({ description: 'Pin', event: () => this._props.pinToPres(this.Document, {}), icon: 'map-pin' });
- appearanceItems.push({ description: 'AI view', event: () => this._docView?.toggleAIEditor(), icon: 'map-pin' });
+ this._componentView?.componentAIView?.() && appearanceItems.push({ description: 'AI view', event: () => this._docView?.toggleAIEditor(), icon: 'map-pin' });
!Doc.noviceMode && templateDoc && appearanceItems.push({ description: 'Open Template ', event: () => this._props.addDocTab(templateDoc, OpenWhere.addRight), icon: 'eye' });
!appearance && appearanceItems.length && cm.addItem({ description: 'Appearance...', subitems: appearanceItems, icon: 'compass' });
@@ -536,9 +530,7 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
zorderItems.push({
description: !this.layoutDoc._keepZDragged ? 'Keep ZIndex when dragged' : 'Allow ZIndex to change when dragged',
event: undoable(
- action(() => {
- this.layoutDoc._keepZWhenDragged = !this.layoutDoc._keepZWhenDragged;
- }),
+ action(() => (this.layoutDoc._keepZWhenDragged = !this.layoutDoc._keepZWhenDragged)),
'set zIndex drag'
),
icon: 'hand-point-up',
@@ -660,10 +652,10 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
this._props
.ScreenToLocalTransform()
.translate(-NumCast(this.Document.borderWidth), -this.headerMargin - NumCast(this.Document.borderWidth))
- .scale(this._props.showAIEditor ? (this._props.PanelHeight() || 1) / this.aiContentsHeight() : 1);
+ .scale(this.viewingAiEditor() ? (this._props.PanelHeight() || 1) / this.aiContentsHeight() : 1);
onClickFunc = () => (this.disableClickScriptFunc ? undefined : this.onClickHdlr);
setHeight = (height: number) => { !this._props.suppressSetHeight && (this.layoutDoc._height = Math.min(NumCast(this.layoutDoc._maxHeight, Number.MAX_SAFE_INTEGER), height + 2 * NumCast(this.Document.borderWidth))); } // prettier-ignore
- setContentView = action((view: ViewBoxInterface<FieldViewProps>) => { this._componentView = view; }); // prettier-ignore
+ setContentView = action((view: ViewBoxInterface<FieldViewProps>) => (this._componentView = view));
isContentActive = (): boolean | undefined => this._isContentActive;
childFilters = () => [...this._props.childFilters(), ...StrListCast(this.layoutDoc.childFilters)];
@@ -712,32 +704,34 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
aiContentsWidth = () => (this.aiContentsHeight() * (this._props.NativeWidth?.() || 1)) / (this._props.NativeHeight?.() || 1);
aiContentsHeight = () => Math.max(10, this._props.PanelHeight() - this._aiWinHeight * this.uiBtnScaling);
- aiEditor = () => (
- <>
- <div
- className="documentView-editorView-history"
- ref={r => this.historyRef(this._oldAiWheel, (this._oldAiWheel = r))}
- style={{
- transform: `scale(${this.uiBtnScaling})`,
- height: this.aiContentsHeight() / this.uiBtnScaling,
- width: ((this._props.PanelWidth() - this.aiContentsWidth()) * 0.95) / this.uiBtnScaling,
- }}>
- {this._componentView?.componentAIViewHistory?.() ?? null}
- </div>
- <div
- className="documentView-editorView"
- style={{
- background: SnappingManager.userVariantColor,
- width: `${100 / this.uiBtnScaling}%`, //
- transform: `scale(${this.uiBtnScaling})`,
- }}
- ref={r => this.historyRef(this._oldHistoryWheel, (this._oldHistoryWheel = r))}>
- <div className="documentView-editorView-resizer" />
- {this._componentView?.componentAIView?.() ?? null}
- {this._props.DocumentView?.() ? <TagsView background={this.backgroundBoxColor} Views={[this._props.DocumentView?.()]} /> : null}
- </div>
- </>
- );
+ @computed get aiEditor() {
+ return (
+ <>
+ <div
+ className="documentView-editorView-history"
+ ref={r => this.historyRef(this._oldAiWheel, (this._oldAiWheel = r))}
+ style={{
+ transform: `scale(${this.uiBtnScaling})`,
+ height: this.aiContentsHeight() / this.uiBtnScaling,
+ width: ((this._props.PanelWidth() - this.aiContentsWidth()) * 0.95) / this.uiBtnScaling,
+ }}>
+ {this._componentView?.componentAIViewHistory?.() ?? null}
+ </div>
+ <div
+ className="documentView-editorView"
+ style={{
+ background: SnappingManager.userVariantColor,
+ width: `${100 / this.uiBtnScaling}%`, //
+ transform: `scale(${this.uiBtnScaling})`,
+ }}
+ ref={r => this.historyRef(this._oldHistoryWheel, (this._oldHistoryWheel = r))}>
+ <div className="documentView-editorView-resizer" />
+ {this._componentView?.componentAIView?.() ?? null}
+ {this._props.DocumentView?.() ? <TagsView background={this.backgroundBoxColor} Views={[this._props.DocumentView?.()]} /> : null}
+ </div>
+ </>
+ );
+ }
@computed get tagsOverlay() {
return (
<div
@@ -760,6 +754,8 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
);
}
widgetOverlayFunc = () => (this.widgetDecorations ? this.widgetOverlay : null);
+ viewingAiEditor = () => (this._props.showAIEditor && this._componentView?.componentAIView?.() !== undefined ? this.aiEditor : null);
+ _contentsRef = React.createRef<DocumentContentsView>();
@computed get viewBoxContents() {
TraceMobx();
const isInk = this.layoutDoc._layout_isSvg && !this._props.LayoutTemplateString;
@@ -770,17 +766,18 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
className="documentView-contentsView"
style={{
pointerEvents: (isInk || noBackground ? 'none' : this.contentPointerEvents()) ?? (this._mounted ? 'all' : 'none'),
- width: this._props.showAIEditor ? this.aiContentsWidth() : undefined,
- height: this._props.showAIEditor ? this.aiContentsHeight() : this.headerMargin ? `calc(100% - ${this.headerMargin}px)` : undefined,
+ width: this.viewingAiEditor() ? this.aiContentsWidth() : undefined,
+ height: this.viewingAiEditor() ? this.aiContentsHeight() : this.headerMargin ? `calc(100% - ${this.headerMargin}px)` : undefined,
}}>
<DocumentContentsView
{...this._props}
+ ref={this._contentsRef}
layoutFieldKey={StrCast(this.Document.layout_fieldKey, 'layout')}
pointerEvents={this.contentPointerEvents}
setContentViewBox={this.setContentView}
childFilters={this.childFilters}
- PanelWidth={this._props.showAIEditor ? this.aiContentsWidth : this._props.PanelWidth}
- PanelHeight={this._props.showAIEditor ? this.aiContentsHeight : this.panelHeight}
+ PanelWidth={this.viewingAiEditor() ? this.aiContentsWidth : this._props.PanelWidth}
+ PanelHeight={this.viewingAiEditor() ? this.aiContentsHeight : this.panelHeight}
setHeight={this.setHeight}
isContentActive={this.isContentActive}
ScreenToLocalTransform={this.screenToLocalContent}
@@ -790,7 +787,7 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
hideClickBehaviors={BoolCast(this.Document.hideClickBehaviors)}
/>
</div>
- {this._props.showAIEditor ? this.aiEditor() : this.tagsOverlayFunc()}
+ {this.viewingAiEditor() ?? this.tagsOverlayFunc()}
{this.widgetOverlayFunc()}
</>
);
@@ -809,8 +806,8 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
captionStyleProvider = (doc: Opt<Doc>, props: Opt<FieldViewProps>, property: string) => this._props?.styleProvider?.(doc, props, property + ':caption');
fieldsDropdown = (placeholder: string) => (
<div
- ref={r => { r && runInAction(() => (this._titleDropDownInnerWidth = DivWidth(r)));}} // prettier-ignore
- onPointerDown={action(() => { this._changingTitleField = true; })} // prettier-ignore
+ ref={action((r:HTMLDivElement|null) => r && (this._titleDropDownInnerWidth = DivWidth(r)))} // prettier-ignore
+ onPointerDown={action(() => (this._changingTitleField = true))}
style={{ width: 'max-content', background: SnappingManager.userBackgroundColor, color: SnappingManager.userColor, transformOrigin: 'left', transform: `scale(${this.titleHeight / 30 /* height of Dropdown */})` }}>
<FieldsDropdown
Doc={this.Document}
@@ -823,7 +820,7 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
}
this._changingTitleField = false;
})}
- menuClose={action(() => { this._changingTitleField = false; })} // prettier-ignore
+ menuClose={action(() => (this._changingTitleField = false))}
/>
</div>
);
@@ -839,7 +836,7 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
const background = StrCast(
this.layoutDoc.layout_headingColor,
// StrCast(SharingManager.Instance.users.find(u => u.user.email === this.dataDoc.author)?.sharingDoc.headingColor,
- StrCast(Doc.SharingDoc().headingColor, SnappingManager.userBackgroundColor)
+ StrCast(Doc.SharingDoc()?.headingColor, SnappingManager.userBackgroundColor)
// )
);
const dropdownWidth = this._titleRef.current?._editing || this._changingTitleField ? Math.max(10, (this._titleDropDownInnerWidth * this.titleHeight) / 30) : 0;
@@ -1025,7 +1022,7 @@ export class DocumentViewInternal extends DocComponent<DocumentViewProps & Field
root: Doc
) {
const effectDirection = (presEffectDoc?.presentation_effectDirection ?? presEffectDoc?.followLinkAnimDirection) as PresEffectDirection;
- const duration = Cast(presEffectDoc?.presentation_transition, 'number', Cast(presEffectDoc?.followLinkTransitionTime, 'number', null));
+ const duration = Cast(presEffectDoc?.presentation_transition, 'number', Cast(presEffectDoc?.followLinkTransitionTime, 'number', null) ?? null);
const effectProps = {
left: effectDirection === PresEffectDirection.Left,
right: effectDirection === PresEffectDirection.Right,
@@ -1140,7 +1137,7 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
public static GetDocImage(doc?: Doc) {
return DocumentView.getDocumentView(doc)
?.ComponentView?.updateIcon?.()
- .then(() => ImageCast(doc!.icon, ImageCast(doc![Doc.LayoutFieldKey(doc!)])));
+ .then(() => ImageCast(doc!.icon, ImageCast(doc![Doc.LayoutDataKey(doc!)])));
}
public get displayName() { return 'DocumentView(' + (this.Document?.title??"") + ')'; } // prettier-ignore
@@ -1158,7 +1155,7 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
public static UniquifyId(inLightbox: boolean | undefined, id: string) {
return (inLightbox ? 'lightbox-' : '') + id;
}
- public ViewGuid = DocumentView.UniquifyId(DocumentView.LightboxContains(this), Utils.GenerateGuid()); // a unique id associated with the main <div>. used by LinkBox's Xanchor to find the arrowhead locations.
+ public ViewGuid = DocumentView.UniquifyId(DocumentView.LightboxContains(this), 'D' + Utils.GenerateGuid()); // a unique id associated with the main <div>. used by LinkBox's Xanchor to find the arrowhead locations.
public DocUniqueId = DocumentView.UniquifyId(DocumentView.LightboxContains(this), this.Document[Id]);
constructor(props: DocumentViewProps) {
@@ -1178,6 +1175,24 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
@observable public TagPanelHeight = 0;
@observable public TagPanelEditing = false;
+ /**
+ * Tests whether the component Doc being rendered matches the Doc that this view thinks its rendering.
+ * When switching the layout_fieldKey, component views may react before the internal DocumentView has re-rendered.
+ * If this happens, the component view may try to write invalid data, such as when expanding a template (which
+ * depends on the DocumentView being in synch with the subcomponents).
+ * @param renderDoc sub-component Doc being rendered
+ * @returns boolean whether sub-component Doc is in synch with the layoutDoc that this view thinks its rendering
+ */
+ IsInvalid = (renderDoc?: Doc): boolean => {
+ const docContents = this._docViewInternal?._contentsRef.current;
+ return !(
+ (!renderDoc ||
+ (docContents?.layoutDoc === renderDoc && //
+ !this.docViewPath().some(dv => dv.IsInvalid()))) &&
+ docContents?._props.layoutFieldKey === this.Document.layout_fieldKey
+ );
+ };
+
@computed get showTags() {
return this.Document._layout_showTags || this._props.showTags;
}
@@ -1193,7 +1208,7 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
}
@computed private get nativeScaling() {
if (this.shouldNotScale) return 1;
- const minTextScale = this.Document.type === DocumentType.RTF ? 0.1 : 0;
+ const minTextScale = [DocumentType.RTF, DocumentType.JOURNAL].includes(this.Document.type as DocumentType) ? 0.1 : 0;
const ai = this._showAIEditor && this.nativeWidth === this.layoutDoc.width ? 95 : 0;
const effNW = Math.max(this.effectiveNativeWidth - ai, 1);
const effNH = Math.max(this.effectiveNativeHeight - ai, 1);
@@ -1247,7 +1262,7 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
!BoolCast(this.Document.dontRegisterView, this._props.dontRegisterView) && DocumentView.removeView(this);
}
- public set IsSelected(val) { runInAction(() => { this._selected = val; }); } // prettier-ignore
+ public set IsSelected(val) { runInAction(() => (this._selected = val)) } // prettier-ignore
public get IsSelected() { return this._selected; } // prettier-ignore
public get IsContentActive(){ return this._docViewInternal?.isContentActive(); } // prettier-ignore
public get topMost() { return this._props.renderDepth === 0; } // prettier-ignore
@@ -1256,9 +1271,10 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
public get allLinks() { return this._docViewInternal?._allLinks ?? []; } // prettier-ignore
public get TagBtnHeight() { return this._docViewInternal?.TagsBtnHeight; } // prettier-ignore
public get UIBtnScaling() { return this._docViewInternal?.uiBtnScaling; } // prettier-ignore
+ public get HasAIEditor() { return !!this._docViewInternal?._componentView?.componentAIView?.(); } // prettier-ignore
get LayoutFieldKey() {
- return Doc.LayoutFieldKey(this.Document, this._props.LayoutTemplateString);
+ return Doc.LayoutDataKey(this.Document, this._props.LayoutTemplateString);
}
@computed get layout_fitWidth() {
@@ -1312,10 +1328,10 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
public toggleNativeDimensions = () => this._docViewInternal && this.Document.type !== DocumentType.INK && Doc.toggleNativeDimensions(this.layoutDoc, this.NativeDimScaling() ?? 1, this._props.PanelWidth(), this._props.PanelHeight());
- public iconify(finished?: () => void, animateTime?: number) {
+ public iconify = action((finished?: () => void, animateTime?: number) => {
this.ComponentView?.updateIcon?.();
const animTime = this._docViewInternal?.animateScaleTime();
- runInAction(() => { this._docViewInternal && animateTime !== undefined && (this._docViewInternal._animateScaleTime = animateTime); }); // prettier-ignore
+ this._docViewInternal && animateTime !== undefined && (this._docViewInternal._animateScaleTime = animateTime);
const finalFinished = action(() => {
finished?.();
this._docViewInternal && (this._docViewInternal._animateScaleTime = animTime);
@@ -1325,12 +1341,12 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
this.switchViews(true, 'icon', finalFinished);
if (layoutFieldKey && layoutFieldKey !== 'layout' && layoutFieldKey !== 'layout_icon') this.Document.deiconifyLayout = layoutFieldKey.replace('layout_', '');
} else {
- const deiconifyLayout = Cast(this.Document.deiconifyLayout, 'string', null);
+ const deiconifyLayout = StrCast(this.Document.deiconifyLayout);
this.switchViews(!!deiconifyLayout, deiconifyLayout, finalFinished, true);
this.Document.deiconifyLayout = undefined;
this._props.bringToFront?.(this.Document);
}
- }
+ });
public playAnnotation = () => {
const audioAnnoState = this.Document._audioAnnoState ?? AudioAnnoState.stopped;
@@ -1345,7 +1361,7 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
autoplay: true,
loop: false,
volume: 0.5,
- onend: action(() => { this.Document._audioAnnoState = AudioAnnoState.stopped; }), // prettier-ignore
+ onend: action(() => (this.Document._audioAnnoState = AudioAnnoState.stopped)),
});
this.Document._audioAnnoState = AudioAnnoState.playing;
break;
@@ -1401,14 +1417,10 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
tempDoc = view.Document;
MakeTemplate(tempDoc);
Doc.AddDocToList(Doc.UserDoc(), 'template_user', tempDoc);
- Doc.AddDocToList(DocListCast(Doc.MyTools.data)[1], 'data', makeUserTemplateButtonOrImage(tempDoc));
- tempDoc && Doc.AddDocToList(Cast(Doc.UserDoc().template_user, Doc, null), 'data', tempDoc);
+ Doc.AddDocToList(DocListCast(Doc.MyTools?.data)[1], 'data', makeUserTemplateButtonOrImage(tempDoc));
+ DocCast(Doc.UserDoc().template_user) && tempDoc && Doc.AddDocToList(DocCast(Doc.UserDoc().template_user)!, 'data', tempDoc);
} else {
- tempDoc = DocCast(view.Document[StrCast(view.Document.layout_fieldKey)]);
- if (!tempDoc) {
- tempDoc = view.Document;
- while (tempDoc && !Doc.isTemplateDoc(tempDoc)) tempDoc = DocCast(tempDoc.proto);
- }
+ tempDoc = DocCast(Doc.LayoutField(view.Document));
}
}
Doc.UserDoc().defaultTextLayout = tempDoc ? new PrefetchProxy(tempDoc) : undefined;
@@ -1430,10 +1442,10 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
if (this.Document.layout_fieldKey === 'layout_' + detailLayoutKeySuffix) this.switchViews(!!defaultLayout, defaultLayout, undefined, true);
else this.switchViews(true, detailLayoutKeySuffix, undefined, true);
};
- public switchViews = (custom: boolean, view: string, finished?: () => void, useExistingLayout = false) => {
+ public switchViews = action((custom: boolean, view: string, finished?: () => void, useExistingLayout = false) => {
const batch = UndoManager.StartBatch('switchView:' + view);
// shrink doc first..
- runInAction(() => { this._docViewInternal && (this._docViewInternal._animateScalingTo = 0.1); }); // prettier-ignore
+ this._docViewInternal && (this._docViewInternal._animateScalingTo = 0.1);
setTimeout(
action(() => {
if (useExistingLayout && custom && this.Document['layout_' + view]) {
@@ -1453,7 +1465,7 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
}),
Math.max(0, (this._docViewInternal?.animateScaleTime() ?? 0) - 10)
);
- };
+ });
/**
* @returns a hierarchy path through the nested DocumentViews that display this view. The last element of the path is this view.
*/
@@ -1506,7 +1518,7 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
ref={r => {
const val = r?.style.display !== 'none'; // if the outer overlay has been displayed, trigger the innner div to start it's opacity fade in transition
if (r && val !== this._enableHtmlOverlayTransitions) {
- setTimeout(action(() => { this._enableHtmlOverlayTransitions = val; })); // prettier-ignore
+ setTimeout(action(() => (this._enableHtmlOverlayTransitions = val)));
}
}}
style={{ display: !this._htmlOverlayText ? 'none' : undefined }}>
@@ -1533,12 +1545,8 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
<div
id={this.ViewGuid}
className="contentFittingDocumentView"
- onPointerEnter={action(() => {
- this._isHovering = true;
- })}
- onPointerLeave={action(() => {
- this._isHovering = false;
- })}>
+ onPointerEnter={action(() => (this._isHovering = true))} //
+ onPointerLeave={action(() => (this._isHovering = false))}>
{!this.Document || !this._props.PanelWidth() ? null : (
<div
className="contentFittingDocumentView-previewDoc"
@@ -1566,9 +1574,7 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
fitWidth={this.layout_fitWidthFunc}
ScreenToLocalTransform={this.screenToContentsTransform}
focus={this._props.focus || emptyFunction}
- ref={action((r: DocumentViewInternal | null) => {
- r && (this._docViewInternal = r);
- })}
+ ref={action((r: DocumentViewInternal | null) => r && (this._docViewInternal = r))}
/>
{this.htmlOverlay()}
{this.ComponentView?.infoUI?.()}
@@ -1612,7 +1618,7 @@ export class DocumentView extends DocComponent<DocumentViewProps>() {
if (dv && (!containingDoc || dv.containerViewPath?.().lastElement()?.Document === containingDoc)) {
DocumentView.showDocumentView(dv, options).then(() => dv && Doc.linkFollowHighlight(dv.Document));
} else {
- const container = DocCast(containingDoc ?? doc.embedContainer ?? Doc.BestEmbedding(doc));
+ const container = DocCast(containingDoc ?? doc.embedContainer ?? Doc.BestEmbedding(doc))!;
const showDoc = !Doc.IsSystem(container) && !cv ? container : doc;
options.toggleTarget = undefined;
DocumentView.showDocument(showDoc, options, () => DocumentView.showDocument(doc, { ...options, openLocation: undefined })).then(() => {
diff --git a/src/client/views/nodes/FieldView.tsx b/src/client/views/nodes/FieldView.tsx
index ad6d93d43..de49f502f 100644
--- a/src/client/views/nodes/FieldView.tsx
+++ b/src/client/views/nodes/FieldView.tsx
@@ -80,7 +80,7 @@ export interface FieldViewSharedProps {
setTitleFocus?: () => void;
focus: FocusFuncType;
onClickScript?: () => ScriptField | undefined;
- onDoubleClickScript?: () => ScriptField;
+ onDoubleClickScript?: () => ScriptField | undefined;
onPointerDownScript?: () => ScriptField;
onPointerUpScript?: () => ScriptField;
onKey?: (e: KeyboardEvent, textBox: FormattedTextBox) => boolean | undefined;
diff --git a/src/client/views/nodes/IconTagBox.tsx b/src/client/views/nodes/IconTagBox.tsx
index e3924eca7..0bbd6a0d3 100644
--- a/src/client/views/nodes/IconTagBox.tsx
+++ b/src/client/views/nodes/IconTagBox.tsx
@@ -108,7 +108,7 @@ export class IconTagBox extends ObservableReactComponent<IconTagProps> {
</Tooltip>
)); // prettier-ignore
- const audioannos = StrListCast(this.View.Document[Doc.LayoutFieldKey(this.View.Document) + '_audioAnnotations_text']);
+ const audioannos = StrListCast(this.View.Document[Doc.LayoutDataKey(this.View.Document) + '_audioAnnotations_text']);
return !buttons.length && !audioannos.length ? null : (
<div className="card-button-container" style={{ fontSize: '50px' }}>
{audioannos.length ? this.renderAudioButtons(this.View, audioannos.lastElement()) : null}
diff --git a/src/client/views/nodes/ImageBox.tsx b/src/client/views/nodes/ImageBox.tsx
index 2b9a78596..0c475b7bb 100644
--- a/src/client/views/nodes/ImageBox.tsx
+++ b/src/client/views/nodes/ImageBox.tsx
@@ -216,7 +216,7 @@ export class ImageBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
} else if (hitDropTarget(e.target as HTMLElement, this._regenerateIconRef.current)) {
this._regenerateLoading = true;
const drag = de.complete.docDragData.draggedDocuments.lastElement();
- const dragField = drag[Doc.LayoutFieldKey(drag)];
+ const dragField = drag[Doc.LayoutDataKey(drag)];
const descText = RTFCast(dragField)?.Text || StrCast(dragField) || RTFCast(drag.text)?.Text || StrCast(drag.text) || StrCast(this.Document.title);
const oldPrompt = StrCast(this.Document.ai_firefly_prompt, StrCast(this.Document.title));
const newPrompt = (text: string) => (oldPrompt ? `${oldPrompt} ~~~ ${text}` : text);
@@ -224,7 +224,7 @@ export class ImageBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
added = false;
} else if (de.altKey || !this.dataDoc[this.fieldKey]) {
const layoutDoc = de.complete.docDragData?.draggedDocuments[0];
- const targetField = Doc.LayoutFieldKey(layoutDoc);
+ const targetField = Doc.LayoutDataKey(layoutDoc);
const targetDoc = layoutDoc[DocData];
if (targetDoc[targetField] instanceof ImageField) {
added = true;
@@ -264,7 +264,7 @@ export class ImageBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
DocListCast(this.dataDoc[this.annotationKey]).forEach(doc => {
doc.x = (NumCast(doc.x) / oldnativeWidth) * newnativeWidth;
doc.y = (NumCast(doc.y) / oldnativeWidth) * newnativeWidth;
- if (!RTFCast(doc[Doc.LayoutFieldKey(doc)])) {
+ if (!RTFCast(doc[Doc.LayoutDataKey(doc)])) {
doc.width = (NumCast(doc.width) / oldnativeWidth) * newnativeWidth;
doc.height = (NumCast(doc.height) / oldnativeWidth) * newnativeWidth;
}
@@ -351,9 +351,9 @@ export class ImageBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
event: () => {
Networking.PostToServer('/queryFireflyImageText', {
file: (file => {
- const ext = extname(file);
- return file.replace(ext, (this._error ? '_o' : this._curSuffix) + ext);
- })(ImageCast(this.Document[Doc.LayoutFieldKey(this.Document)])?.url.href),
+ const ext = file ? extname(file) : '';
+ return file?.replace(ext, (this._error ? '_o' : this._curSuffix) + ext);
+ })(ImageCast(this.Document[Doc.LayoutDataKey(this.Document)])?.url.href),
}).then(text => alert(text));
},
icon: 'expand-arrows-alt',
@@ -364,9 +364,9 @@ export class ImageBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
Networking.PostToServer('/expandImage', {
prompt: 'sunny skies',
file: (file => {
- const ext = extname(file);
- return file.replace(ext, (this._error ? '_o' : this._curSuffix) + ext);
- })(ImageCast(this.Document[Doc.LayoutFieldKey(this.Document)])?.url.href),
+ const ext = file ? extname(file) : '';
+ return file?.replace(ext, (this._error ? '_o' : this._curSuffix) + ext);
+ })(ImageCast(this.Document[Doc.LayoutDataKey(this.Document)])?.url.href),
}).then(res => {
const info = res as Upload.ImageInformation;
const img = Docs.Create.ImageDocument(info.accessPaths.agnostic.client, { title: 'expand:' + this.Document.title });
@@ -510,7 +510,7 @@ export class ImageBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
<div
className="imageBox-regenerateDropTarget"
ref={this._regenerateIconRef}
- onClick={() => DocumentView.showDocument(DocCast(this.Document.ai_firefly_generatedDocs), { openLocation: OpenWhere.addRight })}
+ onClick={() => DocCast(this.Document.ai_firefly_generatedDocs) && DocumentView.showDocument(DocCast(this.Document.ai_firefly_generatedDocs)!, { openLocation: OpenWhere.addRight })}
style={{
display: (this._props.isContentActive() && (SnappingManager.CanEmbed || this.Document.ai_firefly_generatedDocs)) || this._regenerateLoading ? 'block' : 'none',
transform: `scale(${this.uiBtnScaling})`,
@@ -532,7 +532,7 @@ export class ImageBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
const defaultUrl = new URL(ClientUtils.prepend(DefaultPath));
const altpaths =
alts
- ?.map(doc => (doc instanceof Doc ? (ImageCast(doc[Doc.LayoutFieldKey(doc)])?.url ?? defaultUrl) : defaultUrl))
+ ?.map(doc => (doc instanceof Doc ? (ImageCast(doc[Doc.LayoutDataKey(doc)])?.url ?? defaultUrl) : defaultUrl))
.filter(url => url)
.map(url => this.choosePath(url)) ?? []; // acc ess the primary layout data of the alternate documents
const paths = field ? [this.choosePath(field.url), ...altpaths] : altpaths;
@@ -664,7 +664,7 @@ export class ImageBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
const url = firstImg.pathname;
const imgField = new ImageField(url);
this._prevImgs.length === 0 &&
- this._prevImgs.push({ prompt: StrCast(this.dataDoc.ai_firefly_prompt), seed: this.dataDoc.ai_firefly_seed as number, href: this.paths.lastElement(), pathname: field.url.pathname });
+ this._prevImgs.push({ prompt: StrCast(this.dataDoc.ai_firefly_prompt), seed: this.dataDoc.ai_firefly_seed as number, href: this.paths.lastElement(), pathname: field?.url.pathname ?? '' });
this._prevImgs.unshift({ prompt: firstImg.prompt, seed: firstImg.seed, pathname: url });
this.dataDoc.ai_firefly_history = JSON.stringify(this._prevImgs);
this.dataDoc.ai_firefly_prompt = firstImg.prompt;
diff --git a/src/client/views/nodes/KeyValueBox.tsx b/src/client/views/nodes/KeyValueBox.tsx
index be897b3f3..aa66b5ba9 100644
--- a/src/client/views/nodes/KeyValueBox.tsx
+++ b/src/client/views/nodes/KeyValueBox.tsx
@@ -96,7 +96,7 @@ export class KeyValueBox extends ViewBoxBaseComponent<FieldViewProps>() {
const { script, type, onDelegate } = kvpScript;
const chooseDelegate = forceOnDelegate || onDelegate || keyIn.startsWith('_');
const key = chooseDelegate && keyIn.startsWith('$') ? keyIn.slice(1) : keyIn;
- const target = chooseDelegate ? doc : DocCast(doc.proto, doc);
+ const target = chooseDelegate ? doc : DocCast(doc.proto, doc)!;
let field: FieldType | undefined;
switch (type) {
case 'computed': field = new ComputedField(script); break; // prettier-ignore
@@ -104,7 +104,7 @@ export class KeyValueBox extends ViewBoxBaseComponent<FieldViewProps>() {
default: {
const _setCacheResult_ = (value: FieldResult) => {
field = value as FieldType;
- if (setResult) setResult?.(value);
+ if (setResult) setResult(value);
else target[key] = field;
};
const res = script.run({ this: doc, _setCacheResult_ }, console.log);
@@ -261,15 +261,15 @@ export class KeyValueBox extends ViewBoxBaseComponent<FieldViewProps>() {
getFieldView = () => {
const rows = this.rows.filter(row => row.isChecked);
if (rows.length > 1) {
- const parent = Docs.Create.StackingDocument([], { _layout_autoHeight: true, _width: 300, title: `field views for ${DocCast(this.Document).title}`, _chromeHidden: true });
+ const parent = Docs.Create.StackingDocument([], { _layout_autoHeight: true, _width: 300, title: `field views for ${this.Document.title}`, _chromeHidden: true });
rows.forEach(row => {
- const field = this.createFieldView(DocCast(this.Document), row);
+ const field = this.createFieldView(this.Document, row);
field && Doc.AddDocToList(parent, 'data', field);
row.uncheck();
});
return parent;
}
- return rows.length ? this.createFieldView(DocCast(this.Document), rows.lastElement()) : undefined;
+ return rows.length ? this.createFieldView(this.Document, rows.lastElement()) : undefined;
};
createFieldView = (templateDoc: Doc, row: KeyValuePair) => {
diff --git a/src/client/views/nodes/KeyValuePair.tsx b/src/client/views/nodes/KeyValuePair.tsx
index c9e0aea5a..d8f968a40 100644
--- a/src/client/views/nodes/KeyValuePair.tsx
+++ b/src/client/views/nodes/KeyValuePair.tsx
@@ -61,7 +61,7 @@ export class KeyValuePair extends ObservableReactComponent<KeyValuePairProps> {
};
render() {
- let doc = this._props.keyName.startsWith('_') ? this._props.doc[DocLayout] : this._props.doc;
+ let doc: Doc | undefined = this._props.keyName.startsWith('_') ? this._props.doc[DocLayout] : this._props.doc;
const layoutField = doc !== this._props.doc;
const key = layoutField ? this._props.keyName.replace(/^_/, '') : this._props.keyName;
let protoCount = 0;
@@ -85,7 +85,7 @@ export class KeyValuePair extends ObservableReactComponent<KeyValuePairProps> {
style={hover}
className="keyValuePair-td-key-delete"
onClick={undoable(() => {
- delete (Object.keys(doc).indexOf(key) !== -1 ? doc : DocCast(this._props.doc.proto))[key];
+ doc && delete (Object.keys(doc).indexOf(key) !== -1 ? doc : DocCast(this._props.doc.proto)!)[key];
}, 'set key value')}>
X
</button>
diff --git a/src/client/views/nodes/PDFBox.tsx b/src/client/views/nodes/PDFBox.tsx
index 36d260fb9..83c44c80f 100644
--- a/src/client/views/nodes/PDFBox.tsx
+++ b/src/client/views/nodes/PDFBox.tsx
@@ -210,7 +210,7 @@ export class PDFBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
this._disposers.scroll = reaction(
() => this.layoutDoc.layout_scrollTop,
() => {
- if (!(ComputedField.WithoutComputed(() => FieldValue(this.Document[this.SidebarKey + '_panY'])) instanceof ComputedField)) {
+ if (!(ComputedField.DisableCompute(() => FieldValue(this.Document[this.SidebarKey + '_panY'])) instanceof ComputedField)) {
this.Document[this.SidebarKey + '_panY'] = ComputedField.MakeFunction('this.layout_scrollTop');
}
this.layoutDoc[this.SidebarKey + '_freeform_scale'] = 1;
diff --git a/src/client/views/nodes/RecordingBox/RecordingBox.tsx b/src/client/views/nodes/RecordingBox/RecordingBox.tsx
index 53783e8a3..25c708da8 100644
--- a/src/client/views/nodes/RecordingBox/RecordingBox.tsx
+++ b/src/client/views/nodes/RecordingBox/RecordingBox.tsx
@@ -98,7 +98,7 @@ export class RecordingBox extends ViewBoxBaseComponent<FieldViewProps>() {
});
screengrabber.overlayX = 70; // was -400
screengrabber.overlayY = 590; // was 0
- screengrabber['$' + Doc.LayoutFieldKey(screengrabber) + '_trackScreen'] = true;
+ screengrabber['$' + Doc.LayoutDataKey(screengrabber) + '_trackScreen'] = true;
Doc.AddToMyOverlay(screengrabber); // just adds doc to overlay
DocumentView.addViewRenderedCb(screengrabber, docView => {
RecordingBox.screengrabber = docView.ComponentView as RecordingBox;
diff --git a/src/client/views/nodes/ScreenshotBox.tsx b/src/client/views/nodes/ScreenshotBox.tsx
index 999f9c1cd..4f02d68d6 100644
--- a/src/client/views/nodes/ScreenshotBox.tsx
+++ b/src/client/views/nodes/ScreenshotBox.tsx
@@ -284,7 +284,7 @@ export class ScreenshotBox extends ViewBoxAnnotatableComponent<FieldViewProps>()
setupDictation = () => {
if (this.dataDoc[this.fieldKey + '_dictation']) return;
const dictationText = DocUtils.GetNewTextDoc('dictation', NumCast(this.Document.x), NumCast(this.Document.y) + NumCast(this.layoutDoc._height) + 10, NumCast(this.layoutDoc._width), 2 * NumCast(this.layoutDoc._height));
- const textField = Doc.LayoutFieldKey(dictationText);
+ const textField = Doc.LayoutDataKey(dictationText);
dictationText._layout_autoHeight = false;
const dictationTextProto = dictationText[DocData];
dictationTextProto[`${textField}_recordingSource`] = this.dataDoc;
diff --git a/src/client/views/nodes/ScriptingBox.tsx b/src/client/views/nodes/ScriptingBox.tsx
index 8da422039..38a43e8d4 100644
--- a/src/client/views/nodes/ScriptingBox.tsx
+++ b/src/client/views/nodes/ScriptingBox.tsx
@@ -1,14 +1,12 @@
-/* eslint-disable react/button-has-type */
import { action, computed, makeObservable, observable } from 'mobx';
import { observer } from 'mobx-react';
import * as React from 'react';
import ResizeObserver from 'resize-observer-polyfill';
import { returnAlways, returnEmptyString } from '../../../ClientUtils';
-import { Doc } from '../../../fields/Doc';
+import { Doc, StrListCast } from '../../../fields/Doc';
import { List } from '../../../fields/List';
-import { listSpec } from '../../../fields/Schema';
import { ScriptField } from '../../../fields/ScriptField';
-import { BoolCast, Cast, DocCast, NumCast, ScriptCast, StrCast } from '../../../fields/Types';
+import { BoolCast, DocCast, NumCast, ScriptCast, StrCast } from '../../../fields/Types';
import { TraceMobx } from '../../../fields/util';
import { DocumentType } from '../../documents/DocumentTypes';
import { Docs } from '../../documents/Documents';
@@ -26,10 +24,8 @@ import './ScriptingBox.scss';
import * as ts from 'typescript';
import { FieldType } from '../../../fields/ObjectField';
-// eslint-disable-next-line @typescript-eslint/no-var-requires
const getCaretCoordinates = require('textarea-caret');
-// eslint-disable-next-line @typescript-eslint/no-var-requires
const ReactTextareaAutocomplete = require('@webscopeio/react-textarea-autocomplete').default;
@observer
@@ -105,7 +101,7 @@ export class ScriptingBox extends ViewBoxAnnotatableComponent<FieldViewProps>()
this.dataDoc[this.fieldKey + '-functionDescription'] = value;
}
@computed({ keepAlive: true }) get compileParams() {
- return Cast(this.dataDoc[this.fieldKey + '-params'], listSpec('string'), []);
+ return StrListCast(this.dataDoc[this.fieldKey + '-params']);
}
set compileParams(value) {
this.dataDoc[this.fieldKey + '-params'] = new List<string>(value);
@@ -426,7 +422,6 @@ export class ScriptingBox extends ViewBoxAnnotatableComponent<FieldViewProps>()
onChange={e => this.viewChanged(e, parameter)}
value={typeof this.dataDoc[parameter] === 'string' ? 'S' + StrCast(this.dataDoc[parameter]) : typeof this.dataDoc[parameter] === 'number' ? 'N' + NumCast(this.dataDoc[parameter]) : 'B' + BoolCast(this.dataDoc[parameter])}>
{types.map((type, i) => (
- // eslint-disable-next-line react/no-array-index-key
<option key={i} className="scriptingBox-viewOption" value={(typeof type === 'string' ? 'S' : typeof type === 'number' ? 'N' : 'B') + type}>
{' '}
{type.toString()}{' '}
@@ -680,7 +675,6 @@ export class ScriptingBox extends ViewBoxAnnotatableComponent<FieldViewProps>()
const definedParameters = !this.compileParams.length ? null : (
<div className="scriptingBox-plist" style={{ width: '30%' }}>
{this.compileParams.map((parameter, i) => (
- // eslint-disable-next-line react/no-array-index-key
<div key={i} className="scriptingBox-pborder" onKeyDown={e => e.key === 'Enter' && this._overlayDisposer?.()}>
<EditableView
display="block"
@@ -760,7 +754,6 @@ export class ScriptingBox extends ViewBoxAnnotatableComponent<FieldViewProps>()
{!this.compileParams.length || !this.paramsNames ? null : (
<div className="scriptingBox-plist">
{this.paramsNames.map((parameter: string, i: number) => (
- // eslint-disable-next-line react/no-array-index-key
<div key={i} className="scriptingBox-pborder" onKeyDown={e => e.key === 'Enter' && this._overlayDisposer?.()}>
<div className="scriptingBox-wrapper" style={{ maxHeight: '40px' }}>
<div className="scriptingBox-paramNames"> {`${parameter}:${this.paramsTypes[i]} = `} </div>
diff --git a/src/client/views/nodes/WebBox.tsx b/src/client/views/nodes/WebBox.tsx
index 4b3f96bcf..5603786f0 100644
--- a/src/client/views/nodes/WebBox.tsx
+++ b/src/client/views/nodes/WebBox.tsx
@@ -6,7 +6,7 @@ import { observer } from 'mobx-react';
import * as React from 'react';
import * as WebRequest from 'web-request';
import { addStyleSheet, addStyleSheetRule, clearStyleSheetRules, ClientUtils, DivHeight, getWordAtPoint, lightOrDark, returnFalse, returnOne, returnZero, setupMoveUpEvents, smoothScroll } from '../../../ClientUtils';
-import { Doc, DocListCast, Field, FieldType, Opt } from '../../../fields/Doc';
+import { Doc, DocListCast, Field, FieldType, Opt, StrListCast } from '../../../fields/Doc';
import { Id } from '../../../fields/FieldSymbols';
import { HtmlField } from '../../../fields/HtmlField';
import { InkTool } from '../../../fields/InkField';
@@ -54,7 +54,7 @@ export class WebBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
}
public static openSidebarWidth = 250;
public static sidebarResizerWidth = 5;
- static webStyleSheet = addStyleSheet();
+ static webStyleSheet = addStyleSheet().sheet;
private _setPreviewCursor: undefined | ((x: number, y: number, drag: boolean, hide: boolean, doc: Opt<Doc>) => void);
private _mainCont: React.RefObject<HTMLDivElement> = React.createRef();
private _outerRef: React.RefObject<HTMLDivElement> = React.createRef();
@@ -645,8 +645,8 @@ export class WebBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
};
forward = (checkAvailable?: boolean) => {
- const future = Cast(this.dataDoc[this.fieldKey + '_future'], listSpec('string'), []);
- const history = Cast(this.dataDoc[this.fieldKey + '_history'], listSpec('string'), []);
+ const future = StrListCast(this.dataDoc[this.fieldKey + '_future']);
+ const history = StrListCast(this.dataDoc[this.fieldKey + '_history']);
if (checkAvailable) return future.length;
runInAction(() => {
if (future.length) {
@@ -672,23 +672,19 @@ export class WebBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
};
back = (checkAvailable?: boolean) => {
- const future = Cast(this.dataDoc[this.fieldKey + '_future'], listSpec('string'));
- const history = Cast(this.dataDoc[this.fieldKey + '_history'], listSpec('string'), []);
+ const future = StrListCast(this.dataDoc[this.fieldKey + '_future']);
+ const history = StrListCast(this.dataDoc[this.fieldKey + '_history']);
if (checkAvailable) return history.length;
runInAction(() => {
if (history.length) {
const curUrl = this._url;
- if (future === undefined) this.dataDoc[this.fieldKey + '_future'] = new List<string>([this._url]);
+ if (!future.length) this.dataDoc[this.fieldKey + '_future'] = new List<string>([this._url]);
else this.dataDoc[this.fieldKey + '_future'] = new List<string>([...future, this._url]);
this.dataDoc[this.fieldKey] = new WebField(new URL(history.pop()!));
this._scrollHeight = 0;
if (this._webUrl === this._url) {
this._webUrl = curUrl;
- setTimeout(
- action(() => {
- this._webUrl = this._url;
- })
- );
+ setTimeout(action(() => (this._webUrl = this._url)));
} else {
this._webUrl = this._url;
}
diff --git a/src/client/views/nodes/chatbot/chatboxcomponents/ChatBox.tsx b/src/client/views/nodes/chatbot/chatboxcomponents/ChatBox.tsx
index b023b1de6..528bcd05a 100644
--- a/src/client/views/nodes/chatbot/chatboxcomponents/ChatBox.tsx
+++ b/src/client/views/nodes/chatbot/chatboxcomponents/ChatBox.tsx
@@ -733,7 +733,7 @@ export class ChatBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
const x2 = parseFloat(values[2]) * Doc.NativeWidth(doc);
const y2 = parseFloat(values[3]) * Doc.NativeHeight(doc) + foundChunk.startPage * Doc.NativeHeight(doc);
- const annotationKey = '$' + Doc.LayoutFieldKey(doc) + '_annotations';
+ const annotationKey = '$' + Doc.LayoutDataKey(doc) + '_annotations';
const existingDoc = DocListCast(doc[annotationKey]).find(d => d.citation_id === citation.citation_id);
const highlightDoc = existingDoc ?? this.createImageCitationHighlight(x1, y1, x2, y2, citation, annotationKey, doc);
diff --git a/src/client/views/nodes/chatbot/vectorstore/Vectorstore.ts b/src/client/views/nodes/chatbot/vectorstore/Vectorstore.ts
index afd34f28d..c1915a398 100644
--- a/src/client/views/nodes/chatbot/vectorstore/Vectorstore.ts
+++ b/src/client/views/nodes/chatbot/vectorstore/Vectorstore.ts
@@ -42,7 +42,8 @@ export class Vectorstore {
constructor(id: string, doc_ids: () => string[]) {
const pineconeApiKey = process.env.PINECONE_API_KEY;
if (!pineconeApiKey) {
- throw new Error('PINECONE_API_KEY is not defined.');
+ console.log('PINECONE_API_KEY is not defined - Vectorstore will be unavailable');
+ return;
}
// Initialize Pinecone and OpenAI clients with API keys from the environment.
diff --git a/src/client/views/nodes/formattedText/DashFieldView.scss b/src/client/views/nodes/formattedText/DashFieldView.scss
index 2e2e1d41c..3734ad9cc 100644
--- a/src/client/views/nodes/formattedText/DashFieldView.scss
+++ b/src/client/views/nodes/formattedText/DashFieldView.scss
@@ -26,6 +26,7 @@
display: inline-block;
font-weight: normal;
background: rgba(0, 0, 0, 0.1);
+ align-content: center;
cursor: default;
}
.dashFieldView-fieldSpan {
@@ -42,6 +43,9 @@
user-select: all;
min-width: 100%;
display: inline-block;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ max-width: 100%;
}
}
}
diff --git a/src/client/views/nodes/formattedText/DashFieldView.tsx b/src/client/views/nodes/formattedText/DashFieldView.tsx
index bb0efa917..7ea5d1fcf 100644
--- a/src/client/views/nodes/formattedText/DashFieldView.tsx
+++ b/src/client/views/nodes/formattedText/DashFieldView.tsx
@@ -184,7 +184,7 @@ export class DashFieldViewInternal extends ObservableReactComponent<IDashFieldVi
getFinfo={this.finfo}
setColumnValues={returnFalse}
allowCRs
- oneLine={!this._expanded}
+ oneLine={!this._expanded && this._props.editable}
finishEdit={this.finishEdit}
transform={Transform.Identity}
menuTarget={null}
@@ -275,7 +275,7 @@ export class DashFieldViewInternal extends ObservableReactComponent<IDashFieldVi
</span>
)}
{this._props.fieldKey.startsWith('#') || this._hideValue ? null : this.fieldValueContent}
- {!this.values.length ? null : (
+ {!this.values.length || !this.props.editable ? null : (
<select className="dashFieldView-select" tabIndex={-1} defaultValue={this._dashDoc && Field.toKeyValueString(this._dashDoc, this._fieldKey)} onChange={this.selectVal}>
<option value="-unset-">-unset-</option>
{this.values.map(val => (
@@ -308,6 +308,7 @@ export class DashFieldView {
this.dom.style.height = node.attrs.height;
this.dom.style.position = 'relative';
this.dom.style.display = 'inline-flex';
+ this.dom.style.maxWidth = '100%';
this.dom.onkeypress = function (e: KeyboardEvent) {
e.stopPropagation();
};
diff --git a/src/client/views/nodes/formattedText/FormattedTextBox.tsx b/src/client/views/nodes/formattedText/FormattedTextBox.tsx
index bef999e6d..dc23a695d 100644
--- a/src/client/views/nodes/formattedText/FormattedTextBox.tsx
+++ b/src/client/views/nodes/formattedText/FormattedTextBox.tsx
@@ -1,5 +1,4 @@
/* eslint-disable no-use-before-define */
-import { IconProp } from '@fortawesome/fontawesome-svg-core';
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import { Tooltip } from '@mui/material';
import { Property } from 'csstype';
@@ -14,14 +13,13 @@ import { EditorState, NodeSelection, Plugin, Selection, TextSelection, Transacti
import { EditorView, NodeViewConstructor } from 'prosemirror-view';
import * as React from 'react';
import { BsMarkdownFill } from 'react-icons/bs';
-import { addStyleSheet, addStyleSheetRule, clearStyleSheetRules, ClientUtils, DivWidth, returnFalse, returnZero, setupMoveUpEvents, simMouseEvent, smoothScroll, StopEvent } from '../../../../ClientUtils';
+import { addStyleSheet, addStyleSheetRule, clearStyleSheetRules, ClientUtils, DivWidth, removeStyleSheet, returnFalse, returnZero, setupMoveUpEvents, simMouseEvent, smoothScroll, StopEvent } from '../../../../ClientUtils';
import { DateField } from '../../../../fields/DateField';
import { CreateLinkToActiveAudio, Doc, DocListCast, Field, FieldType, Opt, StrListCast } from '../../../../fields/Doc';
import { AclAdmin, AclAugment, AclEdit, AclSelfEdit, DocCss, ForceServerWrite, UpdatingFromServer } from '../../../../fields/DocSymbols';
import { Id, ToString } from '../../../../fields/FieldSymbols';
import { InkTool } from '../../../../fields/InkField';
import { List } from '../../../../fields/List';
-import { PrefetchProxy } from '../../../../fields/Proxy';
import { RichTextField } from '../../../../fields/RichTextField';
import { ComputedField } from '../../../../fields/ScriptField';
import { BoolCast, Cast, DateCast, DocCast, FieldValue, NumCast, RTFCast, ScriptCast, StrCast } from '../../../../fields/Types';
@@ -35,7 +33,6 @@ import { DocUtils } from '../../../documents/DocUtils';
import { DictationManager } from '../../../util/DictationManager';
import { DragManager } from '../../../util/DragManager';
import { dropActionType } from '../../../util/DropActionTypes';
-import { MakeTemplate } from '../../../util/DropConverter';
import { LinkManager } from '../../../util/LinkManager';
import { RTFMarkup } from '../../../util/RTFMarkup';
import { SnappingManager } from '../../../util/SnappingManager';
@@ -104,12 +101,12 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
public static LiveTextUndo: UndoManager.Batch | undefined; // undo batch when typing a new text note into a collection
private static _nodeViews: (self: FormattedTextBox) => { [key: string]: NodeViewConstructor };
- private static _globalHighlightsCache: string = '';
- private static _globalHighlights = new ObservableSet<string>(['Audio Tags', 'Text from Others', 'Todo Items', 'Important Items', 'Disagree Items', 'Ignore Items']);
- private static _highlightStyleSheet = addStyleSheet();
- private static _bulletStyleSheet = addStyleSheet();
- private static _userStyleSheet = addStyleSheet();
+ private _curHighlights = new ObservableSet<string>(['Audio Tags']);
+ private static _highlightStyleSheet = addStyleSheet().sheet;
+ private static _bulletStyleSheet = addStyleSheet().sheet;
+ private _userStyleSheetElement: HTMLStyleElement | undefined;
+ private _enteringStyle = false;
private _oldWheel: HTMLDivElement | null = null;
private _selectionHTML: string | undefined;
private _sidebarRef = React.createRef<SidebarAnnos>();
@@ -217,9 +214,8 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
}
getAnchor = (addAsAnnotation: boolean, pinProps?: PinProps) => {
- const rootDoc = Doc.isTemplateDoc(this._props.docViewPath().lastElement()?.Document) ? this.Document : this.rootDoc;
- if (!pinProps && this.EditorView?.state.selection.empty) return rootDoc;
- const anchor = Docs.Create.ConfigDocument({ title: StrCast(rootDoc.title), annotationOn: rootDoc });
+ if (!pinProps && this.EditorView?.state.selection.empty) return this.rootDoc;
+ const anchor = Docs.Create.ConfigDocument({ title: StrCast(this.rootDoc?.title), annotationOn: this.rootDoc });
this.addDocument(anchor);
this._finishingLink = true;
this.makeLinkAnchor(anchor, OpenWhere.addRight, undefined, 'Anchored Selection', false, addAsAnnotation);
@@ -248,7 +244,7 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
anchor.followLinkAudio = true;
let stopFunc: () => void = emptyFunction;
target.$mediaState = mediaState.Recording;
- DictationManager.recordAudioAnnotation(target, Doc.LayoutFieldKey(target), stop => { stopFunc = stop }); // prettier-ignore
+ DictationManager.recordAudioAnnotation(target, Doc.LayoutDataKey(target), stop => { stopFunc = stop }); // prettier-ignore
const reactionDisposer = reaction(
() => target.mediaState,
@@ -430,8 +426,8 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
const oldAutoLinks = Doc.Links(this.Document).filter(
link =>
((!Doc.isTemplateForField(this.Document) &&
- (!Doc.isTemplateForField(DocCast(link.link_anchor_1)) || !Doc.AreProtosEqual(DocCast(link.link_anchor_1), this.Document)) &&
- (!Doc.isTemplateForField(DocCast(link.link_anchor_2)) || !Doc.AreProtosEqual(DocCast(link.link_anchor_2), this.Document))) ||
+ ((DocCast(link.link_anchor_1) && !Doc.isTemplateForField(DocCast(link.link_anchor_1)!)) || !Doc.AreProtosEqual(DocCast(link.link_anchor_1), this.Document)) &&
+ ((DocCast(link.link_anchor_2) && !Doc.isTemplateForField(DocCast(link.link_anchor_2)!)) || !Doc.AreProtosEqual(DocCast(link.link_anchor_2), this.Document))) ||
(Doc.isTemplateForField(this.Document) && (link.link_anchor_1 === this.Document || link.link_anchor_2 === this.Document))) &&
link.link_relationship === LinkManager.AutoKeywords
); // prettier-ignore
@@ -453,18 +449,18 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
updateTitle = () => {
const title = StrCast(this.dataDoc.title, Cast(this.dataDoc.title, RichTextField, null)?.Text);
if (
- !this._props.dontRegisterView && // (this.Document.isTemplateForField === "text" || !this.Document.isTemplateForField) && // only update the title if the data document's data field is changing
+ !this._props.dontRegisterView && // only update the title if the data document's data field is changing
title.startsWith('-') &&
this.EditorView &&
!this.dataDoc.title_custom &&
- (Doc.LayoutFieldKey(this.Document) === this.fieldKey || this.fieldKey === 'text')
+ (Doc.LayoutDataKey(this.Document) === this.fieldKey || this.fieldKey === 'text')
) {
let node = this.EditorView.state.doc;
while (node.firstChild && node.firstChild.type.name !== 'text') node = node.firstChild;
const str = node.textContent;
const prefix = '-';
- const cfield = ComputedField.WithoutComputed(() => FieldValue(this.dataDoc.title));
+ const cfield = ComputedField.DisableCompute(() => FieldValue(this.dataDoc.title));
if (!(cfield instanceof ComputedField)) {
this.dataDoc.title = (prefix + str.substring(0, Math.min(40, str.length)) + (str.length > 40 ? '...' : '')).trim();
}
@@ -591,7 +587,8 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
}
const dragData = de.complete.docDragData;
if (dragData) {
- const dataDoc = Doc.IsDelegateField(DocCast(this.layoutDoc.proto), this.fieldKey) ? DocCast(this.layoutDoc.proto) : this.dataDoc;
+ const layoutProto = DocCast(this.layoutDoc.proto);
+ const dataDoc = layoutProto && Doc.IsDelegateField(layoutProto, this.fieldKey) ? layoutProto : this.dataDoc;
const effectiveAcl = GetEffectiveAcl(dataDoc);
const draggedDoc = dragData.droppedDocuments.lastElement();
let added: Opt<boolean>;
@@ -599,7 +596,7 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
if ([AclEdit, AclAdmin, AclSelfEdit].includes(effectiveAcl) && !dragData.draggedDocuments.includes(this.Document)) {
// replace text contents when dragging with Alt
if (de.altKey) {
- const fieldKey = Doc.LayoutFieldKey(draggedDoc);
+ const fieldKey = Doc.LayoutDataKey(draggedDoc);
if (draggedDoc[fieldKey] instanceof RichTextField && !Doc.AreProtosEqual(draggedDoc, this.Document)) {
Doc.GetProto(this.dataDoc)[this.fieldKey] = Field.Copy(draggedDoc[fieldKey]);
}
@@ -699,45 +696,33 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
}
updateHighlights = (highlights: string[]) => {
- if (Array.from(highlights).join('') === FormattedTextBox._globalHighlightsCache) return;
- setTimeout(() => {
- FormattedTextBox._globalHighlightsCache = Array.from(highlights).join('');
- });
- clearStyleSheetRules(FormattedTextBox._userStyleSheet);
- if (!highlights.includes('Audio Tags')) {
- addStyleSheetRule(FormattedTextBox._userStyleSheet, 'audiotag', { display: 'none' }, '');
- }
- if (highlights.includes('Text from Others')) {
- addStyleSheetRule(FormattedTextBox._userStyleSheet, 'UM-remote', { background: 'yellow' });
- }
- if (highlights.includes('My Text')) {
- addStyleSheetRule(FormattedTextBox._userStyleSheet, 'UM-' + ClientUtils.CurrentUserEmail().replace(/\./g, '').replace(/@/g, ''), { background: 'moccasin' });
- }
- if (highlights.includes('Todo Items')) {
- addStyleSheetRule(FormattedTextBox._userStyleSheet, 'UT-todo', { outline: 'black solid 1px' });
- }
- if (highlights.includes('Important Items')) {
- addStyleSheetRule(FormattedTextBox._userStyleSheet, 'UT-important', { 'font-size': 'larger' });
- }
- if (highlights.includes('Bold Text')) {
- addStyleSheetRule(FormattedTextBox._userStyleSheet, '.formattedTextBox-inner .ProseMirror strong > span', { 'font-size': 'large' }, '');
- addStyleSheetRule(FormattedTextBox._userStyleSheet, '.formattedTextBox-inner .ProseMirror :not(strong > span)', { 'font-size': '0px' }, '');
- }
- if (highlights.includes('Disagree Items')) {
- addStyleSheetRule(FormattedTextBox._userStyleSheet, 'UT-disagree', { 'text-decoration': 'line-through' });
- }
- if (highlights.includes('Ignore Items')) {
- addStyleSheetRule(FormattedTextBox._userStyleSheet, 'UT-ignore', { 'font-size': '1' });
- }
+ const userStyleSheet = () => {
+ if (!this._userStyleSheetElement) {
+ this._userStyleSheetElement = addStyleSheet();
+ }
+ return this._userStyleSheetElement.sheet;
+ };
+ const viewId = this.DocumentView?.().ViewGuid ?? 1;
+ const userId = ClientUtils.CurrentUserEmail().replace(/\./g, '').replace('@', ''); // must match marks_rts -> user_mark's uid
+ highlights.filter(f => f !== 'Audio Tags').length && clearStyleSheetRules(userStyleSheet());
+ if (!highlights.includes('Audio Tags')) addStyleSheetRule(userStyleSheet(), `#${viewId} .audiotag`, { display: 'none' }, ''); // prettier-ignore
+ if (highlights.includes('Text from Others')) addStyleSheetRule(userStyleSheet(), `#${viewId} .UM-remote`, { background: 'yellow' }, ''); // prettier-ignore
+ if (highlights.includes('My Text')) addStyleSheetRule(userStyleSheet(), `#${viewId} .UM-${userId}`, { background: 'moccasin' }, ''); // prettier-ignore
+ if (highlights.includes('Todo Items')) addStyleSheetRule(userStyleSheet(), `#${viewId} .UT-todo`, { outline: 'black solid 1px' }, ''); // prettier-ignore
+ if (highlights.includes('Important Items')) addStyleSheetRule(userStyleSheet(), `#${viewId} .UT-important`, { 'font-size': 'larger' }, ''); // prettier-ignore
+ if (highlights.includes('Disagree Items')) addStyleSheetRule(userStyleSheet(), `#${viewId} .UT-disagree`, { 'text-decoration': 'line-through' }, ''); // prettier-ignore
+ if (highlights.includes('Ignore Items')) addStyleSheetRule(userStyleSheet(), `#${viewId} .UT-ignore`, { 'font-size': '1' }, ''); // prettier-ignore
+ if (highlights.includes('Bold Text')) { addStyleSheetRule(userStyleSheet(), `#${viewId} .formattedTextBox-inner .ProseMirror p:not(:has(strong))`, { 'font-size': '0px' }, '');
+ addStyleSheetRule(userStyleSheet(), `#${viewId} .formattedTextBox-inner .ProseMirror p:not(:has(strong)) ::after`, { content: '...', 'font-size': '5px' }, '')} // prettier-ignore
if (highlights.includes('By Recent Minute')) {
- addStyleSheetRule(FormattedTextBox._userStyleSheet, 'UM-' + ClientUtils.CurrentUserEmail().replace('.', '').replace('@', ''), { opacity: '0.1' });
+ addStyleSheetRule(userStyleSheet(), `#${viewId} .UM-${userId}`, { opacity: '0.1' }, '');
const min = Math.round(Date.now() / 1000 / 60);
- numberRange(10).map(i => addStyleSheetRule(FormattedTextBox._userStyleSheet, 'UM-min-' + (min - i), { opacity: ((10 - i - 1) / 10).toString() }));
+ numberRange(10).map(i => addStyleSheetRule(userStyleSheet(), `#${viewId} .UM-min-` + (min - i), { opacity: ((10 - i - 1) / 10).toString() }, ''));
}
if (highlights.includes('By Recent Hour')) {
- addStyleSheetRule(FormattedTextBox._userStyleSheet, 'UM-' + ClientUtils.CurrentUserEmail().replace('.', '').replace('@', ''), { opacity: '0.1' });
+ addStyleSheetRule(userStyleSheet(), `#${viewId} .UM-${userId}`, { opacity: '0.1' }, '');
const hr = Math.round(Date.now() / 1000 / 60 / 60);
- numberRange(10).map(i => addStyleSheetRule(FormattedTextBox._userStyleSheet, 'UM-hr-' + (hr - i), { opacity: ((10 - i - 1) / 10).toString() }));
+ numberRange(10).map(i => addStyleSheetRule(userStyleSheet(), `#${viewId} .UM-hr-` + (hr - i), { opacity: ((10 - i - 1) / 10).toString() }, ''));
}
this.layoutDoc[DocCss] = this.layoutDoc[DocCss] + 1; // css changes happen outside of react/mobx. so we need to set a flag that will notify anyone interested in layout changes triggered by css changes (eg., CollectionLinkView)
};
@@ -855,57 +840,21 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
return;
}
- const changeItems: ContextMenuProps[] = [];
- changeItems.push({
- description: 'plain',
- event: undoable(() => {
- Doc.setNativeView(this.Document);
- this.layoutDoc.layout_autoHeightMargins = undefined;
- }, 'set plain view'),
- icon: 'eye',
- });
- changeItems.push({
- description: 'metadata',
- event: undoable(() => {
- this.dataDoc.layout_meta = Cast(Doc.UserDoc().emptyHeader, Doc, null)?.layout;
- this.Document.layout_fieldKey = 'layout_meta';
- setTimeout(() => {
- this.layoutDoc._header_height = this.layoutDoc._layout_autoHeightMargins = 50;
- }, 50);
- }, 'set metadata view'),
- icon: 'eye',
- });
- const noteTypesDoc = Cast(Doc.UserDoc().template_notes, Doc, null);
- DocListCast(noteTypesDoc?.data).forEach(note => {
- const icon: IconProp = StrCast(note.icon) as IconProp;
- changeItems.push({
- description: StrCast(note.title),
- event: undoable(
- () => {
- this.layoutDoc.layout_autoHeightMargins = undefined;
- Doc.setNativeView(this.Document);
- DocUtils.makeCustomViewClicked(this.Document, Docs.Create.TreeDocument, StrCast(note.title), note);
- },
- `set ${StrCast(note.title)} view}`
- ),
- icon: icon,
- });
- });
const highlighting: ContextMenuProps[] = [];
const noviceHighlighting = ['Audio Tags', 'My Text', 'Text from Others', 'Bold Text'];
const expertHighlighting = [...noviceHighlighting, 'Important Items', 'Ignore Items', 'Disagree Items', 'By Recent Minute', 'By Recent Hour'];
(Doc.noviceMode ? noviceHighlighting : expertHighlighting).forEach(option =>
highlighting.push({
- description: (!FormattedTextBox._globalHighlights.has(option) ? 'Highlight ' : 'Unhighlight ') + option,
+ description: (!this._curHighlights.has(option) ? 'Highlight ' : 'Unhighlight ') + option,
event: action(() => {
e.stopPropagation();
- if (!FormattedTextBox._globalHighlights.has(option)) {
- FormattedTextBox._globalHighlights.add(option);
+ if (!this._curHighlights.has(option)) {
+ this._curHighlights.add(option);
} else {
- FormattedTextBox._globalHighlights.delete(option);
+ this._curHighlights.delete(option);
}
}),
- icon: !FormattedTextBox._globalHighlights.has(option) ? 'highlighter' : 'remove-format',
+ icon: !this._curHighlights.has(option) ? 'highlighter' : 'remove-format',
})
);
const appearance = cm.findByDescription('Appearance...');
@@ -952,20 +901,6 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
icon: 'expand-arrows-alt',
});
- appearanceItems.push({ description: 'Change Style...', noexpand: true, subitems: changeItems, icon: 'external-link-alt' });
-
- !Doc.noviceMode &&
- appearanceItems.push({
- description: 'Make Default Layout',
- event: () => {
- if (!this.layoutDoc.isTemplateDoc) {
- MakeTemplate(this.Document);
- }
- Doc.UserDoc().defaultTextLayout = new PrefetchProxy(this.Document);
- Doc.AddDocToList(Cast(Doc.UserDoc().template_notes, Doc, null), 'data', this.Document);
- },
- icon: 'eye',
- });
!appearance && appearanceItems.length && cm.addItem({ description: 'Appearance...', subitems: appearanceItems, icon: 'eye' });
const options = cm.findByDescription('Options...');
@@ -988,14 +923,6 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
},
icon: !this.Document._createDocOnCR ? 'grip-lines' : 'bars',
});
- !Doc.noviceMode &&
- optionItems.push({
- description: `${this.Document._layout_autoHeight ? 'Lock' : 'Auto'} Height`,
- event: () => {
- this.layoutDoc._layout_autoHeight = !this.layoutDoc._layout_autoHeight;
- },
- icon: this.Document._layout_autoHeight ? 'lock' : 'unlock',
- });
optionItems.push({
description: this.Document.savedAsSticker ? 'Sticker Saved!' : 'Save to Stickers',
event: action(undoable(async () => await StickerPalette.addToPalette(this.Document), 'save to palette')),
@@ -1076,16 +1003,16 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
const link = CreateLinkToActiveAudio(textanchorFunc, false).lastElement();
if (link) {
link.$isDictation = true;
- const audioanchor = Cast(link.link_anchor_2, Doc, null);
- const textanchor = Cast(link.link_anchor_1, Doc, null);
+ const audioanchor = DocCast(link.link_anchor_2);
+ const textanchor = DocCast(link.link_anchor_1);
if (audioanchor) {
audioanchor.backgroundColor = 'tan';
const audiotag = this.EditorView.state.schema.nodes.audiotag.create({
timeCode: NumCast(audioanchor._timecodeToShow),
audioId: audioanchor[Id],
- textId: textanchor[Id],
+ textId: textanchor?.[Id] ?? '',
});
- textanchor.$title = 'dictation:' + audiotag.attrs.timeCode;
+ textanchor && (textanchor.$title = 'dictation:' + audiotag.attrs.timeCode);
const tr = this.EditorView.state.tr.insert(this.EditorView.state.doc.content.size, audiotag);
const tr2 = tr.setSelection(TextSelection.create(tr.doc, tr.doc.content.size));
this.EditorView.dispatch(tr.setSelection(TextSelection.create(tr2.doc, tr2.doc.content.size)));
@@ -1220,11 +1147,10 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
// if the scroll height has changed and we're in layout_autoHeight mode, then we need to update the textHeight component of the doc.
// Since we also monitor all component height changes, this will update the document's height.
- resetNativeHeight = (scrollHeight: number) => {
- const nh = this.layoutDoc.isTemplateForField ? 0 : NumCast(this.layoutDoc._nativeHeight);
+ resetNativeHeight = action((scrollHeight: number) => {
this.layoutDoc['_' + this.fieldKey + '_height'] = scrollHeight;
- if (nh) this.layoutDoc._nativeHeight = scrollHeight;
- };
+ if (!this.layoutDoc.isTemplateForField) this.layoutDoc._nativeHeight = scrollHeight;
+ });
addPlugin = (plugin: Plugin) => {
const editorView = this.EditorView;
@@ -1252,15 +1178,8 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
() => ({ autoHeight: this.layout_autoHeight, fontSize: this.fontSize, css: this.Document[DocCss], xMargin: this.Document.xMargin, yMargin: this.Document.yMargin }),
autoHeight => setTimeout(() => autoHeight && this.tryUpdateScrollHeight())
);
- this._disposers.highlights = reaction(
- () => Array.from(FormattedTextBox._globalHighlights).slice(),
- highlights => this.updateHighlights(highlights),
- { fireImmediately: true }
- );
- this._disposers.width = reaction(
- () => this._props.PanelWidth(),
- () => this.tryUpdateScrollHeight()
- );
+ this._disposers.highlights = reaction(() => Array.from(this._curHighlights).slice(), this.updateHighlights, { fireImmediately: true });
+ this._disposers.width = reaction(this._props.PanelWidth, this.tryUpdateScrollHeight);
this._disposers.scrollHeight = reaction(
() => ({ scrollHeight: this.scrollHeight, layoutAutoHeight: this.layout_autoHeight, width: NumCast(this.layoutDoc._width) }),
({ width, scrollHeight, layoutAutoHeight }) => width && layoutAutoHeight && this.resetNativeHeight(scrollHeight),
@@ -1272,7 +1191,7 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
({ border, sidebarHeight, textHeight, layoutAutoHeight, marginsHeight }) => {
const newHeight = this.contentScaling * (marginsHeight + Math.max(sidebarHeight, textHeight));
if (
- (!Array.from(FormattedTextBox._globalHighlights).includes('Bold Text') || this._props.isSelected()) && //
+ (!Array.from(this._curHighlights).includes('Bold Text') || this._props.isSelected()) && //
layoutAutoHeight &&
newHeight &&
(newHeight !== this.layoutDoc.height || border < NumCast(this.layoutDoc.height)) &&
@@ -1281,7 +1200,7 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
this._props.setHeight?.(newHeight);
}
},
- { fireImmediately: !Array.from(FormattedTextBox._globalHighlights).includes('Bold Text') }
+ { fireImmediately: !Array.from(this._curHighlights).includes('Bold Text') }
);
this._disposers.links = reaction(
() => Doc.Links(this.dataDoc), // if a link is deleted, then remove all hyperlinks that reference it from the text's marks
@@ -1296,8 +1215,8 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
const dataData = this.dataDoc[this.fieldKey];
const layoutData = Doc.AreProtosEqual(this.layoutDoc, this.dataDoc) ? undefined : this.layoutDoc[this.fieldKey];
const dataTime = dataData ? (DateCast(this.dataDoc[this.fieldKey + '_modificationDate'])?.date.getTime() ?? 0) : 0;
- const layoutTime = layoutData && this.dataDoc[this.fieldKey + '_autoUpdate'] ? (DateCast(DocCast(this.layoutDoc)[this.fieldKey + '_modificationDate'])?.date.getTime() ?? 0) : 0;
- const protoTime = protoData && this.dataDoc[this.fieldKey + '_autoUpdate'] ? (DateCast(DocCast(this.dataDoc.proto)[this.fieldKey + '_modificationDate'])?.date.getTime() ?? 0) : 0;
+ const layoutTime = layoutData && this.dataDoc[this.fieldKey + '_autoUpdate'] ? (DateCast(DocCast(this.layoutDoc)?.[this.fieldKey + '_modificationDate'])?.date.getTime() ?? 0) : 0;
+ const protoTime = protoData && this.dataDoc[this.fieldKey + '_autoUpdate'] ? (DateCast(DocCast(this.dataDoc.proto)?.[this.fieldKey + '_modificationDate'])?.date.getTime() ?? 0) : 0;
const recentData = dataTime >= layoutTime ? (protoTime >= dataTime ? protoData : dataData) : layoutTime >= protoTime ? layoutData : protoData;
const whichData = recentData ?? (this.layoutDoc.isTemplateDoc ? layoutData : protoData) ?? protoData;
return !whichData ? undefined : { data: RTFCast(whichData), str: Field.toString(DocCast(whichData) ?? StrCast(whichData)) };
@@ -1336,7 +1255,7 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
});
}
this.prepareForTyping();
- if (FormattedTextBox._globalHighlights.has('Bold Text')) {
+ if (this._curHighlights.has('Bold Text')) {
this.layoutDoc[DocCss] = this.layoutDoc[DocCss] + 1; // css change happens outside of mobx/react, so this will notify anyone interested in the layout that it has changed
}
if (((RichTextMenu.Instance?.view === this.EditorView && this.EditorView) || this.isLabel) && !selected) {
@@ -1393,7 +1312,7 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
// } catch (err) {
// console.log('Drop failed', err);
// }
- this.addDocument?.(DocCast(this.Document.image));
+ DocCast(this.Document.image) && this.addDocument?.(DocCast(this.Document.image)!);
}
//if (this.Document.image) this.addDocument?.(DocCast(this.Document.image));
@@ -1506,8 +1425,15 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
const rtfField = Cast((!curText && this.layoutDoc[this.fieldKey]) || this.dataDoc[fieldKey], RichTextField);
if (this.ProseRef) {
this.EditorView?.destroy();
+ const edState = () => {
+ try {
+ return rtfField?.Data ? EditorState.fromJSON(config, JSON.parse(rtfField.Data)) : EditorState.create(config);
+ } catch {
+ return EditorState.create(config);
+ }
+ };
this._editorView = new EditorView(this.ProseRef, {
- state: rtfField?.Data ? EditorState.fromJSON(config, JSON.parse(rtfField.Data)) : EditorState.create(config),
+ state: edState(),
handleScrollToSelection: this.scrollToSelection,
dispatchTransaction: this.dispatchTransaction,
nodeViews: FormattedTextBox._nodeViews(this),
@@ -1519,7 +1445,8 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
(this.EditorView as unknown as { scrollToSelection: unknown }).scrollToSelection = this.scrollToSelection;
const { state } = this._editorView;
if (!rtfField) {
- const dataDoc = Doc.IsDelegateField(DocCast(this.layoutDoc.proto), this.fieldKey) ? DocCast(this.layoutDoc.proto) : this.dataDoc;
+ const layoutProto = DocCast(this.layoutDoc.proto);
+ const dataDoc = layoutProto && Doc.IsDelegateField(layoutProto, this.fieldKey) ? layoutProto : this.dataDoc;
const startupText = Field.toString(dataDoc[fieldKey] as FieldType);
const textAlign = StrCast(this.dataDoc[this.fieldKey + '_align'], StrCast(Doc.UserDoc().textAlign)) || 'left';
if (textAlign !== 'left') {
@@ -1581,6 +1508,7 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
if (this.recordingDictation) {
this.recordingDictation = !this.recordingDictation;
}
+ removeStyleSheet(this._userStyleSheetElement);
Object.values(this._disposers).forEach(disposer => disposer?.());
this.endUndoTypingBatch();
FormattedTextBox.LiveTextUndo?.end();
@@ -1827,13 +1755,30 @@ export class FormattedTextBox extends ViewBoxAnnotatableComponent<FormattedTextB
}
const { state } = _editorView;
if (!state.selection.empty && e.key === '%') {
- this._rules!.EnteringStyle = true;
+ this._enteringStyle = true;
StopEvent(e);
return;
}
+ if (this._enteringStyle && 'tix!'.includes(e.key)) {
+ const tag = e.key === 't' ? 'todo' : e.key === 'i' ? 'ignore' : e.key === 'x' ? 'disagree' : e.key === '!' ? 'important' : '??';
+ const node = state.selection.$from.nodeAfter;
+ const start = state.selection.from;
+ const end = state.selection.to;
+
+ if (node) {
+ StopEvent(e);
+ _editorView.dispatch(
+ state.tr
+ .removeMark(start, end, schema.marks.user_mark)
+ .addMark(start, end, schema.marks.user_mark.create({ userid: ClientUtils.CurrentUserEmail(), modified: Math.floor(Date.now() / 1000) }))
+ .addMark(start, end, schema.marks.user_tag.create({ userid: ClientUtils.CurrentUserEmail(), tag, modified: Math.round(Date.now() / 1000 / 60) }))
+ );
+ return;
+ }
+ }
- if (state.selection.empty || !this._rules!.EnteringStyle) {
- this._rules!.EnteringStyle = false;
+ if (state.selection.empty || !this._enteringStyle) {
+ this._enteringStyle = false;
}
for (let i = state.selection.from; i <= state.selection.to; i++) {
const node = state.doc.resolve(i);
diff --git a/src/client/views/nodes/formattedText/RichTextMenu.tsx b/src/client/views/nodes/formattedText/RichTextMenu.tsx
index 4fa1fb13b..c7731e812 100644
--- a/src/client/views/nodes/formattedText/RichTextMenu.tsx
+++ b/src/client/views/nodes/formattedText/RichTextMenu.tsx
@@ -148,11 +148,11 @@ export class RichTextMenu extends AntimodeMenu<AntimodeMenuProps> {
this._activeAlignment = this.getActiveAlignment();
this._activeFitBox = BoolCast(refDoc[refField + 'fitBox'], BoolCast(Doc.UserDoc().fitBox));
this._activeFontFamily = !activeFamilies.length
- ? StrCast(this.TextView?.Document._text_fontFamily, StrCast(this.dataDoc?.[Doc.LayoutFieldKey(this.dataDoc) + '_fontFamily'], refVal('fontFamily', 'Arial')))
+ ? StrCast(this.TextView?.Document._text_fontFamily, StrCast(this.dataDoc?.[Doc.LayoutDataKey(this.dataDoc) + '_fontFamily'], refVal('fontFamily', 'Arial')))
: activeFamilies.length === 1
? String(activeFamilies[0])
: 'various';
- this._activeFontSize = !activeSizes.length ? StrCast(this.TextView?.Document.fontSize, StrCast(this.dataDoc?.[Doc.LayoutFieldKey(this.dataDoc) + '_fontSize'], refVal('fontSize', '10px'))) : activeSizes[0];
+ this._activeFontSize = !activeSizes.length ? StrCast(this.TextView?.Document.fontSize, StrCast(this.dataDoc?.[Doc.LayoutDataKey(this.dataDoc) + '_fontSize'], refVal('fontSize', '10px'))) : activeSizes[0];
this._activeFontColor = !activeColors.length ? StrCast(this.TextView?.Document.fontColor, refVal('fontColor', 'black')) : activeColors.length > 0 ? String(activeColors[0]) : '...';
this._activeHighlightColor = !activeHighlights.length ? '' : activeHighlights.length > 0 ? String(activeHighlights[0]) : '...';
@@ -382,7 +382,7 @@ export class RichTextMenu extends AntimodeMenu<AntimodeMenuProps> {
});
}
} else if (this.dataDoc) {
- this.dataDoc[`${Doc.LayoutFieldKey(this.dataDoc)}_${fontField}`] = value;
+ this.dataDoc[`${Doc.LayoutDataKey(this.dataDoc)}_${fontField}`] = value;
this.updateMenu(undefined, undefined, undefined, this.dataDoc);
} else {
Doc.UserDoc()[fontField] = value;
@@ -414,17 +414,6 @@ export class RichTextMenu extends AntimodeMenu<AntimodeMenuProps> {
this.view.focus();
};
- insertSummarizer(state: EditorState, dispatch: (tr: Transaction) => void) {
- if (state.selection.empty) return false;
- const mark = state.schema.marks.summarize.create();
- const { tr } = state;
- tr.addMark(state.selection.from, state.selection.to, mark);
- const content = tr.selection.content();
- const newNode = state.schema.nodes.summary.create({ visibility: false, text: content, textslice: content.toJSON() });
- dispatch?.(tr.replaceSelectionWith(newNode).removeMark(tr.selection.from - 1, tr.selection.from, mark));
- return true;
- }
-
vcenterToggle = () => {
if (this.dataDoc) this.dataDoc.text_centered = !this.dataDoc.text_centered;
else Doc.UserDoc().textCentered = !Doc.UserDoc().textCentered;
diff --git a/src/client/views/nodes/formattedText/RichTextRules.ts b/src/client/views/nodes/formattedText/RichTextRules.ts
index 77c00537b..26ccf6931 100644
--- a/src/client/views/nodes/formattedText/RichTextRules.ts
+++ b/src/client/views/nodes/formattedText/RichTextRules.ts
@@ -1,7 +1,6 @@
import { ellipsis, emDash, InputRule, smartQuotes, textblockTypeInputRule } from 'prosemirror-inputrules';
import { NodeType } from 'prosemirror-model';
import { NodeSelection, TextSelection } from 'prosemirror-state';
-import { ClientUtils } from '../../../../ClientUtils';
import { Doc, DocListCast, FieldResult, StrListCast } from '../../../../fields/Doc';
import { DocData } from '../../../../fields/DocSymbols';
import { Id } from '../../../../fields/FieldSymbols';
@@ -21,7 +20,6 @@ import { schema } from './schema_rts';
export class RichTextRules {
public Document: Doc;
public TextBox: FormattedTextBox;
- public EnteringStyle: boolean = false;
constructor(doc: Doc, textBox: FormattedTextBox) {
this.Document = doc;
this.TextBox = textBox;
@@ -110,25 +108,23 @@ export class RichTextRules {
new InputRule(/>>$/, (state, match, start, end) => {
const numInlines = NumCast(this.Document.$inlineTextCount);
this.Document.$inlineTextCount = numInlines + 1;
- const inlineFieldKey = '$inline' + numInlines; // which field on the text document this annotation will write to
- const inlineLayoutKey = '$layout_' + inlineFieldKey; // the field holding the layout string that will render the inline annotation
+ const inlineFieldKey = 'inline' + numInlines; // which field on the text document this annotation will write to
+ const inlineLayoutKey = 'layout_' + inlineFieldKey; // the field holding the layout string that will render the inline annotation
const textDocInline = Docs.Create.TextDocument('', {
- _layout_fieldKey: inlineLayoutKey,
_width: 75,
_height: 35,
- annotationOn: this.Document[DocData],
_layout_fitWidth: true,
_layout_autoHeight: true,
- text_fontSize: '9px',
- title: 'inline comment',
});
+ textDocInline.layout_fieldKey = inlineLayoutKey;
+ textDocInline.annotationOn = this.Document[DocData];
textDocInline.title = inlineFieldKey; // give the annotation its own title
textDocInline.title_custom = true; // And make sure that it's 'custom' so that editing text doesn't change the title of the containing doc
- textDocInline.isTemplateForField = inlineFieldKey; // this is needed in case the containing text doc is converted to a template at some point
+ //textDocInline.isTemplateForField = inlineFieldKey; // this is needed in case the containing text doc is converted to a template at some point
textDocInline.isDataDoc = true;
textDocInline.proto = this.Document[DocData]; // make the annotation inherit from the outer text doc so that it can resolve any nested field references, e.g., [[field]]
- this.Document[inlineLayoutKey] = FormattedTextBox.LayoutString(inlineFieldKey); // create a layout string for the layout key that will render the annotation text
- this.Document[inlineFieldKey] = ''; // set a default value for the annotation
+ this.Document['$' + inlineLayoutKey] = FormattedTextBox.LayoutString(inlineFieldKey); // create a layout string for the layout key that will render the annotation text
+ this.Document['$' + inlineFieldKey] = ''; // set a default value for the annotation
const node = state.doc.resolve(start).nodeAfter;
const newNode = schema.nodes.dashComment.create({ docId: textDocInline[Id], reflow: true });
const dashDoc = schema.nodes.dashDoc.create({ width: 75, height: 35, title: 'dashDoc', docId: textDocInline[Id], float: 'right' });
@@ -143,9 +139,8 @@ export class RichTextRules {
return replaced;
}),
- // set the First-line indent node type for the selection's paragraph (assumes % was used to initiate an EnteringStyle mode)
- new InputRule(/(%d|d)$/, (state, match, start, end) => {
- if (!match[0].startsWith('%') && !this.EnteringStyle) return null;
+ // set the First-line indent node type for the selection's paragraph
+ new InputRule(/%d$/, (state, match, start, end) => {
const pos = state.doc.resolve(start);
for (let depth = pos.depth; depth >= 0; depth--) {
const node = pos.node(depth);
@@ -158,9 +153,8 @@ export class RichTextRules {
return null;
}),
- // set the Hanging indent node type for the current selection's paragraph (assumes % was used to initiate an EnteringStyle mode)
- new InputRule(/(%h|h)$/, (state, match, start, end) => {
- if (!match[0].startsWith('%') && !this.EnteringStyle) return null;
+ // set the Hanging indent node type for the current selection's paragraph
+ new InputRule(/%h$/, (state, match, start, end) => {
const pos = state.doc.resolve(start);
for (let depth = pos.depth; depth >= 0; depth--) {
const node = pos.node(depth);
@@ -173,9 +167,8 @@ export class RichTextRules {
return null;
}),
- // set the Quoted indent node type for the current selection's paragraph (assumes % was used to initiate an EnteringStyle mode)
- new InputRule(/(%q|q)$/, (state, match, start, end) => {
- if (!match[0].startsWith('%') && !this.EnteringStyle) return null;
+ // set the Quoted indent node type for the current selection's paragraph
+ new InputRule(/%q$/, (state, match, start, end) => {
const pos = state.doc.resolve(start);
if (state.selection instanceof NodeSelection && state.selection.node.type === schema.nodes.ordered_list) {
const { node } = state.selection;
@@ -292,7 +285,8 @@ export class RichTextRules {
editor.dispatch(estate.tr.setSelection(new TextSelection(estate.doc.resolve(start), estate.doc.resolve(end - prefixLength))));
}
- DocUtils.MakeLink(this.TextBox.getAnchor(true), target, { link_relationship: 'portal to:portal from' });
+ const tanchor = this.TextBox.getAnchor(true);
+ tanchor && DocUtils.MakeLink(tanchor, target, { link_relationship: 'portal to:portal from' });
const teditor = this.TextBox.EditorView;
if (teditor && selection) {
@@ -410,22 +404,6 @@ export class RichTextRules {
// # heading
textblockTypeInputRule(/^(#{1,6})\s$/, schema.nodes.heading, match => ({ level: match[1].length })),
- // set the Todo user-tag on the current selection (assumes % was used to initiate an EnteringStyle mode)
- new InputRule(/[ti!x]$/, (state, match, start, end) => {
- if (state.selection.to === state.selection.from || !this.EnteringStyle) return null;
-
- const tag = match[0] === 't' ? 'todo' : match[0] === 'i' ? 'ignore' : match[0] === 'x' ? 'disagree' : match[0] === '!' ? 'important' : '??';
- const node = state.doc.resolve(start).nodeAfter;
-
- if (node?.marks.findIndex(m => m.type === schema.marks.user_tag) !== -1) return state.tr.removeMark(start, end, schema.marks.user_tag);
- return node
- ? state.tr
- .removeMark(start, end, schema.marks.user_mark)
- .addMark(start, end, schema.marks.user_mark.create({ userid: ClientUtils.CurrentUserEmail(), modified: Math.floor(Date.now() / 1000) }))
- .addMark(start, end, schema.marks.user_tag.create({ userid: ClientUtils.CurrentUserEmail(), tag: tag, modified: Math.round(Date.now() / 1000 / 60) }))
- : state.tr;
- }),
-
new InputRule(/%\(/, (state, match, start, end) => {
const node = state.doc.resolve(start).nodeAfter;
const sm = state.storedMarks?.slice() || [];
diff --git a/src/client/views/nodes/formattedText/SummaryView.tsx b/src/client/views/nodes/formattedText/SummaryView.tsx
index 6dea891a0..eeb604b57 100644
--- a/src/client/views/nodes/formattedText/SummaryView.tsx
+++ b/src/client/views/nodes/formattedText/SummaryView.tsx
@@ -59,12 +59,15 @@ export class SummaryView {
let endPos = start;
const visited = new Set();
- for (let i: number = start + 1; i < view.state.doc.nodeSize - 1; i++) {
+ const summarized = new Set();
+ const isSummary = (node: Node) => summarized.has(node) || node.marks.find(m => m.type === mtype || m.type === mtypeInc);
+ for (let i = start + 1; i < view.state.doc.nodeSize - 1; i++) {
let skip = false;
// eslint-disable-next-line no-loop-func
view.state.doc.nodesBetween(start, i, (node: Node /* , pos: number, parent: Node, index: number */) => {
+ isSummary(node) && Array.from(node.children).forEach(child => summarized.add(child));
if (node.isLeaf && !visited.has(node) && !skip) {
- if (node.marks.find(m => m.type === mtype || m.type === mtypeInc)) {
+ if (summarized.has(node) || isSummary(node)) {
visited.add(node);
endPos = i + node.nodeSize - 1;
} else skip = true;
diff --git a/src/client/views/nodes/formattedText/marks_rts.ts b/src/client/views/nodes/formattedText/marks_rts.ts
index dc1e4772e..b7dae1ca3 100644
--- a/src/client/views/nodes/formattedText/marks_rts.ts
+++ b/src/client/views/nodes/formattedText/marks_rts.ts
@@ -118,6 +118,7 @@ export const marks: { [index: string]: MarkSpec } = {
{
tag: 'span',
getAttrs: dom => {
+ if (!dom.style.fontSize) return false;
return { fontSize: dom.style.fontSize ? dom.style.fontSize.toString() : '' };
},
},
@@ -132,16 +133,9 @@ export const marks: { [index: string]: MarkSpec } = {
{
tag: 'span',
getAttrs: dom => {
- const cstyle = getComputedStyle(dom);
- if (cstyle.font) {
- if (cstyle.font.indexOf('Times New Roman') !== -1) return { fontFamily: 'Times New Roman' };
- if (cstyle.font.indexOf('Arial') !== -1) return { fontFamily: 'Arial' };
- if (cstyle.font.indexOf('Georgia') !== -1) return { fontFamily: 'Georgia' };
- if (cstyle.font.indexOf('Comic Sans') !== -1) return { fontFamily: 'Comic Sans MS' };
- if (cstyle.font.indexOf('Tahoma') !== -1) return { fontFamily: 'Tahoma' };
- if (cstyle.font.indexOf('Crimson') !== -1) return { fontFamily: 'Crimson Text' };
- }
- return { fontFamily: '' };
+ const cstyle = dom.style.fontFamily;
+ if (!cstyle) return false;
+ return { fontFamily: cstyle };
},
},
],
@@ -155,6 +149,7 @@ export const marks: { [index: string]: MarkSpec } = {
{
tag: 'span',
getAttrs: dom => {
+ if (!dom.style.color) return false;
return { color: dom.getAttribute('color') };
},
},
@@ -171,6 +166,7 @@ export const marks: { [index: string]: MarkSpec } = {
{
tag: 'span',
getAttrs: dom => {
+ if (!dom.getAttribute('background-color')) return false;
return { fontHighlight: dom.getAttribute('background-color') };
},
},
@@ -239,13 +235,7 @@ export const marks: { [index: string]: MarkSpec } = {
{
tag: 'span',
getAttrs: p => {
- if (typeof p !== 'string') {
- const style = getComputedStyle(p);
- if (style.textDecoration === 'underline') return null;
- if (p.parentElement?.outerHTML.indexOf('text-decoration: underline') !== -1 && p.parentElement?.outerHTML.indexOf('text-decoration-style: solid') !== -1) {
- return null;
- }
- }
+ if (p.getAttribute('data-summarizeInclusive')) return [[{ style: 'data-summarizeInclusive: true' }]];
return false;
},
},
@@ -255,7 +245,8 @@ export const marks: { [index: string]: MarkSpec } = {
return [
'span',
{
- style: 'text-decoration: underline; text-decoration-style: solid; text-decoration-color: rgba(204, 206, 210, 0.92)',
+ 'data-summarizeInclusive': 'true',
+ style: 'text-decoration: underline; text-decoration-style: dotted; text-decoration-color: rgba(204, 206, 210)',
},
];
},
diff --git a/src/client/views/nodes/formattedText/nodes_rts.ts b/src/client/views/nodes/formattedText/nodes_rts.ts
index fe7b77e74..5d34afc8a 100644
--- a/src/client/views/nodes/formattedText/nodes_rts.ts
+++ b/src/client/views/nodes/formattedText/nodes_rts.ts
@@ -353,6 +353,7 @@ export const nodes: { [index: string]: NodeSpec } = {
hard_break: {
inline: true,
group: 'inline',
+ marks: '_',
selectable: false,
parseDOM: [{ tag: 'br' }],
toDOM() {
diff --git a/src/client/views/nodes/trails/PresBox.tsx b/src/client/views/nodes/trails/PresBox.tsx
index 23155ebf3..11f35b8ef 100644
--- a/src/client/views/nodes/trails/PresBox.tsx
+++ b/src/client/views/nodes/trails/PresBox.tsx
@@ -149,7 +149,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
setIsLoading = action((input?: boolean) => { this._isLoading = !!input; }); // prettier-ignore
setShowAIGalleryVisibilty = action((visible: boolean) => { this._showAIGallery = visible; }); // prettier-ignore
setBezierControlPoints = action((newPoints: { p1: number[]; p2: number[] }) => {
- this.setEaseFunc(this.activeItem, `cubic-bezier(${newPoints.p1[0]}, ${newPoints.p1[1]}, ${newPoints.p2[0]}, ${newPoints.p2[1]})`);
+ this.activeItem && this.setEaseFunc(this.activeItem, `cubic-bezier(${newPoints.p1[0]}, ${newPoints.p1[1]}, ${newPoints.p2[0]}, ${newPoints.p2[1]})`);
});
@computed get showEaseFunctions() {
@@ -158,7 +158,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
@computed
get currCPoints() {
- return EaseFuncToPoints(this.activeItem.presentation_easeFunc ? StrCast(this.activeItem.presentation_easeFunc) : 'ease');
+ return EaseFuncToPoints(this.activeItem?.presentation_easeFunc ? StrCast(this.activeItem.presentation_easeFunc) : 'ease');
}
@computed
@@ -175,7 +175,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
return DocListCast(this.Document[this.presFieldKey]);
}
@computed get tagDocs() {
- return this.childDocs.map(doc => Cast(doc.presentation_targetDoc, Doc, null));
+ return this.childDocs.map(doc => DocCast(doc.presentation_targetDoc)!).filter(doc => doc);
}
@computed get itemIndex() {
return NumCast(this.Document._itemIndex);
@@ -187,11 +187,11 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
return DocCast(this.activeItem?.presentation_targetDoc);
}
public static targetRenderedDoc = (doc: Doc) => {
- const targetDoc = Cast(doc?.presentation_targetDoc, Doc, null);
+ const targetDoc = DocCast(doc?.presentation_targetDoc);
return targetDoc?.layout_unrendered ? DocCast(targetDoc.annotationOn) : targetDoc;
};
@computed get scrollable() {
- if ([DocumentType.PDF, DocumentType.WEB, DocumentType.RTF].includes(this.targetDoc.type as DocumentType) || this.targetDoc._type_collection === CollectionViewType.Stacking) return true;
+ if ([DocumentType.PDF, DocumentType.WEB, DocumentType.RTF].includes(this.targetDoc?.type as DocumentType) || this.targetDoc?._type_collection === CollectionViewType.Stacking) return true;
return false;
}
@computed get selectedDocumentView() {
@@ -273,8 +273,8 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
};
stopTempMedia = (targetDocField: FieldResult) => {
- const targetDoc = DocCast(DocCast(targetDocField).annotationOn) ?? DocCast(targetDocField);
- if ([DocumentType.VID, DocumentType.AUDIO].includes(targetDoc.type as DocumentType)) {
+ const targetDoc = DocCast(DocCast(targetDocField)?.annotationOn) ?? DocCast(targetDocField);
+ if ([DocumentType.VID, DocumentType.AUDIO].includes(targetDoc?.type as DocumentType)) {
const targMedia = DocumentView.getDocumentView(targetDoc);
targMedia?.ComponentView?.Pause?.();
}
@@ -295,13 +295,13 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
this.setIsLoading(true);
const slideDefaults: { [key: string]: FieldResult } = { presentation_transition: 500, config_zoom: 1 };
const currSlideProperties = gptSlideProperties.reduce(
- (prev, key) => { prev[key] = Field.toString(this.activeItem[key]) ?? prev[key]; return prev; },
+ (prev, key) => { prev[key] = Field.toString(this.activeItem?.[key]) ?? prev[key]; return prev; },
slideDefaults); // prettier-ignore
gptTrailSlideCustomization(input, JSON.stringify(currSlideProperties))
.then(res =>
(Object.entries(JSON.parse(res)) as string[][]).forEach(([key, val]) => {
- this.activeItem[key] = (+val).toString() === val ? +val : (val ?? this.activeItem[key]);
+ this.activeItem && (this.activeItem[key] = (+val).toString() === val ? +val : (val ?? this.activeItem[key]));
})
)
.catch(e => console.error(e))
@@ -325,7 +325,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
const serial = nextSelected + 1 < this.childDocs.length && NumCast(this.childDocs[nextSelected + 1].presentation_groupWithUp) > 1;
if (serial) {
this.gotoDocument(nextSelected, this.activeItem, true, async () => {
- const waitTime = NumCast(this.activeItem.presentation_duration);
+ const waitTime = NumCast(this.activeItem?.presentation_duration);
await new Promise<void>(res => {
setTimeout(res, Math.max(0, waitTime));
});
@@ -346,7 +346,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
progressivizedItems = (doc: Doc) => {
const targetList = PresBox.targetRenderedDoc(doc);
if (doc.presentation_indexed !== undefined && targetList) {
- const listItems = (Cast(targetList[Doc.LayoutFieldKey(targetList)], listSpec(Doc), null)?.filter(d => d instanceof Doc) as Doc[]) ?? DocListCast(targetList[Doc.LayoutFieldKey(targetList) + '_annotations']);
+ const listItems = (Cast(targetList[Doc.LayoutDataKey(targetList)], listSpec(Doc), null)?.filter(d => d instanceof Doc) as Doc[]) ?? DocListCast(targetList[Doc.LayoutDataKey(targetList) + '_annotations']);
return listItems.filter(ldoc => !ldoc.layout_unrendered);
}
return undefined;
@@ -364,7 +364,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
next = () => {
const progressiveReveal = (first: boolean) => {
const presIndexed = Cast(this.activeItem?.presentation_indexed, 'number', null);
- if (presIndexed !== undefined) {
+ if (presIndexed !== undefined && this.activeItem) {
const listItems = this.progressivizedItems(this.activeItem);
const listItemDoc = listItems?.[presIndexed];
if (listItems && listItemDoc) {
@@ -395,7 +395,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
if (this.childDocs[this.itemIndex + 1] !== undefined) {
// Case 1: No more frames in current doc and next slide is defined, therefore move to next slide
const slides = DocListCast(this.Document[StrCast(this.presFieldKey, 'data')]);
- const curLast = this.selectedArray.size ? Math.max(...Array.from(this.selectedArray).map(d => slides.indexOf(DocCast(d)))) : this.itemIndex;
+ const curLast = this.selectedArray.size ? Math.max(...Array.from(this.selectedArray).map(d => slides.indexOf(DocCast(d) ?? d))) : this.itemIndex;
// before moving onto next slide, run the subroutines :)
const currentDoc = this.childDocs[this.itemIndex];
@@ -422,7 +422,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
const { activeItem } = this;
let prevSelected = this.itemIndex;
// Functionality for group with up
- let didZoom = activeItem.presentation_movement;
+ let didZoom = activeItem?.presentation_movement;
for (; prevSelected > 0 && this.childDocs[Math.max(0, prevSelected - 1)].presentation_groupWithUp; prevSelected--) {
didZoom = didZoom === 'none' ? this.childDocs[prevSelected].presentation_movement : didZoom;
}
@@ -452,7 +452,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
this.stopTempMedia(from.presentation_targetDoc);
}
// If next slide is audio / video 'Play automatically' then the next slide should be played
- if (this.layoutDoc.presentation_status !== PresStatus.Edit && (this.targetDoc.type === DocumentType.AUDIO || this.targetDoc.type === DocumentType.VID) && this.activeItem.presentation_mediaStart === 'auto') {
+ if (this.layoutDoc.presentation_status !== PresStatus.Edit && (this.targetDoc?.type === DocumentType.AUDIO || this.targetDoc?.type === DocumentType.VID) && this.activeItem?.presentation_mediaStart === 'auto') {
this.startTempMedia(this.targetDoc, this.activeItem);
}
if (!group) this.clearSelectedArray();
@@ -516,8 +516,8 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
const activeFrame = activeItem.config_activeFrame ?? activeItem.config_currentFrame;
if (activeFrame !== undefined) {
const frameTime = NumCast(activeItem.presentation_transition, 500);
- const acontext = activeItem.config_activeFrame !== undefined ? DocCast(DocCast(activeItem.presentation_targetDoc).embedContainer) : DocCast(activeItem.presentation_targetDoc);
- const context = DocCast(acontext)?.annotationOn ? DocCast(DocCast(acontext).annotationOn) : acontext;
+ const acontext = activeItem.config_activeFrame !== undefined ? DocCast(DocCast(activeItem?.presentation_targetDoc)?.embedContainer) : DocCast(activeItem.presentation_targetDoc);
+ const context = DocCast(acontext)?.annotationOn ? DocCast(DocCast(acontext)?.annotationOn) : acontext;
if (context) {
const ffview = CollectionFreeFormView.from(DocumentView.getFirstDocumentView(context));
if (ffview?.childDocs) {
@@ -528,7 +528,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
}
if ((pinDataTypes?.dataview && activeItem.config_data !== undefined) || (!pinDataTypes && activeItem.config_data !== undefined)) {
bestTarget._dataTransition = `all ${transTime}ms`;
- const fkey = Doc.LayoutFieldKey(bestTarget);
+ const fkey = Doc.LayoutDataKey(bestTarget);
const setData = bestTargetView?.ComponentView?.setData;
if (setData) setData(activeItem.config_data);
else {
@@ -553,7 +553,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
}
}
if (pinDataTypes?.clippable || (!pinDataTypes && activeItem.config_clipWidth !== undefined)) {
- const fkey = '_' + Doc.LayoutFieldKey(bestTarget);
+ const fkey = '_' + Doc.LayoutDataKey(bestTarget);
if (bestTarget[fkey + '_clipWidth'] !== activeItem.config_clipWidth) {
bestTarget[fkey + '_clipWidth'] = activeItem.config_clipWidth;
changed = true;
@@ -655,7 +655,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
}
}
if (pinDataTypes?.dataannos || (!pinDataTypes && activeItem.config_annotations !== undefined)) {
- const fkey = Doc.LayoutFieldKey(bestTarget);
+ const fkey = Doc.LayoutDataKey(bestTarget);
const oldItems = DocListCast(bestTarget[fkey + '_annotations']).filter(doc => doc.layout_unrendered);
const newItems = DocListCast(activeItem.config_annotations).map(doc => {
doc.hidden = false;
@@ -672,7 +672,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
}
if (pinDataTypes?.poslayoutview || (!pinDataTypes && activeItem.config_pinLayoutData !== undefined)) {
changed = true;
- const layoutField = Doc.LayoutFieldKey(bestTarget);
+ const layoutField = Doc.LayoutDataKey(bestTarget);
const transitioned = new Set<Doc>();
StrListCast(activeItem.config_pinLayoutData)
.map(str => JSON.parse(str) as { id: string; x: number; y: number; back: string; fill: string; w: number; h: number; data: string; text: string })
@@ -740,7 +740,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
const { activeItem, targetDoc } = this;
const finished = (options: FocusViewOptions) => {
afterNav?.(options);
- targetDoc[Animation] = undefined;
+ targetDoc && (targetDoc[Animation] = undefined);
};
const selViewCache = Array.from(this.selectedArray);
const dragViewCache = Array.from(this._dragArray);
@@ -756,7 +756,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
}
finished(options);
});
- PresBox.NavigateToTarget(targetDoc, activeItem, resetSelection);
+ targetDoc && activeItem && PresBox.NavigateToTarget(targetDoc, activeItem, resetSelection);
};
static NavigateToTarget(targetDoc: Doc, activeItem: Doc, finished?: (options: FocusViewOptions) => void) {
@@ -806,42 +806,44 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
@action
doHideBeforeAfter = () => {
this.childDocs.forEach((doc, index) => {
- const curDoc = Cast(doc, Doc, null);
- const tagDoc = PresBox.targetRenderedDoc(curDoc);
- const itemIndexes = this.getAllIndexes(this.tagDocs, curDoc);
- let opacity = index === this.itemIndex ? 1 : undefined;
- if (curDoc.presentation_hide) {
- if (index !== this.itemIndex) {
- opacity = 1;
+ const curDoc = DocCast(doc);
+ if (curDoc) {
+ const tagDoc = PresBox.targetRenderedDoc(curDoc) ?? curDoc;
+ const itemIndexes = this.getAllIndexes(this.tagDocs, curDoc);
+ let opacity = index === this.itemIndex ? 1 : undefined;
+ if (curDoc.presentation_hide) {
+ if (index !== this.itemIndex) {
+ opacity = 1;
+ }
}
- }
- const hidingIndBef = itemIndexes.find(item => item >= this.itemIndex) ?? itemIndexes.slice().reverse().lastElement();
- if (curDoc.presentation_hideBefore && index === hidingIndBef) {
- if (index > this.itemIndex) {
- opacity = 0;
- } else if (index === this.itemIndex || !curDoc.presentation_hideAfter) {
- opacity = 1;
+ const hidingIndBef = itemIndexes.find(item => item >= this.itemIndex) ?? itemIndexes.slice().reverse().lastElement();
+ if (curDoc.presentation_hideBefore && index === hidingIndBef) {
+ if (index > this.itemIndex) {
+ opacity = 0;
+ } else if (index === this.itemIndex || !curDoc.presentation_hideAfter) {
+ opacity = 1;
+ }
}
- }
- const hidingIndAft =
- itemIndexes
- .slice()
- .reverse()
- .find(item => item <= this.itemIndex) ?? itemIndexes.lastElement();
- if (curDoc.presentation_hideAfter && index === hidingIndAft) {
- if (index < this.itemIndex) {
- opacity = 0;
- } else if (index === this.itemIndex || !curDoc.presentation_hideBefore) {
- opacity = 1;
+ const hidingIndAft =
+ itemIndexes
+ .slice()
+ .reverse()
+ .find(item => item <= this.itemIndex) ?? itemIndexes.lastElement();
+ if (curDoc.presentation_hideAfter && index === hidingIndAft) {
+ if (index < this.itemIndex) {
+ opacity = 0;
+ } else if (index === this.itemIndex || !curDoc.presentation_hideBefore) {
+ opacity = 1;
+ }
}
- }
- const hidingInd = itemIndexes.find(item => item === this.itemIndex);
- if (curDoc.presentation_hide && index === hidingInd) {
- if (index === this.itemIndex) {
- opacity = 0;
+ const hidingInd = itemIndexes.find(item => item === this.itemIndex);
+ if (curDoc.presentation_hide && index === hidingInd) {
+ if (index === this.itemIndex) {
+ opacity = 0;
+ }
}
+ opacity !== undefined && (tagDoc.opacity = opacity === 1 ? undefined : opacity);
}
- opacity !== undefined && (tagDoc.opacity = opacity === 1 ? undefined : opacity);
});
};
@@ -940,7 +942,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
initializePresState = (startIndex: number) => {
this.childDocs.forEach((doc, index) => {
- const tagDoc = PresBox.targetRenderedDoc(doc);
+ const tagDoc = PresBox.targetRenderedDoc(doc) ?? doc;
if (doc.presentation_hideBefore && index > startIndex) tagDoc.opacity = 0;
if (doc.presentation_hideAfter && index < startIndex) tagDoc.opacity = 0;
if (doc.presentation_indexed !== undefined && index >= startIndex) {
@@ -969,7 +971,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
this.layoutDoc.presentation_status = PresStatus.Autoplay;
this.initializePresState(startIndex);
const func = () => {
- const delay = NumCast(this.activeItem.presentation_duration, this.activeItem.type === DocumentType.SCRIPTING ? 0 : 2500) + NumCast(this.activeItem.presentation_transition);
+ const delay = NumCast(this.activeItem?.presentation_duration, this.activeItem?.type === DocumentType.SCRIPTING ? 0 : 2500) + NumCast(this.activeItem?.presentation_transition);
this._presTimer = setTimeout(() => {
if (this.next() === false) this.layoutDoc.presentation_status = this._exitTrail?.() ?? PresStatus.Manual;
this.layoutDoc.presentation_status === PresStatus.Autoplay && func();
@@ -1060,7 +1062,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
return !results.some(r => !r);
};
- childLayoutTemplate = () => Docs.Create.PresElementBoxDocument();
+ childLayoutTemplate = () => Docs.Create.PresSlideDocument();
removeDocument = (doc: Doc | Doc[]) =>
!toList(doc)
.map(d => Doc.RemoveDocFromList(this.Document, this.fieldKey, d))
@@ -1077,13 +1079,14 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
*/
@computed get listOfSelected() {
return Array.from(this.selectedArray).map((doc, index) => {
- const curDoc = Cast(doc, Doc, null);
+ const curDoc = DocCast(doc);
+ if (!curDoc) return null;
const tagDoc = Cast(curDoc.presentation_targetDoc, Doc, null);
if (curDoc && curDoc === this.activeItem)
return (
<div key={doc[Id]} className="selectedList-items">
<b>
- {index + 1}. {StrCast(curDoc.title)})
+ {index + 1}. {StrCast(curDoc.title)}
</b>
</div>
);
@@ -1277,7 +1280,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
const presCollection = collection;
const dv = DocumentView.getDocumentView(presCollection);
this.childDocs.forEach((doc, index) => {
- const tagDoc = PresBox.targetRenderedDoc(doc);
+ const tagDoc = PresBox.targetRenderedDoc(doc) ?? doc;
const srcContext = Cast(tagDoc.embedContainer, Doc, null);
const labelCreator = (top: number, left: number, edge: number, fontSize: number) => (
<div className="pathOrder" key={tagDoc.id + 'pres' + index} style={{ top, left, width: edge, height: edge, fontSize }} onClick={() => this.selectElement(doc)}>
@@ -1526,17 +1529,19 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
// Applies the slide transiiton settings to all docs in the array
@undoBatch
applyTo = (array: Doc[]) => {
- this.updateMovement(this.activeItem.presentation_movement as PresMovement, true);
- this.updateEffect(this.activeItem.presentation_effect as PresEffect, false, true);
- this.updateEffect(this.activeItem.presBulletEffect as PresEffect, true, true);
- this.updateEffectDirection(this.activeItem.presentation_effectDirection as PresEffectDirection, true);
- const { presentation_transition: pt, presentation_duration: pd, presentation_hideBefore: ph, presentation_hideAfter: pa } = this.activeItem;
- array.forEach(curDoc => {
- curDoc.presentation_transition = pt;
- curDoc.presentation_duration = pd;
- curDoc.presentation_hideBefore = ph;
- curDoc.presentation_hideAfter = pa;
- });
+ if (this.activeItem) {
+ this.updateMovement(this.activeItem.presentation_movement as PresMovement, true);
+ this.updateEffect(this.activeItem.presentation_effect as PresEffect, false, true);
+ this.updateEffect(this.activeItem.presBulletEffect as PresEffect, true, true);
+ this.updateEffectDirection(this.activeItem.presentation_effectDirection as PresEffectDirection, true);
+ const { presentation_transition: pt, presentation_duration: pd, presentation_hideBefore: ph, presentation_hideAfter: pa } = this.activeItem;
+ array.forEach(curDoc => {
+ curDoc.presentation_transition = pt;
+ curDoc.presentation_duration = pd;
+ curDoc.presentation_hideBefore = ph;
+ curDoc.presentation_hideAfter = pa;
+ });
+ }
};
@computed get visibilityDurationDropdown() {
@@ -1673,15 +1678,15 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
onClick={() => {
activeItem.presentation_indexed = activeItem.presentation_indexed === undefined ? 0 : undefined;
activeItem.presentation_hideBefore = activeItem.presentation_indexed !== undefined;
- const tagDoc = PresBox.targetRenderedDoc(this.activeItem);
+ const tagDoc = PresBox.targetRenderedDoc(activeItem) ?? activeItem;
const type = DocCast(tagDoc?.annotationOn)?.type ?? tagDoc.type;
activeItem.presentation_indexedStart = type === DocumentType.COL ? 1 : 0;
// a progressivized slide doesn't have sub-slides, but rather iterates over the data list of the target being progressivized.
// to avoid creating a new slide to correspond to each of the target's data list, we create a computedField to refernce the target's data list.
- let dataField = Doc.LayoutFieldKey(tagDoc);
+ let dataField = Doc.LayoutDataKey(tagDoc);
if (Cast(tagDoc[dataField], listSpec(Doc), null)?.filter(d => d instanceof Doc) === undefined) dataField += '_annotations';
- if (DocCast(activeItem.presentation_targetDoc).annotationOn) activeItem.data = ComputedField.MakeFunction(`this.presentation_targetDoc.annotationOn?.["${dataField}"]`);
+ if (DocCast(activeItem.presentation_targetDoc)?.annotationOn) activeItem.data = ComputedField.MakeFunction(`this.presentation_targetDoc.annotationOn?.["${dataField}"]`);
else activeItem.data = ComputedField.MakeFunction(`this.presentation_targetDoc?.["${dataField}"]`);
}}>
Enable
@@ -1797,12 +1802,13 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
onClick={() => {
this.updateEffect(elem.effect, false);
this.updateEffectDirection(elem.direction);
- this.updateEffectTiming(this.activeItem, {
- type: SpringType.CUSTOM,
- stiffness: elem.stiffness,
- damping: elem.damping,
- mass: elem.mass,
- });
+ this.activeItem &&
+ this.updateEffectTiming(this.activeItem, {
+ type: SpringType.CUSTOM,
+ stiffness: elem.stiffness,
+ damping: elem.damping,
+ mass: elem.mass,
+ });
}}>
<SlideEffect dir={elem.direction} presEffect={elem.effect} springSettings={elem} infinite>
<div className="presBox-effect-demo-box" style={{ backgroundColor: springPreviewColors[i] }} />
@@ -1947,8 +1953,8 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
formLabelPlacement="left"
closeOnSelect
items={easeItems}
- selectedVal={this.activeItem.presentation_easeFunc ? (StrCast(this.activeItem.presentation_easeFunc).startsWith('cubic') ? 'custom' : StrCast(this.activeItem.presentation_easeFunc)) : 'ease'}
- setSelectedVal={val => typeof val === 'string' && this.setEaseFunc(this.activeItem, val !== 'custom' ? val : TIMING_DEFAULT_MAPPINGS.ease)}
+ selectedVal={this.activeItem?.presentation_easeFunc ? (StrCast(this.activeItem.presentation_easeFunc).startsWith('cubic') ? 'custom' : StrCast(this.activeItem.presentation_easeFunc)) : 'ease'}
+ setSelectedVal={val => typeof val === 'string' && this.activeItem && this.setEaseFunc(this.activeItem, val !== 'custom' ? val : TIMING_DEFAULT_MAPPINGS.ease)}
dropdownType={DropdownType.SELECT}
type={Type.TERT}
/>
@@ -2145,9 +2151,9 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
@computed get mediaOptionsDropdown() {
const { activeItem } = this;
if (activeItem && this.targetDoc) {
- const renderTarget = PresBox.targetRenderedDoc(this.activeItem);
+ const renderTarget = PresBox.targetRenderedDoc(this.activeItem ?? this.targetDoc) ?? this.targetDoc;
const clipStart = NumCast(renderTarget.clipStart);
- const clipEnd = NumCast(renderTarget.clipEnd, clipStart + NumCast(renderTarget[Doc.LayoutFieldKey(renderTarget) + '_duration']));
+ const clipEnd = NumCast(renderTarget.clipEnd, clipStart + NumCast(renderTarget[Doc.LayoutDataKey(renderTarget) + '_duration']));
const configClipEnd = NumCast(activeItem.config_clipEnd) < NumCast(activeItem.config_clipStart) ? clipEnd - clipStart : NumCast(activeItem.config_clipEnd);
return (
<div className="presBox-ribbon" onClick={e => e.stopPropagation()} onPointerUp={e => e.stopPropagation()} onPointerDown={e => e.stopPropagation()}>
@@ -2699,7 +2705,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
const presEnd =
!this.layoutDoc.presLoop &&
this.itemIndex === this.childDocs.length - 1 &&
- (this.activeItem.presentation_indexed === undefined || NumCast(this.activeItem.presentation_indexed) === (this.progressivizedItems(this.activeItem)?.length ?? 0));
+ (this.activeItem?.presentation_indexed === undefined || NumCast(this.activeItem.presentation_indexed) === (this.progressivizedItems(this.activeItem)?.length ?? 0));
const presStart: boolean = !this.layoutDoc.presLoop && this.itemIndex === 0;
const inOverlay = Doc.IsInMyOverlay(this.Document);
// Case 1: There are still other frames and should go through all frames before going to next slide
@@ -2892,7 +2898,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
const presEnd =
!this.layoutDoc.presLoop &&
this.itemIndex === this.childDocs.length - 1 &&
- (this.activeItem.presentation_indexed === undefined || NumCast(this.activeItem.presentation_indexed) === (this.progressivizedItems(this.activeItem)?.length ?? 0));
+ (this.activeItem?.presentation_indexed === undefined || NumCast(this.activeItem.presentation_indexed) === (this.progressivizedItems(this.activeItem)?.length ?? 0));
const presStart = !this.layoutDoc.presLoop && this.itemIndex === 0;
return this._props.addDocTab === returnFalse ? ( // bcz: hack!! - addDocTab === returnFalse only when this is being rendered by the OverlayView which means the doc is a mini player
<div
@@ -2984,16 +2990,7 @@ export class PresBox extends ViewBoxBaseComponent<FieldViewProps>() {
/>
) : null}
</div>
- {/* {
- // if the document type is a presentation, then the collection stacking view has a "+ new slide" button at the bottom of the stack
- <Tooltip title={<div className="dash-tooltip">{'Click on document to pin to presentaiton or make a marquee selection to pin your desired view'}</div>}>
- <button className="add-slide-button" onPointerDown={this.startMarqueeCreateSlide}>
- + NEW SLIDE
- </button>
- </Tooltip>
- } */}
</div>
- {/* presbox chatbox */}
{this._chatActive && <div className="presBox-chatbox" />}
</div>
);
diff --git a/src/client/views/nodes/trails/PresElementBox.scss b/src/client/views/nodes/trails/PresSlideBox.scss
index 9ac2b5a94..9ac2b5a94 100644
--- a/src/client/views/nodes/trails/PresElementBox.scss
+++ b/src/client/views/nodes/trails/PresSlideBox.scss
diff --git a/src/client/views/nodes/trails/PresElementBox.tsx b/src/client/views/nodes/trails/PresSlideBox.tsx
index 7e0375275..3dbb3da88 100644
--- a/src/client/views/nodes/trails/PresElementBox.tsx
+++ b/src/client/views/nodes/trails/PresSlideBox.tsx
@@ -7,7 +7,7 @@ import { returnFalse, returnTrue, setupMoveUpEvents } from '../../../../ClientUt
import { Doc, DocListCast, Opt } from '../../../../fields/Doc';
import { Id } from '../../../../fields/FieldSymbols';
import { List } from '../../../../fields/List';
-import { BoolCast, Cast, DocCast, NumCast, StrCast } from '../../../../fields/Types';
+import { BoolCast, DocCast, NumCast, StrCast } from '../../../../fields/Types';
import { emptyFunction } from '../../../../Utils';
import { Docs } from '../../../documents/Documents';
import { CollectionViewType, DocumentType } from '../../../documents/DocumentTypes';
@@ -25,16 +25,16 @@ import { returnEmptyDocViewList } from '../../StyleProvider';
import { DocumentView } from '../DocumentView';
import { FieldView, FieldViewProps } from '../FieldView';
import { PresBox } from './PresBox';
-import './PresElementBox.scss';
+import './PresSlideBox.scss';
import { PresMovement } from './PresEnums';
/**
* This class models the view a document added to presentation will have in the presentation.
* It involves some functionality for its buttons and options.
*/
@observer
-export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
+export class PresSlideBox extends ViewBoxBaseComponent<FieldViewProps>() {
public static LayoutString(fieldKey: string) {
- return FieldView.LayoutString(PresElementBox, fieldKey);
+ return FieldView.LayoutString(PresSlideBox, fieldKey);
}
private _itemRef: React.RefObject<HTMLDivElement> = React.createRef();
private _dragRef: React.RefObject<HTMLDivElement> = React.createRef();
@@ -56,7 +56,7 @@ export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
.containerViewPath?.()
.slice()
.reverse()
- .find(dv => dv?.ComponentView instanceof PresBox)?.ComponentView as PresBox;
+ .find(dv => dv?.ComponentView instanceof PresBox)?.ComponentView as Opt<PresBox>;
}
// the presentation view document that renders this slide
@@ -72,7 +72,7 @@ export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
// this is the document in the workspaces that is targeted by the slide
@computed get targetDoc() {
- return Cast(this.slideDoc.presentation_targetDoc, Doc, null) || this.slideDoc;
+ return DocCast(this.slideDoc.presentation_targetDoc, this.slideDoc)!;
}
// computes index of this presentation slide in the presBox list
@@ -118,7 +118,7 @@ export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
return !this.slideDoc.presentation_expandInlineButton || !this.targetDoc ? null : (
<div className="presItem-embedded" style={{ height: this.embedHeight(), width: '50%' }}>
<DocumentView
- Document={PresBox.targetRenderedDoc(this.slideDoc)}
+ Document={PresBox.targetRenderedDoc(this.slideDoc) ?? this.slideDoc}
PanelWidth={this.embedWidth}
PanelHeight={this.embedHeight}
isContentActive={this._props.isContentActive}
@@ -349,7 +349,7 @@ export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
/// remove all videos that have been recorded from overlay (leave videso that are being recorded to avoid losing data)
static removeEveryExistingRecordingInOverlay = () => {
- Doc.MyOverlayDocs.filter(doc => doc.slides !== null && PresElementBox.videoIsRecorded(DocCast(doc.slides))) //
+ Doc.MyOverlayDocs.filter(doc => doc.slides !== null && PresSlideBox.videoIsRecorded(DocCast(doc.slides))) //
.forEach(Doc.RemFromMyOverlay);
};
@@ -364,9 +364,9 @@ export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
showRecording = undoable(
action((activeItem: Doc, iconClick: boolean = false) => {
// remove the overlays on switch *IF* not opened from the specific icon
- if (!iconClick) PresElementBox.removeEveryExistingRecordingInOverlay();
+ if (!iconClick) PresSlideBox.removeEveryExistingRecordingInOverlay();
- activeItem.recording && Doc.AddToMyOverlay(DocCast(activeItem.recording));
+ DocCast(activeItem.recording) && Doc.AddToMyOverlay(DocCast(activeItem.recording)!);
}),
'show video recording'
);
@@ -374,7 +374,7 @@ export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
startRecording = undoable(
action((e: React.MouseEvent, activeItem: Doc) => {
e.stopPropagation();
- if (PresElementBox.videoIsRecorded(activeItem)) {
+ if (PresSlideBox.videoIsRecorded(activeItem)) {
// if we already have an existing recording
this.showRecording(activeItem, true);
// // if we already have an existing recording
@@ -383,7 +383,7 @@ export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
// we dont have any recording
// Remove every recording that already exists in overlay view
// this is a design decision to clear to focus in on the recoding mode
- PresElementBox.removeEveryExistingRecordingInOverlay();
+ PresSlideBox.removeEveryExistingRecordingInOverlay();
// create and add a recording to the slide
// make recording box appear in the bottom right corner of the screen
@@ -413,7 +413,7 @@ export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
TreeView.ToggleChildrenRun.get(this.slideDoc)?.();
// call this.slideDoc.recurChildren() to get all the children
- // if (iconClick) PresElementBox.showVideo = false;
+ // if (iconClick) PresSlideBox.showVideo = false;
};
@computed
@@ -452,7 +452,7 @@ export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
</Tooltip>
);
items.push(
- <Tooltip key="slash" title={<div className="dash-tooltip">{this.videoRecordingIsInOverlay ? 'Hide Recording' : `${PresElementBox.videoIsRecorded(activeItem) ? 'Show' : 'Start'} recording`}</div>}>
+ <Tooltip key="slash" title={<div className="dash-tooltip">{this.videoRecordingIsInOverlay ? 'Hide Recording' : `${PresSlideBox.videoIsRecorded(activeItem) ? 'Show' : 'Start'} recording`}</div>}>
<div className="slideButton" onClick={e => (this.videoRecordingIsInOverlay ? this.hideRecording(e) : this.startRecording(e, activeItem))} style={{ fontWeight: 700 }}>
<FontAwesomeIcon icon={`video${this.videoRecordingIsInOverlay ? '-slash' : ''}`} onPointerDown={e => e.stopPropagation()} />
</div>
@@ -622,7 +622,7 @@ export class PresElementBox extends ViewBoxBaseComponent<FieldViewProps>() {
}
}
-Docs.Prototypes.TemplateMap.set(DocumentType.PRESELEMENT, {
- layout: { view: PresElementBox, dataField: 'data' },
- options: { acl: '', title: 'pres element template', _layout_fitWidth: true, _xMargin: 0, isTemplateDoc: true, isTemplateForField: 'data' },
+Docs.Prototypes.TemplateMap.set(DocumentType.PRESSLIDE, {
+ layout: { view: PresSlideBox, dataField: 'data' },
+ options: { acl: '', title: 'presSlide', _layout_fitWidth: true, _xMargin: 0, isTemplateDoc: true },
});
diff --git a/src/client/views/nodes/trails/index.ts b/src/client/views/nodes/trails/index.ts
index 7b18974df..a5bc55221 100644
--- a/src/client/views/nodes/trails/index.ts
+++ b/src/client/views/nodes/trails/index.ts
@@ -1,3 +1,3 @@
export * from './PresBox';
-export * from './PresElementBox';
+export * from './PresSlideBox';
export * from './PresEnums';
diff --git a/src/client/views/pdf/GPTPopup/GPTPopup.tsx b/src/client/views/pdf/GPTPopup/GPTPopup.tsx
index e3ee51424..c45d8e052 100644
--- a/src/client/views/pdf/GPTPopup/GPTPopup.tsx
+++ b/src/client/views/pdf/GPTPopup/GPTPopup.tsx
@@ -210,7 +210,7 @@ export class GPTPopup extends ObservableReactComponent<object> {
generateFireflyImage = (imgDesc: string) => {
const selView = DocumentView.Selected().lastElement();
const selDoc = selView?.Document;
- if (selDoc && (selView._props.renderDepth > 1 || selDoc[Doc.LayoutFieldKey(selDoc)] instanceof ImageField)) {
+ if (selDoc && (selView._props.renderDepth > 1 || selDoc[Doc.LayoutDataKey(selDoc)] instanceof ImageField)) {
const oldPrompt = StrCast(selDoc.ai_firefly_prompt, StrCast(selDoc.title));
const newPrompt = oldPrompt ? `${oldPrompt} ~~~ ${imgDesc}` : imgDesc;
return DrawingFillHandler.drawingToImage(selDoc, 100, newPrompt, selDoc)
diff --git a/src/client/views/pdf/PDFViewer.tsx b/src/client/views/pdf/PDFViewer.tsx
index ed2f661e6..21d987587 100644
--- a/src/client/views/pdf/PDFViewer.tsx
+++ b/src/client/views/pdf/PDFViewer.tsx
@@ -55,7 +55,7 @@ interface IViewerProps extends FieldViewProps {
*/
@observer
export class PDFViewer extends ObservableReactComponent<IViewerProps> {
- static _annotationStyle = addStyleSheet();
+ static _annotationStyle = addStyleSheet().sheet;
constructor(props: IViewerProps) {
super(props);
@@ -134,7 +134,7 @@ export class PDFViewer extends ObservableReactComponent<IViewerProps> {
componentWillUnmount = () => {
Object.values(this._disposers).forEach(disposer => disposer?.());
- document.removeEventListener('copy', this.copy);
+ document.removeEventListener('copy', this.copy, true);
};
copy = (e: ClipboardEvent) => {
@@ -262,16 +262,11 @@ export class PDFViewer extends ObservableReactComponent<IViewerProps> {
}
return;
}
- document.removeEventListener('copy', this.copy);
- document.addEventListener('copy', this.copy);
+ document.removeEventListener('copy', this.copy, true);
+ document.addEventListener('copy', this.copy, true);
const eventBus = new PDFJSViewer.EventBus();
eventBus._on('pagesinit', this.pagesinit);
- eventBus._on(
- 'pagerendered',
- action(() => {
- this._showWaiting = false;
- })
- );
+ eventBus._on('pagerendered',action(() => (this._showWaiting = false))); // prettier-ignore
const pdfLinkService = new PDFJSViewer.PDFLinkService({ eventBus });
const pdfFindController = new PDFJSViewer.PDFFindController({ linkService: pdfLinkService, eventBus });
this._pdfViewer = new PDFJSViewer.PDFViewer({
diff --git a/src/client/views/search/FaceRecognitionHandler.tsx b/src/client/views/search/FaceRecognitionHandler.tsx
index 86e28a768..f60eb486e 100644
--- a/src/client/views/search/FaceRecognitionHandler.tsx
+++ b/src/client/views/search/FaceRecognitionHandler.tsx
@@ -60,7 +60,7 @@ export class FaceRecognitionHandler {
* @param imgDoc image with faces
* @returns faceDoc array
*/
- public static ImageDocFaceAnnos = (imgDoc: Doc) => DocListCast(imgDoc[`${Doc.LayoutFieldKey(imgDoc)}_annotations`]).filter(doc => doc.face);
+ public static ImageDocFaceAnnos = (imgDoc: Doc) => DocListCast(imgDoc[`${Doc.LayoutDataKey(imgDoc)}_annotations`]).filter(doc => doc.face);
/**
* returns a list of all face collection Docs on the current dashboard
@@ -207,7 +207,7 @@ export class FaceRecognitionHandler {
} else if (imgDoc.type === DocumentType.LOADING && !imgDoc.loadingError) {
setTimeout(() => this.classifyFacesInImage(imgDoc), 1000);
} else {
- const imgUrl = ImageCast(imgDoc[Doc.LayoutFieldKey(imgDoc)]);
+ const imgUrl = ImageCast(imgDoc[Doc.LayoutDataKey(imgDoc)]);
if (imgUrl && !DocListCast(Doc.MyFaceCollection.examinedFaceDocs).includes(imgDoc[DocData])) {
// only examine Docs that have an image and that haven't already been examined.
Doc.AddDocToList(Doc.MyFaceCollection, 'examinedFaceDocs', imgDoc[DocData]);
diff --git a/src/client/views/search/SearchBox.tsx b/src/client/views/search/SearchBox.tsx
index 1f6e80bd1..ad0f56cb9 100644
--- a/src/client/views/search/SearchBox.tsx
+++ b/src/client/views/search/SearchBox.tsx
@@ -218,7 +218,7 @@ export class SearchBox extends ViewBoxBaseComponent<SearchBoxProps>() {
.filter(d => d)
// eslint-disable-next-line no-loop-func
.map(async d => {
- const fieldKey = Doc.LayoutFieldKey(d);
+ const fieldKey = Doc.LayoutDataKey(d);
const annos = !Field.toString(Doc.LayoutField(d) as FieldType).includes('CollectionView');
const data = d[annos ? fieldKey + '_annotations' : fieldKey];
const dataDocs = await DocListCastAsync(data);
diff --git a/src/client/views/smartdraw/DrawingFillHandler.tsx b/src/client/views/smartdraw/DrawingFillHandler.tsx
index a91ec23b8..b0945fd83 100644
--- a/src/client/views/smartdraw/DrawingFillHandler.tsx
+++ b/src/client/views/smartdraw/DrawingFillHandler.tsx
@@ -26,11 +26,12 @@ export class DrawingFillHandler {
const styleUrl = tags.length
? undefined
: await DocumentView.GetDocImage(styleDocs.filter(doc => doc?.data instanceof ImageField).lastElement())?.then(styleImg => {
- const hrefParts = ImageCast(styleImg).url.href.split('.');
- return `${hrefParts.slice(0, -1).join('.')}_o.${hrefParts.lastElement()}`;
+ const hrefParts = ImageCast(styleImg)?.url.href.split('.');
+ return !hrefParts ? undefined : `${hrefParts.slice(0, -1).join('.')}_o.${hrefParts.lastElement()}`;
});
return DocumentView.GetDocImage(drawing)?.then(imageField => {
- if (imageField) {
+ const href = ImageCast(imageField)?.url.href;
+ if (href) {
const aspectRatio = (drawing.width as number) / (drawing.height as number);
const dims = (() => {
if (aspectRatio > AspectRatioLimits[FireflyImageDimensions.Widescreen]) return FireflyDimensionsMap[FireflyImageDimensions.Widescreen];
@@ -38,7 +39,6 @@ export class DrawingFillHandler {
if (aspectRatio < AspectRatioLimits[FireflyImageDimensions.Portrait]) return FireflyDimensionsMap[FireflyImageDimensions.Portrait];
return FireflyDimensionsMap[FireflyImageDimensions.Square];
})();
- const { href } = ImageCast(imageField).url;
const hrefParts = href.split('.');
const structureUrl = `${hrefParts.slice(0, -1).join('.')}_o.${hrefParts.lastElement()}`;
return gptDescribeImage(user_prompt, structureUrl).then(newPrompt =>
diff --git a/src/client/views/smartdraw/StickerPalette.tsx b/src/client/views/smartdraw/StickerPalette.tsx
index 2260d1f73..0e234e966 100644
--- a/src/client/views/smartdraw/StickerPalette.tsx
+++ b/src/client/views/smartdraw/StickerPalette.tsx
@@ -56,10 +56,10 @@ export class StickerPalette extends ObservableReactComponent<StickerPaletteProps
if (!doc.savedAsSticker) {
const docView = DocumentView.getDocumentView(doc);
await docView?.ComponentView?.updateIcon?.(true);
- const { clone } = await Doc.MakeClone(doc);
+ const { clone } = Doc.MakeClone(doc);
clone.title = doc.title;
- const image = ImageCast(doc.icon, ImageCast(clone[Doc.LayoutFieldKey(clone)]))?.url?.href;
- Doc.AddDocToList(Doc.MyStickers, 'data', makeUserTemplateButtonOrImage(clone, image));
+ const image = ImageCast(doc.icon, ImageCast(clone[Doc.LayoutDataKey(clone)]))?.url?.href;
+ Doc.MyStickers && Doc.AddDocToList(Doc.MyStickers, 'data', makeUserTemplateButtonOrImage(clone, image));
doc.savedAsSticker = true;
}
};
@@ -327,9 +327,10 @@ export class StickerPalette extends ObservableReactComponent<StickerPaletteProps
);
renderPaletteView = () => (
<>
- {this.renderDoc(Doc.MyStickers, (r: DocumentView) => {
- this._docView = r;
- })}
+ {Doc.MyStickers &&
+ this.renderDoc(Doc.MyStickers, (r: DocumentView) => {
+ this._docView = r;
+ })}
<Button text="Add" icon={<FontAwesomeIcon icon="square-plus" />} color={SettingsManager.userColor} onClick={() => this.setPaletteMode(StickerPaletteMode.create)} />
</>
);
diff --git a/src/debug/Repl.tsx b/src/debug/Repl.tsx
index 8ac502348..37586fcc0 100644
--- a/src/debug/Repl.tsx
+++ b/src/debug/Repl.tsx
@@ -13,7 +13,7 @@ import { makeInterface } from '../fields/Schema';
class Repl extends React.Component {
@observable text: string = '';
- @observable executedCommands: { command: string; result: any }[] = [];
+ @observable executedCommands: { command: string; result: unknown }[] = [];
onChange = (e: React.ChangeEvent<HTMLTextAreaElement>) => {
this.text = e.target.value;
@@ -30,7 +30,7 @@ class Repl extends React.Component {
if (!script.compiled) {
this.executedCommands.push({ command: this.text, result: 'Compile Error' });
} else {
- const result = script.run({ makeInterface }, err => this.executedCommands.push({ command: this.text, result: err.message || err }));
+ const result = script.run({ makeInterface }, err => this.executedCommands.push({ command: this.text, result: err }));
result.success && this.executedCommands.push({ command: this.text, result: result.result });
}
this.text = '';
@@ -40,7 +40,7 @@ class Repl extends React.Component {
@computed
get commands() {
return this.executedCommands.map(command => (
- <div style={{ marginTop: '5px' }}>
+ <div key={command.command} style={{ marginTop: '5px' }}>
<p>{command.command}</p>
{/* <pre>{JSON.stringify(command.result, null, 2)}</pre> */}
<pre>{command.result instanceof RefField || command.result instanceof ObjectField ? 'object' : String(command.result)}</pre>
diff --git a/src/fields/Doc.ts b/src/fields/Doc.ts
index e48337651..abce7ed26 100644
--- a/src/fields/Doc.ts
+++ b/src/fields/Doc.ts
@@ -17,7 +17,7 @@ import { Copy, FieldChanged, HandleUpdate, Id, Parent, ToJavascriptString, ToScr
import { InkEraserTool, InkInkTool, InkTool } from './InkField';
import { List } from './List';
import { ObjectField, serverOpType } from './ObjectField';
-import { PrefetchProxy, ProxyField } from './Proxy';
+import { PrefetchProxy } from './Proxy';
import { FieldId, RefField } from './RefField';
import { RichTextField } from './RichTextField';
import { listSpec } from './Schema';
@@ -47,7 +47,7 @@ export namespace Field {
* @returns string representation of the field
*/
export function toKeyValueString(doc: Doc, key: string, showComputedValue?: boolean, schemaCell?: boolean): string {
- const cfield = ComputedField.WithoutComputed(() => FieldValue(doc[key]));
+ const cfield = ComputedField.DisableCompute(() => FieldValue(doc[key]));
const valFunc = (field: FieldType): string => {
const res =
field instanceof ComputedField && showComputedValue
@@ -133,13 +133,13 @@ export function DocListCastAsync(field: FieldResult, defaultValue?: Doc[]) {
return list ? Promise.all(list).then(() => list) : Promise.resolve(defaultValue);
}
export function NumListCast(field: FieldResult, defaultVal: number[] = []) {
- return Cast(field, listSpec('number'), defaultVal);
+ return Cast(field, listSpec('number'), defaultVal)!;
}
export function StrListCast(field: FieldResult, defaultVal: string[] = []) {
- return Cast(field, listSpec('string'), defaultVal);
+ return Cast(field, listSpec('string'), defaultVal)!;
}
export function DocListCast(field: FieldResult, defaultVal: Doc[] = []) {
- return Cast(field, listSpec(Doc), defaultVal).filter(d => d instanceof Doc) as Doc[];
+ return Cast(field, listSpec(Doc), defaultVal)!.filter(d => d instanceof Doc);
}
export enum aclLevel {
@@ -176,13 +176,27 @@ export function updateCachedAcls(doc: Doc) {
}
if (doc.proto instanceof Promise) {
- doc.proto.then(proto => updateCachedAcls(DocCast(proto)));
+ doc.proto.then(proto => DocCast(proto) && updateCachedAcls(DocCast(proto)!));
return doc.proto;
}
}
return undefined;
}
+/**
+ * computes a field name for where to store and expanded template Doc
+ * The format is layout_[ROOT_TEMPLATE_NMAE]_[ROOT_TEMPLATE_CHILD_NAME]_...
+ * @param template the template (either a root or a root child Doc)
+ * @param layoutFieldKey the fieldKey of the container of the template
+ * @returns field key to store expanded template Doc
+ */
+export function expandedFieldName(template: Doc, layoutFieldKey?: string) {
+ const layout_key = !layoutFieldKey?.endsWith(']')
+ ? 'layout' // layout_SOMETHING = SOMETHING => layout_[SOMETHING] = [SOMETHING]
+ : layoutFieldKey; // prettier-ignore
+ const tempTitle = '[' + StrCast(template.title).replace(/^\[(.*)\]$/, '$1') + ']';
+ return `${layout_key}_${tempTitle}`; // prettier-ignore
+}
@scriptingGlobal
@Deserializable('Doc', (obj: unknown) => updateCachedAcls(obj as Doc), ['id'])
export class Doc extends RefField {
@@ -239,7 +253,7 @@ export class Doc extends RefField {
public static get MyPublishedDocs() { return DocListCast(Doc.ActiveDashboard?.myPublishedDocs).concat(DocListCast(DocCast(Doc.UserDoc().myPublishedDocs)?.data)); } // prettier-ignore
public static get MyDashboards() { return DocCast(Doc.UserDoc().myDashboards); } // prettier-ignore
public static get MyTemplates() { return DocCast(Doc.UserDoc().myTemplates); } // prettier-ignore
- public static get MyStickers() { return DocCast(Doc.UserDoc().myStickers); } // prettier-ignore
+ public static get MyStickers() { return DocCast(Doc.UserDoc().myStickers); } // prettier-ignore
public static get MyLightboxDrawings() { return DocCast(Doc.UserDoc().myLightboxDrawings); } // prettier-ignore
public static get MyImports() { return DocCast(Doc.UserDoc().myImports); } // prettier-ignore
public static get MyFilesystem() { return DocCast(Doc.UserDoc().myFilesystem); } // prettier-ignore
@@ -266,22 +280,28 @@ export class Doc extends RefField {
public static set ActiveDashboard(val: Opt<Doc>) { Doc.UserDoc().activeDashboard = val; } // prettier-ignore
public static get MyFilterHotKeys() { return DocListCast(DocCast(DocCast(Doc.UserDoc().myContextMenuBtns)?.Filter)?.data).filter(key => key.toolType !== "-opts-"); } // prettier-ignore
public static RemFromFilterHotKeys(doc: Doc) {
- return Doc.RemoveDocFromList(DocCast(DocCast(Doc.UserDoc().myContextMenuBtns)?.Filter), 'data', doc);
+ return (filters => filters && Doc.RemoveDocFromList(filters, 'data', doc))(DocCast(DocCast(Doc.UserDoc().myContextMenuBtns)?.Filter));
}
public static AddToFilterHotKeys(doc: Doc) {
- return Doc.AddDocToList(DocCast(DocCast(Doc.UserDoc().myContextMenuBtns)?.Filter), 'data', doc);
+ return (btns => btns && Doc.AddDocToList(btns, 'data', doc))(DocCast(DocCast(Doc.UserDoc().myContextMenuBtns)?.Filter));
}
public static IsInMyOverlay(doc: Doc) { return Doc.MyOverlayDocs.includes(doc); } // prettier-ignore
- public static AddToMyOverlay(doc: Doc) { return Doc.ActiveDashboard ? Doc.AddDocToList(Doc.ActiveDashboard, 'myOverlayDocs', doc) : Doc.AddDocToList(DocCast(Doc.UserDoc().myOverlayDocs), undefined, doc); } // prettier-ignore
- public static RemFromMyOverlay(doc: Doc) { return Doc.ActiveDashboard ? Doc.RemoveDocFromList(Doc.ActiveDashboard,'myOverlayDocs', doc) : Doc.RemoveDocFromList(DocCast(Doc.UserDoc().myOverlayDocs), undefined, doc); } // prettier-ignore
- public static AddToMyPublished(doc: Doc) {
+ public static AddToMyOverlay(doc: Doc) {
+ return Doc.ActiveDashboard && Doc.AddDocToList(Doc.ActiveDashboard, 'myOverlayDocs', doc);
+ } // : Doc.AddDocToList(DocCast(Doc.UserDoc().myOverlayDocs), undefined, doc); } // prettier-ignore
+ public static RemFromMyOverlay(doc: Doc) {
+ return Doc.ActiveDashboard && Doc.RemoveDocFromList(Doc.ActiveDashboard, 'myOverlayDocs', doc);
+ } // : Doc.RemoveDocFromList(DocCast(Doc.UserDoc().myOverlayDocs), undefined, doc); } // prettier-ignore
+ public static AddToMyPublished(doc: Doc) {
doc.$title_custom = true;
- doc.$layout_showTitle = 'title';
- Doc.ActiveDashboard ? Doc.AddDocToList(Doc.ActiveDashboard, 'myPublishedDocs', doc) : Doc.AddDocToList(DocCast(Doc.UserDoc().myPublishedDocs), undefined, doc); } // prettier-ignore
- public static RemFromMyPublished(doc: Doc){
+ doc.$layout_showTitle = 'title';
+ Doc.ActiveDashboard && Doc.AddDocToList(Doc.ActiveDashboard, 'myPublishedDocs', doc);
+ } // : Doc.AddDocToList(DocCast(Doc.UserDoc().myPublishedDocs), undefined, doc); } // prettier-ignore
+ public static RemFromMyPublished(doc: Doc) {
doc.$title_custom = false;
doc.$layout_showTitle = undefined;
- Doc.ActiveDashboard ? Doc.RemoveDocFromList(Doc.ActiveDashboard,'myPublishedDocs', doc) : Doc.RemoveDocFromList(DocCast(Doc.UserDoc().myPublishedDocs), undefined, doc); } // prettier-ignore
+ Doc.ActiveDashboard && Doc.RemoveDocFromList(Doc.ActiveDashboard, 'myPublishedDocs', doc);
+ } // : Doc.RemoveDocFromList(DocCast(Doc.UserDoc().myPublishedDocs), undefined, doc); } // prettier-ignore
public static IsComicStyle(doc?: Doc) { return doc && Doc.ActiveDashboard && !Doc.IsSystem(doc) && Doc.UserDoc().renderStyle === 'comic' ; } // prettier-ignore
constructor(id?: FieldId, forceSave?: boolean) {
@@ -407,20 +427,17 @@ export class Doc extends RefField {
}
@computed get __DATA__(): Doc {
const self = this[SelfProxy];
- return self.rootDocument && !self.isTemplateForField ? self : Doc.GetProto(Cast(self[DocLayout].rootDocument, Doc, null) || self);
+ return self.rootDocument && !self.isTemplateForField ? self : Doc.GetProto(DocCast(self[DocLayout].rootDocument, self)!);
}
@computed get __LAYOUT__(): Doc {
const self = this[SelfProxy];
const templateLayoutDoc = Cast(Doc.LayoutField(self), Doc, null);
if (templateLayoutDoc) {
- let renderFieldKey: string = '';
const layoutField = templateLayoutDoc[StrCast(templateLayoutDoc.layout_fieldKey, 'layout')];
- if (typeof layoutField === 'string') {
- [renderFieldKey] = layoutField.split("fieldKey={'")[1].split("'"); // layoutField.split("'")[1];
- } else {
- return Cast(layoutField, Doc, null);
+ if (typeof layoutField !== 'string') {
+ return DocCast(layoutField, self)!;
}
- return Cast(self['layout_' + templateLayoutDoc.title + '(' + renderFieldKey + ')'], Doc, null) || templateLayoutDoc;
+ return DocCast(self[expandedFieldName(templateLayoutDoc)], templateLayoutDoc)!;
}
return self;
}
@@ -597,7 +614,7 @@ export namespace Doc {
// return the doc's proto, but rather recursively searches through the proto inheritance chain
// and returns the document who's proto is undefined or whose proto is marked as a data doc ('isDataDoc').
export function GetProto(doc: Doc): Doc {
- const proto = doc && (Doc.GetT(doc, 'isDataDoc', 'boolean', true) ? doc : DocCast(doc.proto, doc));
+ const proto = doc && (Doc.GetT(doc, 'isDataDoc', 'boolean', true) ? doc : DocCast(doc.proto, doc)!);
return proto === doc ? proto : Doc.GetProto(proto);
}
export function GetDataDoc(doc: Doc): Doc {
@@ -630,7 +647,7 @@ export namespace Doc {
* @returns true if successful, false otherwise.
*/
export function RemoveDocFromList(listDoc: Doc, fieldKey: string | undefined, doc: Doc, ignoreProto = false) {
- const key = fieldKey || Doc.LayoutFieldKey(listDoc);
+ const key = fieldKey || Doc.LayoutDataKey(listDoc);
const list = Doc.Get(listDoc, key, ignoreProto) === undefined ? (listDoc['$' + key] = new List<Doc>()) : Cast(listDoc[key], listSpec(Doc));
if (list) {
const ind = list.indexOf(doc);
@@ -647,7 +664,7 @@ export namespace Doc {
* @returns true if successful, false otherwise.
*/
export function AddDocToList(listDoc: Doc, fieldKey: string | undefined, doc: Doc, relativeTo?: Doc, before?: boolean, first?: boolean, allowDuplicates?: boolean, reversed?: boolean, ignoreProto?: boolean) {
- const key = fieldKey || Doc.LayoutFieldKey(listDoc);
+ const key = fieldKey || Doc.LayoutDataKey(listDoc);
const list = Doc.Get(listDoc, key, ignoreProto) === undefined ? (listDoc['$' + key] = new List<Doc>()) : Cast(listDoc[key], listSpec(Doc));
if (list) {
if (!allowDuplicates) {
@@ -686,6 +703,14 @@ export namespace Doc {
return DocListCast(Doc.Get(doc[DocData], 'proto_embeddings', true));
}
+ /**
+ * Makes an embedding of a Doc. This Doc shares the data portion of the origiginal Doc.
+ * If the copied Doc has no prototype, then instead of copying the Doc, this just creates
+ * a new Doc that is a delegate of the original Doc.
+ * @param doc Doc to embed
+ * @param id id to use for embedded Doc
+ * @returns a new Doc that is an embedding of the original Doc
+ */
export function MakeEmbedding(doc: Doc, id?: string) {
const embedding = (!Doc.IsDataProto(doc) && doc.proto) || doc.type === DocumentType.CONFIG ? Doc.MakeCopy(doc, undefined, id) : Doc.MakeDelegate(doc, id);
embedding.createdFrom = doc;
@@ -705,17 +730,9 @@ export namespace Doc {
// this lists out all the tag ids that can be in a RichTextField that might contain document ids.
// if a document is cloned, we need to make sure to clone all of these referenced documents as well;
- export const DocsInTextFieldIds = ['audioId', 'textId', 'anchorId', 'docId'];
- export async function makeClone(
- doc: Doc,
- cloneMap: Map<string, Doc>,
- linkMap: Map<string, Doc>,
- rtfs: { copy: Doc; key: string; field: RichTextField }[],
- exclusions: string[],
- pruneDocs: Doc[],
- cloneLinks: boolean,
- cloneTemplates: boolean
- ): Promise<Doc> {
+ const FindDocsInRTF = new RegExp(/(audioId|textId|anchorId|docId)"\s*:\s*"(.*?)"/g);
+
+ export function makeClone(doc: Doc, cloneMap: Map<string, Doc>, linkMap: Map<string, Doc>, rtfs: { copy: Doc; key: string; field: RichTextField }[], exclusions: string[], pruneDocs: Doc[], cloneLinks: boolean, cloneTemplates: boolean): Doc {
if (Doc.IsBaseProto(doc) || ((Doc.isTemplateDoc(doc) || Doc.isTemplateForField(doc)) && !cloneTemplates)) {
return doc;
}
@@ -723,80 +740,59 @@ export namespace Doc {
const copy = new Doc(undefined, true);
cloneMap.set(doc[Id], copy);
const filter = [...exclusions, ...StrListCast(doc.cloneFieldFilter)];
- await Promise.all(
- Object.keys(doc).map(async key => {
- if (filter.includes(key)) return;
- const assignKey = (val: Opt<FieldType>) => {
- copy[key] = val;
- };
- const cfield = ComputedField.WithoutComputed(() => FieldValue(doc[key]));
- const field = ProxyField.WithoutProxy(() => doc[key]);
- const copyObjectField = async (objField: ObjectField) => {
- const list = await Cast(doc[key], listSpec(Doc));
- const docs = list && (await DocListCastAsync(list))?.filter(d => d instanceof Doc);
- if (docs !== undefined && docs.length) {
- const clones = await Promise.all(docs.map(async d => Doc.makeClone(d, cloneMap, linkMap, rtfs, exclusions, pruneDocs, cloneLinks, cloneTemplates)));
- assignKey(new List<Doc>(clones));
- } else {
- assignKey(ObjectField.MakeCopy(objField));
- if (objField instanceof RichTextField) {
- if (DocsInTextFieldIds.some(id => objField.Data.includes(`"${id}":`))) {
- const docidsearch = new RegExp('(' + DocsInTextFieldIds.map(exp => '(' + exp + ')').join('|') + ')":"([a-z-A-Z0-9_]*)"', 'g');
- const rawdocids = objField.Data.match(docidsearch);
- const docids = rawdocids?.map((str: string) =>
- DocsInTextFieldIds.reduce((output, exp) => output.replace(new RegExp(`${exp}":`, 'g'), ''), str)
- .replace(/"/g, '')
- .trim()
- );
- const results = docids && (await DocServer.GetRefFields(docids));
- const rdocs = results && Array.from(Object.keys(results)).map(rkey => DocCast(results.get(rkey)));
- rdocs?.map(d => d && Doc.makeClone(d, cloneMap, linkMap, rtfs, exclusions, pruneDocs, cloneLinks, cloneTemplates));
- rtfs.push({ copy, key, field: objField });
- }
- }
- }
- };
- const docAtKey = doc[key];
+ Object.keys(doc)
+ .filter(key => !filter.includes(key))
+ .map(key => {
+ const assignKey = (val: Opt<FieldType>) => (copy[key] = val);
+
if (key === 'author') {
- assignKey(ClientUtils.CurrentUserEmail());
- } else if (docAtKey instanceof Doc) {
- if (pruneDocs.includes(docAtKey)) {
- // prune doc and do nothing
- } else if (
- !Doc.IsSystem(docAtKey) &&
- (key.startsWith('layout') ||
- ['embedContainer', 'annotationOn', 'proto'].includes(key) || //
- (['link_anchor_1', 'link_anchor_2'].includes(key) && doc.author === ClientUtils.CurrentUserEmail()))
- ) {
- assignKey(await Doc.makeClone(docAtKey, cloneMap, linkMap, rtfs, exclusions, pruneDocs, cloneLinks, cloneTemplates));
- } else {
- assignKey(docAtKey);
+ return assignKey(ClientUtils.CurrentUserEmail());
+ }
+ const cfield = ComputedField.DisableCompute(() => doc[key]);
+ if (cfield instanceof ComputedField) {
+ return assignKey(cfield[Copy]());
+ }
+ const field = doc[key];
+ if (field instanceof Doc) {
+ const doCopy = () => Doc.IsSystem(field) ||
+ !( key.startsWith('layout') ||
+ ['embedContainer', 'annotationOn', 'proto'].includes(key) || //
+ (['link_anchor_1', 'link_anchor_2'].includes(key) && doc.author === ClientUtils.CurrentUserEmail()) ); // prettier-ignore
+ return !pruneDocs.includes(field) &&
+ assignKey(doCopy()
+ ? field //
+ : Doc.makeClone(field, cloneMap, linkMap, rtfs, exclusions, pruneDocs, cloneLinks, cloneTemplates)); // prettier-ignore
+ }
+ if (field instanceof RichTextField) {
+ rtfs.push({ copy, key, field });
+ let docId: string | undefined;
+ while ((docId = (FindDocsInRTF.exec(field.Data) ?? [undefined, undefined, undefined])[2])) {
+ const docCopy = DocServer.GetCachedRefField(docId);
+ docCopy && Doc.makeClone(docCopy, cloneMap, linkMap, rtfs, exclusions, pruneDocs, cloneLinks, cloneTemplates);
}
- } else if (field instanceof RefField) {
- assignKey(field);
- } else if (cfield instanceof ComputedField) {
- assignKey(cfield[Copy]());
- } else if (field instanceof ObjectField) {
- await copyObjectField(field);
- } else if (field instanceof Promise) {
- // eslint-disable-next-line no-debugger
- debugger; // This shouldn't happen...
- } else {
- assignKey(field);
+ return assignKey(ObjectField.MakeCopy(field));
}
- })
- );
- Array.from(doc[DirectLinks]).forEach(async link => {
+ if (field instanceof ObjectField) {
+ if (DocListCast(field).length) {
+ return assignKey(new List<Doc>(DocListCast(field).map(d => Doc.makeClone(d, cloneMap, linkMap, rtfs, exclusions, pruneDocs, cloneLinks, cloneTemplates))));
+ }
+ return assignKey(ObjectField.MakeCopy(field)); // otherwise just copy the field
+ }
+ if (!(field instanceof Promise)) return assignKey(field);
+ // eslint-disable-next-line no-debugger
+ debugger; // This shouldn't happen...
+ });
+ Array.from(doc[DirectLinks]).forEach(link => {
if (
cloneLinks ||
- ((cloneMap.has(DocCast(link.link_anchor_1)?.[Id]) || cloneMap.has(DocCast(DocCast(link.link_anchor_1)?.annotationOn)?.[Id])) &&
- (cloneMap.has(DocCast(link.link_anchor_2)?.[Id]) || cloneMap.has(DocCast(DocCast(link.link_anchor_2)?.annotationOn)?.[Id])))
+ ((cloneMap.has(DocCast(link.link_anchor_1)?.[Id] ?? '') || cloneMap.has(DocCast(DocCast(link.link_anchor_1)?.annotationOn)?.[Id] ?? '')) &&
+ (cloneMap.has(DocCast(link.link_anchor_2)?.[Id] ?? '') || cloneMap.has(DocCast(DocCast(link.link_anchor_2)?.annotationOn)?.[Id] ?? '')))
) {
- linkMap.set(link[Id], await Doc.makeClone(link, cloneMap, linkMap, rtfs, exclusions, pruneDocs, cloneLinks, cloneTemplates));
+ linkMap.set(link[Id], Doc.makeClone(link, cloneMap, linkMap, rtfs, exclusions, pruneDocs, cloneLinks, cloneTemplates));
}
});
copy.cloneOf = doc;
- const cfield = ComputedField.WithoutComputed(() => FieldValue(doc.title));
+ const cfield = ComputedField.DisableCompute(() => FieldValue(doc.title));
if (Doc.Get(copy, 'title', true) && !(cfield instanceof ComputedField)) copy.title = '>:' + doc.title;
cloneMap.set(doc[Id], copy);
@@ -823,25 +819,27 @@ export namespace Doc {
return docs.map(doc => Doc.MakeClone(doc, cloneLinks, cloneTemplates, cloneMap));
}
- export async function MakeClone(doc: Doc, cloneLinks = true, cloneTemplates = true, cloneMap: Map<string, Doc> = new Map()) {
+ /**
+ * Copies a Doc and all of the Docs that it references. This is a deep copy of the Doc.
+ * However, the additional flags allow you to control whether to copy links and templates.
+ * @param doc Doc to clone
+ * @param cloneLinks whether to clone links to this Doc
+ * @param cloneTemplates whether to clone the templates used by this Doc
+ * @param cloneMap a map from the Doc ids of the original Doc to the new Docs
+ * @returns a clone of the original Doc
+ */
+ export function MakeClone(doc: Doc, cloneLinks = true, cloneTemplates = true, cloneMap: Map<string, Doc> = new Map()) {
const linkMap = new Map<string, Doc>();
const rtfMap: { copy: Doc; key: string; field: RichTextField }[] = [];
- const clone = await Doc.makeClone(doc, cloneMap, linkMap, rtfMap, ['cloneOf'], doc.embedContainer ? [DocCast(doc.embedContainer)] : [], cloneLinks, cloneTemplates);
+ const clone = Doc.makeClone(doc, cloneMap, linkMap, rtfMap, ['cloneOf'], DocCast(doc.embedContainer) ? [DocCast(doc.embedContainer)!] : [], cloneLinks, cloneTemplates);
const repaired = new Set<Doc>();
const linkedDocs = Array.from(linkMap.values());
linkedDocs.forEach(link => Doc.AddLink?.(link, true));
rtfMap.forEach(({ copy, key, field }) => {
- const replacer = (match: string, attr: string, id: string /* , offset: any, string: any */) => {
- const mapped = cloneMap.get(id);
- return attr + '"' + (mapped ? mapped[Id] : id) + '"';
- };
- const replacer2 = (match: string, href: string, id: string /* , offset: any, string: any */) => {
- const mapped = cloneMap.get(id);
- return href + (mapped ? mapped[Id] : id);
- };
+ const replacer = (match: string, attr: string, id: string) => attr + '":"' + (cloneMap.get(id)?.[Id] ?? id) + '"';
+ const replacer2 = (match: string, href: string, id: string) => href + (cloneMap.get(id)?.[Id] ?? id);
const re = new RegExp(`(${Doc.localServerPath()})([^"]*)`, 'g');
- const docidsearch = new RegExp('(' + DocsInTextFieldIds.map(exp => `"${exp}":`).join('|') + ')"([^"]+)"', 'g');
- copy[key] = new RichTextField(field.Data.replace(docidsearch, replacer).replace(re, replacer2), field.Text);
+ copy[key] = new RichTextField(field.Data.replace(FindDocsInRTF, replacer).replace(re, replacer2), field.Text);
});
const clonedDocs = [...Array.from(cloneMap.values()), ...linkedDocs];
clonedDocs.forEach(cloneDoc => Doc.repairClone(cloneDoc, cloneMap, cloneTemplates, repaired));
@@ -849,23 +847,29 @@ export namespace Doc {
}
const _pendingMap = new Set<string>();
- //
- // Returns an expanded template layout for a target data document if there is a template relationship
- // between the two. If so, the layoutDoc is expanded into a new document that inherits the properties
- // of the original layout while allowing for individual layout properties to be overridden in the expanded layout.
- export function expandTemplateLayout(templateLayoutDoc: Doc, targetDoc?: Doc) {
+ /**
+ * Returns an expanded template layout for a target data document if there is a template relationship
+ * between the two. If so, the layoutDoc is expanded into a new document that inherits the properties
+ * of the original layout while allowing for individual layout properties to be overridden in the expanded layout
+ * @param templateLayoutDoc a rendering template Doc
+ * @param targetDoc the Doc that the render template will be applied to
+ * @param layoutFieldKey the accumulated layoutFieldKey for the container of this expanded template
+ * @returns a Doc to use to render the targetDoc in the style of the template layout
+ */
+ export function expandTemplateLayout(templateLayoutDoc: Doc, targetDoc?: Doc, layoutFieldKey?: string) {
// nothing to do if the layout isn't a template or we don't have a target that's different than the template
if (!targetDoc || templateLayoutDoc === targetDoc || (!Doc.isTemplateForField(templateLayoutDoc) && !Doc.isTemplateDoc(templateLayoutDoc))) {
return templateLayoutDoc;
}
- const templateField = StrCast(templateLayoutDoc.isTemplateForField, Doc.LayoutFieldKey(templateLayoutDoc)); // the field that the template renders
+ const templateField = StrCast(templateLayoutDoc.isTemplateForField, Doc.LayoutDataKey(templateLayoutDoc)); // the field that the template renders
+
// First it checks if an expanded layout already exists -- if so it will be stored on the dataDoc
// using the template layout doc's id as the field key.
// If it doesn't find the expanded layout, then it makes a delegate of the template layout and
// saves it on the data doc indexed by the template layout's id.
//
- const expandedLayoutFieldKey = 'layout_' + templateLayoutDoc.title + '(' + templateField + ')';
+ const expandedLayoutFieldKey = expandedFieldName(templateLayoutDoc, layoutFieldKey);
let expandedTemplateLayout = targetDoc?.[expandedLayoutFieldKey];
if (templateLayoutDoc.rootDocument instanceof Promise) {
@@ -876,7 +880,7 @@ export namespace Doc {
expandedTemplateLayout = templateLayoutDoc; // reuse an existing template layout if its for the same document with the same params
} else {
// eslint-disable-next-line no-param-reassign
- templateLayoutDoc.rootDocument && (templateLayoutDoc = DocCast(templateLayoutDoc.proto, templateLayoutDoc)); // if the template has already been applied (ie, a nested template), then use the template's prototype
+ templateLayoutDoc.rootDocument && (templateLayoutDoc = DocCast(templateLayoutDoc.proto, templateLayoutDoc)!); // if the template has already been applied (ie, a nested template), then use the template's prototype
if (!targetDoc[expandedLayoutFieldKey]) {
_pendingMap.add(targetDoc[Id] + expandedLayoutFieldKey);
setTimeout(
@@ -885,6 +889,7 @@ export namespace Doc {
const dataDoc = Doc.GetProto(targetDoc);
newLayoutDoc.rootDocument = targetDoc;
newLayoutDoc.embedContainer = targetDoc;
+ newLayoutDoc.cloneOnCopy = true;
newLayoutDoc.acl_Guest = SharingPermissions.Edit;
if (dataDoc[templateField] === undefined && (templateLayoutDoc[templateField] as List<Doc>)?.length) {
dataDoc[templateField] = ObjectField.MakeCopy(templateLayoutDoc[templateField] as List<Doc>);
@@ -901,87 +906,78 @@ export namespace Doc {
return expandedTemplateLayout instanceof Doc ? expandedTemplateLayout : undefined; // layout is undefined if the expandedTemplateLayout is pending.
}
- // if the childDoc is a template for a field, then this will return the expanded layout with its data doc.
- // otherwise, it just returns the childDoc
- export function GetLayoutDataDocPair(containerDoc: Doc, containerDataDoc: Opt<Doc>, childDoc: Doc) {
+ /**
+ * Returns a layout and data Doc pair to use to render the specified childDoc of the container.
+ * if the childDoc is a template for a field, then this will return the expanded layout with its data doc.
+ * otherwise, only a layout is returned since that will contain the data as its prototype.
+ * @param containerDoc the template container (that may be nested within a template, the root of a template, or not a template)
+ * @param containerDataDoc the template container's data doc (if the container is nested within the template)
+ * @param childDoc the doc to render
+ * @param layoutFieldKey the accumulated layoutFieldKey for the container of the doc being rendered
+ * @returns a layout Doc to render and an optional data Doc if the layout is a template
+ */
+ export function GetLayoutDataDocPair(containerDoc: Doc, containerDataDoc: Opt<Doc>, childDoc: Doc, layoutFieldKey?: string) {
if (!childDoc || childDoc instanceof Promise || !Doc.GetProto(childDoc)) {
console.log('Warning: GetLayoutDataDocPair childDoc not defined');
return { layout: childDoc, data: childDoc };
}
const data = Doc.AreProtosEqual(containerDataDoc, containerDoc) || (!Doc.isTemplateDoc(childDoc) && !Doc.isTemplateForField(childDoc)) ? undefined : containerDataDoc;
const templateRoot = DocCast(containerDoc?.rootDocument);
- return { layout: Doc.expandTemplateLayout(childDoc, templateRoot), data };
+ return { layout: Doc.expandTemplateLayout(childDoc, templateRoot, layoutFieldKey), data };
}
- export function FindReferences(infield: Doc | List<Doc>, references: Set<Doc>, system: boolean | undefined) {
- if (infield instanceof Promise) return;
- if (!(infield instanceof Doc)) {
- infield?.forEach(val => (val instanceof Doc || val instanceof List) && FindReferences(val, references, system));
- return;
+ /**
+ * Recursively travels through all the metadata reachable from the Doc to find all referenced Docs
+ * @param doc Doc to search
+ * @param references all Docs reachable from the Doc
+ * @param system whether to include system Docs
+ * @returns all Docs reachable from the Doc
+ */
+ export function FindReferences(doc: Doc | List<Doc> | undefined, references: Set<Doc>, system: boolean | undefined) {
+ if (!doc || doc instanceof Promise) {
+ return references;
+ }
+ if (!(doc instanceof Doc)) {
+ doc?.forEach(val => (val instanceof Doc || val instanceof List) && FindReferences(val, references, system));
+ return references;
}
- const doc = infield as Doc;
if (references.has(doc)) {
- references.add(doc);
- return;
+ return references;
+ }
+ if (system !== undefined && ((system && !Doc.IsSystem(doc)) || (!system && Doc.IsSystem(doc)))) {
+ return references;
}
- const excludeLists = [Doc.MyRecentlyClosed, Doc.MyHeaderBar, Doc.MyDashboards].includes(doc);
- if (system !== undefined && ((system && !Doc.IsSystem(doc)) || (!system && Doc.IsSystem(doc)))) return;
+
references.add(doc);
- Object.keys(doc).forEach(key => {
- if (key === 'proto') {
- if (doc.proto instanceof Doc) {
- Doc.FindReferences(doc.proto, references, system);
+ Object.keys(doc)
+ .filter(key => key !== 'author' && !(ComputedField.DisableCompute(() => FieldValue(doc[key])) instanceof ComputedField))
+ .map(key => doc[key])
+ .forEach(field => {
+ if (field instanceof List) {
+ return ![Doc.MyRecentlyClosed, Doc.MyHeaderBar, Doc.MyDashboards].includes(doc) && Doc.FindReferences(field, references, system);
}
- } else {
- const cfield = ComputedField.WithoutComputed(() => FieldValue(doc[key]));
- const field = key === 'author' ? ClientUtils.CurrentUserEmail() : ProxyField.WithoutProxy(() => doc[key]);
- if (field instanceof RefField) {
- if (field instanceof Doc) {
- if (key === 'myLinkDatabase') {
- field instanceof Doc && references.add(field);
- // skip docs that have been closed and are scheduled for garbage collection
- } else {
- Doc.FindReferences(field, references, system);
- }
- }
- } else if (cfield instanceof ComputedField) {
- /* empty */
- } else if (field instanceof ObjectField) {
- if (field instanceof Doc) {
- Doc.FindReferences(field, references, system);
- } else if (field instanceof List) {
- !excludeLists && Doc.FindReferences(field, references, system);
- } else if (field instanceof ProxyField) {
- if (key === 'myLinkDatabase') {
- field instanceof Doc && references.add(field);
- // skip docs that have been closed and are scheduled for garbage collection
- } else {
- Doc.FindReferences(field.value, references, system);
- }
- } else if (field instanceof PrefetchProxy) {
- Doc.FindReferences(field.value, references, system);
- } else if (field instanceof RichTextField) {
- const re = /"docId"\s*:\s*"(.*?)"/g;
- let match: string[] | null;
- while ((match = re.exec(field.Data)) !== null) {
- const urlString = match[1];
- if (urlString) {
- const rdoc = DocServer.GetCachedRefField(urlString);
- if (rdoc) {
- references.add(rdoc);
- Doc.FindReferences(rdoc, references, system);
- }
- }
- }
+ if (field instanceof Doc) {
+ return Doc.FindReferences(field, references, system);
+ }
+ if (field instanceof RichTextField) {
+ let docId: string | undefined;
+ while ((docId = (FindDocsInRTF.exec(field.Data) ?? [undefined, undefined, undefined])[2])) {
+ Doc.FindReferences(DocServer.GetCachedRefField(docId), references, system);
}
- } else if (field instanceof Promise) {
- // eslint-disable-next-line no-debugger
- debugger; // This shouldn't happend...
}
- }
- });
+ });
+ return references;
}
+ /**
+ * Copies a Doc by copying its embedding (and optionally its prototype). Values within the Doc are copied except for Docs which are
+ * sipmly referenced (except if they're marked to be copied - eg., template layout Docs)
+ * @param doc Doc to copy
+ * @param copyProto whether to copy the Docs proto
+ * @param copyProtoId the id to use for the proto if copied
+ * @param retitle whether to retitle the copy by adding a copy number to the title
+ * @returns the copied Doc
+ */
export function MakeCopy(doc: Doc, copyProto: boolean = false, copyProtoId?: string, retitle = false): Doc {
const copy = runInAction(() => new Doc(copyProtoId, true));
updateCachedAcls(copy);
@@ -994,24 +990,18 @@ export namespace Doc {
copy[key] = Doc.MakeCopy(doc.proto, false);
}
} else {
- const cfield = ComputedField.WithoutComputed(() => FieldValue(doc[key]));
- const field = key === 'author' ? ClientUtils.CurrentUserEmail() : ProxyField.WithoutProxy(() => doc[key]);
- if (field instanceof RefField) {
- copy[key] = field;
- } else if (cfield instanceof ComputedField) {
- copy[key] = cfield[Copy](); // ComputedField.MakeFunction(cfield.script.originalScript);
- } else if (field instanceof ObjectField) {
- const docAtKey = doc[key];
- copy[key] =
- docAtKey instanceof Doc && (key.includes('layout[') || docAtKey.cloneOnCopy)
- ? new ProxyField(Doc.MakeCopy(docAtKey)) // copy the expanded render template
- : ObjectField.MakeCopy(field);
- } else if (field instanceof Promise) {
+ const field = key === 'author' ? ClientUtils.CurrentUserEmail() : doc[key];
+ if (field instanceof Promise) {
// eslint-disable-next-line no-debugger
debugger; // This shouldn't happend...
- } else {
- copy[key] = field;
}
+ copy[key] = (() => {
+ const cfield = ComputedField.DisableCompute(() => FieldValue(doc[key]));
+ if (cfield instanceof ComputedField) return cfield[Copy]();
+ if (field instanceof Doc) return field.cloneOnCopy ? Doc.MakeCopy(field) : field; // copy the expanded render template
+ if (field instanceof ObjectField) return ObjectField.MakeCopy(field);
+ return field;
+ })();
}
});
if (copyProto) {
@@ -1027,6 +1017,14 @@ export namespace Doc {
return copy;
}
+ /**
+ * Makes a delegate of a prototype Doc. Delegates inherit all of the properties of the
+ * prototype Doc, but can add new properties or mask existing prototype properties.
+ * @param doc prototype Doc to make a delgate of
+ * @param id id to use for delegate
+ * @param title title to use for delegate
+ * @returns a new Doc that is a delegate of the original Doc
+ */
export function MakeDelegate(doc: Doc, id?: string, title?: string): Doc;
export function MakeDelegate(doc: Opt<Doc>, id?: string, title?: string): Opt<Doc>;
export function MakeDelegate(doc: Opt<Doc>, id?: string, title?: string): Opt<Doc> {
@@ -1062,14 +1060,14 @@ export namespace Doc {
return ndoc;
}
- let _applyCount: number = 0;
export function ApplyTemplate(templateDoc: Doc) {
if (templateDoc) {
const proto = new Doc();
+ const applyCount = NumCast(templateDoc.dragFactory_count);
proto.author = ClientUtils.CurrentUserEmail();
const target = Doc.MakeDelegate(proto);
const targetKey = StrCast(templateDoc.layout_fieldKey, 'layout');
- const applied = ApplyTemplateTo(templateDoc, target, targetKey, templateDoc.title + '(...' + _applyCount++ + ')');
+ const applied = ApplyTemplateTo(templateDoc, target, targetKey, templateDoc.title + '(...' + applyCount + ')');
target.layout_fieldKey = targetKey; //this and line above
applied && (Doc.GetProto(applied).type = templateDoc.type);
return applied;
@@ -1096,13 +1094,13 @@ export namespace Doc {
//
export function MakeMetadataFieldTemplate(templateField: Doc, templateDoc: Opt<Doc>, keepFieldKey = false): boolean {
// find the metadata field key that this template field doc will display (indicated by its title)
- const metadataFieldKey = keepFieldKey ? Doc.LayoutFieldKey(templateField) : StrCast(templateField.isTemplateForField) || StrCast(templateField.title).replace(/^-/, '') || Doc.LayoutFieldKey(templateField);
+ const metadataFieldKey = keepFieldKey ? Doc.LayoutDataKey(templateField) : StrCast(templateField.isTemplateForField) || StrCast(templateField.title).replace(/^-/, '') || Doc.LayoutDataKey(templateField);
// update the original template to mark it as a template
templateField.isTemplateForField = metadataFieldKey;
!keepFieldKey && (templateField.title = metadataFieldKey);
- const templateFieldValue = templateField[metadataFieldKey] || templateField[Doc.LayoutFieldKey(templateField)];
+ const templateFieldValue = templateField[metadataFieldKey] || templateField[Doc.LayoutDataKey(templateField)];
// move any data that the template field had been rendering over to the template doc so that things will still be rendered
// when the template field is adjusted to point to the new metadatafield key.
// note 1: if the template field contained a list of documents, each of those documents will be converted to templates as well.
@@ -1148,55 +1146,74 @@ export namespace Doc {
@observable _searchQuery: string = '';
}
- // the document containing the view layout information - will be the Document itself unless the Document has
- // a layout field or 'layout' is given.
- export function Layout(doc: Doc, template?: Doc): Doc {
- const expandedTemplate = template && Cast(doc['layout_' + template.title + '(' + StrCast(template.isTemplateForField, 'data') + ')'], Doc, null);
+ /**
+ * The layout Doc containing the view layout information - this will be :
+ * a) the Doc being rendered itself unless
+ * b) a template Doc stored in the field sepcified by Doc's layout_fieldKey
+ * c) or the specifeid 'template' Doc;
+ * If a template is specified, it will be expanded to create an instance specific to the rendered doc;
+ * @param doc the doc to render
+ * @param template a Doc to use as a template for the layout
+ * @returns
+ */
+ export function LayoutDoc(doc: Doc, template?: Doc): Doc {
+ const expandedTemplate = template && Cast(doc[expandedFieldName(template)], Doc, null);
return expandedTemplate || doc[DocLayout];
}
+ /**
+ * The JSX or Doc value defining how to render the Doc.
+ * @param doc Doc to render
+ * @returns a JSX string or Doc that describes how to render the Doc
+ */
export function LayoutField(doc: Doc) {
return doc[StrCast(doc.layout_fieldKey, 'layout')];
}
- export function LayoutFieldKey(doc: Doc, templateLayoutString?: string): string {
+ /**
+ * The field key of the Doc where the primary Data can be found to render the Doc.
+ * eg., for an image, this is likely to be the 'data' field which contains an image url,
+ * and for a text doc, this is likely to be the 'text' field ontaingin the text of the doc.
+ * @param doc Doc to render
+ * @param templateLayoutString optional JSX string that specifies the doc's data field key
+ * @returns field key where data is stored on Doc
+ */
+ export function LayoutDataKey(doc: Doc, templateLayoutString?: string): string {
const match = StrCast(templateLayoutString || doc[DocLayout].layout).match(/fieldKey={'([^']+)'}/);
- return match?.[1] || ''; // bcz: TODO check on this . used to always reference 'layout', now it uses the layout speicfied by the current layout_fieldKey
+ return match?.[1] || '';
}
export function NativeAspect(doc: Doc, dataDoc?: Doc, useDim?: boolean) {
return Doc.NativeWidth(doc, dataDoc, useDim) / (Doc.NativeHeight(doc, dataDoc, useDim) || 1);
}
export function NativeWidth(doc?: Doc, dataDoc?: Doc, useWidth?: boolean) {
- return !doc ? 0 : NumCast(doc._nativeWidth, NumCast((dataDoc || doc)[Doc.LayoutFieldKey(doc) + '_nativeWidth'], useWidth ? NumCast(doc._width) : 0));
+ return !doc ? 0 : NumCast(doc._nativeWidth, NumCast((dataDoc || doc)[Doc.LayoutDataKey(doc) + '_nativeWidth'], useWidth ? NumCast(doc._width) : 0));
}
export function NativeHeight(doc?: Doc, dataDoc?: Doc, useHeight?: boolean) {
if (!doc) return 0;
const nheight = (Doc.NativeWidth(doc, dataDoc, useHeight) / NumCast(doc._width)) * NumCast(doc._height); // divide before multiply to avoid floating point errrorin case nativewidth = width
- const dheight = NumCast((dataDoc || doc)[Doc.LayoutFieldKey(doc) + '_nativeHeight'], useHeight ? NumCast(doc._height) : 0);
+ const dheight = NumCast((dataDoc || doc)[Doc.LayoutDataKey(doc) + '_nativeHeight'], useHeight ? NumCast(doc._height) : 0);
return NumCast(doc._nativeHeight, nheight || dheight);
}
export function SetNativeWidth(doc: Doc, width: number | undefined, fieldKey?: string) {
- doc[(fieldKey || Doc.LayoutFieldKey(doc)) + '_nativeWidth'] = width;
+ doc[(fieldKey || Doc.LayoutDataKey(doc)) + '_nativeWidth'] = width;
}
export function SetNativeHeight(doc: Doc, height: number | undefined, fieldKey?: string) {
- doc[(fieldKey || Doc.LayoutFieldKey(doc)) + '_nativeHeight'] = height;
+ doc[(fieldKey || Doc.LayoutDataKey(doc)) + '_nativeHeight'] = height;
}
const manager = new UserDocData();
- export function SearchQuery(): string {
+ export function SearchQuery() {
return manager._searchQuery;
}
export function SetSearchQuery(query: string) {
- runInAction(() => {
- manager._searchQuery = query;
- });
+ manager._searchQuery = query;
}
- export function UserDoc(): Doc {
+ export function UserDoc() {
return manager._user_doc;
}
- export function SharingDoc(): Doc {
+ export function SharingDoc() {
return Doc.MySharedDocs;
}
- export function LinkDBDoc(): Doc {
- return Cast(Doc.UserDoc().myLinkDatabase, Doc, null);
+ export function LinkDBDoc() {
+ return DocCast(Doc.UserDoc().myLinkDatabase);
}
export function SetUserDoc(doc: Doc) {
return (manager._user_doc = doc);
@@ -1221,7 +1238,7 @@ export namespace Doc {
if (!doc || GetEffectiveAcl(doc) === AclPrivate || GetEffectiveAcl(doc[DocData]) === AclPrivate) return doc;
const result = brushManager.SearchMatchDoc.get(doc);
const num = Math.abs(result?.searchMatch || 0) + 1;
- runInAction(() => result && brushManager.SearchMatchDoc.set(doc, { searchMatch: backward ? -num : num }));
+ result && brushManager.SearchMatchDoc.set(doc, { searchMatch: backward ? -num : num });
return doc;
}
export function ClearSearchMatches() {
@@ -1299,7 +1316,7 @@ export namespace Doc {
highlightedDocs.add(doc[DocData]);
doc[DocData][Highlight] = true;
// want to highlight the targets of presentation docs explicitly since following a pres target does not highlight PDf <Annotations> which are not DocumentViews
- if (doc.presentation_targetDoc) DocCast(doc.presentation_targetDoc)[Highlight] = true;
+ if (DocCast(doc.presentation_targetDoc)) DocCast(doc.presentation_targetDoc)![Highlight] = true;
}
});
}
@@ -1311,7 +1328,7 @@ export namespace Doc {
highlightedDocs.delete(doc[DocData]);
doc[Highlight] = doc[DocData][Highlight] = false;
doc[Animation] = undefined;
- if (doc.presentation_targetDoc) DocCast(doc.presentation_targetDoc)[Highlight] = false;
+ if (DocCast(doc.presentation_targetDoc)) DocCast(doc.presentation_targetDoc)![Highlight] = false;
});
});
}
@@ -1338,7 +1355,7 @@ export namespace Doc {
export function setDocRangeFilter(container: Opt<Doc>, key: string, range?: readonly number[], modifiers?: 'remove') {
if (!container) return;
- const childFiltersByRanges = Cast(container._childFiltersByRanges, listSpec('string'), []);
+ const childFiltersByRanges = StrListCast(container._childFiltersByRanges);
for (let i = 0; i < childFiltersByRanges.length; i += 3) {
if (childFiltersByRanges[i] === key) {
@@ -1346,7 +1363,7 @@ export namespace Doc {
break;
}
}
- if (range !== undefined) {
+ if (range) {
childFiltersByRanges.push(key);
childFiltersByRanges.push(range[0].toString());
childFiltersByRanges.push(range[1].toString());
@@ -1401,7 +1418,7 @@ export namespace Doc {
});
}
export function readDocRangeFilter(doc: Doc, key: string) {
- const childFiltersByRanges = Cast(doc._childFiltersByRanges, listSpec('string'), []);
+ const childFiltersByRanges = StrListCast(doc._childFiltersByRanges);
for (let i = 0; i < childFiltersByRanges.length; i += 3) {
if (childFiltersByRanges[i] === key) {
return [Number(childFiltersByRanges[i + 1]), Number(childFiltersByRanges[i + 2])];
@@ -1436,8 +1453,9 @@ export namespace Doc {
DocServer.GetRefFields(docids).then(async fieldlist => {
const list = Array.from(fieldlist.values())
.map(d => DocCast(d))
- .filter(d => d);
- const docs = clone ? (await Promise.all(Doc.MakeClones(list, false, false))).map(res => res.clone) : list;
+ .filter(d => d)
+ .map(d => d!);
+ const docs = clone ? Doc.MakeClones(list, false, false).map(res => res.clone) : list;
if (ptx !== undefined && pty !== undefined && newPoint !== undefined) {
const firstx = list.length ? NumCast(list[0].x) + ptx - newPoint[0] : 0;
const firsty = list.length ? NumCast(list[0].y) + pty - newPoint[1] : 0;
@@ -1457,16 +1475,16 @@ export namespace Doc {
* @returns
*/
export function getDescription(doc: Doc) {
- const curDescription = StrCast(doc['$' + Doc.LayoutFieldKey(doc) + '_description']);
+ const curDescription = StrCast(doc['$' + Doc.LayoutDataKey(doc) + '_description']);
const docText = (async (tdoc:Doc) => {
switch (tdoc.type) {
case DocumentType.PDF: return curDescription || StrCast(tdoc.text).split(/\s+/).slice(0, 50).join(' '); // first 50 words of pdf text
- case DocumentType.IMG: return curDescription || imageUrlToBase64(ImageCastWithSuffix(tdoc[Doc.LayoutFieldKey(tdoc)], '_o') ?? '')
+ case DocumentType.IMG: return curDescription || imageUrlToBase64(ImageCastWithSuffix(tdoc[Doc.LayoutDataKey(tdoc)], '_o') ?? '')
.then(hrefBase64 => gptImageLabel(hrefBase64, 'Give three to five labels to describe this image.'));
- case DocumentType.RTF: return RTFCast(tdoc[Doc.LayoutFieldKey(tdoc)])?.Text ?? StrCast(tdoc[Doc.LayoutFieldKey(tdoc)]);
+ case DocumentType.RTF: return RTFCast(tdoc[Doc.LayoutDataKey(tdoc)])?.Text ?? StrCast(tdoc[Doc.LayoutDataKey(tdoc)]);
default: return StrCast(tdoc.title).startsWith("Untitled") ? "" : StrCast(tdoc.title);
}}); // prettier-ignore
- return docText(doc).then(text => (doc['$' + Doc.LayoutFieldKey(doc) + '_description'] = text));
+ return docText(doc).then(text => (doc['$' + Doc.LayoutDataKey(doc) + '_description'] = text));
}
// prettier-ignore
@@ -1714,7 +1732,7 @@ export function IdToDoc(id: string) {
return DocCast(DocServer.GetCachedRefField(id));
}
// eslint-disable-next-line prefer-arrow-callback
-ScriptingGlobals.add(function idToDoc(id: string): Doc {
+ScriptingGlobals.add(function idToDoc(id: string): Doc | undefined {
return IdToDoc(id);
});
// eslint-disable-next-line prefer-arrow-callback
@@ -1768,7 +1786,7 @@ ScriptingGlobals.add(function docCastAsync(doc: FieldResult): FieldResult<Doc> {
// eslint-disable-next-line prefer-arrow-callback
ScriptingGlobals.add(function activePresentationItem() {
const curPres = Doc.ActivePresentation;
- return curPres && DocListCast(curPres[Doc.LayoutFieldKey(curPres)])[NumCast(curPres._itemIndex)];
+ return curPres && DocListCast(curPres[Doc.LayoutDataKey(curPres)])[NumCast(curPres._itemIndex)];
});
// eslint-disable-next-line prefer-arrow-callback
ScriptingGlobals.add(function setDocFilter(container: Doc, key: string, value: string, modifiers: 'match' | 'check' | 'x' | 'remove') {
diff --git a/src/fields/List.ts b/src/fields/List.ts
index 22bbcb9ab..ba03c0d38 100644
--- a/src/fields/List.ts
+++ b/src/fields/List.ts
@@ -255,7 +255,7 @@ export class ListImpl<T extends FieldType> extends ObjectField {
if (fields) {
this[SelfProxy].push(...fields);
}
- // eslint-disable-next-line no-constructor-return
+
return list; // need to return the proxy here, otherwise we don't get any of our list handler functions
}
@@ -317,8 +317,8 @@ export class ListImpl<T extends FieldType> extends ObjectField {
// declare List as a type so you can use it in type declarations, e.g., { l: List, ...}
export type List<T extends FieldType> = ListImpl<T> & (T | (T extends RefField ? Promise<T> : never))[];
-// decalre List as a value so you can invoke 'new' on it, e.g., new List<Doc>() (since List<T> IS ListImpl<T>, we can safely cast the 'new' return value to return List<T>)
-// eslint-disable-next-line no-redeclare
+// declare List as a value so you can invoke 'new' on it, e.g., new List<Doc>() (since List<T> IS ListImpl<T>, we can safely cast the 'new' return value to return List<T>)
+// eslint-disable-next-line no-use-before-define
export const List: { new <T extends FieldType>(fields?: T[]): List<T> } = ListImpl as unknown as { new <T extends FieldType>(fields?: T[]): List<T> };
ScriptingGlobals.add('List', List);
diff --git a/src/fields/Proxy.ts b/src/fields/Proxy.ts
index 48c336e60..21b9fe89b 100644
--- a/src/fields/Proxy.ts
+++ b/src/fields/Proxy.ts
@@ -16,9 +16,26 @@ function deserializeProxy(field: serializedProxyType) {
}
@Deserializable('proxy', (obj: unknown) => deserializeProxy(obj as serializedProxyType))
export class ProxyField<T extends Doc> extends ObjectField {
+ @serializable(primitive())
+ readonly fieldId: string = '';
+
+ private failed = false;
+
+ // This getter/setter and nested object thing is
+ // because mobx doesn't play well with observable proxies
+ @observable.ref
+ private _cache: { readonly field: T | undefined; p: FieldWaiting<T> | undefined } = { field: undefined, p: undefined };
+ private get cache(): { field: T | undefined; p: FieldWaiting<T> | undefined } {
+ return this._cache;
+ }
+ private set cache(val: { field: T | undefined; p: FieldWaiting<T> | undefined }) {
+ runInAction(() => (this._cache = { ...val }));
+ }
+
constructor();
constructor(value: T);
constructor(fieldId: string);
+ constructor(value: T | string);
constructor(value?: T | string) {
super();
if (typeof value === 'string') {
@@ -30,13 +47,12 @@ export class ProxyField<T extends Doc> extends ObjectField {
}
}
- [ToValue](/* doc: any */) {
+ [ToValue]() {
return ProxyField.toValue(this);
}
[Copy]() {
- if (this.cache.field) return new ProxyField<T>(this.cache.field);
- return new ProxyField<T>(this.fieldId);
+ return new ProxyField<T>(this.cache.field ?? this.fieldId);
}
[ToJavascriptString]() {
@@ -46,27 +62,9 @@ export class ProxyField<T extends Doc> extends ObjectField {
return Field.toScriptString(this[ToValue]()?.value as T); // not sure this is quite right since it doesn't recreate a proxy field, but better than 'invalid' ?
}
[ToString]() {
- return Field.toString(this[ToValue]()?.value);
+ return Field.toString(this[ToValue]()?.value as T);
}
- @serializable(primitive())
- readonly fieldId: string = '';
-
- // This getter/setter and nested object thing is
- // because mobx doesn't play well with observable proxies
- @observable.ref
- private _cache: { readonly field: T | undefined; p: FieldWaiting<T> | undefined } = { field: undefined, p: undefined };
- private get cache(): { field: T | undefined; p: FieldWaiting<T> | undefined } {
- return this._cache;
- }
- private set cache(val: { field: T | undefined; p: FieldWaiting<T> | undefined }) {
- runInAction(() => {
- this._cache = { ...val };
- });
- }
-
- private failed = false;
-
@computed get value(): T | undefined | FieldWaiting<T> {
if (this.cache.field) return this.cache.field;
if (this.failed) return undefined;
@@ -94,32 +92,19 @@ export class ProxyField<T extends Doc> extends ObjectField {
return field;
}
}
-
-// eslint-disable-next-line no-redeclare, @typescript-eslint/no-namespace
export namespace ProxyField {
let useProxy = true;
- export function DisableProxyFields() {
+ export function DisableDereference<T>(fn: () => T) {
useProxy = false;
- }
-
- export function EnableProxyFields() {
- useProxy = true;
- }
-
- export function WithoutProxy<T>(fn: () => T) {
- DisableProxyFields();
try {
return fn();
} finally {
- EnableProxyFields();
+ useProxy = true;
}
}
export function toValue(value: { value: unknown }) {
- if (useProxy) {
- return { value: value.value };
- }
- return undefined;
+ return useProxy ? { value: value.value } : undefined;
}
}
@@ -129,5 +114,6 @@ function prefetchValue(proxy: PrefetchProxy<Doc>) {
}
@scriptingGlobal
-@Deserializable('prefetch_proxy', (obj:unknown) => prefetchValue(obj as PrefetchProxy<Doc>))
+// eslint-disable-next-line no-use-before-define
+@Deserializable('prefetch_proxy', (obj: unknown) => prefetchValue(obj as PrefetchProxy<Doc>))
export class PrefetchProxy<T extends Doc> extends ProxyField<T> {}
diff --git a/src/fields/Schema.ts b/src/fields/Schema.ts
index 89e5cda8d..cdd278d67 100644
--- a/src/fields/Schema.ts
+++ b/src/fields/Schema.ts
@@ -1,6 +1,3 @@
-/* eslint-disable guard-for-in */
-/* eslint-disable no-restricted-syntax */
-/* eslint-disable no-redeclare */
/* eslint-disable no-use-before-define */
import { Interface, ToInterface, Cast, ToConstructor, HasTail, Head, Tail, ListSpec, ToType, DefaultFieldConstructor } from './Types';
import { Doc, FieldType } from './Doc';
@@ -16,7 +13,6 @@ type AllToInterface<T extends Interface[]> = {
export const emptySchema = createSchema({});
export const Document = makeInterface(emptySchema);
-// eslint-disable-next-line no-redeclare
export type Document = makeInterface<[typeof emptySchema]>;
export interface InterfaceFunc<T extends Interface[]> {
@@ -36,9 +32,10 @@ export function makeInterface<T extends Interface[]>(...schemas: T): InterfaceFu
const proto = new Proxy(
{},
{
- get(target: any, prop, receiver) {
+ get(target: unknown, prop, receiver) {
const field = receiver.doc?.[prop];
if (prop in schema) {
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
const desc = prop === 'proto' ? Doc : (schema as any)[prop]; // bcz: proto doesn't appear in schemas ... maybe it should?
if (typeof desc === 'object' && 'defaultVal' in desc && 'type' in desc) {
// defaultSpec
@@ -59,7 +56,7 @@ export function makeInterface<T extends Interface[]>(...schemas: T): InterfaceFu
}
return field;
},
- set(target: any, prop, value, receiver) {
+ set(target: unknown, prop, value, receiver) {
receiver.doc && (receiver.doc[prop] = value); // receiver.doc may be undefined as the result of a change in acls
return true;
},
@@ -77,10 +74,10 @@ export function makeStrictInterface<T extends Interface>(schema: T): (doc: Doc)
const type = schema[key];
Object.defineProperty(proto, key, {
get() {
- return Cast(this.__doc[key], type as any);
+ return Cast(this.__doc[key], type as never);
},
set(setValue) {
- const value = Cast(setValue, type as any);
+ const value = Cast(setValue, type as never);
if (value !== undefined) {
this.__doc[key] = value;
return;
@@ -89,7 +86,7 @@ export function makeStrictInterface<T extends Interface>(schema: T): (doc: Doc)
},
});
}
- return function (doc: any) {
+ return function (doc: unknown) {
if (!(doc instanceof Doc)) {
throw new Error("Currently wrapping a schema in another schema isn't supported");
}
@@ -101,18 +98,18 @@ export function makeStrictInterface<T extends Interface>(schema: T): (doc: Doc)
// eslint-disable-next-line @typescript-eslint/no-unused-vars
export function createSchema<T extends Interface>(schema: T): T & { proto: ToConstructor<Doc> } {
- return undefined as any;
+ return undefined as never;
// (schema as any).proto = Doc;
// return schema as any;
}
export function listSpec<U extends ToConstructor<FieldType>>(type: U): ListSpec<ToType<U>> {
- return { List: type as any }; // TODO Types
+ return { List: type as never }; // TODO Types
}
export function defaultSpec<T extends ToConstructor<FieldType>>(type: T, defaultVal: ToType<T>): DefaultFieldConstructor<ToType<T>> {
return {
- type: type as any,
+ type: type as never,
defaultVal,
};
}
diff --git a/src/fields/ScriptField.ts b/src/fields/ScriptField.ts
index 6e2d7eb78..37b65684b 100644
--- a/src/fields/ScriptField.ts
+++ b/src/fields/ScriptField.ts
@@ -149,7 +149,6 @@ export class ScriptField extends ObjectField {
...params,
},
transformer,
- typecheck: false,
editable: true,
addReturn: addReturn,
capturedVariables,
@@ -189,14 +188,12 @@ export class ScriptField extends ObjectField {
export class ComputedField extends ScriptField {
static undefined = '__undefined';
static useComputed = true;
- static DisableComputedFields() { this.useComputed = false; } // prettier-ignore
- static EnableComputedFields() { this.useComputed = true; } // prettier-ignore
- static WithoutComputed<T>(fn: () => T) {
- this.DisableComputedFields();
+ static DisableCompute<T>(fn: () => T) {
+ this.useComputed = false;
try {
return fn();
} finally {
- this.EnableComputedFields();
+ this.useComputed = true;
}
}
@@ -239,7 +236,8 @@ export class ComputedField extends ScriptField {
public static MakeInterpolatedNumber(fieldKey: string, interpolatorKey: string, doc: Doc, curTimecode: number, defaultVal: Opt<number>) {
if (!doc[`${fieldKey}_indexed`]) {
const flist = new List<number>(numberRange(curTimecode + 1).map(emptyFunction) as unknown as number[]);
- flist[curTimecode] = Cast(doc[fieldKey], 'number', null);
+ if (Cast(doc[fieldKey], 'number', null) === undefined) delete flist[curTimecode];
+ else flist[curTimecode] = Cast(doc[fieldKey], 'number', null)!;
doc[`${fieldKey}_indexed`] = flist;
}
const getField = ScriptField.CompileScript(`getIndexVal(this['${fieldKey}_indexed'], this.${interpolatorKey}, ${defaultVal})`, {}, true, {});
diff --git a/src/fields/Types.ts b/src/fields/Types.ts
index dc7516f38..e6755f828 100644
--- a/src/fields/Types.ts
+++ b/src/fields/Types.ts
@@ -8,7 +8,7 @@ import { ScriptField } from './ScriptField';
import { AudioField, CsvField, ImageField, PdfField, VideoField, WebField } from './URLField';
// eslint-disable-next-line no-use-before-define
-export type ToConstructor<T extends FieldType> = T extends string ? 'string' : T extends number ? 'number' : T extends boolean ? 'boolean' : T extends List<infer U> ? ListSpec<U> : new (...args: any[]) => T;
+export type ToConstructor<T extends FieldType> = T extends string ? 'string' : T extends number ? 'number' : T extends boolean ? 'boolean' : T extends List<infer U> ? ListSpec<U> : new (...args: never[]) => T;
export type DefaultFieldConstructor<T extends FieldType> = {
type: ToConstructor<T>;
@@ -17,7 +17,7 @@ export type DefaultFieldConstructor<T extends FieldType> = {
// type ListSpec<T extends Field[]> = { List: ToContructor<Head<T>> | ListSpec<Tail<T>> };
export type ListSpec<T extends FieldType> = { List: ToConstructor<T> };
-export type InterfaceValue = ToConstructor<FieldType> | ListSpec<FieldType> | DefaultFieldConstructor<FieldType> | ((doc?: Doc) => any);
+export type InterfaceValue = ToConstructor<FieldType> | ListSpec<FieldType> | DefaultFieldConstructor<FieldType> | ((doc?: Doc) => never);
export type ToType<T extends InterfaceValue> = T extends 'string'
? string
@@ -31,9 +31,9 @@ export type ToType<T extends InterfaceValue> = T extends 'string'
// eslint-disable-next-line @typescript-eslint/no-unused-vars
T extends DefaultFieldConstructor<infer _U>
? never
- : T extends { new (...args: any[]): List<FieldType> }
+ : T extends { new (...args: never[]): List<FieldType> }
? never
- : T extends { new (...args: any[]): infer R }
+ : T extends { new (...args: never[]): infer R }
? R
: T extends (doc?: Doc) => infer R
? R
@@ -41,29 +41,26 @@ export type ToType<T extends InterfaceValue> = T extends 'string'
export interface Interface {
[key: string]: InterfaceValue;
- // [key: string]: ToConstructor<Field> | ListSpec<Field[]>;
}
export type ToInterface<T extends Interface> = {
[P in Exclude<keyof T, 'proto'>]: T[P] extends DefaultFieldConstructor<infer F> ? Exclude<FieldResult<F>, undefined> : FieldResult<ToType<T[P]>>;
};
-// type ListType<U extends Field[]> = { 0: List<ListType<Tail<U>>>, 1: ToType<Head<U>> }[HasTail<U> extends true ? 0 : 1];
-
-export type Head<T extends any[]> = T extends [any, ...any[]] ? T[0] : never;
-export type Tail<T extends any[]> = ((...t: T) => any) extends (_: any, ...tail: infer TT) => any ? TT : [];
-export type HasTail<T extends any[]> = T extends [] | [any] ? false : true;
+export type Head<T extends unknown[]> = T extends [unknown, ...unknown[]] ? T[0] : Interface;
+export type Tail<T extends unknown[]> = ((...t: T) => unknown) extends (_: unknown, ...tail: infer TT) => unknown ? TT : [];
+export type HasTail<T extends unknown[]> = T extends [] | [unknown] ? false : true;
// TODO Allow you to optionally specify default values for schemas, which should then make that field not be partial
-export type WithoutRefField<T extends FieldType> = T extends RefField ? never : T;
+export type WithoutRefField<T extends FieldType> = T extends RefField ? unknown : T;
export type CastCtor = ToConstructor<FieldType> | ListSpec<FieldType>;
type WithoutList<T extends FieldType> = T extends List<infer R> ? (R extends RefField ? (R | Promise<R>)[] : R[]) : T;
-export function Cast<T extends CastCtor>(field: FieldResult, ctor: T): FieldResult<ToType<T>>;
-export function Cast<T extends CastCtor>(field: FieldResult, ctor: T, defaultVal: WithoutList<WithoutRefField<ToType<T>>> | null): WithoutList<ToType<T>>;
+export function Cast<T extends CastCtor>(field: FieldResult, ctor: T): FieldResult<ToType<T>> | undefined;
+export function Cast<T extends CastCtor>(field: FieldResult, ctor: T, defaultVal: WithoutList<ToType<T>> | null): WithoutList<ToType<T>> | undefined;
export function Cast<T extends CastCtor>(field: FieldResult, ctor: T, defaultVal?: ToType<T> | null): FieldResult<ToType<T>> | undefined {
if (field instanceof Promise) {
- return defaultVal === undefined ? (field.then(f => Cast(f, ctor) as any) as any) : defaultVal === null ? undefined : defaultVal;
+ return defaultVal === undefined ? (field.then(f => Cast(f, ctor) as ToType<T>) as ToType<T>) : defaultVal === null ? undefined : defaultVal;
}
if (field !== undefined && !(field instanceof Promise)) {
if (typeof ctor === 'string') {
@@ -72,10 +69,12 @@ export function Cast<T extends CastCtor>(field: FieldResult, ctor: T, defaultVal
}
} else if (typeof ctor === 'object') {
if (field instanceof List) {
- return field as any;
+ return field as ToType<T>;
}
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} else if (field instanceof (ctor as any)) {
return field as ToType<T>;
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} else if (field instanceof ProxyField && field.value instanceof (ctor as any)) {
return field.value as ToType<T>;
}
@@ -83,57 +82,27 @@ export function Cast<T extends CastCtor>(field: FieldResult, ctor: T, defaultVal
return defaultVal === null ? undefined : defaultVal;
}
-export function toList(doc: Doc | Doc[]) {
- return doc instanceof Doc ? [doc] : doc;
-}
+export function toList(doc: Doc | Doc[]) { return doc instanceof Doc ? [doc] : doc; } // prettier-ignore
export function DocCast(field: FieldResult, defaultVal?: Doc) {
- const doc = Cast(field, Doc, null);
- return doc && !(doc instanceof Promise) ? doc : (defaultVal as Doc);
-}
-
-export function NumCast(field: FieldResult, defaultVal: number | null = 0) {
- return Cast(field, 'number', defaultVal);
-}
-
-export function StrCast(field: FieldResult, defaultVal: string | null = '') {
- return Cast(field, 'string', defaultVal);
-}
+ return ((doc: Doc | undefined) => (doc && !(doc instanceof Promise) ? doc : defaultVal))(Cast(field, Doc, null));
+}
+export function NumCast (field: FieldResult, defaultVal: number | null = 0) { return Cast(field, 'number', defaultVal)!; } // prettier-ignore
+export function StrCast (field: FieldResult, defaultVal: string | null = '') { return Cast(field, 'string', defaultVal)!; } // prettier-ignore
+export function BoolCast (field: FieldResult, defaultVal: boolean | null = false) { return Cast(field, 'boolean', defaultVal)!; } // prettier-ignore
+export function DateCast (field: FieldResult, defaultVal: DateField | null = null) { return Cast(field, DateField, defaultVal); } // prettier-ignore
+export function RTFCast (field: FieldResult, defaultVal: RichTextField | null = null){ return Cast(field, RichTextField, defaultVal); } // prettier-ignore
+export function ScriptCast(field: FieldResult, defaultVal: ScriptField | null = null) { return Cast(field, ScriptField, defaultVal); } // prettier-ignore
+export function CsvCast (field: FieldResult, defaultVal: CsvField | null = null) { return Cast(field, CsvField, defaultVal); } // prettier-ignore
+export function WebCast (field: FieldResult, defaultVal: WebField | null = null) { return Cast(field, WebField, defaultVal); } // prettier-ignore
+export function VideoCast (field: FieldResult, defaultVal: VideoField | null = null) { return Cast(field, VideoField, defaultVal); } // prettier-ignore
+export function AudioCast (field: FieldResult, defaultVal: AudioField | null = null) { return Cast(field, AudioField, defaultVal); } // prettier-ignore
+export function PDFCast (field: FieldResult, defaultVal: PdfField | null = null) { return Cast(field, PdfField, defaultVal); } // prettier-ignore
+export function ImageCast (field: FieldResult, defaultVal: ImageField | null = null) { return Cast(field, ImageField, defaultVal); } // prettier-ignore
-export function BoolCast(field: FieldResult, defaultVal: boolean | null = false) {
- return Cast(field, 'boolean', defaultVal);
-}
-export function DateCast(field: FieldResult) {
- return Cast(field, DateField, null);
-}
-export function RTFCast(field: FieldResult) {
- return Cast(field, RichTextField, null);
-}
-
-export function ScriptCast(field: FieldResult, defaultVal: ScriptField | null = null) {
- return Cast(field, ScriptField, defaultVal);
-}
-export function CsvCast(field: FieldResult, defaultVal: CsvField | null = null) {
- return Cast(field, CsvField, defaultVal);
-}
-export function WebCast(field: FieldResult, defaultVal: WebField | null = null) {
- return Cast(field, WebField, defaultVal);
-}
-export function VideoCast(field: FieldResult, defaultVal: VideoField | null = null) {
- return Cast(field, VideoField, defaultVal);
-}
-export function AudioCast(field: FieldResult, defaultVal: AudioField | null = null) {
- return Cast(field, AudioField, defaultVal);
-}
-export function PDFCast(field: FieldResult, defaultVal: PdfField | null = null) {
- return Cast(field, PdfField, defaultVal);
-}
-export function ImageCast(field: FieldResult, defaultVal: ImageField | null = null) {
- return Cast(field, ImageField, defaultVal);
-}
export function ImageCastToNameType(field: FieldResult, defaultVal: ImageField | null = null) {
const href = ImageCast(field, defaultVal)?.url.href;
- return href ? [href.replace(/.[^.]*$/, ''), href.split('.').lastElement()] : ["", ""];
+ return href ? [href.replace(/.[^.]*$/, ''), href.split('.').lastElement()] : ['', ''];
}
export function ImageCastWithSuffix(field: FieldResult, suffix: string, defaultVal: ImageField | null = null) {
const [name, type] = ImageCastToNameType(field, defaultVal);
diff --git a/src/fields/util.ts b/src/fields/util.ts
index 205c500a5..799fa3758 100644
--- a/src/fields/util.ts
+++ b/src/fields/util.ts
@@ -241,19 +241,19 @@ export function distributeAcls(key: string, acl: SharingPermissions, target: Doc
dataDoc[DirectLinks].forEach(link => distributeAcls(key, acl, link, visited, !!allowUpgrade));
- DocListCast(dataDoc[Doc.LayoutFieldKey(dataDoc)]).forEach(d => {
+ DocListCast(dataDoc[Doc.LayoutDataKey(dataDoc)]).forEach(d => {
distributeAcls(key, acl, d, visited, !!allowUpgrade);
d !== d[DocData] && distributeAcls(key, acl, d[DocData], visited, !!allowUpgrade);
});
- DocListCast(dataDoc[Doc.LayoutFieldKey(dataDoc) + '_annotations']).forEach(d => {
+ DocListCast(dataDoc[Doc.LayoutDataKey(dataDoc) + '_annotations']).forEach(d => {
distributeAcls(key, acl, d, visited, !!allowUpgrade);
d !== d[DocData] && distributeAcls(key, acl, d[DocData], visited, !!allowUpgrade);
});
- Object.keys(target) // share expanded layout templates (eg, for presElementBox'es )
- .filter(lkey => lkey.includes('layout[') && DocCast(target[lkey]))
- .forEach(lkey => distributeAcls(key, acl, DocCast(target[lkey]), visited, !!allowUpgrade));
+ Object.keys(target) // share expanded layout templates (eg, for PresSlideBox'es )
+ .filter(lkey => lkey.includes('layout_[') && DocCast(target[lkey]))
+ .forEach(lkey => distributeAcls(key, acl, DocCast(target[lkey])!, visited, !!allowUpgrade));
if (GetEffectiveAcl(dataDoc) === AclAdmin) {
dataDoc[key] = acl;
diff --git a/src/server/ApiManagers/FireflyManager.ts b/src/server/ApiManagers/FireflyManager.ts
index 07428798c..d22142d7d 100644
--- a/src/server/ApiManagers/FireflyManager.ts
+++ b/src/server/ApiManagers/FireflyManager.ts
@@ -70,49 +70,42 @@ export default class FireflyManager extends ApiManager {
);
uploadImageToDropbox = (fileUrl: string, user: DashUserModel | undefined, dbx = new Dropbox({ accessToken: user?.dropboxToken || '' })) =>
- new Promise<string | Error>((res, rej) =>
+ new Promise<string>((resolve, reject) => {
fs.readFile(path.join(filesDirectory, `${Directory.images}/${path.basename(fileUrl)}`), undefined, (err, contents) => {
if (err) {
- console.log('Error: ', err);
- rej();
- } else {
- dbx.filesUpload({ path: `/Apps/browndash/${path.basename(fileUrl)}`, contents })
- .then(response => {
- dbx.filesGetTemporaryLink({ path: response.result.path_display ?? '' })
- .then(link => res(link.result.link))
- .catch(e => res(new Error(e.toString())));
- })
- .catch(e => {
- if (user?.dropboxRefresh) {
- console.log('*********** try refresh dropbox for: ' + user.email + ' ***********');
- this.refreshDropboxToken(user).then(token => {
- if (!token) {
- console.log('Dropbox error: cannot refresh token');
- res(new Error(e.toString()));
- } else {
- const dbxNew = new Dropbox({ accessToken: user.dropboxToken || '' });
- dbxNew
- .filesUpload({ path: `/Apps/browndash/${path.basename(fileUrl)}`, contents })
- .then(response => {
- dbxNew
- .filesGetTemporaryLink({ path: response.result.path_display ?? '' })
- .then(link => res(link.result.link))
- .catch(linkErr => res(new Error(linkErr.toString())));
- })
- .catch(uploadErr => {
- console.log('Dropbox error:', uploadErr);
- res(new Error(uploadErr.toString()));
- });
- }
- });
- } else {
- console.log('Dropbox error:', e);
- res(new Error(e.toString()));
- }
- });
+ return reject(new Error('Error reading file:' + err.message));
}
- })
- );
+
+ const uploadToDropbox = (dropboxClient: Dropbox) =>
+ dropboxClient
+ .filesUpload({ path: `/Apps/browndash/${path.basename(fileUrl)}`, contents })
+ .then(response =>
+ dropboxClient
+ .filesGetTemporaryLink({ path: response.result.path_display ?? '' })
+ .then(link => resolve(link.result.link))
+ .catch(linkErr => reject(new Error('Failed to get temporary link: ' + linkErr.message)))
+ )
+ .catch(uploadErr => reject(new Error('Failed to upload file to Dropbox: ' + uploadErr.message)));
+
+ uploadToDropbox(dbx).catch(e => {
+ if (user?.dropboxRefresh) {
+ console.log('Attempting to refresh Dropbox token for user:', user.email);
+ this.refreshDropboxToken(user)
+ .then(token => {
+ if (!token) {
+ return reject(new Error('Failed to refresh Dropbox token.' + user.email));
+ }
+
+ const dbxNew = new Dropbox({ accessToken: token });
+ uploadToDropbox(dbxNew).catch(finalErr => reject(new Error('Failed to refresh Dropbox token:' + finalErr.message)));
+ })
+ .catch(refreshErr => reject(new Error('Failed to refresh Dropbox token: ' + refreshErr.message)));
+ } else {
+ reject(new Error('Dropbox error: ' + e.message));
+ }
+ });
+ });
+ });
generateImage = (prompt: string = 'a realistic illustration of a cat coding', width: number = 2048, height: number = 2048, seed?: number) => {
let body = `{ "prompt": "${prompt}", "size": { "width": ${width}, "height": ${height}} }`;
@@ -289,43 +282,36 @@ export default class FireflyManager extends ApiManager {
register({
method: Method.POST,
subscription: '/queryFireflyImageFromStructure',
- secureHandler: ({ req, res }) =>
- new Promise<void>(resolver => {
- (req.body.styleUrl ? this.uploadImageToDropbox(req.body.styleUrl, req.user as DashUserModel) : Promise.resolve(undefined))
- .then(styleUrl => {
- if (styleUrl instanceof Error) {
- _invalid(res, styleUrl.message);
- throw new Error('Error uploading images to dropbox');
- }
- this.uploadImageToDropbox(req.body.structureUrl, req.user as DashUserModel)
- .then(dropboxStructureUrl => {
- if (dropboxStructureUrl instanceof Error) {
- _invalid(res, dropboxStructureUrl.message);
- throw new Error('Error uploading images to dropbox');
- }
- return { styleUrl, structureUrl: dropboxStructureUrl };
- })
- .then(uploads =>
- this.generateImageFromStructure(req.body.prompt, req.body.width, req.body.height, uploads.structureUrl, req.body.strength, req.body.presets, uploads.styleUrl)
- .then(images => {
- Promise.all((images ?? [new Error('no images were generated')]).map(fire => (fire instanceof Error ? fire : DashUploadUtils.UploadImage(fire.url))))
- .then(dashImages => {
- if (dashImages.every(img => img instanceof Error)) _invalid(res, dashImages[0]!.message);
- else _success(res, JSON.stringify(dashImages.filter(img => !(img instanceof Error))));
- })
- .then(resolver);
- })
- .catch(e => {
- _invalid(res, e.message);
- resolver();
- })
- );
- })
- .catch(() => {
- /* do nothing */
- resolver();
- });
- }),
+ secureHandler: ({ req, res }) =>
+ new Promise<void>(resolver =>
+ (req.body.styleUrl
+ ? this.uploadImageToDropbox(req.body.styleUrl, req.user as DashUserModel)
+ : Promise.resolve(undefined)
+ )
+ .then(styleUrl =>
+ this.uploadImageToDropbox(req.body.structureUrl, req.user as DashUserModel)
+ .then(dropboxStructureUrl =>
+ ({ styleUrl, structureUrl: dropboxStructureUrl })
+ )
+
+ )
+ .then(uploads =>
+ this.generateImageFromStructure(
+ req.body.prompt, req.body.width, req.body.height, uploads.structureUrl, req.body.strength, req.body.presets, uploads.styleUrl
+ ).then(images =>
+ Promise.all((images ?? [new Error('no images were generated')]).map(fire => (fire instanceof Error ? fire : DashUploadUtils.UploadImage(fire.url))))
+ .then(dashImages =>
+ (dashImages.every(img => img instanceof Error))
+ ? _invalid(res, dashImages[0]!.message)
+ : _success(res, JSON.stringify(dashImages.filter(img => !(img instanceof Error))))
+ )
+ )
+ )
+ .catch(e => {
+ _invalid(res, e.message);
+ resolver();
+ })
+ ), // prettier-ignore
});
register({
method: Method.POST,
@@ -357,18 +343,18 @@ export default class FireflyManager extends ApiManager {
method: Method.POST,
subscription: '/expandImage',
secureHandler: ({ req, res }) =>
- this.uploadImageToDropbox(req.body.file, req.user as DashUserModel).then(uploadUrl =>
- uploadUrl instanceof Error
- ? _invalid(res, uploadUrl.message)
- : this.expandImage(uploadUrl, req.body.prompt).then(text => {
- if (text.error_code) _error(res, text.message);
- else
- DashUploadUtils.UploadImage(text.outputs[0].image.url).then(info => {
- if (info instanceof Error) _invalid(res, info.message);
- else _success(res, info);
- });
- })
- ),
+ this.uploadImageToDropbox(req.body.file, req.user as DashUserModel)
+ .then(uploadUrl =>
+ this.expandImage(uploadUrl, req.body.prompt).then(text => {
+ if (text.error_code) _error(res, text.message);
+ else
+ DashUploadUtils.UploadImage(text.outputs[0].image.url).then(info => {
+ if (info instanceof Error) _invalid(res, info.message);
+ else _success(res, info);
+ });
+ })
+ )
+ .catch(e => _invalid(res, e.message)),
});
// construct this url and send user to it. It will allow them to authorize their dropbox account and will send the resulting token to our endpoint /refreshDropbox
diff --git a/src/server/DashUploadUtils.ts b/src/server/DashUploadUtils.ts
index ed109d8f7..f76371b0d 100644
--- a/src/server/DashUploadUtils.ts
+++ b/src/server/DashUploadUtils.ts
@@ -221,9 +221,7 @@ export namespace DashUploadUtils {
const parseExifData = async (source: string) => {
const image = await request.get(source, { encoding: null });
const { /* data, */ error } = await new Promise<{ data: ExifData; error: string | undefined }>(resolve => {
- new ExifImage({ image }, (exifError, data) => {
- resolve({ data, error: exifError?.message });
- });
+ new ExifImage({ image }, (exifError, data) => resolve({ data, error: exifError?.message }));
});
return error ? { data: undefined, error } : { data: await exifr.parse(image), error };
};
@@ -295,7 +293,7 @@ export namespace DashUploadUtils {
try {
// Compute the native width and height ofthe image with an npm module
- const { width: nativeWidth, height: nativeHeight } = await requestImageSize(resolvedUrl);
+ const { width: nativeWidth, height: nativeHeight } = await requestImageSize(resolvedUrl).catch(() => ({ width: 0, height: 0 }));
// Bundle up the information into an object
return {
source,
@@ -307,7 +305,6 @@ export namespace DashUploadUtils {
...results,
};
} catch (e: unknown) {
- console.log(e);
return new Error(e ? e.toString?.() : 'unkown error');
}
};