Path: blob/main/src/vs/platform/dialogs/electron-browser/dialog.ts
3296 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import { fromNow } from '../../../base/common/date.js';6import { isLinuxSnap } from '../../../base/common/platform.js';7import { localize } from '../../../nls.js';8import { IOSProperties } from '../../native/common/native.js';9import { IProductService } from '../../product/common/productService.js';10import { process } from '../../../base/parts/sandbox/electron-browser/globals.js';1112export function createNativeAboutDialogDetails(productService: IProductService, osProps: IOSProperties): { title: string; details: string; detailsToCopy: string } {13let version = productService.version;14if (productService.target) {15version = `${version} (${productService.target} setup)`;16} else if (productService.darwinUniversalAssetId) {17version = `${version} (Universal)`;18}1920const getDetails = (useAgo: boolean): string => {21return localize({ key: 'aboutDetail', comment: ['Electron, Chromium, Node.js and V8 are product names that need no translation'] },22"Version: {0}\nCommit: {1}\nDate: {2}\nElectron: {3}\nElectronBuildId: {4}\nChromium: {5}\nNode.js: {6}\nV8: {7}\nOS: {8}",23version,24productService.commit || 'Unknown',25productService.date ? `${productService.date}${useAgo ? ' (' + fromNow(new Date(productService.date), true) + ')' : ''}` : 'Unknown',26process.versions['electron'],27process.versions['microsoft-build'],28process.versions['chrome'],29process.versions['node'],30process.versions['v8'],31`${osProps.type} ${osProps.arch} ${osProps.release}${isLinuxSnap ? ' snap' : ''}`32);33};3435const details = getDetails(true);36const detailsToCopy = getDetails(false);3738return {39title: productService.nameLong,40details: details,41detailsToCopy: detailsToCopy42};43}444546