@wordpress/components
Version:
UI components for WordPress.
36 lines (33 loc) • 881 B
JavaScript
/**
* Internal dependencies
*/
import { CONNECTED_NAMESPACE, COMPONENT_NAMESPACE } from './constants';
/**
* Creates a dedicated context namespace HTML attribute for components.
* ns is short for "namespace"
*
* @example
* ```jsx
* <div {...ns('Container')} />
* ```
*
* @param {string} componentName The name for the component.
* @return {Record<string, any>} A props object with the namespaced HTML attribute.
*/
export function getNamespace( componentName ) {
return { [ COMPONENT_NAMESPACE ]: componentName };
}
/**
* Creates a dedicated connected context namespace HTML attribute for components.
* ns is short for "namespace"
*
* @example
* ```jsx
* <div {...cns()} />
* ```
*
* @return {Record<string, any>} A props object with the namespaced HTML attribute.
*/
export function getConnectedNamespace() {
return { [ CONNECTED_NAMESPACE ]: true };
}