UNPKG

@wordpress/block-editor

Version:
65 lines (59 loc) 2.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.allPatternsCategory = exports.INSERTER_SYNC_TYPES = exports.INSERTER_PATTERN_TYPES = void 0; exports.isPatternFiltered = isPatternFiltered; exports.starterPatternsCategory = exports.myPatternsCategory = void 0; var _i18n = require("@wordpress/i18n"); /** * WordPress dependencies */ const INSERTER_PATTERN_TYPES = exports.INSERTER_PATTERN_TYPES = { user: 'user', theme: 'theme', directory: 'directory' }; const INSERTER_SYNC_TYPES = exports.INSERTER_SYNC_TYPES = { full: 'fully', unsynced: 'unsynced' }; const allPatternsCategory = exports.allPatternsCategory = { name: 'allPatterns', label: (0, _i18n._x)('All', 'patterns') }; const myPatternsCategory = exports.myPatternsCategory = { name: 'myPatterns', label: (0, _i18n.__)('My patterns') }; const starterPatternsCategory = exports.starterPatternsCategory = { name: 'core/starter-content', label: (0, _i18n.__)('Starter content') }; function isPatternFiltered(pattern, sourceFilter, syncFilter) { const isUserPattern = pattern.name.startsWith('core/block'); const isDirectoryPattern = pattern.source === 'core' || pattern.source?.startsWith('pattern-directory'); // If theme source selected, filter out user created patterns and those from // the core patterns directory. if (sourceFilter === INSERTER_PATTERN_TYPES.theme && (isUserPattern || isDirectoryPattern)) { return true; } // If the directory source is selected, filter out user created patterns // and those bundled with the theme. if (sourceFilter === INSERTER_PATTERN_TYPES.directory && (isUserPattern || !isDirectoryPattern)) { return true; } // If user source selected, filter out theme patterns. if (sourceFilter === INSERTER_PATTERN_TYPES.user && pattern.type !== INSERTER_PATTERN_TYPES.user) { return true; } // Filter by sync status. if (syncFilter === INSERTER_SYNC_TYPES.full && pattern.syncStatus !== '') { return true; } if (syncFilter === INSERTER_SYNC_TYPES.unsynced && pattern.syncStatus !== 'unsynced' && isUserPattern) { return true; } return false; } //# sourceMappingURL=utils.js.map