Encore Helpers
Library to store small shared utils and services that can be used across different application
Install
$ npm install encore-helpers
Documentation
BEMClassGenerator
Generate CSS class name for Encore components
Methods
getBlock - return class name for a block
getBlockWithModifier - return class name for a block with modifier
getElement - return class name for an element inside block (can be only one nesting level)
getElementWithModifier - return class name for an element inside block with modifier
PublisherSubscriber
Allow microFEs to communicate between each other
Library is working with special event format:
{widget name}_{view name}_{event name}
View name could be empty. Widget and event names should use dash as a word separator.
Service provide two groups of connection methods and one helper method for event name generation:
Publish methods
emit - call event on specific HTML element
globalEmit - call event on window
Subscribe methods
subscribe - listen to event on specific HTML element, return unsubscribe function
globalSubscribe - listen to event on window
Helper method
getEventName - return formatted event name
DataAttributesValidator
Methods
validateUrl - throws error with key if value is not valid url
validateString - throws error with key if value is not valid string
validateJson - throws error with key if value is not valid JSON
validateBoolean - throws error with key if value is not valid stringified boolean
validateDate - throws error with key if value is not valid stringified date
validateTime - throws error with key if value is not valid time
validateEnum - throws error with key if value is not excected in provided Enum values available
validateNumber - throws error with key if value is not valid stringified number
Storybook copy button
addStorybookCopyButton - adds copy button to storybook page
removeCopyButton - removes copy button from storybook page