@wordpress/block-editor
Version:
8 lines (7 loc) • 2.45 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../../src/components/block-controls/slot.js"],
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useContext, useMemo } from '@wordpress/element';\nimport {\n\tprivateApis,\n\t__experimentalToolbarContext as ToolbarContext,\n\tToolbarGroup,\n\t__experimentalUseSlotFills as useSlotFills,\n} from '@wordpress/components';\nimport warning from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport groups from './groups';\nimport { unlock } from '../../lock-unlock';\n\nconst { ComponentsContext } = unlock( privateApis );\n\nexport default function BlockControlsSlot( { group = 'default', ...props } ) {\n\tconst toolbarState = useContext( ToolbarContext );\n\tconst contextState = useContext( ComponentsContext );\n\tconst fillProps = useMemo(\n\t\t() => ( {\n\t\t\tforwardedContext: [\n\t\t\t\t[ ToolbarContext.Provider, { value: toolbarState } ],\n\t\t\t\t[ ComponentsContext.Provider, { value: contextState } ],\n\t\t\t],\n\t\t} ),\n\t\t[ toolbarState, contextState ]\n\t);\n\n\tconst slotFill = groups[ group ];\n\tconst fills = useSlotFills( slotFill.name );\n\n\tif ( ! slotFill ) {\n\t\twarning( `Unknown BlockControls group \"${ group }\" provided.` );\n\t\treturn null;\n\t}\n\n\tif ( ! fills?.length ) {\n\t\treturn null;\n\t}\n\n\tconst { Slot } = slotFill;\n\tconst slot = <Slot { ...props } bubblesVirtually fillProps={ fillProps } />;\n\n\tif ( group === 'default' ) {\n\t\treturn slot;\n\t}\n\n\treturn <ToolbarGroup>{ slot }</ToolbarGroup>;\n}\n"],
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,qBAAoC;AACpC,wBAKO;AACP,qBAAoB;AAKpB,oBAAmB;AACnB,yBAAuB;AA8BT;AA5Bd,IAAM,EAAE,kBAAkB,QAAI,2BAAQ,6BAAY;AAEnC,SAAR,kBAAoC,EAAE,QAAQ,WAAW,GAAG,MAAM,GAAI;AAC5E,QAAM,mBAAe,2BAAY,kBAAAA,4BAAe;AAChD,QAAM,mBAAe,2BAAY,iBAAkB;AACnD,QAAM,gBAAY;AAAA,IACjB,OAAQ;AAAA,MACP,kBAAkB;AAAA,QACjB,CAAE,kBAAAA,6BAAe,UAAU,EAAE,OAAO,aAAa,CAAE;AAAA,QACnD,CAAE,kBAAkB,UAAU,EAAE,OAAO,aAAa,CAAE;AAAA,MACvD;AAAA,IACD;AAAA,IACA,CAAE,cAAc,YAAa;AAAA,EAC9B;AAEA,QAAM,WAAW,cAAAC,QAAQ,KAAM;AAC/B,QAAM,YAAQ,kBAAAC,4BAAc,SAAS,IAAK;AAE1C,MAAK,CAAE,UAAW;AACjB,uBAAAC,SAAS,gCAAiC,KAAM,aAAc;AAC9D,WAAO;AAAA,EACR;AAEA,MAAK,CAAE,OAAO,QAAS;AACtB,WAAO;AAAA,EACR;AAEA,QAAM,EAAE,KAAK,IAAI;AACjB,QAAM,OAAO,4CAAC,QAAO,GAAG,OAAQ,kBAAgB,MAAC,WAAwB;AAEzE,MAAK,UAAU,WAAY;AAC1B,WAAO;AAAA,EACR;AAEA,SAAO,4CAAC,kCAAe,gBAAM;AAC9B;",
"names": ["ToolbarContext", "groups", "useSlotFills", "warning"]
}