PluginProbe
Parse.ly / 3.24.2
Parse.ly v3.24.2
3.24.3 3.24.2 3.24.1 3.24.0 3.23.7 3.23.6 3.23.5 3.23.4 3.23.3 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.17.0 3.18.0 3.18.1 3.19.0 3.19.1 3.19.2 3.19.3 3.2.0 3.2.1 3.20.0 3.20.1 All 107 releases
wp-parsely / src / content-helper / common / content-helper-error-message.tsx

content-helper-error-message.tsx in Parse.ly 3.24.2, at src/content-helper/common/content-helper-error-message.tsx

73 lines 1.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /**
2 * WordPress dependencies
3 */
4 import { __ } from '@wordpress/i18n';
5
6 /**
7 * Defines the props structure for ContentHelperErrorMessage.
8 *
9 * @since 3.9.0
10 */
11 export interface ContentHelperErrorMessageProps {
12 children?: string;
13 className?: string;
14 testId?: string
15 }
16
17 /**
18 * Returns an error message JSX Element that can contain HTML.
19 *
20 * Warning: Any HTML passed to this function must be sanitized.
21 *
22 * @since 3.9.0
23 *
24 * @param {ContentHelperErrorMessageProps} props The error message's props.
25 *
26 * @return {import('react').JSX.Element} The error message JSX Element.
27 */
28 export const ContentHelperErrorMessage = (
29 props: ContentHelperErrorMessageProps|null = null
30 ): React.JSX.Element => {
31 let innerHtml = '';
32 if ( props?.children ) {
33 innerHtml = props.children;
34 }
35
36 let classNames = 'content-helper-error-message';
37 if ( props?.className ) {
38 classNames += ' ' + props.className;
39 }
40
41 return (
42 <div className={ classNames }
43 data-testid={ props?.testId }
44 dangerouslySetInnerHTML={ { __html: innerHtml } }
45 />
46 );
47 };
48
49 /**
50 * Returns a customized error message JSX Element for when credentials are
51 * empty.
52 *
53 * @since 3.9.0
54 *
55 * @param {ContentHelperErrorMessageProps|null} props The error message's props.
56 *
57 * @return {import('react').JSX.Element} The error message JSX Element.
58 */
59 export const EmptyCredentialsMessage = (
60 props: ContentHelperErrorMessageProps|null = null
61 ): React.JSX.Element => {
62 return (
63 <ContentHelperErrorMessage
64 className={ props?.className }
65 testId="empty-credentials-message">
66 { window.wpParselyEmptyCredentialsMessage ?? __(
67 "Please ensure that the Site ID and API Secret given in the plugin's settings are correct.",
68 'wp-parsely'
69 ) }
70 </ContentHelperErrorMessage>
71 );
72 };
73