const { translate, print, pureWithoutTitle } = require('../eazax/editor-main-util'); const ConfigManager = require('../common/config-manager'); /** εΎζ 葨 */ const ICON_MAP = { 'scene': 'π₯', 'prefab': 'π ', 'node': 'π²', 'component': 'π§©', 'property': 'π', 'asset': 'π¦', 'asset-info': 'π', 'node-refs': 'π', 'asset-refs': 'π', }; /** * ζε°ζΊ */ const Printer = { /** * ζε°η»ζθ³ζ§εΆε° * @param {object} result */ printResult(result) { if (!result) { return; } const { printDetails, printFolding } = ConfigManager.get(); // ζ εΏδ½ const nodeRefs = [], assetRefs = []; let nodeRefsCount = 0, assetRefsCount = 0; // ιεεΌη¨δΏ‘ζ― for (let refs = result.refs, i = 0, l = refs.length; i < l; i++) { const ref = refs[i], type = ref.type, url = ref.url.replace('db://', '').replace('.meta', ''); if (type === 'scene' || type === 'prefab') { // εΊζ―ζι’εΆδ½ nodeRefs.push(`γγ${ICON_MAP[type]} [${translate(type)}] ${url}`); // θηΉεΌη¨ for (let details = ref.refs, j = 0, l = details.length; j < l; j++) { nodeRefsCount++; // θ―¦ζ if (printDetails) { const detail = details[j]; let item = `γγγγ${ICON_MAP['node']} [${translate('node')}] ${detail.node}`; if (detail.component) { item += ` γβ γ${ICON_MAP['component']} [${translate('component')}] ${detail.component}`; } if (detail.property) { item += ` γβ γ${ICON_MAP['property']} [${translate('property')}] ${detail.property}`; } nodeRefs.push(item); } } } else { // θ΅ζΊεΌη¨ assetRefsCount++; assetRefs.push(`γγ${ICON_MAP['asset']} [${translate(type)}] ${url}`); } } // η»θ£ ζζ¬ const texts = []; // εε²ηΊΏ texts.push(`${'- - '.repeat(36)}`); // εΊη‘δΏ‘ζ― texts.push(`${ICON_MAP['asset-info']} ${translate('asset-info')}`); texts.push(`γγ- ${translate('asset-type')}${result.type}`); texts.push(`γγ- ${translate('asset-uuid')}${result.uuid}`); texts.push(`γγ- ${translate('asset-url')}${result.url}`); texts.push(`γγ- ${translate('asset-path')}${result.path}`); // εε²ηΊΏ texts.push(`${'- - '.repeat(36)}`); // θηΉεΌη¨ if (nodeRefs.length > 0) { texts.push(`${ICON_MAP['node-refs']} ${translate('node-refs')} x ${nodeRefsCount}`); for (let i = 0, l = nodeRefs.length; i < l; i++) { texts.push(nodeRefs[i]); } } // θ΅ζΊεΌη¨ if (assetRefs.length > 0) { texts.push(`${ICON_MAP['asset-refs']} ${translate('asset-refs')} x ${assetRefsCount}`); for (let i = 0, l = assetRefs.length; i < l; i++) { texts.push(assetRefs[i]); } } // η»ε°Ύεε²ηΊΏ texts.push(`${'- - '.repeat(36)}`); // ζε°ε°ζ§εΆε° if (printFolding) { // εθ‘ζε° texts.unshift(`π ${translate('result')} >>>`); print('log', texts.join('\n')); } else { // ιθ‘ζε° print('log', translate('result')); for (let i = 0, l = texts.length; i < l; i++) { pureWithoutTitle(`γγ${texts[i]}`); } } }, }; module.exports = Printer;