From 768f6a56e900789d5c3452ae910cd4a7e093893e Mon Sep 17 00:00:00 2001 From: Ryan Mathis Date: Tue, 11 May 2021 14:21:21 -0700 Subject: [PATCH] Implemented metadata editor --- ui/package.json | 1 + .../schema/provider/dynamic-http.schema.json | 20 ++---- ui/src/app/App.js | 40 +++++++----- .../app/core/components/UserConfirmation.js | 48 +++++++++++++++ .../component/templates/ArrayFieldTemplate.js | 8 +-- .../form/component/templates/FieldTemplate.js | 46 +++++++------- .../templates/ObjectFieldTemplate.js | 2 +- .../form/component/widgets/OptionWidget.js | 5 +- ui/src/app/metadata/Metadata.js | 3 +- .../component/properties/ArrayProperty.js | 3 - .../domain/source/SourceDefinition.js | 16 ++--- ui/src/app/metadata/editor/MetadataEditor.js | 50 +++++++++++---- .../app/metadata/editor/MetadataEditorForm.js | 61 ++++++++++++++----- .../app/metadata/editor/MetadataEditorNav.js | 4 +- .../app/metadata/hoc/MetadataFormContext.js | 50 +++++++-------- ui/src/app/metadata/hoc/MetadataSelector.js | 15 +++-- ui/src/app/metadata/hooks/schema.js | 11 +++- ui/src/app/metadata/view/MetadataEdit.js | 2 +- ui/yarn.lock | 5 ++ 19 files changed, 252 insertions(+), 138 deletions(-) create mode 100644 ui/src/app/core/components/UserConfirmation.js diff --git a/ui/package.json b/ui/package.json index 056f197ea..d3a2c9833 100644 --- a/ui/package.json +++ b/ui/package.json @@ -14,6 +14,7 @@ "@testing-library/user-event": "^12.1.10", "bootstrap": "^4.6.0", "date-fns": "^2.21.1", + "deep-object-diff": "^1.1.0", "file-saver": "^2.0.5", "http-proxy-middleware": "^1.2.0", "lodash": "^4.17.21", diff --git a/ui/public/assets/schema/provider/dynamic-http.schema.json b/ui/public/assets/schema/provider/dynamic-http.schema.json index e752ad491..5d0d1f428 100644 --- a/ui/public/assets/schema/provider/dynamic-http.schema.json +++ b/ui/public/assets/schema/provider/dynamic-http.schema.json @@ -433,7 +433,7 @@ { "properties": { "requireSignedRoot": { - "enum": [true] + "const": true } }, "required": [ @@ -443,7 +443,7 @@ { "properties": { "requireSignedRoot": { - "enum": [false] + "const": false } } } @@ -468,20 +468,8 @@ "id": "select" }, "type": "string", - "oneOf": [ - { - "enum": [ - "SPSSODescriptor" - ], - "description": "value.spdescriptor" - }, - { - "enum": [ - "AttributeAuthorityDescriptor" - ], - "description": "value.attr-auth-descriptor" - } - ] + "enum": ["SPSSODescriptor", "AttributeAuthorityDescriptor"], + "enumNames": ["value.spdescriptor", "value.attr-auth-descriptor"] } }, "removeRolelessEntityDescriptors": { diff --git a/ui/src/app/App.js b/ui/src/app/App.js index 547f0a45b..c0aefad0a 100644 --- a/ui/src/app/App.js +++ b/ui/src/app/App.js @@ -19,6 +19,9 @@ import { UserProvider } from './core/user/UserContext'; import { Metadata } from './metadata/Metadata'; import { Notifications } from './notifications/hoc/Notifications'; import { NotificationList } from './notifications/component/NotificationList'; +import { UserConfirmation, ConfirmWindow } from './core/components/UserConfirmation'; + + function App() { @@ -38,22 +41,27 @@ function App() { - - -
-
- - - - - - - - -
-