| Server IP : 193.146.211.90 / Your IP : 10.85.6.55 Web Server : Apache System : Linux wordpress-gti-69dcdb54f7-n4wdq 6.11.8-arch1-2 #1 SMP PREEMPT_DYNAMIC Fri, 15 Nov 2024 15:35:07 +0000 x86_64 User : 1001 ( 1001) PHP Version : 8.2.25 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /bitnami/wordpress/wp-content/plugins/presto-player/src/admin/settings/components/ |
Upload File : |
import { __ } from "@wordpress/i18n";
const { Card, CardBody, CardFooter } = wp.components;
import SaveButton from "./SaveButton";
import { useDispatch } from "@wordpress/data";
import { store as noticesStore } from "@wordpress/notices";
import Disabled from "./Disabled";
import useSave from "../../../hooks/useSave";
export default ({ title, description, children, disabled, hideSaveButton }) => {
const { save } = useSave();
const { createSuccessNotice, createErrorNotice } = useDispatch(noticesStore);
/**
* Form is submitted.
*/
const onSave = async () => {
try {
await save();
createSuccessNotice(__("Settings Updated", "presto-player"), {
type: "snackbar",
});
} catch (e) {
console.error(e);
createErrorNotice(
e?.message || __("Something went wrong", "presto-player")
);
}
};
return (
<Disabled disabled={disabled}>
<Card size="large" className="presto-options__card">
<CardBody className={`presto-options__card-body`}>
<div className="presto-flow" style={{ "--presto-flow-space": "2em" }}>
<div
className="presto-flow"
style={{ "--presto-flow-space": "1em" }}
>
{title && (
<h2 style={{ marginBottom: 0 }}>
{title}{" "}
{!!disabled && (
<div className="presto-options__pro-badge">Pro</div>
)}
</h2>
)}
{description && <p>{description}</p>}
</div>
<div>{children}</div>
</div>
</CardBody>
{!hideSaveButton ? (
<CardFooter isShady>
<div>
<SaveButton onSave={onSave}>{__("Update Settings")}</SaveButton>
</div>
</CardFooter>
) : (
<br />
)}
</Card>
</Disabled>
);
};