1// Global Vue components 2VueView.component('field-pageUrl', 'pages:assets/vue-components/field-page-url.js'); 3VueView.component('field-seo', 'pages:assets/vue-components/field-seo.js'); 4VueView.component('field-collectionpageitems', 'pages:assets/vue-components/field-collectionpageitems.js'); 5 6 7App.on('field-richtext-init', evt => { 8 let editor = evt.params[0]; 9 10 editor.extensionManager.extensions.forEach(ext => { 11 switch (ext.name) { 12 case 'link': 13 ext.options.protocols.push('pages') 14 break; 15 } 16 }); 17}); 18 19App.on('field-richtext-link-sources', evt => { 20 let link = evt.params[0]; 21 22 link.sources['Pages'] = () => { 23 24 VueView.ui.offcanvas('pages:assets/dialogs/page-picker.js', {}, { 25 26 select: (page, locale) => { 27 28 link.href = `pages://${page._id}`+((locale && locale != 'default' && `?locale=${locale}`) || ''); 29 } 30 31 }); 32 }; 33}); 34 35App.utils.selectPage = function(callback, opts = {}, flip = true) { 36 37 VueView.ui.offcanvas('pages:assets/dialogs/page-picker.js', opts, { 38 39 select: (page, locale) => { 40 callback(page, locale); 41 } 42 43 }, {flip}); 44}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.