| [ Index ] |
PHP Cross Reference of WordPress Trunk (Updated Daily) |
[Summary view] [Print] [Text view]
1 var __create = Object.create; 2 var __defProp = Object.defineProperty; 3 var __getOwnPropDesc = Object.getOwnPropertyDescriptor; 4 var __getOwnPropNames = Object.getOwnPropertyNames; 5 var __getProtoOf = Object.getPrototypeOf; 6 var __hasOwnProp = Object.prototype.hasOwnProperty; 7 var __commonJS = (cb, mod) => function __require() { 8 return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; 9 }; 10 var __copyProps = (to, from, except, desc) => { 11 if (from && typeof from === "object" || typeof from === "function") { 12 for (let key of __getOwnPropNames(from)) 13 if (!__hasOwnProp.call(to, key) && key !== except) 14 __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); 15 } 16 return to; 17 }; 18 var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( 19 // If the importer is in node compatibility mode or this is not an ESM 20 // file that has been converted to a CommonJS file using a Babel- 21 // compatible transform (i.e. "__esModule" has not been set), then set 22 // "default" to the CommonJS "module.exports" for node compatibility. 23 isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, 24 mod 25 )); 26 27 // package-external:@wordpress/data 28 var require_data = __commonJS({ 29 "package-external:@wordpress/data"(exports, module) { 30 module.exports = window.wp.data; 31 } 32 }); 33 34 // package-external:@wordpress/core-data 35 var require_core_data = __commonJS({ 36 "package-external:@wordpress/core-data"(exports, module) { 37 module.exports = window.wp.coreData; 38 } 39 }); 40 41 // package-external:@wordpress/i18n 42 var require_i18n = __commonJS({ 43 "package-external:@wordpress/i18n"(exports, module) { 44 module.exports = window.wp.i18n; 45 } 46 }); 47 48 // package-external:@wordpress/element 49 var require_element = __commonJS({ 50 "package-external:@wordpress/element"(exports, module) { 51 module.exports = window.wp.element; 52 } 53 }); 54 55 // package-external:@wordpress/preferences 56 var require_preferences = __commonJS({ 57 "package-external:@wordpress/preferences"(exports, module) { 58 module.exports = window.wp.preferences; 59 } 60 }); 61 62 // routes/template-part-list/route.ts 63 var import_data4 = __toESM(require_data()); 64 var import_core_data2 = __toESM(require_core_data()); 65 var import_i18n = __toESM(require_i18n()); 66 67 // packages/views/build-module/preference-keys.js 68 function generatePreferenceKey(kind, name, slug) { 69 return `dataviews-$kind}-$name}-$slug}`; 70 } 71 72 // packages/views/build-module/use-view.js 73 var import_element = __toESM(require_element()); 74 var import_data = __toESM(require_data()); 75 var import_preferences = __toESM(require_preferences()); 76 77 // packages/views/build-module/load-view.js 78 var import_data2 = __toESM(require_data()); 79 var import_preferences2 = __toESM(require_preferences()); 80 async function loadView(config) { 81 const { kind, name, slug, defaultView, queryParams } = config; 82 const preferenceKey = generatePreferenceKey(kind, name, slug); 83 const persistedView = (0, import_data2.select)(import_preferences2.store).get( 84 "core/views", 85 preferenceKey 86 ); 87 const baseView = persistedView ?? defaultView; 88 const page = queryParams?.page ?? 1; 89 const search = queryParams?.search ?? ""; 90 return { 91 ...baseView, 92 page, 93 search 94 }; 95 } 96 97 // routes/template-part-list/view-utils.ts 98 var import_data3 = __toESM(require_data()); 99 var import_core_data = __toESM(require_core_data()); 100 var DEFAULT_VIEW = { 101 type: "grid", 102 sort: { 103 field: "date", 104 direction: "desc" 105 }, 106 fields: [], 107 titleField: "title", 108 mediaField: "preview" 109 }; 110 var DEFAULT_VIEWS = [ 111 { 112 slug: "all", 113 label: "All Template Parts", 114 view: { 115 ...DEFAULT_VIEW 116 } 117 }, 118 { 119 slug: "header", 120 label: "Headers", 121 view: { 122 ...DEFAULT_VIEW, 123 filters: [ 124 { 125 field: "area", 126 operator: "is", 127 value: "header" 128 } 129 ] 130 } 131 }, 132 { 133 slug: "footer", 134 label: "Footers", 135 view: { 136 ...DEFAULT_VIEW, 137 filters: [ 138 { 139 field: "area", 140 operator: "is", 141 value: "footer" 142 } 143 ] 144 } 145 }, 146 { 147 slug: "sidebar", 148 label: "Sidebars", 149 view: { 150 ...DEFAULT_VIEW, 151 filters: [ 152 { 153 field: "area", 154 operator: "is", 155 value: "sidebar" 156 } 157 ] 158 } 159 }, 160 { 161 slug: "overlay", 162 label: "Overlays", 163 view: { 164 ...DEFAULT_VIEW, 165 filters: [ 166 { 167 field: "area", 168 operator: "is", 169 value: "overlay" 170 } 171 ] 172 } 173 }, 174 { 175 slug: "uncategorized", 176 label: "General", 177 view: { 178 ...DEFAULT_VIEW, 179 filters: [ 180 { 181 field: "area", 182 operator: "is", 183 value: "uncategorized" 184 } 185 ] 186 } 187 } 188 ]; 189 function getDefaultView(postType, area) { 190 const viewConfig = DEFAULT_VIEWS.find((v) => v.slug === area); 191 return viewConfig?.view || DEFAULT_VIEW; 192 } 193 async function ensureView(area, search) { 194 const postTypeObject = await (0, import_data3.resolveSelect)(import_core_data.store).getPostType("wp_template_part"); 195 const defaultView = getDefaultView(postTypeObject, area); 196 return loadView({ 197 kind: "postType", 198 name: "wp_template_part", 199 slug: area ?? "all", 200 defaultView, 201 queryParams: search 202 }); 203 } 204 function viewToQuery(view) { 205 const result = {}; 206 if (void 0 !== view.perPage) { 207 result.per_page = view.perPage; 208 } 209 if (void 0 !== view.page) { 210 result.page = view.page; 211 } 212 if (![void 0, ""].includes(view.search)) { 213 result.search = view.search; 214 } 215 if (void 0 !== view.sort?.field) { 216 result.orderby = view.sort.field; 217 } 218 if (void 0 !== view.sort?.direction) { 219 result.order = view.sort.direction; 220 } 221 const areaFilter = view.filters?.find( 222 (filter) => filter.field === "area" 223 ); 224 if (areaFilter) { 225 result.area = areaFilter.value; 226 } 227 return result; 228 } 229 230 // routes/template-part-list/route.ts 231 var route = { 232 title: () => (0, import_i18n.__)("Template Parts"), 233 async canvas(context) { 234 const { params, search } = context; 235 const view = await ensureView(params.area, { 236 page: search.page, 237 search: search.search 238 }); 239 if (view.type !== "list") { 240 return void 0; 241 } 242 if (search.postIds && search.postIds.length > 0) { 243 const postId = search.postIds[0].toString(); 244 return { 245 postType: "wp_template_part", 246 postId, 247 isPreview: true, 248 editLink: `/types/wp_template_part/edit/$encodeURIComponent( 249 postId 250 )}` 251 }; 252 } 253 const query = viewToQuery(view); 254 const posts = await (0, import_data4.resolveSelect)(import_core_data2.store).getEntityRecords( 255 "postType", 256 "wp_template_part", 257 { ...query, per_page: 1 } 258 ); 259 if (posts && posts.length > 0) { 260 const postId = posts[0].id.toString(); 261 return { 262 postType: "wp_template_part", 263 postId, 264 isPreview: true, 265 editLink: `/types/wp_template_part/edit/$encodeURIComponent( 266 postId 267 )}` 268 }; 269 } 270 return void 0; 271 } 272 }; 273 export { 274 route 275 };
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated : Tue May 5 08:20:14 2026 | Cross-referenced by PHPXref |