@wordpress/edit-post
Version:
Edit Post module for WordPress.
8 lines (7 loc) • 3.62 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../../src/components/preferences-modal/enable-custom-fields.js"],
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { privateApis as preferencesPrivateApis } from '@wordpress/preferences';\nimport { getPathAndQueryString } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { PreferenceBaseOption } = unlock( preferencesPrivateApis );\n\nfunction submitCustomFieldsForm() {\n\tconst customFieldsForm = document.getElementById(\n\t\t'toggle-custom-fields-form'\n\t);\n\n\t// Ensure the referrer values is up to update with any\n\tcustomFieldsForm\n\t\t.querySelector( '[name=\"_wp_http_referer\"]' )\n\t\t.setAttribute( 'value', getPathAndQueryString( window.location.href ) );\n\n\tcustomFieldsForm.submit();\n}\n\nexport function CustomFieldsConfirmation( { willEnable } ) {\n\tconst [ isReloading, setIsReloading ] = useState( false );\n\treturn (\n\t\t<>\n\t\t\t<p className=\"edit-post-preferences-modal__custom-fields-confirmation-message\">\n\t\t\t\t{ __(\n\t\t\t\t\t'A page reload is required for this change. Make sure your content is saved before reloading.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t\t<Button\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvariant=\"secondary\"\n\t\t\t\tisBusy={ isReloading }\n\t\t\t\taccessibleWhenDisabled\n\t\t\t\tdisabled={ isReloading }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetIsReloading( true );\n\t\t\t\t\tsubmitCustomFieldsForm();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ willEnable\n\t\t\t\t\t? __( 'Show & Reload Page' )\n\t\t\t\t\t: __( 'Hide & Reload Page' ) }\n\t\t\t</Button>\n\t\t</>\n\t);\n}\n\nexport default function EnableCustomFieldsOption( { label } ) {\n\tconst areCustomFieldsEnabled = useSelect( ( select ) => {\n\t\treturn !! select( editorStore ).getEditorSettings().enableCustomFields;\n\t}, [] );\n\tconst [ isChecked, setIsChecked ] = useState( areCustomFieldsEnabled );\n\n\treturn (\n\t\t<PreferenceBaseOption\n\t\t\tlabel={ label }\n\t\t\tisChecked={ isChecked }\n\t\t\tonChange={ setIsChecked }\n\t\t>\n\t\t\t{ isChecked !== areCustomFieldsEnabled && (\n\t\t\t\t<CustomFieldsConfirmation willEnable={ isChecked } />\n\t\t\t) }\n\t\t</PreferenceBaseOption>\n\t);\n}\n"],
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,qBAAyB;AACzB,kBAAmB;AACnB,wBAAuB;AACvB,kBAA0B;AAC1B,oBAAqC;AACrC,yBAAsD;AACtD,iBAAsC;AAKtC,yBAAuB;AAoBrB;AAlBF,IAAM,EAAE,qBAAqB,QAAI,2BAAQ,mBAAAA,WAAuB;AAEhE,SAAS,yBAAyB;AACjC,QAAM,mBAAmB,SAAS;AAAA,IACjC;AAAA,EACD;AAGA,mBACE,cAAe,2BAA4B,EAC3C,aAAc,aAAS,kCAAuB,OAAO,SAAS,IAAK,CAAE;AAEvE,mBAAiB,OAAO;AACzB;AAEO,SAAS,yBAA0B,EAAE,WAAW,GAAI;AAC1D,QAAM,CAAE,aAAa,cAAe,QAAI,yBAAU,KAAM;AACxD,SACC,4EACC;AAAA,gDAAC,OAAE,WAAU,mEACV;AAAA,MACD;AAAA,IACD,GACD;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACA,uBAAqB;AAAA,QACrB,SAAQ;AAAA,QACR,QAAS;AAAA,QACT,wBAAsB;AAAA,QACtB,UAAW;AAAA,QACX,SAAU,MAAM;AACf,yBAAgB,IAAK;AACrB,iCAAuB;AAAA,QACxB;AAAA,QAEE,2BACC,gBAAI,oBAAqB,QACzB,gBAAI,oBAAqB;AAAA;AAAA,IAC7B;AAAA,KACD;AAEF;AAEe,SAAR,yBAA2C,EAAE,MAAM,GAAI;AAC7D,QAAM,6BAAyB,uBAAW,CAAE,WAAY;AACvD,WAAO,CAAC,CAAE,OAAQ,cAAAC,KAAY,EAAE,kBAAkB,EAAE;AAAA,EACrD,GAAG,CAAC,CAAE;AACN,QAAM,CAAE,WAAW,YAAa,QAAI,yBAAU,sBAAuB;AAErE,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAW;AAAA,MAET,wBAAc,0BACf,4CAAC,4BAAyB,YAAa,WAAY;AAAA;AAAA,EAErD;AAEF;",
"names": ["preferencesPrivateApis", "editorStore"]
}