@wordpress/block-editor
Version:
8 lines (7 loc) • 2.08 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../src/hooks/generated-class-name.js"],
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\nimport { hasBlockSupport, getBlockDefaultClassName } from '@wordpress/blocks';\n\n/**\n * Override props assigned to save component to inject generated className if\n * block supports it. This is only applied if the block's save result is an\n * element and not a markup string.\n *\n * @param {Object} extraProps Additional props applied to save element.\n * @param {Object} blockType Block type.\n *\n * @return {Object} Filtered props applied to save element.\n */\nexport function addGeneratedClassName( extraProps, blockType ) {\n\t// Adding the generated className.\n\tif ( hasBlockSupport( blockType, 'className', true ) ) {\n\t\tif ( typeof extraProps.className === 'string' ) {\n\t\t\t// We have some extra classes and want to add the default classname\n\t\t\t// We use uniq to prevent duplicate classnames.\n\n\t\t\textraProps.className = [\n\t\t\t\t...new Set( [\n\t\t\t\t\tgetBlockDefaultClassName( blockType.name ),\n\t\t\t\t\t...extraProps.className.split( ' ' ),\n\t\t\t\t] ),\n\t\t\t]\n\t\t\t\t.join( ' ' )\n\t\t\t\t.trim();\n\t\t} else {\n\t\t\t// There is no string in the className variable,\n\t\t\t// so we just dump the default name in there.\n\t\t\textraProps.className = getBlockDefaultClassName( blockType.name );\n\t\t}\n\t}\n\treturn extraProps;\n}\n\naddFilter(\n\t'blocks.getSaveContent.extraProps',\n\t'core/generated-class-name/save-props',\n\taddGeneratedClassName\n);\n"],
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,mBAA0B;AAC1B,oBAA0D;AAYnD,SAAS,sBAAuB,YAAY,WAAY;AAE9D,UAAK,+BAAiB,WAAW,aAAa,IAAK,GAAI;AACtD,QAAK,OAAO,WAAW,cAAc,UAAW;AAI/C,iBAAW,YAAY;AAAA,QACtB,GAAG,oBAAI,IAAK;AAAA,cACX,wCAA0B,UAAU,IAAK;AAAA,UACzC,GAAG,WAAW,UAAU,MAAO,GAAI;AAAA,QACpC,CAAE;AAAA,MACH,EACE,KAAM,GAAI,EACV,KAAK;AAAA,IACR,OAAO;AAGN,iBAAW,gBAAY,wCAA0B,UAAU,IAAK;AAAA,IACjE;AAAA,EACD;AACA,SAAO;AACR;AAAA,IAEA;AAAA,EACC;AAAA,EACA;AAAA,EACA;AACD;",
"names": []
}