This is an automated email from the ASF dual-hosted git repository.
pefernan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-kogito-apps.git
The following commit(s) were added to refs/heads/main by this push:
new b3ea928e3 kie-issues#526: Fix @kogito-apps/process-form: doesn't
display custom… (#1927)
b3ea928e3 is described below
commit b3ea928e310e7c7a937772afbce65467516e238f
Author: Jozef Marko <[email protected]>
AuthorDate: Wed Dec 20 22:29:28 2023 +0100
kie-issues#526: Fix @kogito-apps/process-form: doesn't display custom…
(#1927)
* kie-issues#526: Fix @kogito-apps/process-form: doesn't display custom
forms.
* Update imports to use 'dist/types'
* Create CustomProcessFormDisplayer component
* Add FormActions
* Move Form* types into common-components
* Merge CustomForm and Form
* remove forms-list from process-form
* use Promise.all
* remove getcustomformlist
* Fix task-console-webapp package
* Fix imports in tests
* Fix forms-list test imports
* Fix imports in form-details
* Fix process-form tests
* processForm__getCustomForm
* Incorporate review feedback
* Use CustomProcessFormDisplayerMock
* Fix task-form Mocks imports
* Fix CustomTaskFormDisplayer
* Fix runtime-tools-dev-ui-webapp
---
.../packages/components-common/src/types/types.ts | 76 +++++++++
.../form-details/src/api/FormDetailsChannelApi.ts | 2 +-
.../form-details/src/api/FormDetailsDriver.ts | 2 +-
.../form-details/src/api/FormDetailsEnvelopeApi.ts | 33 +---
.../src/embedded/EmbeddedFormDetails.tsx | 2 +-
.../src/embedded/FormDetailsChannelApiImpl.ts | 9 +-
.../src/envelope/FormDetailsEnvelopeApiImpl.ts | 9 +-
.../src/envelope/FormDetailsEnvelopeView.tsx | 2 +-
.../src/envelope/FormDetailsEnvelopeViewDriver.ts | 9 +-
.../components/FormDetails/FormDetails.tsx | 3 +-
.../envelope/components/FormEditor/FormEditor.tsx | 2 +-
.../components/contexts/FormDetailsContext.tsx | 2 +-
.../FormDisplayerContainer.tsx | 2 +-
.../FormDisplayerContainer/utils/utils.ts | 2 +-
.../tests/FormDetailsEnvelopeApiImpl.test.tsx | 2 +-
.../tests/mocks/MockedFormDetailsDriver.ts | 3 +-
.../form-displayer/src/api/FormDisplayerApi.ts | 2 +-
.../src/api/FormDisplayerChannelApi.ts | 2 +-
.../src/api/FormDisplayerEnvelopeApi.ts | 2 +-
.../packages/form-displayer/src/api/index.ts | 1 -
.../packages/form-displayer/src/api/types.ts | 87 ----------
.../src/embedded/EmbeddedFormDisplayer.tsx | 6 +-
.../embedded/tests/EmbeddedFormDisplayer.test.tsx | 2 +-
.../src/envelope/FormDisplayerEnvelopeApiImpl.ts | 5 +-
.../src/envelope/FormDisplayerEnvelopeView.tsx | 4 +-
.../components/ErrorBoundary/ErrorBoundary.tsx | 5 +-
.../components/FormDisplayer/FormDisplayer.tsx | 6 +-
.../FormDisplayer/apis/InternalDisplayerApi.ts | 5 +-
.../FormDisplayer/tests/FormDisplayer.test.tsx | 2 +-
.../HtmlFormRenderer/HtmlFormRenderer.tsx | 2 +-
.../ReactFormRenderer/ReactFormRenderer.tsx | 2 +-
.../ResourcesContainer/ResourcesContainer.tsx | 2 +-
.../tests/ResourcesContainer.test.tsx | 2 +-
.../tests/FormDisplayerEnvelopeApiImpl.test.tsx | 7 +-
.../tests/FormDisplayerEnvelopeView.test.tsx | 2 +-
.../forms-list/src/api/FormsListChannelApi.ts | 5 +-
.../packages/forms-list/src/api/FormsListDriver.ts | 5 +-
.../forms-list/src/api/FormsListEnvelopeApi.ts | 22 +--
.../src/embedded/FormsListChannelApiImpl.ts | 6 +-
.../tests/FormsListChannelApiImpl.test.tsx | 3 +-
.../src/envelope/FormsListEnvelopeApiImpl.ts | 3 +-
.../src/envelope/FormsListEnvelopeViewDriver.ts | 6 +-
.../src/envelope/components/FormCard/FormCard.tsx | 2 +-
.../components/FormsGallery/FormsGallery.tsx | 2 +-
.../envelope/components/FormsList/FormsList.tsx | 5 +-
.../FormsListToolbar/FormsListToolbar.tsx | 2 +-
.../components/FormsListUtils/FormsListUtils.tsx | 2 +-
.../FormsListUtils/tests/FormsListUtils.test.tsx | 2 +-
.../envelope/components/FormsTable/FormsTable.tsx | 3 +-
.../tests/FormsListEnvelopeViewDriver.test.ts | 3 +-
.../envelope/tests/mocks/MockedFormsListDriver.ts | 7 +-
ui-packages/packages/process-form/package.json | 4 +-
.../process-form/src/api/ProcessFormChannelApi.ts | 4 +
.../process-form/src/api/ProcessFormDriver.ts | 2 +
.../src/embedded/EmbeddedProcessForm.tsx | 3 +-
.../embedded/EmbeddedProcessFormChannelApiImpl.ts | 7 +
.../EmbeddedProcessForm.test.tsx.snap | 2 +
.../process-form/src/embedded/tests/mocks/Mocks.ts | 1 +
.../src/envelope/ProcessFormEnvelope.tsx | 7 +-
.../src/envelope/ProcessFormEnvelopeView.tsx | 2 +
.../src/envelope/ProcessFormEnvelopeViewDriver.ts | 7 +
.../ProcessForm/CustomProcessFormDisplayer.tsx | 126 +++++++++++++++
.../components/ProcessForm/ProcessForm.tsx | 109 +++++++++----
.../__mocks__/CustomProcessFormDisplayer.tsx} | 8 +-
.../ProcessForm/tests/ProcessForm.test.tsx | 37 ++++-
.../tests/__snapshots__/ProcessForm.test.tsx.snap | 180 +++++++++++++++++++++
.../tests/ProcessFormEnvelopeView.test.tsx | 6 +-
.../ProcessFormEnvelopeView.test.tsx.snap | 4 +
.../process-form/src/envelope/tests/mocks/Mocks.ts | 1 +
.../channel/FormDetails/FormDetailsGatewayApi.ts | 2 +-
.../src/channel/FormsList/FormsListGatewayApi.ts | 5 +-
.../channel/ProcessForm/ProcessFormGatewayApi.ts | 8 +-
.../src/channel/TaskForms/TaskFormGatewayApi.ts | 8 +-
.../src/channel/apis/apis.tsx | 29 +++-
.../src/channel/apis/tests/apis.test.tsx | 3 +-
.../FormDetailsContainer/FormDetailsContainer.tsx | 9 +-
.../tests/FormDetailsContainer.test.tsx | 4 +-
.../FormsListContainer/FormsListContainer.tsx | 3 +-
.../ProcessFormContainer/ProcessFormContainer.tsx | 4 +
.../TaskFormContainer/TaskFormContainer.tsx | 5 +-
.../pages/FormDetailsPage/FormDetailsPage.tsx | 2 +-
.../src/resources/form-displayer.ts | 2 +-
.../src/channel/forms/TaskFormGatewayApi.ts | 6 +-
.../TaskFormContainer/TaskFormContainer.tsx | 5 +-
.../task-form/src/api/TaskFormChannelApi.ts | 4 +-
.../packages/task-form/src/api/TaskFormDriver.ts | 4 +-
.../src/embedded/EmbeddedTaskFormChannelApiImpl.ts | 4 +-
.../src/envelope/TaskFormEnvelopeView.tsx | 4 +-
.../src/envelope/TaskFormEnvelopeViewDriver.ts | 4 +-
.../CustomTaskFormDisplayer.tsx | 12 +-
.../tests/CustomTaskFormDisplayer.test.tsx | 12 +-
.../task-form/src/envelope/tests/mocks/Mocks.ts | 4 +-
ui-packages/packages/task-form/src/index.ts | 1 -
ui-packages/packages/task-form/src/types/types.ts | 44 -----
ui-packages/pnpm-lock.yaml | 6 +
95 files changed, 746 insertions(+), 342 deletions(-)
diff --git a/ui-packages/packages/components-common/src/types/types.ts
b/ui-packages/packages/components-common/src/types/types.ts
index 3dc52a269..12c7ea2b3 100644
--- a/ui-packages/packages/components-common/src/types/types.ts
+++ b/ui-packages/packages/components-common/src/types/types.ts
@@ -23,3 +23,79 @@ export enum SCHEMA_VERSION {
export interface FormRendererApi {
doReset: () => void;
}
+
+export interface FormFilter {
+ formNames: string[];
+}
+
+export enum FormType {
+ HTML = 'HTML',
+ TSX = 'TSX'
+}
+
+export type FormInfo = {
+ type: FormType;
+ name: string;
+ lastModified: Date;
+};
+
+export type FormConfiguration = {
+ resources: FormResources;
+ schema: string;
+};
+
+export type FormResources = {
+ scripts: Record<string, string>;
+ styles: Record<string, string>;
+};
+
+export interface FormDisplayerInitArgs {
+ form: Form;
+ data?: any;
+ context?: Record<string, any>;
+}
+
+export type FormSubmitContext = {
+ params?: Record<string, string>;
+};
+
+export enum FormOpenedState {
+ OPENED = 'opened',
+ ERROR = 'error'
+}
+
+export type FormOpened = {
+ state: FormOpenedState;
+ size: FormSize;
+};
+
+export type FormSize = {
+ width: number;
+ height: number;
+};
+
+export enum FormSubmitResponseType {
+ SUCCESS = 'success',
+ FAILURE = 'failure'
+}
+
+export type FormSubmitResponse = {
+ type: FormSubmitResponseType;
+ info: any;
+};
+
+export interface Association {
+ origin: string;
+ envelopeServerId: string;
+}
+
+export interface Form {
+ formInfo: FormInfo;
+ source: string;
+ configuration: FormConfiguration;
+}
+
+export interface FormContent {
+ source: string;
+ configuration: FormConfiguration;
+}
diff --git a/ui-packages/packages/form-details/src/api/FormDetailsChannelApi.ts
b/ui-packages/packages/form-details/src/api/FormDetailsChannelApi.ts
index 626d9c47a..539d1765a 100755
--- a/ui-packages/packages/form-details/src/api/FormDetailsChannelApi.ts
+++ b/ui-packages/packages/form-details/src/api/FormDetailsChannelApi.ts
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { Form, FormContent } from './FormDetailsEnvelopeApi';
+import { Form, FormContent } from '@kogito-apps/components-common/dist/types';
/**
* Channel Api for Forms Details
diff --git a/ui-packages/packages/form-details/src/api/FormDetailsDriver.ts
b/ui-packages/packages/form-details/src/api/FormDetailsDriver.ts
index d8e3e953e..b64b70b3e 100755
--- a/ui-packages/packages/form-details/src/api/FormDetailsDriver.ts
+++ b/ui-packages/packages/form-details/src/api/FormDetailsDriver.ts
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { Form, FormContent } from './FormDetailsEnvelopeApi';
+import { Form, FormContent } from '@kogito-apps/components-common/dist/types';
/**
* Interface that defines a Driver for FormDetails views.
diff --git
a/ui-packages/packages/form-details/src/api/FormDetailsEnvelopeApi.ts
b/ui-packages/packages/form-details/src/api/FormDetailsEnvelopeApi.ts
index c198b4008..7648333f5 100755
--- a/ui-packages/packages/form-details/src/api/FormDetailsEnvelopeApi.ts
+++ b/ui-packages/packages/form-details/src/api/FormDetailsEnvelopeApi.ts
@@ -16,7 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { FormInfo } from '@kogito-apps/forms-list';
+import {
+ Association,
+ FormInfo
+} from '@kogito-apps/components-common/dist/types';
/**
* Envelope Api
@@ -31,31 +34,3 @@ export interface FormDetailsEnvelopeApi {
formData: FormInfo
): Promise<void>;
}
-
-export interface Association {
- origin: string;
- envelopeServerId: string;
-}
-
-export interface FormResources {
- scripts: {
- [key: string]: string;
- };
- styles: {
- [key: string]: string;
- };
-}
-interface FormConfiguration {
- schema: string;
- resources: FormResources;
-}
-export interface Form {
- formInfo: FormInfo;
- source: string;
- configuration: FormConfiguration;
-}
-
-export interface FormContent {
- source: string;
- configuration: FormConfiguration;
-}
diff --git
a/ui-packages/packages/form-details/src/embedded/EmbeddedFormDetails.tsx
b/ui-packages/packages/form-details/src/embedded/EmbeddedFormDetails.tsx
index 160bee3ca..3817b7734 100755
--- a/ui-packages/packages/form-details/src/embedded/EmbeddedFormDetails.tsx
+++ b/ui-packages/packages/form-details/src/embedded/EmbeddedFormDetails.tsx
@@ -29,7 +29,7 @@ import {
FormDetailsDriver
} from '../api';
import { FormDetailsChannelApiImpl } from './FormDetailsChannelApiImpl';
-import { FormInfo } from '@kogito-apps/forms-list';
+import { FormInfo } from '@kogito-apps/components-common/dist/types';
import { ContainerType } from '@kie-tools-core/envelope/dist/api';
import { init } from '../envelope';
export interface Props {
diff --git
a/ui-packages/packages/form-details/src/embedded/FormDetailsChannelApiImpl.ts
b/ui-packages/packages/form-details/src/embedded/FormDetailsChannelApiImpl.ts
index 083901822..f40d514e9 100644
---
a/ui-packages/packages/form-details/src/embedded/FormDetailsChannelApiImpl.ts
+++
b/ui-packages/packages/form-details/src/embedded/FormDetailsChannelApiImpl.ts
@@ -16,12 +16,9 @@
* specific language governing permissions and limitations
* under the License.
*/
-import {
- FormDetailsDriver,
- FormDetailsChannelApi,
- Form,
- FormContent
-} from '../api';
+import { FormDetailsDriver, FormDetailsChannelApi } from '../api';
+
+import { Form, FormContent } from '@kogito-apps/components-common/dist/types';
/**
* Implementation of the TaskInboxChannelApi delegating to a TaskInboxDriver
diff --git
a/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeApiImpl.ts
b/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeApiImpl.ts
index a66dba607..0714e1a23 100755
---
a/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeApiImpl.ts
+++
b/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeApiImpl.ts
@@ -18,13 +18,12 @@
*/
import { EnvelopeApiFactoryArgs } from '@kie-tools-core/envelope';
import { FormDetailsEnvelopeViewApi } from './FormDetailsEnvelopeView';
+import { FormDetailsChannelApi, FormDetailsEnvelopeApi } from '../api';
+import { FormDetailsEnvelopeContext } from './FormDetailsEnvelopeContext';
import {
Association,
- FormDetailsChannelApi,
- FormDetailsEnvelopeApi
-} from '../api';
-import { FormDetailsEnvelopeContext } from './FormDetailsEnvelopeContext';
-import { FormInfo } from '@kogito-apps/forms-list';
+ FormInfo
+} from '@kogito-apps/components-common/dist/types';
/**
* Implementation of the FormDetailsEnvelopeApi
diff --git
a/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeView.tsx
b/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeView.tsx
index e1b05b2fb..e04ae677e 100755
--- a/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeView.tsx
+++ b/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeView.tsx
@@ -22,7 +22,7 @@ import { FormDetailsChannelApi } from '../api';
import FormDetails from './components/FormDetails/FormDetails';
import FormDetailsEnvelopeViewDriver from './FormDetailsEnvelopeViewDriver';
import '@patternfly/patternfly/patternfly.css';
-import { FormInfo } from '@kogito-apps/forms-list';
+import { FormInfo } from '@kogito-apps/components-common/dist/types';
import FormDetailsContextProvider from
'./components/contexts/FormDetailsContextProvider';
export interface FormDetailsEnvelopeViewApi {
diff --git
a/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeViewDriver.ts
b/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeViewDriver.ts
index 1b406f255..e461fdb74 100644
---
a/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeViewDriver.ts
+++
b/ui-packages/packages/form-details/src/envelope/FormDetailsEnvelopeViewDriver.ts
@@ -17,12 +17,9 @@
* under the License.
*/
import { MessageBusClientApi } from '@kie-tools-core/envelope-bus/dist/api';
-import {
- Form,
- FormContent,
- FormDetailsChannelApi,
- FormDetailsDriver
-} from '../api';
+import { FormDetailsChannelApi, FormDetailsDriver } from '../api';
+
+import { Form, FormContent } from '@kogito-apps/components-common/dist/types';
/**
* Implementation of FormDetailsDriver that delegates calls to the channel Api
diff --git
a/ui-packages/packages/form-details/src/envelope/components/FormDetails/FormDetails.tsx
b/ui-packages/packages/form-details/src/envelope/components/FormDetails/FormDetails.tsx
index 3b06ea71a..7c41b20f9 100755
---
a/ui-packages/packages/form-details/src/envelope/components/FormDetails/FormDetails.tsx
+++
b/ui-packages/packages/form-details/src/envelope/components/FormDetails/FormDetails.tsx
@@ -22,7 +22,6 @@ import {
componentOuiaProps
} from '@kogito-apps/ouia-tools/dist/utils/OuiaUtils';
import { FormDetailsDriver } from '../../../api/FormDetailsDriver';
-import { FormInfo } from '@kogito-apps/forms-list';
import { Card } from '@patternfly/react-core/dist/js/components/Card';
import {
Drawer,
@@ -40,7 +39,7 @@ import FormEditor from '../FormEditor/FormEditor';
import { KogitoSpinner } from
'@kogito-apps/components-common/dist/components/KogitoSpinner';
import { ServerErrors } from
'@kogito-apps/components-common/dist/components/ServerErrors';
import isEmpty from 'lodash/isEmpty';
-import { Form } from '../../../api';
+import { Form, FormInfo } from '@kogito-apps/components-common/dist/types';
import FormDisplayerContainer from
'../../containers/FormDisplayerContainer/FormDisplayerContainer';
export interface FormDetailsProps {
diff --git
a/ui-packages/packages/form-details/src/envelope/components/FormEditor/FormEditor.tsx
b/ui-packages/packages/form-details/src/envelope/components/FormEditor/FormEditor.tsx
index ec125d8a4..21a2c55c1 100644
---
a/ui-packages/packages/form-details/src/envelope/components/FormEditor/FormEditor.tsx
+++
b/ui-packages/packages/form-details/src/envelope/components/FormEditor/FormEditor.tsx
@@ -30,7 +30,7 @@ import { UndoIcon } from
'@patternfly/react-icons/dist/js/icons/undo-icon';
import { SaveIcon } from '@patternfly/react-icons/dist/js/icons/save-icon';
import { RedoIcon } from '@patternfly/react-icons/dist/js/icons/redo-icon';
import { PlayIcon } from '@patternfly/react-icons/dist/js/icons/play-icon';
-import { Form } from '../../../api';
+import { Form } from '@kogito-apps/components-common/dist/types';
import { useFormDetailsContext } from '../contexts/FormDetailsContext';
import { ResizableContent } from '../FormDetails/FormDetails';
import cloneDeep from 'lodash/cloneDeep';
diff --git
a/ui-packages/packages/form-details/src/envelope/components/contexts/FormDetailsContext.tsx
b/ui-packages/packages/form-details/src/envelope/components/contexts/FormDetailsContext.tsx
index c40c64986..72ad21d6c 100644
---
a/ui-packages/packages/form-details/src/envelope/components/contexts/FormDetailsContext.tsx
+++
b/ui-packages/packages/form-details/src/envelope/components/contexts/FormDetailsContext.tsx
@@ -17,7 +17,7 @@
* under the License.
*/
import React, { useContext } from 'react';
-import { Form } from '../../../api';
+import { Form } from '@kogito-apps/components-common/dist/types';
export interface FormDetailsContext {
updateContent(formContent: Form): void;
diff --git
a/ui-packages/packages/form-details/src/envelope/containers/FormDisplayerContainer/FormDisplayerContainer.tsx
b/ui-packages/packages/form-details/src/envelope/containers/FormDisplayerContainer/FormDisplayerContainer.tsx
index 5f9e42750..7b9c5ff92 100644
---
a/ui-packages/packages/form-details/src/envelope/containers/FormDisplayerContainer/FormDisplayerContainer.tsx
+++
b/ui-packages/packages/form-details/src/envelope/containers/FormDisplayerContainer/FormDisplayerContainer.tsx
@@ -22,7 +22,7 @@ import {
EmbeddedFormDisplayer,
FormDisplayerApi
} from '@kogito-apps/form-displayer';
-import { Form } from '../../../api';
+import { Form } from '@kogito-apps/components-common/dist/types';
import { useFormDetailsContext } from
'../../components/contexts/FormDetailsContext';
import { buildTestContext } from './utils/utils';
diff --git
a/ui-packages/packages/form-details/src/envelope/containers/FormDisplayerContainer/utils/utils.ts
b/ui-packages/packages/form-details/src/envelope/containers/FormDisplayerContainer/utils/utils.ts
index e8ff0c35b..ed3682603 100644
---
a/ui-packages/packages/form-details/src/envelope/containers/FormDisplayerContainer/utils/utils.ts
+++
b/ui-packages/packages/form-details/src/envelope/containers/FormDisplayerContainer/utils/utils.ts
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { Form } from '../../../../api';
+import { Form } from '@kogito-apps/components-common/dist/types';
import uuidv4 from 'uuid';
diff --git
a/ui-packages/packages/form-details/src/envelope/tests/FormDetailsEnvelopeApiImpl.test.tsx
b/ui-packages/packages/form-details/src/envelope/tests/FormDetailsEnvelopeApiImpl.test.tsx
index fc1a21b44..bec61c9e1 100644
---
a/ui-packages/packages/form-details/src/envelope/tests/FormDetailsEnvelopeApiImpl.test.tsx
+++
b/ui-packages/packages/form-details/src/envelope/tests/FormDetailsEnvelopeApiImpl.test.tsx
@@ -20,7 +20,7 @@ import {
MockedEnvelopeClient,
MockedFormDetailsEnvelopeViewApi
} from './mocks/Mocks';
-import { FormType } from '@kogito-apps/forms-list';
+import { FormType } from '@kogito-apps/components-common/dist';
import { EnvelopeApiFactoryArgs } from '@kie-tools-core/envelope';
import { FormDetailsChannelApi, FormDetailsEnvelopeApi } from '../../api';
import { FormDetailsEnvelopeApiImpl } from '../FormDetailsEnvelopeApiImpl';
diff --git
a/ui-packages/packages/form-details/src/envelope/tests/mocks/MockedFormDetailsDriver.ts
b/ui-packages/packages/form-details/src/envelope/tests/mocks/MockedFormDetailsDriver.ts
index 2fec5216c..7aabc5ca5 100755
---
a/ui-packages/packages/form-details/src/envelope/tests/mocks/MockedFormDetailsDriver.ts
+++
b/ui-packages/packages/form-details/src/envelope/tests/mocks/MockedFormDetailsDriver.ts
@@ -16,7 +16,8 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { Form, FormContent, FormDetailsDriver } from '../../../api';
+import { FormDetailsDriver } from '../../../api';
+import { Form, FormContent } from '@kogito-apps/components-common/dist';
export const formContent: Form = {
formInfo: {
diff --git a/ui-packages/packages/form-displayer/src/api/FormDisplayerApi.ts
b/ui-packages/packages/form-displayer/src/api/FormDisplayerApi.ts
index a8e213eaf..1cf408288 100644
--- a/ui-packages/packages/form-displayer/src/api/FormDisplayerApi.ts
+++ b/ui-packages/packages/form-displayer/src/api/FormDisplayerApi.ts
@@ -20,7 +20,7 @@ import {
FormDisplayerInitArgs,
FormSubmitContext,
FormSubmitResponse
-} from './types';
+} from '@kogito-apps/components-common/dist/types';
export interface FormDisplayerApi {
init: (args: FormDisplayerInitArgs) => void;
diff --git
a/ui-packages/packages/form-displayer/src/api/FormDisplayerChannelApi.ts
b/ui-packages/packages/form-displayer/src/api/FormDisplayerChannelApi.ts
index 3d220dbb3..fe1dabba0 100644
--- a/ui-packages/packages/form-displayer/src/api/FormDisplayerChannelApi.ts
+++ b/ui-packages/packages/form-displayer/src/api/FormDisplayerChannelApi.ts
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { FormOpened } from './types';
+import { FormOpened } from '@kogito-apps/components-common/dist/types';
export interface FormDisplayerChannelApi {
notifyOnOpenForm: (opened: FormOpened) => void;
diff --git
a/ui-packages/packages/form-displayer/src/api/FormDisplayerEnvelopeApi.ts
b/ui-packages/packages/form-displayer/src/api/FormDisplayerEnvelopeApi.ts
index 785f15f51..2ff517670 100644
--- a/ui-packages/packages/form-displayer/src/api/FormDisplayerEnvelopeApi.ts
+++ b/ui-packages/packages/form-displayer/src/api/FormDisplayerEnvelopeApi.ts
@@ -21,7 +21,7 @@ import {
FormDisplayerInitArgs,
FormSubmitContext,
FormSubmitResponse
-} from './types';
+} from '@kogito-apps/components-common/dist/types';
export interface FormDisplayerEnvelopeApi {
formDisplayer__init(
diff --git a/ui-packages/packages/form-displayer/src/api/index.ts
b/ui-packages/packages/form-displayer/src/api/index.ts
index 828ccc494..2d8f12557 100644
--- a/ui-packages/packages/form-displayer/src/api/index.ts
+++ b/ui-packages/packages/form-displayer/src/api/index.ts
@@ -16,7 +16,6 @@
* specific language governing permissions and limitations
* under the License.
*/
-export * from './types';
export * from './FormDisplayerApi';
export * from './FormDisplayerChannelApi';
export * from './FormDisplayerEnvelopeApi';
diff --git a/ui-packages/packages/form-displayer/src/api/types.ts
b/ui-packages/packages/form-displayer/src/api/types.ts
deleted file mode 100644
index 2da27ecbd..000000000
--- a/ui-packages/packages/form-displayer/src/api/types.ts
+++ /dev/null
@@ -1,87 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-export interface FormDisplayerInitArgs {
- form: Form;
- data?: any;
- context?: Record<string, any>;
-}
-
-export type FormSubmitContext = {
- params?: Record<string, string>;
-};
-
-export enum FormOpenedState {
- OPENED = 'opened',
- ERROR = 'error'
-}
-
-export type FormOpened = {
- state: FormOpenedState;
- size: FormSize;
-};
-
-export type FormSize = {
- width: number;
- height: number;
-};
-
-export enum FormSubmitResponseType {
- SUCCESS = 'success',
- FAILURE = 'failure'
-}
-
-export type FormSubmitResponse = {
- type: FormSubmitResponseType;
- info: any;
-};
-
-export interface Association {
- origin: string;
- envelopeServerId: string;
-}
-
-export interface FormResources {
- scripts: {
- [key: string]: string;
- };
- styles: {
- [key: string]: string;
- };
-}
-interface FormConfiguration {
- schema: string;
- resources: FormResources;
-}
-
-export interface Form {
- formInfo: FormInfo;
- source: string;
- configuration: FormConfiguration;
-}
-
-export enum FormType {
- HTML = 'HTML',
- TSX = 'TSX'
-}
-
-export interface FormInfo {
- name: string;
- type: FormType;
- lastModified: Date;
-}
diff --git
a/ui-packages/packages/form-displayer/src/embedded/EmbeddedFormDisplayer.tsx
b/ui-packages/packages/form-displayer/src/embedded/EmbeddedFormDisplayer.tsx
index fe4864cb9..f4d02b422 100644
--- a/ui-packages/packages/form-displayer/src/embedded/EmbeddedFormDisplayer.tsx
+++ b/ui-packages/packages/form-displayer/src/embedded/EmbeddedFormDisplayer.tsx
@@ -20,11 +20,13 @@ import React, { useCallback } from 'react';
import {
FormDisplayerApi,
FormDisplayerChannelApi,
- FormDisplayerEnvelopeApi,
+ FormDisplayerEnvelopeApi
+} from '../api';
+import {
Form,
FormDisplayerInitArgs,
FormOpened
-} from '../api';
+} from '@kogito-apps/components-common/dist/types';
import { ContainerType } from '@kie-tools-core/envelope/dist/api';
import { EnvelopeServer } from '@kie-tools-core/envelope-bus/dist/channel';
import {
diff --git
a/ui-packages/packages/form-displayer/src/embedded/tests/EmbeddedFormDisplayer.test.tsx
b/ui-packages/packages/form-displayer/src/embedded/tests/EmbeddedFormDisplayer.test.tsx
index d8694fde0..387000bbe 100644
---
a/ui-packages/packages/form-displayer/src/embedded/tests/EmbeddedFormDisplayer.test.tsx
+++
b/ui-packages/packages/form-displayer/src/embedded/tests/EmbeddedFormDisplayer.test.tsx
@@ -19,7 +19,7 @@
import React from 'react';
import { EmbeddedFormDisplayer } from '../EmbeddedFormDisplayer';
import { mount } from 'enzyme';
-import { FormType } from '../../api';
+import { FormType } from '@kogito-apps/components-common/dist';
describe('EmbeddedFormDisplayer tests', () => {
it('Snapshot', () => {
diff --git
a/ui-packages/packages/form-displayer/src/envelope/FormDisplayerEnvelopeApiImpl.ts
b/ui-packages/packages/form-displayer/src/envelope/FormDisplayerEnvelopeApiImpl.ts
index 6180def89..3530cfa48 100644
---
a/ui-packages/packages/form-displayer/src/envelope/FormDisplayerEnvelopeApiImpl.ts
+++
b/ui-packages/packages/form-displayer/src/envelope/FormDisplayerEnvelopeApiImpl.ts
@@ -17,14 +17,13 @@
* under the License.
*/
import { EnvelopeApiFactoryArgs } from '@kie-tools-core/envelope';
+import { FormDisplayerChannelApi, FormDisplayerEnvelopeApi } from '../api';
import {
Association,
- FormDisplayerChannelApi,
- FormDisplayerEnvelopeApi,
FormDisplayerInitArgs,
FormSubmitContext,
FormSubmitResponse
-} from '../api';
+} from '@kogito-apps/components-common/dist/types';
import { FormDisplayerEnvelopeViewApi } from './FormDisplayerEnvelopeView';
import { FormDisplayerEnvelopeContext } from './FormDisplayerEnvelopeContext';
import isEmpty from 'lodash/isEmpty';
diff --git
a/ui-packages/packages/form-displayer/src/envelope/FormDisplayerEnvelopeView.tsx
b/ui-packages/packages/form-displayer/src/envelope/FormDisplayerEnvelopeView.tsx
index 7423d79ee..282c0a3c7 100644
---
a/ui-packages/packages/form-displayer/src/envelope/FormDisplayerEnvelopeView.tsx
+++
b/ui-packages/packages/form-displayer/src/envelope/FormDisplayerEnvelopeView.tsx
@@ -19,14 +19,14 @@
import * as React from 'react';
import { useImperativeHandle, useRef, useState } from 'react';
import isEmpty from 'lodash/isEmpty';
+import { FormDisplayerChannelApi } from '../api';
import {
- FormDisplayerChannelApi,
Form,
FormSubmitContext,
FormSubmitResponse,
FormDisplayerInitArgs,
FormOpened
-} from '../api';
+} from '@kogito-apps/components-common/dist/types';
import { EmbeddedFormApi } from './components/FormDisplayer/apis';
import { MessageBusClientApi } from '@kie-tools-core/envelope-bus/dist/api';
import FormDisplayer from './components/FormDisplayer/FormDisplayer';
diff --git
a/ui-packages/packages/form-displayer/src/envelope/components/ErrorBoundary/ErrorBoundary.tsx
b/ui-packages/packages/form-displayer/src/envelope/components/ErrorBoundary/ErrorBoundary.tsx
index f3e82d7f7..fa36f95ce 100644
---
a/ui-packages/packages/form-displayer/src/envelope/components/ErrorBoundary/ErrorBoundary.tsx
+++
b/ui-packages/packages/form-displayer/src/envelope/components/ErrorBoundary/ErrorBoundary.tsx
@@ -18,7 +18,10 @@
*/
import React, { ErrorInfo } from 'react';
import FormErrorsWrapper from '../FormErrorsWrapper/FormErrorsWrapper';
-import { FormOpened, FormOpenedState } from '../../../api';
+import {
+ FormOpened,
+ FormOpenedState
+} from '@kogito-apps/components-common/dist/types';
interface ErrorBoundaryProps {
children: React.ReactElement;
diff --git
a/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/FormDisplayer.tsx
b/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/FormDisplayer.tsx
index 6850cad82..efb354eaa 100644
---
a/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/FormDisplayer.tsx
+++
b/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/FormDisplayer.tsx
@@ -28,7 +28,11 @@ import {
OUIAProps
} from '@kogito-apps/ouia-tools/dist/utils/OuiaUtils';
import { BallBeat } from 'react-pure-loaders';
-import { Form, FormOpened, FormOpenedState } from '../../../api';
+import {
+ Form,
+ FormOpened,
+ FormOpenedState
+} from '@kogito-apps/components-common/dist/types';
import ReactFormRenderer from '../ReactFormRenderer/ReactFormRenderer';
import HtmlFormRenderer from '../HtmlFormRenderer/HtmlFormRenderer';
import '../styles.css';
diff --git
a/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/apis/InternalDisplayerApi.ts
b/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/apis/InternalDisplayerApi.ts
index 6829d0321..a6fc76ec4 100644
---
a/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/apis/InternalDisplayerApi.ts
+++
b/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/apis/InternalDisplayerApi.ts
@@ -16,7 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { FormSubmitContext, FormSubmitResponse } from '../../../../api';
+import {
+ FormSubmitContext,
+ FormSubmitResponse
+} from '@kogito-apps/components-common/dist/types';
declare global {
interface Window {
diff --git
a/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/tests/FormDisplayer.test.tsx
b/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/tests/FormDisplayer.test.tsx
index 36aa79684..2b95e987b 100644
---
a/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/tests/FormDisplayer.test.tsx
+++
b/ui-packages/packages/form-displayer/src/envelope/components/FormDisplayer/tests/FormDisplayer.test.tsx
@@ -19,7 +19,7 @@
import React from 'react';
import { mount } from 'enzyme';
import FormDisplayer from '../FormDisplayer';
-import { FormType, Form } from '../../../../api';
+import { FormType, Form } from '@kogito-apps/components-common/dist';
import HtmlFormRenderer from '../../HtmlFormRenderer/HtmlFormRenderer';
import ReactFormRenderer from '../../ReactFormRenderer/ReactFormRenderer';
import { Bullseye } from '@patternfly/react-core/dist/js/layouts/Bullseye';
diff --git
a/ui-packages/packages/form-displayer/src/envelope/components/HtmlFormRenderer/HtmlFormRenderer.tsx
b/ui-packages/packages/form-displayer/src/envelope/components/HtmlFormRenderer/HtmlFormRenderer.tsx
index abec8075c..ebb795a15 100644
---
a/ui-packages/packages/form-displayer/src/envelope/components/HtmlFormRenderer/HtmlFormRenderer.tsx
+++
b/ui-packages/packages/form-displayer/src/envelope/components/HtmlFormRenderer/HtmlFormRenderer.tsx
@@ -18,7 +18,7 @@
*/
import React from 'react';
import InnerHTML from 'dangerously-set-html-content';
-import { FormResources } from '../../../api';
+import { FormResources } from '@kogito-apps/components-common/dist/types';
import ResourcesContainer from '../ResourcesContainer/ResourcesContainer';
interface HtmlFormRendererProps {
diff --git
a/ui-packages/packages/form-displayer/src/envelope/components/ReactFormRenderer/ReactFormRenderer.tsx
b/ui-packages/packages/form-displayer/src/envelope/components/ReactFormRenderer/ReactFormRenderer.tsx
index c6bde0fbc..3d358522d 100644
---
a/ui-packages/packages/form-displayer/src/envelope/components/ReactFormRenderer/ReactFormRenderer.tsx
+++
b/ui-packages/packages/form-displayer/src/envelope/components/ReactFormRenderer/ReactFormRenderer.tsx
@@ -21,7 +21,7 @@ import uuidv4 from 'uuid';
import * as Babel from '@babel/standalone';
import ReactDOM from 'react-dom';
import * as Patternfly from '@patternfly/react-core';
-import { FormResources } from '../../../api';
+import { FormResources } from '@kogito-apps/components-common/dist/types';
import { sourceHandler } from '../../../utils';
import ResourcesContainer from '../ResourcesContainer/ResourcesContainer';
diff --git
a/ui-packages/packages/form-displayer/src/envelope/components/ResourcesContainer/ResourcesContainer.tsx
b/ui-packages/packages/form-displayer/src/envelope/components/ResourcesContainer/ResourcesContainer.tsx
index 63505558b..9aafc78c4 100644
---
a/ui-packages/packages/form-displayer/src/envelope/components/ResourcesContainer/ResourcesContainer.tsx
+++
b/ui-packages/packages/form-displayer/src/envelope/components/ResourcesContainer/ResourcesContainer.tsx
@@ -18,7 +18,7 @@
*/
import React, { ReactElement } from 'react';
import { Helmet } from 'react-helmet';
-import { FormResources } from '../../../api';
+import { FormResources } from '@kogito-apps/components-common/dist/types';
interface ResourcesContainerProps {
resources: FormResources;
diff --git
a/ui-packages/packages/form-displayer/src/envelope/components/ResourcesContainer/tests/ResourcesContainer.test.tsx
b/ui-packages/packages/form-displayer/src/envelope/components/ResourcesContainer/tests/ResourcesContainer.test.tsx
index 1804d3acf..1144c4fbf 100644
---
a/ui-packages/packages/form-displayer/src/envelope/components/ResourcesContainer/tests/ResourcesContainer.test.tsx
+++
b/ui-packages/packages/form-displayer/src/envelope/components/ResourcesContainer/tests/ResourcesContainer.test.tsx
@@ -20,7 +20,7 @@ import React from 'react';
import { mount } from 'enzyme';
import { Helmet } from 'react-helmet';
import ResourcesContainer from '../ResourcesContainer';
-import { FormResources } from '../../../../api';
+import { FormResources } from '@kogito-apps/components-common/dist';
const getWrapper = (resources: FormResources) => {
return mount(<ResourcesContainer resources={resources} />);
diff --git
a/ui-packages/packages/form-displayer/src/envelope/tests/FormDisplayerEnvelopeApiImpl.test.tsx
b/ui-packages/packages/form-displayer/src/envelope/tests/FormDisplayerEnvelopeApiImpl.test.tsx
index a682c4f34..2e83d6fce 100644
---
a/ui-packages/packages/form-displayer/src/envelope/tests/FormDisplayerEnvelopeApiImpl.test.tsx
+++
b/ui-packages/packages/form-displayer/src/envelope/tests/FormDisplayerEnvelopeApiImpl.test.tsx
@@ -21,11 +21,8 @@ import {
MockedFormDisplayerEnvelopeViewApi
} from './mocks/Mocks';
import { EnvelopeApiFactoryArgs } from '@kie-tools-core/envelope';
-import {
- FormDisplayerChannelApi,
- FormDisplayerEnvelopeApi,
- FormType
-} from '../../api';
+import { FormDisplayerChannelApi, FormDisplayerEnvelopeApi } from '../../api';
+import { FormType } from '@kogito-apps/components-common/dist';
import { FormDisplayerEnvelopeApiImpl } from '../FormDisplayerEnvelopeApiImpl';
import { FormDisplayerEnvelopeViewApi } from '../FormDisplayerEnvelopeView';
import { FormDisplayerEnvelopeContext } from '../FormDisplayerEnvelopeContext';
diff --git
a/ui-packages/packages/form-displayer/src/envelope/tests/FormDisplayerEnvelopeView.test.tsx
b/ui-packages/packages/form-displayer/src/envelope/tests/FormDisplayerEnvelopeView.test.tsx
index e36e4bc5c..efe0a04aa 100644
---
a/ui-packages/packages/form-displayer/src/envelope/tests/FormDisplayerEnvelopeView.test.tsx
+++
b/ui-packages/packages/form-displayer/src/envelope/tests/FormDisplayerEnvelopeView.test.tsx
@@ -25,7 +25,7 @@ import {
FormDisplayerEnvelopeView,
FormDisplayerEnvelopeViewApi
} from '../FormDisplayerEnvelopeView';
-import { FormType } from '../../api';
+import { FormType } from '@kogito-apps/components-common/dist';
import ErrorBoundary from '../components/ErrorBoundary/ErrorBoundary';
jest.mock('../components/FormDisplayer/FormDisplayer');
diff --git a/ui-packages/packages/forms-list/src/api/FormsListChannelApi.ts
b/ui-packages/packages/forms-list/src/api/FormsListChannelApi.ts
index c69152b9d..8c89e6ccf 100755
--- a/ui-packages/packages/forms-list/src/api/FormsListChannelApi.ts
+++ b/ui-packages/packages/forms-list/src/api/FormsListChannelApi.ts
@@ -16,7 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { FormFilter, FormInfo } from './FormsListEnvelopeApi';
+import {
+ FormFilter,
+ FormInfo
+} from '@kogito-apps/components-common/dist/types';
/**
* Channel Api for Forms List
*/
diff --git a/ui-packages/packages/forms-list/src/api/FormsListDriver.ts
b/ui-packages/packages/forms-list/src/api/FormsListDriver.ts
index 169d452a0..64c1791de 100755
--- a/ui-packages/packages/forms-list/src/api/FormsListDriver.ts
+++ b/ui-packages/packages/forms-list/src/api/FormsListDriver.ts
@@ -16,7 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { FormFilter, FormInfo } from './FormsListEnvelopeApi';
+import {
+ FormFilter,
+ FormInfo
+} from '@kogito-apps/components-common/dist/types';
/**
* Interface that defines a Driver for FormsList views.
diff --git a/ui-packages/packages/forms-list/src/api/FormsListEnvelopeApi.ts
b/ui-packages/packages/forms-list/src/api/FormsListEnvelopeApi.ts
index 337f6f2f1..b1290b04d 100755
--- a/ui-packages/packages/forms-list/src/api/FormsListEnvelopeApi.ts
+++ b/ui-packages/packages/forms-list/src/api/FormsListEnvelopeApi.ts
@@ -19,6 +19,8 @@
/**
* Envelope Api
*/
+
+import { Association } from 'packages/components-common/dist/types';
export interface FormsListEnvelopeApi {
/**
* Initializes the envelope.
@@ -26,23 +28,3 @@ export interface FormsListEnvelopeApi {
*/
formsList__init(association: Association): Promise<void>;
}
-
-export interface Association {
- origin: string;
- envelopeServerId: string;
-}
-
-export interface FormFilter {
- formNames: string[];
-}
-
-export enum FormType {
- HTML = 'HTML',
- TSX = 'TSX'
-}
-
-export interface FormInfo {
- name: string;
- type: FormType;
- lastModified: Date;
-}
diff --git
a/ui-packages/packages/forms-list/src/embedded/FormsListChannelApiImpl.ts
b/ui-packages/packages/forms-list/src/embedded/FormsListChannelApiImpl.ts
index 03010e43e..a05eaf580 100755
--- a/ui-packages/packages/forms-list/src/embedded/FormsListChannelApiImpl.ts
+++ b/ui-packages/packages/forms-list/src/embedded/FormsListChannelApiImpl.ts
@@ -16,12 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { FormsListDriver, FormsListChannelApi } from '../api';
+
import {
- FormsListDriver,
- FormsListChannelApi,
FormFilter,
FormInfo
-} from '../api';
+} from '@kogito-apps/components-common/dist/types';
/**
* Implementation of the FormsListChannelApiImpl delegating to a
FormsListDriver
diff --git
a/ui-packages/packages/forms-list/src/embedded/tests/FormsListChannelApiImpl.test.tsx
b/ui-packages/packages/forms-list/src/embedded/tests/FormsListChannelApiImpl.test.tsx
index b62c174b2..6caf2f35c 100755
---
a/ui-packages/packages/forms-list/src/embedded/tests/FormsListChannelApiImpl.test.tsx
+++
b/ui-packages/packages/forms-list/src/embedded/tests/FormsListChannelApiImpl.test.tsx
@@ -16,7 +16,8 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { FormInfo, FormsListDriver, FormType } from '../../api';
+import { FormsListDriver } from '../../api';
+import { FormInfo, FormType } from '@kogito-apps/components-common/dist';
import { FormsListChannelApiImpl } from '../FormsListChannelApiImpl';
import { MockedFormsListDriver } from './utils/Mocks';
diff --git
a/ui-packages/packages/forms-list/src/envelope/FormsListEnvelopeApiImpl.ts
b/ui-packages/packages/forms-list/src/envelope/FormsListEnvelopeApiImpl.ts
index 0ece2f1cf..89ccfce49 100644
--- a/ui-packages/packages/forms-list/src/envelope/FormsListEnvelopeApiImpl.ts
+++ b/ui-packages/packages/forms-list/src/envelope/FormsListEnvelopeApiImpl.ts
@@ -18,7 +18,8 @@
*/
import { EnvelopeApiFactoryArgs } from '@kie-tools-core/envelope';
import { FormsListEnvelopeViewApi } from './FormsListEnvelopeView';
-import { Association, FormsListChannelApi, FormsListEnvelopeApi } from
'../api';
+import { FormsListChannelApi, FormsListEnvelopeApi } from '../api';
+import { Association } from '@kogito-apps/components-common/dist/types';
import { FormsListEnvelopeContext } from './FormsListEnvelopeContext';
/**
diff --git
a/ui-packages/packages/forms-list/src/envelope/FormsListEnvelopeViewDriver.ts
b/ui-packages/packages/forms-list/src/envelope/FormsListEnvelopeViewDriver.ts
index bfbac58a3..ef54972fa 100755
---
a/ui-packages/packages/forms-list/src/envelope/FormsListEnvelopeViewDriver.ts
+++
b/ui-packages/packages/forms-list/src/envelope/FormsListEnvelopeViewDriver.ts
@@ -17,12 +17,12 @@
* under the License.
*/
import { MessageBusClientApi } from '@kie-tools-core/envelope-bus/dist/api';
+import { FormsListChannelApi, FormsListDriver } from '../api';
+
import {
FormFilter,
- FormsListChannelApi,
- FormsListDriver,
FormInfo
-} from '../api';
+} from '@kogito-apps/components-common/dist/types';
/**
* Implementation of FormsListDriver that delegates calls to the channel Api
diff --git
a/ui-packages/packages/forms-list/src/envelope/components/FormCard/FormCard.tsx
b/ui-packages/packages/forms-list/src/envelope/components/FormCard/FormCard.tsx
index d9c24a435..3d3755f86 100755
---
a/ui-packages/packages/forms-list/src/envelope/components/FormCard/FormCard.tsx
+++
b/ui-packages/packages/forms-list/src/envelope/components/FormCard/FormCard.tsx
@@ -36,7 +36,7 @@ import {
Text
} from '@patternfly/react-core/dist/js/components/Text';
import { Label } from '@patternfly/react-core/dist/js/components/Label';
-import { FormInfo } from '../../../api/FormsListEnvelopeApi';
+import { FormInfo } from '@kogito-apps/components-common/dist/types';
import { FormsListDriver } from '../../../api/FormsListDriver';
import Moment from 'react-moment';
export interface FormCardProps {
diff --git
a/ui-packages/packages/forms-list/src/envelope/components/FormsGallery/FormsGallery.tsx
b/ui-packages/packages/forms-list/src/envelope/components/FormsGallery/FormsGallery.tsx
index 21370eca5..5f55b07dc 100755
---
a/ui-packages/packages/forms-list/src/envelope/components/FormsGallery/FormsGallery.tsx
+++
b/ui-packages/packages/forms-list/src/envelope/components/FormsGallery/FormsGallery.tsx
@@ -26,7 +26,7 @@ import {
Gallery,
GalleryItem
} from '@patternfly/react-core/dist/js/layouts/Gallery';
-import { FormInfo } from '../../../api/FormsListEnvelopeApi';
+import { FormInfo } from '@kogito-apps/components-common/dist/types';
import FormCard from '../FormCard/FormCard';
import { FormsListDriver } from '../../../api/FormsListDriver';
import {
diff --git
a/ui-packages/packages/forms-list/src/envelope/components/FormsList/FormsList.tsx
b/ui-packages/packages/forms-list/src/envelope/components/FormsList/FormsList.tsx
index 7d585b3ce..3c7cfcf12 100755
---
a/ui-packages/packages/forms-list/src/envelope/components/FormsList/FormsList.tsx
+++
b/ui-packages/packages/forms-list/src/envelope/components/FormsList/FormsList.tsx
@@ -30,7 +30,10 @@ import {
ToggleGroup,
ToggleGroupItem
} from '@patternfly/react-core';
-import { FormInfo, FormFilter } from '../../../api/FormsListEnvelopeApi';
+import {
+ FormInfo,
+ FormFilter
+} from '@kogito-apps/components-common/dist/types';
import FormsTable from '../FormsTable/FormsTable';
import FormsGallery from '../FormsGallery/FormsGallery';
import { BarsIcon, ThIcon } from '@patternfly/react-icons';
diff --git
a/ui-packages/packages/forms-list/src/envelope/components/FormsListToolbar/FormsListToolbar.tsx
b/ui-packages/packages/forms-list/src/envelope/components/FormsListToolbar/FormsListToolbar.tsx
index ea2ec0b0b..1fda9c75a 100755
---
a/ui-packages/packages/forms-list/src/envelope/components/FormsListToolbar/FormsListToolbar.tsx
+++
b/ui-packages/packages/forms-list/src/envelope/components/FormsListToolbar/FormsListToolbar.tsx
@@ -35,7 +35,7 @@ import {
componentOuiaProps,
OUIAProps
} from '@kogito-apps/ouia-tools/dist/utils/OuiaUtils';
-import { FormFilter } from '../../../api';
+import { FormFilter } from '@kogito-apps/components-common/dist/types';
interface FormsListToolbarProps {
filterFormNames: string[];
diff --git
a/ui-packages/packages/forms-list/src/envelope/components/FormsListUtils/FormsListUtils.tsx
b/ui-packages/packages/forms-list/src/envelope/components/FormsListUtils/FormsListUtils.tsx
index 06e64bdde..49f9dc22d 100644
---
a/ui-packages/packages/forms-list/src/envelope/components/FormsListUtils/FormsListUtils.tsx
+++
b/ui-packages/packages/forms-list/src/envelope/components/FormsListUtils/FormsListUtils.tsx
@@ -19,7 +19,7 @@
import React from 'react';
import Moment from 'react-moment';
import { DataTableColumn } from
'@kogito-apps/components-common/dist/components/DataTable';
-import { FormInfo } from '../../../api/FormsListEnvelopeApi';
+import { FormInfo } from '@kogito-apps/components-common/dist/types';
import { Label } from '@patternfly/react-core';
export const getFormTypeLabel = (value) => {
diff --git
a/ui-packages/packages/forms-list/src/envelope/components/FormsListUtils/tests/FormsListUtils.test.tsx
b/ui-packages/packages/forms-list/src/envelope/components/FormsListUtils/tests/FormsListUtils.test.tsx
index 228e3e8c4..9190e9acc 100755
---
a/ui-packages/packages/forms-list/src/envelope/components/FormsListUtils/tests/FormsListUtils.test.tsx
+++
b/ui-packages/packages/forms-list/src/envelope/components/FormsListUtils/tests/FormsListUtils.test.tsx
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { FormType } from '../../../../api/FormsListEnvelopeApi';
+import { FormType } from '@kogito-apps/components-common/dist';
import {
getDateColumn,
getFormNameColumn,
diff --git
a/ui-packages/packages/forms-list/src/envelope/components/FormsTable/FormsTable.tsx
b/ui-packages/packages/forms-list/src/envelope/components/FormsTable/FormsTable.tsx
index 948823819..da3f147fc 100755
---
a/ui-packages/packages/forms-list/src/envelope/components/FormsTable/FormsTable.tsx
+++
b/ui-packages/packages/forms-list/src/envelope/components/FormsTable/FormsTable.tsx
@@ -26,7 +26,8 @@ import {
OUIAProps,
componentOuiaProps
} from '@kogito-apps/ouia-tools/dist/utils/OuiaUtils';
-import { FormInfo, FormsListDriver } from '../../../api';
+import { FormsListDriver } from '../../../api';
+import { FormInfo } from '@kogito-apps/components-common/dist/types';
import {
getFormNameColumn,
getDateColumn,
diff --git
a/ui-packages/packages/forms-list/src/envelope/tests/FormsListEnvelopeViewDriver.test.ts
b/ui-packages/packages/forms-list/src/envelope/tests/FormsListEnvelopeViewDriver.test.ts
index 7422b2a12..bc0b82c21 100755
---
a/ui-packages/packages/forms-list/src/envelope/tests/FormsListEnvelopeViewDriver.test.ts
+++
b/ui-packages/packages/forms-list/src/envelope/tests/FormsListEnvelopeViewDriver.test.ts
@@ -22,7 +22,8 @@ import {
} from '@kie-tools-core/envelope-bus/dist/api';
import { MockedMessageBusClientApi } from './mocks/Mocks';
import FormsListEnvelopeViewDriver from '../FormsListEnvelopeViewDriver';
-import { FormInfo, FormsListChannelApi, FormType } from '../../api';
+import { FormsListChannelApi } from '../../api';
+import { FormInfo, FormType } from '@kogito-apps/components-common/dist';
let channelApi: MessageBusClientApi<FormsListChannelApi>;
let requests: Pick<
diff --git
a/ui-packages/packages/forms-list/src/envelope/tests/mocks/MockedFormsListDriver.ts
b/ui-packages/packages/forms-list/src/envelope/tests/mocks/MockedFormsListDriver.ts
index beaea556a..066ee46bf 100755
---
a/ui-packages/packages/forms-list/src/envelope/tests/mocks/MockedFormsListDriver.ts
+++
b/ui-packages/packages/forms-list/src/envelope/tests/mocks/MockedFormsListDriver.ts
@@ -16,7 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { FormFilter, FormInfo, FormsListDriver, FormType } from '../../../api';
+import { FormsListDriver } from '../../../api';
+import {
+ FormFilter,
+ FormInfo,
+ FormType
+} from '@kogito-apps/components-common/dist';
export const formList: FormInfo[] = [
{
diff --git a/ui-packages/packages/process-form/package.json
b/ui-packages/packages/process-form/package.json
index 2b5402435..1cebcdf32 100644
--- a/ui-packages/packages/process-form/package.json
+++ b/ui-packages/packages/process-form/package.json
@@ -31,6 +31,7 @@
"@kie-tools-core/envelope": "0.32.0",
"@kie-tools-core/envelope-bus": "0.32.0",
"@kogito-apps/components-common": "workspace:*",
+ "@kogito-apps/form-displayer": "workspace:*",
"@kogito-apps/task-console-shared": "workspace:*",
"@patternfly/patternfly": "^4.224.2",
"@patternfly/react-core": "^4.276.8",
@@ -59,7 +60,8 @@
"rimraf": "^3.0.2",
"ts-jest": "^26.5.6",
"typescript": "^4.9.5",
- "waait": "^1.0.5"
+ "waait": "^1.0.5",
+ "uuid": "^3.4.0"
},
"jest": {
"setupFiles": [
diff --git a/ui-packages/packages/process-form/src/api/ProcessFormChannelApi.ts
b/ui-packages/packages/process-form/src/api/ProcessFormChannelApi.ts
index 914d2dad3..9f0a64bba 100644
--- a/ui-packages/packages/process-form/src/api/ProcessFormChannelApi.ts
+++ b/ui-packages/packages/process-form/src/api/ProcessFormChannelApi.ts
@@ -16,11 +16,15 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { Form } from '@kogito-apps/components-common/dist/types';
import { ProcessDefinition } from './ProcessFormEnvelopeApi';
export interface ProcessFormChannelApi {
processForm__getProcessFormSchema(
processDefinitionData: ProcessDefinition
): Promise<Record<string, any>>;
+ processForm__getCustomForm(
+ processDefinitionData: ProcessDefinition
+ ): Promise<Form>;
processForm__startProcess(formData: any): Promise<void>;
}
diff --git a/ui-packages/packages/process-form/src/api/ProcessFormDriver.ts
b/ui-packages/packages/process-form/src/api/ProcessFormDriver.ts
index d4189e958..85a495535 100644
--- a/ui-packages/packages/process-form/src/api/ProcessFormDriver.ts
+++ b/ui-packages/packages/process-form/src/api/ProcessFormDriver.ts
@@ -16,6 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
+import { Form } from '@kogito-apps/components-common/dist/types';
import { ProcessDefinition } from './ProcessFormEnvelopeApi';
/**
@@ -25,5 +26,6 @@ export interface ProcessFormDriver {
getProcessFormSchema(
processDefinitionData: ProcessDefinition
): Promise<Record<string, any>>;
+ getCustomForm(processDefinitionData: ProcessDefinition): Promise<Form>;
startProcess(formData: any): Promise<void>;
}
diff --git
a/ui-packages/packages/process-form/src/embedded/EmbeddedProcessForm.tsx
b/ui-packages/packages/process-form/src/embedded/EmbeddedProcessForm.tsx
index cf838f23b..d00ca4b25 100644
--- a/ui-packages/packages/process-form/src/embedded/EmbeddedProcessForm.tsx
+++ b/ui-packages/packages/process-form/src/embedded/EmbeddedProcessForm.tsx
@@ -71,7 +71,8 @@ export const EmbeddedProcessForm = React.forwardRef(
postMessage(message, targetOrigin, transfer) {
window.postMessage(message, targetOrigin, transfer);
}
- }
+ },
+ targetOrigin: props.targetOrigin
});
return envelopeServer.envelopeApi.requests.processForm__init(
{
diff --git
a/ui-packages/packages/process-form/src/embedded/EmbeddedProcessFormChannelApiImpl.ts
b/ui-packages/packages/process-form/src/embedded/EmbeddedProcessFormChannelApiImpl.ts
index 011b63451..9fe9d4d19 100644
---
a/ui-packages/packages/process-form/src/embedded/EmbeddedProcessFormChannelApiImpl.ts
+++
b/ui-packages/packages/process-form/src/embedded/EmbeddedProcessFormChannelApiImpl.ts
@@ -21,6 +21,7 @@ import {
ProcessFormChannelApi,
ProcessFormDriver
} from '../api';
+import { Form } from '@kogito-apps/components-common/dist/types';
export class EmbeddedProcessFormChannelApiImpl
implements ProcessFormChannelApi
@@ -33,6 +34,12 @@ export class EmbeddedProcessFormChannelApiImpl
return this.driver.getProcessFormSchema(processDefinitionData);
}
+ processForm__getCustomForm(
+ processDefinitionData: ProcessDefinition
+ ): Promise<Form> {
+ return this.driver.getCustomForm(processDefinitionData);
+ }
+
processForm__startProcess(formData: any): Promise<void> {
return this.driver.startProcess(formData);
}
diff --git
a/ui-packages/packages/process-form/src/embedded/tests/__snapshots__/EmbeddedProcessForm.test.tsx.snap
b/ui-packages/packages/process-form/src/embedded/tests/__snapshots__/EmbeddedProcessForm.test.tsx.snap
index 7df06cc45..b5a556255 100644
---
a/ui-packages/packages/process-form/src/embedded/tests/__snapshots__/EmbeddedProcessForm.test.tsx.snap
+++
b/ui-packages/packages/process-form/src/embedded/tests/__snapshots__/EmbeddedProcessForm.test.tsx.snap
@@ -4,6 +4,7 @@ exports[`EmbeddedProcessForm tests Snapshot 1`] = `
<ForwardRef
driver={
Object {
+ "getCustomForm": [MockFunction],
"getProcessFormSchema": [MockFunction],
"startProcess": [MockFunction],
}
@@ -15,6 +16,7 @@ exports[`EmbeddedProcessForm tests Snapshot 1`] = `
apiImpl={
EmbeddedProcessFormChannelApiImpl {
"driver": Object {
+ "getCustomForm": [MockFunction],
"getProcessFormSchema": [MockFunction],
"startProcess": [MockFunction],
},
diff --git
a/ui-packages/packages/process-form/src/embedded/tests/mocks/Mocks.ts
b/ui-packages/packages/process-form/src/embedded/tests/mocks/Mocks.ts
index f3ce38888..f6f87fa34 100644
--- a/ui-packages/packages/process-form/src/embedded/tests/mocks/Mocks.ts
+++ b/ui-packages/packages/process-form/src/embedded/tests/mocks/Mocks.ts
@@ -20,5 +20,6 @@ import { ProcessFormDriver } from '../../../api';
export const MockedProcessFormDriver = jest.fn<ProcessFormDriver, []>(() => ({
getProcessFormSchema: jest.fn(),
+ getCustomForm: jest.fn(),
startProcess: jest.fn()
}));
diff --git
a/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelope.tsx
b/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelope.tsx
index 4d761ad70..49a3a052a 100644
--- a/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelope.tsx
+++ b/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelope.tsx
@@ -41,6 +41,7 @@ export function init(args: {
config: EnvelopeDivConfig;
container: HTMLDivElement;
bus: EnvelopeBus;
+ targetOrigin: string;
}) {
/**
* Creates a new generic Envelope, typed with the right interfaces.
@@ -63,7 +64,11 @@ export function init(args: {
return new Promise<() => ProcessFormEnvelopeViewApi>((res) => {
args.container.className = 'kogito-process-form-container';
ReactDOM.render(
- <ProcessFormEnvelopeView ref={ref} channelApi={envelope.channelApi} />,
+ <ProcessFormEnvelopeView
+ ref={ref}
+ channelApi={envelope.channelApi}
+ targetOrigin={args.targetOrigin}
+ />,
args.container,
() => res(() => ref.current)
);
diff --git
a/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelopeView.tsx
b/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelopeView.tsx
index 13d15419b..db8326f90 100644
--- a/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelopeView.tsx
+++ b/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelopeView.tsx
@@ -29,6 +29,7 @@ export interface ProcessFormEnvelopeViewApi {
interface Props {
channelApi: MessageBusClientApi<ProcessFormChannelApi>;
+ targetOrigin: string;
}
export const ProcessFormEnvelopeView = React.forwardRef<
@@ -54,6 +55,7 @@ export const ProcessFormEnvelopeView = React.forwardRef<
isEnvelopeConnectedToChannel={isEnvelopeConnectedToChannel}
processDefinition={processDefinition}
driver={new ProcessFormEnvelopeViewDriver(props.channelApi)}
+ targetOrigin={props.targetOrigin}
/>
);
});
diff --git
a/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelopeViewDriver.ts
b/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelopeViewDriver.ts
index 98a13ed47..d22adb67a 100644
---
a/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelopeViewDriver.ts
+++
b/ui-packages/packages/process-form/src/envelope/ProcessFormEnvelopeViewDriver.ts
@@ -22,6 +22,7 @@ import {
ProcessFormChannelApi,
ProcessFormDriver
} from '../api';
+import { Form } from '@kogito-apps/components-common/dist/types';
/**
* Implementation of ProcessFormDriver to be used on ProcessFormEnvelopeView
@@ -39,6 +40,12 @@ export class ProcessFormEnvelopeViewDriver implements
ProcessFormDriver {
);
}
+ getCustomForm(processDefinitionData: ProcessDefinition): Promise<Form> {
+ return this.channelApi.requests.processForm__getCustomForm(
+ processDefinitionData
+ );
+ }
+
startProcess(formData: any): Promise<void> {
return this.channelApi.requests.processForm__startProcess(formData);
}
diff --git
a/ui-packages/packages/process-form/src/envelope/components/ProcessForm/CustomProcessFormDisplayer.tsx
b/ui-packages/packages/process-form/src/envelope/components/ProcessForm/CustomProcessFormDisplayer.tsx
new file mode 100644
index 000000000..b2dcca5f3
--- /dev/null
+++
b/ui-packages/packages/process-form/src/envelope/components/ProcessForm/CustomProcessFormDisplayer.tsx
@@ -0,0 +1,126 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+import { FormFooter } from
'@kogito-apps/components-common/dist/components/FormFooter';
+import { FormAction } from
'@kogito-apps/components-common/dist/components/utils';
+import {
+ Form,
+ FormOpened,
+ FormOpenedState,
+ FormSubmitResponseType
+} from '@kogito-apps/components-common/dist/types';
+import { FormDisplayerApi } from '@kogito-apps/form-displayer/dist/api';
+import { EmbeddedFormDisplayer } from
'@kogito-apps/form-displayer/dist/embedded';
+import {
+ OUIAProps,
+ componentOuiaProps
+} from '@kogito-apps/ouia-tools/dist/utils/OuiaUtils';
+import { Stack, StackItem } from '@patternfly/react-core/layouts/Stack';
+import { ProcessFormDriver } from 'packages/process-form/src/api';
+import React, { useCallback, useEffect, useRef, useState } from 'react';
+import uuidv4 from 'uuid';
+
+export interface CustomProcessFormDisplayerProps {
+ schema: Record<string, any>;
+ customForm: Form;
+ driver: ProcessFormDriver;
+ targetOrigin: string;
+}
+
+const CustomProcessFormDisplayer: React.FC<
+ CustomProcessFormDisplayerProps & OUIAProps
+> = ({ customForm, driver, targetOrigin, ouiaId, ouiaSafe }) => {
+ const formDisplayerApiRef = useRef<FormDisplayerApi>();
+ const [formUUID] = useState<string>(uuidv4());
+ const [formData] = useState({});
+ const [formActions, setFormActions] = useState<FormAction[]>([]);
+ const [formOpened, setFormOpened] = useState<FormOpened>();
+ const [submitted, setSubmitted] = useState<boolean>(false);
+
+ const doSubmit = useCallback(
+ async (payload: any) => {
+ const formDisplayerApi = formDisplayerApiRef.current;
+
+ try {
+ const response = await driver.startProcess(payload);
+ formDisplayerApi.notifySubmitResult({
+ type: FormSubmitResponseType.SUCCESS,
+ info: response
+ });
+ } catch (error) {
+ formDisplayerApi.notifySubmitResult({
+ type: FormSubmitResponseType.FAILURE,
+ info: error
+ });
+ } finally {
+ setSubmitted(true);
+ }
+ },
+ [driver]
+ );
+
+ useEffect(() => {
+ setFormActions([
+ {
+ name: 'Start',
+ execute: () => {
+ const formDisplayerApi = formDisplayerApiRef.current;
+ formDisplayerApi
+ .startSubmit({
+ params: {}
+ })
+ .then((formOutput) => doSubmit(formOutput))
+ .catch((error) =>
+ console.log(`Couldn't submit form due to: ${error}`)
+ );
+ }
+ }
+ ]);
+ }, [doSubmit]);
+
+ return (
+ <div
+ {...componentOuiaProps(ouiaId, 'custom-form-displayer', ouiaSafe)}
+ style={{ height: '100%' }}
+ >
+ <Stack hasGutter>
+ <StackItem
+ id={`${formUUID}-form`}
+ style={{ visibility: 'visible', height: 'inherit' }}
+ >
+ <EmbeddedFormDisplayer
+ targetOrigin={targetOrigin}
+ envelopePath={'resources/form-displayer.html'}
+ formContent={customForm}
+ data={formData}
+ context={{}}
+ onOpenForm={(opened) => setFormOpened(opened)}
+ ref={formDisplayerApiRef}
+ />
+ </StackItem>
+ {formOpened && formOpened.state === FormOpenedState.OPENED && (
+ <StackItem>
+ <FormFooter actions={formActions} enabled={!submitted} />
+ </StackItem>
+ )}
+ </Stack>
+ </div>
+ );
+};
+
+export default CustomProcessFormDisplayer;
diff --git
a/ui-packages/packages/process-form/src/envelope/components/ProcessForm/ProcessForm.tsx
b/ui-packages/packages/process-form/src/envelope/components/ProcessForm/ProcessForm.tsx
index 103b0fd2d..c4d9e1b67 100644
---
a/ui-packages/packages/process-form/src/envelope/components/ProcessForm/ProcessForm.tsx
+++
b/ui-packages/packages/process-form/src/envelope/components/ProcessForm/ProcessForm.tsx
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-import React, { useEffect, useState } from 'react';
+import React, { useCallback, useEffect, useState } from 'react';
import {
componentOuiaProps,
OUIAProps
@@ -25,24 +25,32 @@ import { ProcessDefinition, ProcessFormDriver } from
'../../../api';
import { KogitoSpinner } from
'@kogito-apps/components-common/dist/components/KogitoSpinner';
import { ServerErrors } from
'@kogito-apps/components-common/dist/components/ServerErrors';
import { FormRenderer } from
'@kogito-apps/components-common/dist/components/FormRenderer';
-import { FormRendererApi } from '@kogito-apps/components-common/dist/types';
+import {
+ Form,
+ FormRendererApi
+} from '@kogito-apps/components-common/dist/types';
import { FormAction } from
'@kogito-apps/components-common/dist/components/utils';
import { Bullseye } from '@patternfly/react-core/dist/js/layouts/Bullseye';
+import CustomProcessFormDisplayer from './CustomProcessFormDisplayer';
+
export interface ProcessFormProps {
processDefinition: ProcessDefinition;
driver: ProcessFormDriver;
isEnvelopeConnectedToChannel: boolean;
+ targetOrigin: string;
}
const ProcessForm: React.FC<ProcessFormProps & OUIAProps> = ({
processDefinition,
driver,
isEnvelopeConnectedToChannel,
+ targetOrigin,
ouiaId,
ouiaSafe
}) => {
const formRendererApi = React.useRef<FormRendererApi>();
const [processFormSchema, setProcessFormSchema] = useState<any>({});
+ const [processCustomForm, setProcessCustomForm] = useState<Form>(null);
const [isLoading, setIsLoading] = useState<boolean>(true);
const [error, setError] = useState<string>(null);
@@ -52,24 +60,47 @@ const ProcessForm: React.FC<ProcessFormProps & OUIAProps> =
({
}
];
- useEffect(() => {
+ const init = useCallback(async (): Promise<void> => {
if (!isEnvelopeConnectedToChannel) {
- setIsLoading(true);
return;
}
- init();
- }, [isEnvelopeConnectedToChannel]);
+ const customFormPromise: Promise<void> = new Promise<void>((resolve) => {
+ driver
+ .getCustomForm(processDefinition)
+ .then((customForm) => {
+ setProcessCustomForm(customForm);
+ resolve();
+ })
+ .catch((error) => resolve());
+ });
- const init = async (): Promise<void> => {
- try {
- const schema = await driver.getProcessFormSchema(processDefinition);
- setProcessFormSchema(schema);
- } catch (errorContent) {
- setError(errorContent);
- } finally {
+ const schemaPromise: Promise<void> = new Promise<void>(
+ (resolve, reject) => {
+ driver
+ .getProcessFormSchema(processDefinition)
+ .then((schema) => {
+ setProcessFormSchema(schema);
+ resolve();
+ })
+ .catch((error) => {
+ setError(error);
+ reject(error);
+ });
+ }
+ );
+
+ Promise.all([customFormPromise, schemaPromise]).finally(() => {
setIsLoading(false);
+ });
+ }, [driver, isEnvelopeConnectedToChannel, processDefinition]);
+
+ useEffect(() => {
+ if (!isEnvelopeConnectedToChannel) {
+ setIsLoading(true);
+ return;
}
- };
+ init();
+ }, [init, isEnvelopeConnectedToChannel]);
const onSubmit = (value: any): void => {
driver.startProcess(value).then(() => {
@@ -92,24 +123,40 @@ const ProcessForm: React.FC<ProcessFormProps & OUIAProps>
= ({
return <ServerErrors error={error} variant={'large'} />;
}
- return (
- <div
- {...componentOuiaProps(
- ouiaId,
- 'process-form',
- ouiaSafe ? ouiaSafe : !isLoading
- )}
- >
- <FormRenderer
- formSchema={processFormSchema}
- model={{}}
- readOnly={false}
- onSubmit={onSubmit}
- formActions={formAction}
- ref={formRendererApi}
+ if (!processCustomForm) {
+ return (
+ <div
+ {...componentOuiaProps(
+ ouiaId,
+ 'process-form',
+ ouiaSafe ? ouiaSafe : !isLoading
+ )}
+ >
+ <FormRenderer
+ formSchema={processFormSchema}
+ model={{}}
+ readOnly={false}
+ onSubmit={onSubmit}
+ formActions={formAction}
+ ref={formRendererApi}
+ />
+ </div>
+ );
+ } else {
+ return (
+ <CustomProcessFormDisplayer
+ {...componentOuiaProps(
+ ouiaId,
+ 'process-form',
+ ouiaSafe ? ouiaSafe : !isLoading
+ )}
+ schema={processFormSchema}
+ customForm={processCustomForm}
+ driver={driver}
+ targetOrigin={targetOrigin}
/>
- </div>
- );
+ );
+ }
};
export default ProcessForm;
diff --git a/ui-packages/packages/task-form/src/types/index.ts
b/ui-packages/packages/process-form/src/envelope/components/ProcessForm/__mocks__/CustomProcessFormDisplayer.tsx
similarity index 82%
rename from ui-packages/packages/task-form/src/types/index.ts
rename to
ui-packages/packages/process-form/src/envelope/components/ProcessForm/__mocks__/CustomProcessFormDisplayer.tsx
index 9d53b9297..77081b9a7 100644
--- a/ui-packages/packages/task-form/src/types/index.ts
+++
b/ui-packages/packages/process-form/src/envelope/components/ProcessForm/__mocks__/CustomProcessFormDisplayer.tsx
@@ -16,4 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-export * from './types';
+import React from 'react';
+
+const MockedCustomProcessFormDisplayer = (): React.ReactElement => {
+ return <></>;
+};
+
+export default MockedCustomProcessFormDisplayer;
diff --git
a/ui-packages/packages/process-form/src/envelope/components/ProcessForm/tests/ProcessForm.test.tsx
b/ui-packages/packages/process-form/src/envelope/components/ProcessForm/tests/ProcessForm.test.tsx
index 5702578c3..d406439bc 100644
---
a/ui-packages/packages/process-form/src/envelope/components/ProcessForm/tests/ProcessForm.test.tsx
+++
b/ui-packages/packages/process-form/src/envelope/components/ProcessForm/tests/ProcessForm.test.tsx
@@ -26,6 +26,7 @@ import { mount } from 'enzyme';
import { MockedProcessFormDriver } from
'../../../../embedded/tests/mocks/Mocks';
import { KogitoSpinner } from
'@kogito-apps/components-common/dist/components/KogitoSpinner';
import { ConfirmTravelForm } from './mocks/ConfirmTravelForm';
+import MockedCustomProcessFormDisplayer from
'../__mocks__/CustomProcessFormDisplayer';
const MockedComponent = (): React.ReactElement => {
return <></>;
@@ -47,13 +48,19 @@
jest.mock('@kogito-apps/components-common/dist/components/FormRenderer', () =>
})
);
+jest.mock('../CustomProcessFormDisplayer');
+
let props: ProcessFormProps;
let driverGetProcessFormSchemaSpy;
-const getProcessFormDriver = (schema?: any): ProcessFormDriver => {
+let driverGetProcessCustomFormSpy;
+const getProcessFormDriver = (schema?: any, form?: any): ProcessFormDriver => {
const driver = new MockedProcessFormDriver();
driverGetProcessFormSchemaSpy = jest.spyOn(driver, 'getProcessFormSchema');
driverGetProcessFormSchemaSpy.mockReturnValue(Promise.resolve(schema));
+ driverGetProcessCustomFormSpy = jest.spyOn(driver, 'getCustomForm');
+ driverGetProcessCustomFormSpy.mockReturnValue(Promise.resolve(form));
props.driver = driver;
+ props.targetOrigin = 'http://localhost:4000/hiring';
return driver;
};
@@ -70,7 +77,8 @@ describe('ProcessForm Test', () => {
processDefinition: {
processName: 'process1',
endpoint: 'http://localhost:4000/hiring'
- }
+ },
+ targetOrigin: 'http://localhost:4000/hiring'
};
});
@@ -106,6 +114,7 @@ describe('ProcessForm Test', () => {
expect(wrapper).toMatchSnapshot();
expect(driver.getProcessFormSchema).toHaveBeenCalled();
+ expect(driver.getCustomForm).toHaveBeenCalled();
const ProcessForm = wrapper.find('FormRenderer');
expect(ProcessForm.exists()).toBeTruthy();
@@ -127,4 +136,28 @@ describe('ProcessForm Test', () => {
});
expect(driverStartProcessSpy).toHaveBeenCalled();
});
+
+ it('Process Custom Form rendering', async () => {
+ const schema = _.cloneDeep(ConfirmTravelForm);
+ const form = <div>form mock</div>;
+ const driver = getProcessFormDriver(schema, form);
+ let wrapper;
+ await act(async () => {
+ wrapper = getProcessFormWrapper();
+ wait();
+ });
+ wrapper = wrapper.update().find('ProcessForm');
+
+ expect(wrapper).toMatchSnapshot();
+
+ expect(driver.getProcessFormSchema).toHaveBeenCalled();
+ expect(driver.getCustomForm).toHaveBeenCalled();
+
+ const MockedCustomProcessFormDisplayer = wrapper.find(
+ 'MockedCustomProcessFormDisplayer'
+ );
+ expect(MockedCustomProcessFormDisplayer.props().customForm).toStrictEqual(
+ form
+ );
+ });
});
diff --git
a/ui-packages/packages/process-form/src/envelope/components/ProcessForm/tests/__snapshots__/ProcessForm.test.tsx.snap
b/ui-packages/packages/process-form/src/envelope/components/ProcessForm/tests/__snapshots__/ProcessForm.test.tsx.snap
index 9546e5352..e3303a06f 100644
---
a/ui-packages/packages/process-form/src/envelope/components/ProcessForm/tests/__snapshots__/ProcessForm.test.tsx.snap
+++
b/ui-packages/packages/process-form/src/envelope/components/ProcessForm/tests/__snapshots__/ProcessForm.test.tsx.snap
@@ -4,6 +4,7 @@ exports[`ProcessForm Test Envelope not connected 1`] = `
<ProcessForm
driver={
Object {
+ "getCustomForm": [MockFunction],
"getProcessFormSchema": [MockFunction],
"startProcess": [MockFunction],
}
@@ -15,6 +16,7 @@ exports[`ProcessForm Test Envelope not connected 1`] = `
"processName": "process1",
}
}
+ targetOrigin="http://localhost:4000/hiring"
>
<Bullseye>
<div
@@ -87,10 +89,187 @@ exports[`ProcessForm Test Envelope not connected 1`] = `
</ProcessForm>
`;
+exports[`ProcessForm Test Process Custom Form rendering 1`] = `
+<ProcessForm
+ driver={
+ Object {
+ "getCustomForm": [MockFunction] {
+ "calls": Array [
+ Array [
+ Object {
+ "endpoint": "http://localhost:4000/hiring",
+ "processName": "process1",
+ },
+ ],
+ ],
+ "results": Array [
+ Object {
+ "type": "return",
+ "value": Promise {},
+ },
+ ],
+ },
+ "getProcessFormSchema": [MockFunction] {
+ "calls": Array [
+ Array [
+ Object {
+ "endpoint": "http://localhost:4000/hiring",
+ "processName": "process1",
+ },
+ ],
+ ],
+ "results": Array [
+ Object {
+ "type": "return",
+ "value": Promise {},
+ },
+ ],
+ },
+ "startProcess": [MockFunction],
+ }
+ }
+ isEnvelopeConnectedToChannel={true}
+ processDefinition={
+ Object {
+ "endpoint": "http://localhost:4000/hiring",
+ "processName": "process1",
+ }
+ }
+ targetOrigin="http://localhost:4000/hiring"
+>
+ <MockedCustomProcessFormDisplayer
+ customForm={
+ <div>
+ form mock
+ </div>
+ }
+ data-ouia-component-type="process-form"
+ data-ouia-safe={true}
+ driver={
+ Object {
+ "getCustomForm": [MockFunction] {
+ "calls": Array [
+ Array [
+ Object {
+ "endpoint": "http://localhost:4000/hiring",
+ "processName": "process1",
+ },
+ ],
+ ],
+ "results": Array [
+ Object {
+ "type": "return",
+ "value": Promise {},
+ },
+ ],
+ },
+ "getProcessFormSchema": [MockFunction] {
+ "calls": Array [
+ Array [
+ Object {
+ "endpoint": "http://localhost:4000/hiring",
+ "processName": "process1",
+ },
+ ],
+ ],
+ "results": Array [
+ Object {
+ "type": "return",
+ "value": Promise {},
+ },
+ ],
+ },
+ "startProcess": [MockFunction],
+ }
+ }
+ schema={
+ Object {
+ "properties": Object {
+ "flight": Object {
+ "properties": Object {
+ "arrival": Object {
+ "format": "date-time",
+ "type": "string",
+ },
+ "departure": Object {
+ "format": "date-time",
+ "type": "string",
+ },
+ "flightNumber": Object {
+ "type": "string",
+ },
+ "gate": Object {
+ "type": "string",
+ },
+ "seat": Object {
+ "type": "string",
+ },
+ },
+ "type": "object",
+ },
+ "hotel": Object {
+ "properties": Object {
+ "address": Object {
+ "properties": Object {
+ "city": Object {
+ "type": "string",
+ },
+ "country": Object {
+ "type": "string",
+ },
+ "street": Object {
+ "type": "string",
+ },
+ "zipCode": Object {
+ "type": "string",
+ },
+ },
+ "type": "object",
+ },
+ "bookingNumber": Object {
+ "type": "string",
+ },
+ "name": Object {
+ "type": "string",
+ },
+ "phone": Object {
+ "type": "string",
+ },
+ "room": Object {
+ "type": "string",
+ },
+ },
+ "type": "object",
+ },
+ },
+ "type": "object",
+ }
+ }
+ targetOrigin="http://localhost:4000/hiring"
+ />
+</ProcessForm>
+`;
+
exports[`ProcessForm Test Process Form rendering 1`] = `
<ProcessForm
driver={
Object {
+ "getCustomForm": [MockFunction] {
+ "calls": Array [
+ Array [
+ Object {
+ "endpoint": "http://localhost:4000/hiring",
+ "processName": "process1",
+ },
+ ],
+ ],
+ "results": Array [
+ Object {
+ "type": "return",
+ "value": Promise {},
+ },
+ ],
+ },
"getProcessFormSchema": [MockFunction] {
"calls": Array [
Array [
@@ -117,6 +296,7 @@ exports[`ProcessForm Test Process Form rendering 1`] = `
"processName": "process1",
}
}
+ targetOrigin="http://localhost:4000/hiring"
>
<div
data-ouia-component-type="process-form"
diff --git
a/ui-packages/packages/process-form/src/envelope/tests/ProcessFormEnvelopeView.test.tsx
b/ui-packages/packages/process-form/src/envelope/tests/ProcessFormEnvelopeView.test.tsx
index d3fd28969..d8ef2ff15 100644
---
a/ui-packages/packages/process-form/src/envelope/tests/ProcessFormEnvelopeView.test.tsx
+++
b/ui-packages/packages/process-form/src/envelope/tests/ProcessFormEnvelopeView.test.tsx
@@ -33,7 +33,11 @@ describe('ProcessFormEnvelopeView tests', () => {
const forwardRef = React.createRef<ProcessFormEnvelopeViewApi>();
let wrapper = mount(
- <ProcessFormEnvelopeView channelApi={channelApi} ref={forwardRef} />
+ <ProcessFormEnvelopeView
+ channelApi={channelApi}
+ ref={forwardRef}
+ targetOrigin="http://localhost:4000"
+ />
).find('ProcessFormEnvelopeView');
act(() => {
diff --git
a/ui-packages/packages/process-form/src/envelope/tests/__snapshots__/ProcessFormEnvelopeView.test.tsx.snap
b/ui-packages/packages/process-form/src/envelope/tests/__snapshots__/ProcessFormEnvelopeView.test.tsx.snap
index 57812d76a..9181b145b 100644
---
a/ui-packages/packages/process-form/src/envelope/tests/__snapshots__/ProcessFormEnvelopeView.test.tsx.snap
+++
b/ui-packages/packages/process-form/src/envelope/tests/__snapshots__/ProcessFormEnvelopeView.test.tsx.snap
@@ -6,6 +6,7 @@ exports[`ProcessFormEnvelopeView tests Snapshot 1`] = `
Object {
"notifications": Object {},
"requests": Object {
+ "processForm__getCustomForm": [MockFunction],
"processForm__getProcessFormSchema": [MockFunction],
"processForm__startProcess": [MockFunction],
},
@@ -14,6 +15,7 @@ exports[`ProcessFormEnvelopeView tests Snapshot 1`] = `
"unsubscribe": [MockFunction],
}
}
+ targetOrigin="http://localhost:4000"
>
<MockedProcessForm
driver={
@@ -21,6 +23,7 @@ exports[`ProcessFormEnvelopeView tests Snapshot 1`] = `
"channelApi": Object {
"notifications": Object {},
"requests": Object {
+ "processForm__getCustomForm": [MockFunction],
"processForm__getProcessFormSchema": [MockFunction],
"processForm__startProcess": [MockFunction],
},
@@ -37,6 +40,7 @@ exports[`ProcessFormEnvelopeView tests Snapshot 1`] = `
"processName": "process1",
}
}
+ targetOrigin="http://localhost:4000"
/>
</ForwardRef>
`;
diff --git
a/ui-packages/packages/process-form/src/envelope/tests/mocks/Mocks.ts
b/ui-packages/packages/process-form/src/envelope/tests/mocks/Mocks.ts
index 98e0b50a8..8b21a0b66 100644
--- a/ui-packages/packages/process-form/src/envelope/tests/mocks/Mocks.ts
+++ b/ui-packages/packages/process-form/src/envelope/tests/mocks/Mocks.ts
@@ -30,6 +30,7 @@ export const MockedApiRequests = jest.fn<
[]
>(() => ({
processForm__getProcessFormSchema: jest.fn(),
+ processForm__getCustomForm: jest.fn(),
processForm__startProcess: jest.fn()
}));
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/FormDetails/FormDetailsGatewayApi.ts
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/FormDetails/FormDetailsGatewayApi.ts
index b56035a49..0b3a7c1d9 100755
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/FormDetails/FormDetailsGatewayApi.ts
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/FormDetails/FormDetailsGatewayApi.ts
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { Form, FormContent } from '@kogito-apps/form-details';
+import { Form, FormContent } from '@kogito-apps/components-common/dist/types';
import { getFormContent, saveFormContent } from '../apis';
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/FormsList/FormsListGatewayApi.ts
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/FormsList/FormsListGatewayApi.ts
index 999bd866c..b4486c6b9 100755
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/FormsList/FormsListGatewayApi.ts
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/FormsList/FormsListGatewayApi.ts
@@ -16,7 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { FormFilter, FormInfo } from '@kogito-apps/forms-list';
+import {
+ FormFilter,
+ FormInfo
+} from '@kogito-apps/components-common/dist/types';
import { getForms } from '../apis';
/* eslint-disable @typescript-eslint/no-empty-interface */
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/ProcessForm/ProcessFormGatewayApi.ts
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/ProcessForm/ProcessFormGatewayApi.ts
index c051d77d2..913ef66d4 100644
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/ProcessForm/ProcessFormGatewayApi.ts
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/ProcessForm/ProcessFormGatewayApi.ts
@@ -17,10 +17,12 @@
* under the License.
*/
import { ProcessDefinition } from '@kogito-apps/process-definition-list';
-import { getProcessSchema, startProcessInstance } from '../apis';
+import { getProcessSchema, getCustomForm, startProcessInstance } from
'../apis';
+import { Form } from '@kogito-apps/components-common/dist/types';
export interface ProcessFormGatewayApi {
getProcessFormSchema(processDefinitionData: ProcessDefinition): Promise<any>;
+ getCustomForm(processDefinitionData: ProcessDefinition): Promise<Form>;
startProcess(
formData: any,
processDefinitionData: ProcessDefinition
@@ -49,6 +51,10 @@ export class ProcessFormGatewayApiImpl implements
ProcessFormGatewayApi {
return getProcessSchema(processDefinitionData);
}
+ getCustomForm(processDefinitionData: ProcessDefinition): Promise<Form> {
+ return getCustomForm(processDefinitionData);
+ }
+
startProcess(
formData: any,
processDefinitionData: ProcessDefinition
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/TaskForms/TaskFormGatewayApi.ts
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/TaskForms/TaskFormGatewayApi.ts
index fa236acde..a7d385f29 100644
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/TaskForms/TaskFormGatewayApi.ts
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/TaskForms/TaskFormGatewayApi.ts
@@ -19,12 +19,12 @@
import axios from 'axios';
import { User } from '@kogito-apps/consoles-common/dist/environment/auth';
import { UserTaskInstance } from '@kogito-apps/task-console-shared';
-import { CustomForm } from '@kogito-apps/task-form';
+import { Form } from '@kogito-apps/components-common/dist/types';
export interface TaskFormGatewayApi {
getTaskFormSchema(userTask: UserTaskInstance): Promise<Record<string, any>>;
- getCustomForm(userTask: UserTaskInstance): Promise<CustomForm>;
+ getCustomForm(userTask: UserTaskInstance): Promise<Form>;
doSubmit(
userTask: UserTaskInstance,
@@ -88,8 +88,8 @@ export class TaskFormGatewayApiImpl implements
TaskFormGatewayApi {
});
}
- getCustomForm(userTask: UserTaskInstance): Promise<CustomForm> {
- return new Promise<CustomForm>((resolve, reject) => {
+ getCustomForm(userTask: UserTaskInstance): Promise<Form> {
+ return new Promise<Form>((resolve, reject) => {
const endpoint = getCustomFormEndpoint(userTask);
axios
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/apis/apis.tsx
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/apis/apis.tsx
index 732cb2be9..f142094ce 100755
--- a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/apis/apis.tsx
+++ b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/apis/apis.tsx
@@ -24,10 +24,13 @@ import {
TriggerableNode
} from '@kogito-apps/management-console-shared/dist/types';
import { OperationType } from
'@kogito-apps/management-console-shared/dist/components/BulkList';
-import { FormInfo } from '@kogito-apps/forms-list';
import axios from 'axios';
import uuidv4 from 'uuid';
-import { Form, FormContent } from '@kogito-apps/form-details';
+import {
+ Form,
+ FormContent,
+ FormInfo
+} from '@kogito-apps/components-common/dist/types';
import SwaggerParser from '@apidevtools/swagger-parser';
import { createProcessDefinitionList } from '../../utils/Utils';
import { ProcessDefinition } from '@kogito-apps/process-definition-list';
@@ -395,6 +398,28 @@ export const getProcessSchema = (
});
};
+export const getCustomForm = (
+ processDefinitionData: ProcessDefinition
+): Promise<Form> => {
+ return new Promise((resolve, reject) => {
+ const lastIndex = processDefinitionData.endpoint.lastIndexOf(
+ `/${processDefinitionData.processName}`
+ );
+ const baseEndpoint = processDefinitionData.endpoint.slice(0, lastIndex);
+ axios
+ .get(`${baseEndpoint}/forms/${processDefinitionData.processName}`)
+ .then((response) => {
+ /* istanbul ignore else*/
+ if (response.status === 200) {
+ resolve(response.data);
+ }
+ })
+ .catch((error) => {
+ reject(error);
+ });
+ });
+};
+
export const startProcessInstance = (
formData: any,
businessKey: string,
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/apis/tests/apis.test.tsx
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/apis/tests/apis.test.tsx
index 63f768c46..143939d6e 100755
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/apis/tests/apis.test.tsx
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/channel/apis/tests/apis.test.tsx
@@ -53,8 +53,7 @@ import {
} from '@kogito-apps/management-console-shared/dist/types';
import { OperationType } from
'@kogito-apps/management-console-shared/dist/components/BulkList';
import { processInstance } from
'../../ProcessList/tests/ProcessListGatewayApi.test';
-import { Form } from '@kogito-apps/form-details';
-import { FormType } from '@kogito-apps/forms-list';
+import { Form, FormType } from '@kogito-apps/components-common/dist';
import * as SwaggerParser from '@apidevtools/swagger-parser';
import {
CloudEventMethod,
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormDetailsContainer/FormDetailsContainer.tsx
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormDetailsContainer/FormDetailsContainer.tsx
index 3195e2844..48b55d05c 100755
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormDetailsContainer/FormDetailsContainer.tsx
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormDetailsContainer/FormDetailsContainer.tsx
@@ -23,9 +23,12 @@ import {
} from '@kogito-apps/ouia-tools/dist/utils/OuiaUtils';
import { FormDetailsGatewayApi } from '../../../channel/FormDetails';
import { useFormDetailsGatewayApi } from
'../../../channel/FormDetails/FormDetailsContext';
-import { EmbeddedFormDetails, FormContent } from '@kogito-apps/form-details';
-import { FormInfo } from '@kogito-apps/forms-list';
-import { Form } from '@kogito-apps/form-displayer';
+import { EmbeddedFormDetails } from '@kogito-apps/form-details';
+import {
+ Form,
+ FormContent,
+ FormInfo
+} from '@kogito-apps/components-common/dist/types';
interface FormDetailsContainerProps {
formData: FormInfo;
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormDetailsContainer/tests/FormDetailsContainer.test.tsx
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormDetailsContainer/tests/FormDetailsContainer.test.tsx
index 181aef15d..3ec510ce5 100755
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormDetailsContainer/tests/FormDetailsContainer.test.tsx
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormDetailsContainer/tests/FormDetailsContainer.test.tsx
@@ -26,8 +26,7 @@ import {
DefaultUser,
User
} from '@kogito-apps/consoles-common/dist/environment/auth';
-import { EmbeddedFormDetails } from '@kogito-apps/form-details';
-import { FormType } from '@kogito-apps/forms-list';
+import { FormType } from '@kogito-apps/components-common/dist';
jest
.spyOn(FormDetailsContext, 'useFormDetailsGatewayApi')
@@ -59,6 +58,7 @@ describe('FormDetailsContainer tests', () => {
}}
onSuccess={jest.fn}
onError={jest.fn}
+ targetOrigin="localhost"
/>
</DevUIAppContextProvider>
);
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormsListContainer/FormsListContainer.tsx
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormsListContainer/FormsListContainer.tsx
index 6006c69f0..0964c6a62 100644
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormsListContainer/FormsListContainer.tsx
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/FormsListContainer/FormsListContainer.tsx
@@ -18,7 +18,8 @@
*/
import React, { useEffect } from 'react';
import { OUIAProps } from '@kogito-apps/ouia-tools/dist/utils/OuiaUtils';
-import { EmbeddedFormsList, FormInfo } from '@kogito-apps/forms-list';
+import { EmbeddedFormsList } from '@kogito-apps/forms-list';
+import { FormInfo } from '@kogito-apps/components-common/dist/types';
import { FormsListGatewayApi } from '../../../channel/FormsList';
import { useFormsListGatewayApi } from
'../../../channel/FormsList/FormsListContext';
import { useHistory } from 'react-router-dom';
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/ProcessFormContainer/ProcessFormContainer.tsx
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/ProcessFormContainer/ProcessFormContainer.tsx
index db2f7a372..f55ef6a69 100755
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/ProcessFormContainer/ProcessFormContainer.tsx
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/ProcessFormContainer/ProcessFormContainer.tsx
@@ -24,6 +24,7 @@ import {
import { ProcessFormGatewayApi } from
'../../../channel/ProcessForm/ProcessFormGatewayApi';
import { useProcessFormGatewayApi } from
'../../../channel/ProcessForm/ProcessFormContext';
import { EmbeddedProcessForm } from '@kogito-apps/process-form';
+import { Form } from '@kogito-apps/components-common/dist/types';
import { ProcessDefinition } from '@kogito-apps/process-definition-list';
import { useDevUIAppContext } from '../../contexts/DevUIAppContext';
@@ -50,6 +51,9 @@ const ProcessFormContainer:
React.FC<ProcessFormContainerProps & OUIAProps> = ({
): Promise<any> {
return gatewayApi.getProcessFormSchema(processDefinitionData);
},
+ getCustomForm(processDefinitionData: ProcessDefinition): Promise<Form>
{
+ return gatewayApi.getCustomForm(processDefinitionData);
+ },
async startProcess(formData: any): Promise<void> {
return gatewayApi
.startProcess(formData, processDefinitionData)
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/TaskFormContainer/TaskFormContainer.tsx
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/TaskFormContainer/TaskFormContainer.tsx
index 7e4e935a6..ad8617b76 100644
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/TaskFormContainer/TaskFormContainer.tsx
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/containers/TaskFormContainer/TaskFormContainer.tsx
@@ -23,7 +23,8 @@ import {
} from '@kogito-apps/ouia-tools/dist/utils/OuiaUtils';
import { GraphQL } from '@kogito-apps/consoles-common/dist/graphql';
import UserTaskInstance = GraphQL.UserTaskInstance;
-import { EmbeddedTaskForm, CustomForm } from '@kogito-apps/task-form';
+import { EmbeddedTaskForm } from '@kogito-apps/task-form';
+import { Form } from '@kogito-apps/components-common/dist/types';
import { useTaskFormGatewayApi } from
'../../../channel/TaskForms/TaskFormContext';
import { useDevUIAppContext } from '../../contexts/DevUIAppContext';
@@ -69,7 +70,7 @@ const TaskFormContainer: React.FC<Props & OUIAProps> = ({
getTaskFormSchema(): Promise<Record<string, any>> {
return gatewayApi.getTaskFormSchema(userTask);
},
- getCustomForm(): Promise<CustomForm> {
+ getCustomForm(): Promise<Form> {
return gatewayApi.getCustomForm(userTask);
}
}}
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/pages/FormDetailsPage/FormDetailsPage.tsx
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/pages/FormDetailsPage/FormDetailsPage.tsx
index 2b202f133..0ad3b1452 100644
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/pages/FormDetailsPage/FormDetailsPage.tsx
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/components/pages/FormDetailsPage/FormDetailsPage.tsx
@@ -31,7 +31,7 @@ import {
import FormDetailsContainer from
'../../containers/FormDetailsContainer/FormDetailsContainer';
import '../../styles.css';
import { useHistory } from 'react-router-dom';
-import { FormInfo } from '@kogito-apps/forms-list';
+import { FormInfo } from '@kogito-apps/components-common/dist/types';
import { PageTitle } from
'@kogito-apps/consoles-common/dist/components/layout/PageTitle';
import {
FormNotification,
diff --git
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/resources/form-displayer.ts
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/resources/form-displayer.ts
index 100727a8f..3833f640b 100644
---
a/ui-packages/packages/runtime-tools-dev-ui-webapp/src/resources/form-displayer.ts
+++
b/ui-packages/packages/runtime-tools-dev-ui-webapp/src/resources/form-displayer.ts
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { init } from '@kogito-apps/form-displayer';
+import { init } from '@kogito-apps/form-displayer/dist/envelope';
import { ContainerType } from '@kie-tools-core/envelope/dist/api';
init({
diff --git
a/ui-packages/packages/task-console-webapp/src/channel/forms/TaskFormGatewayApi.ts
b/ui-packages/packages/task-console-webapp/src/channel/forms/TaskFormGatewayApi.ts
index 70eb261e4..e8e38da86 100644
---
a/ui-packages/packages/task-console-webapp/src/channel/forms/TaskFormGatewayApi.ts
+++
b/ui-packages/packages/task-console-webapp/src/channel/forms/TaskFormGatewayApi.ts
@@ -19,12 +19,12 @@
import axios from 'axios';
import { User } from '@kogito-apps/consoles-common/dist/environment/auth';
import { UserTaskInstance } from '@kogito-apps/task-console-shared';
-import { CustomForm } from '@kogito-apps/task-form';
+import { Form } from '@kogito-apps/components-common/dist/types';
export interface TaskFormGatewayApi {
getTaskFormSchema(userTask: UserTaskInstance): Promise<Record<string, any>>;
- getCustomForm(userTask: UserTaskInstance): Promise<CustomForm>;
+ getCustomForm(userTask: UserTaskInstance): Promise<Form>;
doSubmit(
userTask: UserTaskInstance,
@@ -84,7 +84,7 @@ export class TaskFormGatewayApiImpl implements
TaskFormGatewayApi {
});
}
- getCustomForm(userTask: UserTaskInstance): Promise<CustomForm> {
+ getCustomForm(userTask: UserTaskInstance): Promise<Form> {
return Promise.reject();
}
}
diff --git
a/ui-packages/packages/task-console-webapp/src/components/pages/TaskDetailsPage/components/TaskFormContainer/TaskFormContainer.tsx
b/ui-packages/packages/task-console-webapp/src/components/pages/TaskDetailsPage/components/TaskFormContainer/TaskFormContainer.tsx
index 2d9161710..dffafb946 100644
---
a/ui-packages/packages/task-console-webapp/src/components/pages/TaskDetailsPage/components/TaskFormContainer/TaskFormContainer.tsx
+++
b/ui-packages/packages/task-console-webapp/src/components/pages/TaskDetailsPage/components/TaskFormContainer/TaskFormContainer.tsx
@@ -24,7 +24,8 @@ import {
import { useKogitoAppContext } from
'@kogito-apps/consoles-common/dist/environment/context';
import { GraphQL } from '@kogito-apps/consoles-common/dist/graphql';
import UserTaskInstance = GraphQL.UserTaskInstance;
-import { CustomForm, EmbeddedTaskForm } from '@kogito-apps/task-form';
+import { EmbeddedTaskForm } from '@kogito-apps/task-form';
+import { Form } from '@kogito-apps/components-common/dist';
import { useTaskFormGatewayApi } from
'../../../../../channel/forms/TaskFormContext';
interface Props {
@@ -63,7 +64,7 @@ const TaskFormContainer: React.FC<Props & OUIAProps> = ({
getTaskFormSchema(): Promise<Record<string, any>> {
return gatewayApi.getTaskFormSchema(userTask);
},
- getCustomForm(): Promise<CustomForm> {
+ getCustomForm(): Promise<Form> {
return gatewayApi.getCustomForm(userTask);
}
}}
diff --git a/ui-packages/packages/task-form/src/api/TaskFormChannelApi.ts
b/ui-packages/packages/task-form/src/api/TaskFormChannelApi.ts
index 932e53f07..e2b261196 100644
--- a/ui-packages/packages/task-form/src/api/TaskFormChannelApi.ts
+++ b/ui-packages/packages/task-form/src/api/TaskFormChannelApi.ts
@@ -16,10 +16,10 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { CustomForm } from '../types';
+import { Form } from '@kogito-apps/components-common/dist/types';
export interface TaskFormChannelApi {
taskForm__getTaskFormSchema(): Promise<Record<string, any>>;
- taskForm__getCustomForm(): Promise<CustomForm>;
+ taskForm__getCustomForm(): Promise<Form>;
taskForm__doSubmit(phase?: string, payload?: any): Promise<any>;
}
diff --git a/ui-packages/packages/task-form/src/api/TaskFormDriver.ts
b/ui-packages/packages/task-form/src/api/TaskFormDriver.ts
index 3bc67b2d9..1ad36edb6 100644
--- a/ui-packages/packages/task-form/src/api/TaskFormDriver.ts
+++ b/ui-packages/packages/task-form/src/api/TaskFormDriver.ts
@@ -16,13 +16,13 @@
* specific language governing permissions and limitations
* under the License.
*/
-import { CustomForm } from '../types';
+import { Form } from '@kogito-apps/components-common/dist/types';
/**
* Interface that defines a Driver for TaskForm views.
*/
export interface TaskFormDriver {
getTaskFormSchema(): Promise<Record<string, any>>;
- getCustomForm(): Promise<CustomForm>;
+ getCustomForm(): Promise<Form>;
doSubmit(phase?: string, payload?: any): Promise<any>;
}
diff --git
a/ui-packages/packages/task-form/src/embedded/EmbeddedTaskFormChannelApiImpl.ts
b/ui-packages/packages/task-form/src/embedded/EmbeddedTaskFormChannelApiImpl.ts
index 312ddebe8..30b8b753f 100644
---
a/ui-packages/packages/task-form/src/embedded/EmbeddedTaskFormChannelApiImpl.ts
+++
b/ui-packages/packages/task-form/src/embedded/EmbeddedTaskFormChannelApiImpl.ts
@@ -17,7 +17,7 @@
* under the License.
*/
import { TaskFormChannelApi, TaskFormDriver } from '../api';
-import { CustomForm } from '../types';
+import { Form } from '@kogito-apps/components-common/dist/types';
export class EmbeddedTaskFormChannelApiImpl implements TaskFormChannelApi {
constructor(private readonly driver: TaskFormDriver) {}
@@ -30,7 +30,7 @@ export class EmbeddedTaskFormChannelApiImpl implements
TaskFormChannelApi {
return this.driver.getTaskFormSchema();
}
- taskForm__getCustomForm(): Promise<CustomForm> {
+ taskForm__getCustomForm(): Promise<Form> {
return this.driver.getCustomForm();
}
}
diff --git
a/ui-packages/packages/task-form/src/envelope/TaskFormEnvelopeView.tsx
b/ui-packages/packages/task-form/src/envelope/TaskFormEnvelopeView.tsx
index 51b2b8569..640887453 100644
--- a/ui-packages/packages/task-form/src/envelope/TaskFormEnvelopeView.tsx
+++ b/ui-packages/packages/task-form/src/envelope/TaskFormEnvelopeView.tsx
@@ -35,7 +35,7 @@ import {
KogitoEmptyState,
KogitoEmptyStateType
} from '@kogito-apps/components-common/dist/components/KogitoEmptyState';
-import { CustomForm } from '../types';
+import { Form } from '@kogito-apps/components-common/dist/types';
import { TaskFormEnvelopeViewDriver } from './TaskFormEnvelopeViewDriver';
import CustomTaskFormDisplayer from
'./components/CustomTaskFormDisplayer/CustomTaskFormDisplayer';
import TaskForm from './components/TaskForm/TaskForm';
@@ -62,7 +62,7 @@ export const TaskFormEnvelopeView = React.forwardRef<
const [user, setUser] = useState<User>();
const [taskFormSchema, setTaskFormSchema] =
useState<Record<string, any>>(null);
- const [customForm, setCustomForm] = useState<CustomForm>(null);
+ const [customForm, setCustomForm] = useState<Form>(null);
const [driver] = useState<TaskFormEnvelopeViewDriver>(
new TaskFormEnvelopeViewDriver(channelApi)
diff --git
a/ui-packages/packages/task-form/src/envelope/TaskFormEnvelopeViewDriver.ts
b/ui-packages/packages/task-form/src/envelope/TaskFormEnvelopeViewDriver.ts
index 41feeaf4f..622f98857 100644
--- a/ui-packages/packages/task-form/src/envelope/TaskFormEnvelopeViewDriver.ts
+++ b/ui-packages/packages/task-form/src/envelope/TaskFormEnvelopeViewDriver.ts
@@ -18,7 +18,7 @@
*/
import { MessageBusClientApi } from '@kie-tools-core/envelope-bus/dist/api';
import { TaskFormChannelApi, TaskFormDriver } from '../api';
-import { CustomForm } from '../types';
+import { Form } from '@kogito-apps/components-common/dist/types';
/**
* Implementation of TaskFormDriver to be used on TaskFormEnvelopeView
@@ -32,7 +32,7 @@ export class TaskFormEnvelopeViewDriver implements
TaskFormDriver {
return this.channelApi.requests.taskForm__getTaskFormSchema();
}
- getCustomForm(): Promise<CustomForm> {
+ getCustomForm(): Promise<Form> {
return this.channelApi.requests.taskForm__getCustomForm();
}
diff --git
a/ui-packages/packages/task-form/src/envelope/components/CustomTaskFormDisplayer/CustomTaskFormDisplayer.tsx
b/ui-packages/packages/task-form/src/envelope/components/CustomTaskFormDisplayer/CustomTaskFormDisplayer.tsx
index 40f13e12c..1830b9da5 100644
---
a/ui-packages/packages/task-form/src/envelope/components/CustomTaskFormDisplayer/CustomTaskFormDisplayer.tsx
+++
b/ui-packages/packages/task-form/src/envelope/components/CustomTaskFormDisplayer/CustomTaskFormDisplayer.tsx
@@ -24,13 +24,15 @@ import {
} from '@kogito-apps/ouia-tools/dist/utils/OuiaUtils';
import {
EmbeddedFormDisplayer,
- FormDisplayerApi,
+ FormDisplayerApi
+} from '@kogito-apps/form-displayer';
+import { UserTaskInstance } from '@kogito-apps/task-console-shared';
+import {
+ Form,
FormOpenedState,
FormSubmitResponseType,
FormOpened
-} from '@kogito-apps/form-displayer';
-import { UserTaskInstance } from '@kogito-apps/task-console-shared';
-import { CustomForm } from '../../../types';
+} from '@kogito-apps/components-common/dist/types';
import { generateFormData } from '../utils/TaskFormDataUtils';
import { TaskFormDriver, User } from '../../../api';
import { Stack, StackItem } from '@patternfly/react-core/layouts/Stack';
@@ -43,7 +45,7 @@ import { buildTaskFormContext } from './utils/utils';
export interface CustomTaskFormDisplayerProps {
userTask: UserTaskInstance;
schema: Record<string, any>;
- customForm: CustomForm;
+ customForm: Form;
user: User;
driver: TaskFormDriver;
targetOrigin: string;
diff --git
a/ui-packages/packages/task-form/src/envelope/components/CustomTaskFormDisplayer/tests/CustomTaskFormDisplayer.test.tsx
b/ui-packages/packages/task-form/src/envelope/components/CustomTaskFormDisplayer/tests/CustomTaskFormDisplayer.test.tsx
index 41eda5a12..53b5ab74b 100644
---
a/ui-packages/packages/task-form/src/envelope/components/CustomTaskFormDisplayer/tests/CustomTaskFormDisplayer.test.tsx
+++
b/ui-packages/packages/task-form/src/envelope/components/CustomTaskFormDisplayer/tests/CustomTaskFormDisplayer.test.tsx
@@ -26,17 +26,17 @@ import CustomTaskFormDisplayer, {
import { TaskFormDriver } from '../../../../api';
import { MockedTaskFormDriver } from '../../../../embedded/tests/mocks/Mocks';
import { ApplyForVisaForm } from '../../utils/tests/mocks/ApplyForVisa';
-import { CustomForm, FormType } from '../../../../types';
+import { Form, FormType } from '@kogito-apps/components-common/dist';
import { KogitoSpinner } from
'@kogito-apps/components-common/dist/components/KogitoSpinner';
import { FormFooter } from
'@kogito-apps/components-common/dist/components/FormFooter';
+import { EmbeddedFormDisplayer } from '@kogito-apps/form-displayer';
import {
- EmbeddedFormDisplayer,
FormOpenedState,
- FormSubmitResponse
-} from '@kogito-apps/form-displayer';
+ FormSubmitResponse,
+ FormSubmitResponseType
+} from '@kogito-apps/components-common/dist';
import { act } from 'react-dom/test-utils';
import wait from 'waait';
-import { FormSubmitResponseType } from '@kogito-apps/form-displayer';
jest.mock('uuid', () => {
return () => 'testId';
@@ -99,7 +99,7 @@ const getTaskFormDriver = (): TaskFormDriver => {
return driver;
};
-export const customForm: CustomForm = {
+export const customForm: Form = {
formInfo: {
type: FormType.HTML,
name: 'travels_VisaApplication',
diff --git a/ui-packages/packages/task-form/src/envelope/tests/mocks/Mocks.ts
b/ui-packages/packages/task-form/src/envelope/tests/mocks/Mocks.ts
index d99144de9..55cc10df8 100644
--- a/ui-packages/packages/task-form/src/envelope/tests/mocks/Mocks.ts
+++ b/ui-packages/packages/task-form/src/envelope/tests/mocks/Mocks.ts
@@ -27,7 +27,7 @@ import { EnvelopeClient } from
'@kie-tools-core/envelope-bus/dist/envelope';
import { UserTaskInstance } from '@kogito-apps/task-console-shared';
import { TaskFormChannelApi, TaskFormEnvelopeApi } from '../../../api';
import { TaskFormEnvelopeViewApi } from '../../TaskFormEnvelopeView';
-import { CustomForm, FormType } from '../../../types';
+import { Form, FormType } from '@kogito-apps/components-common/dist';
export const testUserTask: UserTaskInstance = {
id: '45a73767-5da3-49bf-9c40-d533c3e77ef3',
@@ -56,7 +56,7 @@ export const testUserTask: UserTaskInstance = {
'http://localhost:8080/travels/9ae7ce3b-d49c-4f35-b843-8ac3d22fa427/VisaApplication/45a73767-5da3-49bf-9c40-d533c3e77ef3'
};
-export const customForm: CustomForm = {
+export const customForm: Form = {
formInfo: {
type: FormType.HTML,
name: 'travels_VisaApplication',
diff --git a/ui-packages/packages/task-form/src/index.ts
b/ui-packages/packages/task-form/src/index.ts
index cfac373ff..b661b98a1 100644
--- a/ui-packages/packages/task-form/src/index.ts
+++ b/ui-packages/packages/task-form/src/index.ts
@@ -19,4 +19,3 @@
export * from './api';
export * from './embedded';
export * from './envelope';
-export * from './types';
diff --git a/ui-packages/packages/task-form/src/types/types.ts
b/ui-packages/packages/task-form/src/types/types.ts
deleted file mode 100644
index 7c89d4941..000000000
--- a/ui-packages/packages/task-form/src/types/types.ts
+++ /dev/null
@@ -1,44 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-export enum FormType {
- HTML = 'HTML',
- TSX = 'TSX'
-}
-
-export type FormInfo = {
- type: FormType;
- name: string;
- lastModified: Date;
-};
-
-export type FormConfiguration = {
- resources: FormResources;
- schema: string;
-};
-
-export type FormResources = {
- scripts: Record<string, string>;
- styles: Record<string, string>;
-};
-
-export type CustomForm = {
- formInfo: FormInfo;
- source: string;
- configuration: FormConfiguration;
-};
diff --git a/ui-packages/pnpm-lock.yaml b/ui-packages/pnpm-lock.yaml
index ae732831b..91905da31 100644
--- a/ui-packages/pnpm-lock.yaml
+++ b/ui-packages/pnpm-lock.yaml
@@ -1584,6 +1584,9 @@ importers:
'@kogito-apps/components-common':
specifier: workspace:*
version: link:../components-common
+ '@kogito-apps/form-displayer':
+ specifier: workspace:*
+ version: link:../form-displayer
'@kogito-apps/task-console-shared':
specifier: workspace:*
version: link:../task-console-shared
@@ -1663,6 +1666,9 @@ importers:
typescript:
specifier: ^4.9.5
version: 4.9.5
+ uuid:
+ specifier: ^3.4.0
+ version: 3.4.0
waait:
specifier: ^1.0.5
version: 1.0.5
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]