All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.resources.js.components.ViewObjectDefinitions.ModalDeleteObjectDefinition.tsx Maven / Gradle / Ivy

The newest version!
/**
 * SPDX-FileCopyrightText: (c) 2000 Liferay, Inc. https://liferay.com
 * SPDX-License-Identifier: LGPL-2.1-or-later OR LicenseRef-Liferay-DXP-EULA-2.0.0-2023-06
 */

import {ClayModalProvider, useModal} from '@clayui/modal';
import {sub} from 'frontend-js-web';
import React from 'react';

import DangerModal from '../DangerModal';
import WarningModal from '../WarningModal';
import {deleteObjectDefinitionToast} from './objectDefinitionUtil';

interface ModalDeleteObjectDefinitionProps {
	handleDeleteObjectDefinition: (
		value: DeletedObjectDefinition | null
	) => void;
	handleOnClose: () => void;
	objectDefinition: DeletedObjectDefinition;
	onAfterDeleteObjectDefinition?: () => void;
}

export function ModalDeleteObjectDefinition({
	handleDeleteObjectDefinition,
	handleOnClose,
	objectDefinition,
	onAfterDeleteObjectDefinition,
}: ModalDeleteObjectDefinitionProps) {
	const {observer, onClose} = useModal({
		onClose: () => {
			handleDeleteObjectDefinition(null);
			handleOnClose();
		},
	});

	return (
		
			{objectDefinition?.hasObjectRelationship ? (
				
					
{sub( Liferay.Language.get( 'x-has-active-relationships-and-cannot-be-deleted' ), `${objectDefinition?.name}` )}
{sub( Liferay.Language.get( 'to-delete-x,-you-must-first-delete-its-relationships' ), `${objectDefinition?.name}` )}
{Liferay.Language.get( 'go-to-object-details-relationships' )}
) : ( { await deleteObjectDefinitionToast( objectDefinition?.id, objectDefinition?.name ); if (onAfterDeleteObjectDefinition) { onAfterDeleteObjectDefinition(); } else { setTimeout(() => window.location.reload(), 1500); } onClose(); }} placeholder={Liferay.Language.get( 'confirm-object-definition-name' )} title={Liferay.Language.get('delete-object-definition')} token={objectDefinition ? objectDefinition.name : ''} >

{Liferay.Language.get( 'deleting-an-object-definition-also-removes-its-data-records' )}

${objectDefinition?.name}`, `${objectDefinition?.objectEntriesCount}` ), }} />

{Liferay.Language.get( 'before-deleting-this-object-definition-you-may-want-to-back-up-its-entries-to-prevent-data-loss' )}

${objectDefinition?.name}` ), }} /> )} ); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy