window
: window
Global window object.
Kind: global typedef
Emits: event:et_builder_api_ready
ETBuilderModule
: React.Component
| object
Custom module for the Divi Builder.
Kind: global typedef
Static Properties (Required)
Name | Type | Description |
slug | The module’s slug, as defined in its PHP class |
Methods (Required)
API
Divi Builder API object passed to registered callbacks of the event: et_builder_api_ready
event.
Kind: global constant
API
.Modules
.register
(modules)
.Utils
._()
.classnames()
⇒string
.decodeOptionListValue(encoded_value)
⇒object
.fontnameToClass(font_name)
⇒string
.linkRel(saved_value)
⇒string
.maybeLoadFont(font_name)
.processFontIcon(icon, is_down_icon)
⇒string
.setElementFont(font_data, use_important, default_values)
⇒string
.hasValue(value)
⇒boolean
.generateStyles(moduleArgs)
⇒array
.isRegistered(slug)
⇒boolean
.registerModules(modules)
API.Modules
Manage custom modules.
Kind: static property of API
Since: 3.1
Modules.register(modules)
Register one or more custom modules.
Kind: static method of Modules
Since: 3.1
Param | Type | Description |
modules | Modules to register. |
API.Utils
Useful functions
Kind: static property of API
Since: 3.1
.Utils
._()
.classnames()
⇒string
.decodeOptionListValue(encoded_value)
⇒object
.fontnameToClass(font_name)
⇒string
.linkRel(saved_value)
⇒string
.maybeLoadFont(font_name)
.processFontIcon(icon, is_down_icon)
⇒string
.setElementFont(font_data, use_important, default_values)
⇒string
.hasValue(value)
⇒boolean
.generateStyles(moduleArgs)
⇒array
Utils._()
Lodash - A modern JavaScript utility library delivering modularity, performance & extras.
Kind: static method of Utils
License: MIT
Copyright: JS Foundation and other contributors https://js.foundation/
Utils.classnames()
⇒ string
Generates className
value based on the args provided. Takes any number of args, which can be a string or an object. The argument foo
is short for { foo: true }
.
If the value associated with a given key is falsy, the key won’t be included in the output.
Kind: static method of Utils
License: MIT
Copyright: 2017 Jed Watson
Examples:
classNames('foo', 'bar'); // => 'foo bar' classNames('foo', { bar: true }); // => 'foo bar' classNames({ 'foo-bar': true }); // => 'foo-bar' classNames({ 'foo-bar': false }); // => '' classNames({ foo: true }, { bar: true }); // => 'foo bar' classNames({ foo: true, bar: true }); // => 'foo bar'
Utils.decodeOptionListValue(encoded_value)
⇒ object
Decode the string value of option_list
module setting field type.
Kind: static method of Utils
Since: 3.1
Param | Type | Description |
encoded_value | Value to be decoded |
Utils.fontnameToClass(font_name
) ⇒ string
Returns CSS class for a Google font.
Kind: static method of Utils
Param | Type | Description |
font_name | Font name for which to return a CSS class |
Utils.linkRel(saved_value)
⇒ string
Generate link rel HTML attribute value based on a value saved in a module’s settings.
Kind: static method of Utils
Since: 3.1
Param | Type | Description |
saved_value | Value saved in module settings |
Utils.maybeLoadFont(font_name)
Loads a Google Font if it hasn’t already been loaded.
Kind: static method of Utils
Since: 3.1
Param | Type | Description |
font_name | The name of the font to load |
Utils.processFontIcon(icon, is_down_icon)
⇒ string
Generates HTML for a saved font-based icon value.
Kind: static method of Utils
Since: 3.1
Param | Type | Description |
icon | The saved icon value | |
is_down_icon | Whether or not the icon is one of the down arrow icons |
Utils.setElementFont(font_data, use_important, default_values)
⇒ string
Generates font-related CSS style properties from font data saved in a module’s settings.
Kind: static method of Utils
Since: 3.1
Param | Type | Description |
font_data | Font data saved in module settings | |
use_important | Whether or not to use | |
default_values | Mapping of default values for the font settings |
Utils.hasValue(value)
⇒ boolean
Check whether the given value can be printed or not (string). Originally, it was a simpler way to check against the empty string, but later, several checks were added to avoid unnecessary repetition. A value is considered empty if:
is an empty string
is undefined
is false
is NaN
Kind: static method of Utils
Since: 4.14.9
Param | Type | Description |
value | Value to check. |
Utils.generateStyles(moduleArgs)
⇒ array
Use the Responsive.generateResponsiveCSS
with addition to generating sticky state styles if the module enables it.
Kind: static method of Utils
Since: 4.17.5
Param | Type | Description |
moduleArgs | Module arguments. |
Examples:
/** * Module arguments. * * @typedef moduleArgs * @type {Object} * @property {string} address: '' * @property {Object} attrs: {} * @property {string} name: '' * @property {string} defaultValue: '' * @property {string} type: '' * @property {boolean} forceReturn: false * @property {string} selector: '%%order_class%%' * @property {string} cssProperty: '' * @property {boolean} important: false * @property {boolean} hover: true * @property {boolean} sticky: true * @property {boolean} responsive: true * @property {null|boolean} isStickyModule: null * @property {string} stickyPseudoSelectorLocation: 'order_class' *//** * Hello World module inline styling. * * @param {Object} props Module attribute names and values. * @param {Object} moduleInfo Module info. * * @return array */ static css(props, moduleInfo) { const additionalCSS = []; const { generateStyles, } = window.ET_Builder.API.Utils; /** * Box colors arguments. * * @var {moduleArgs} */ const boxColorsArgs = { attrs: props, name: 'box_color', selector: '%%order_class%% .smpl-hello-world-box-area', cssProperty: 'background-color', }; const boxColors = generateStyles(boxColorsArgs); /** * boxColors output: * * [ * { * selector: '%%order_class%% .smpl-hello-world-box-area', * declaration: 'background-color: red;', * device: 'desktop', // desktop, tablet, phone * } * ] */ additionalCSS.push(boxColors); return additionalCSS; }
API.isRegistered(slug)
⇒ boolean
Whether or not a component is registered.
Kind: static method of API
Since: 3.1
Param | Type | Description |
slug | The component’s slug |
API.registerModules(modules)
Convenience wrapper for register
Kind: static method of API
Since: 3.1
Param | Type | Description |
modules | Modules to register. |