From 386c61c90b55e43ce9c0c8deb3b19beb7cf13d1c Mon Sep 17 00:00:00 2001 From: Ben Brown Date: Wed, 10 Mar 2021 17:05:26 -0600 Subject: [PATCH 1/7] Hide deprecated "custom runtime" related features for adaptive rutime --- .../runtime-settings/RuntimeSettings.tsx | 37 +++++++++++++------ 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx index 82b5e1eccb..96d5dadc82 100644 --- a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx +++ b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx @@ -5,6 +5,7 @@ import { jsx } from '@emotion/core'; import { useState, Fragment, useEffect } from 'react'; import formatMessage from 'format-message'; +import { mergeStyleSets } from '@uifabric/styling'; import { Toggle } from 'office-ui-fabric-react/lib/Toggle'; import { DefaultButton } from 'office-ui-fabric-react/lib/Button'; import { TextField } from 'office-ui-fabric-react/lib/TextField'; @@ -43,6 +44,11 @@ import { type RuntimeType = 'path' | 'command'; +/** Determine if a bot is configured to use the adaptive runtime vs the legacy runtime */ +export const isAdaptiveRuntime = (settings: DialogSetting): boolean => { + return settings?.runtime?.key === 'csharp-azurewebapp-v2' || settings?.runtime?.key.match(/^adaptive-runtime/); +}; + export const RuntimeSettings: React.FC> = (props) => { const { projectId = '' } = props; const botName = useRecoilValue(botDisplayNameState(projectId)); @@ -67,11 +73,13 @@ export const RuntimeSettings: React.FC { // check the status of the boilerplate material and see if it requires an update if (projectId) getBoilerplateVersion(projectId); + setIsAdaptive(isAdaptiveRuntime(settings)); }, [projectId]); useEffect(() => { @@ -225,7 +233,7 @@ export const RuntimeSettings: React.FC {header()} - {toggleOfCustomRuntime()} + {!isAdaptive && toggleOfCustomRuntime()}
handleRuntimeSettingOnBlur('path')} onChange={handleRuntimeSettingOnChange('path')} onRenderLabel={onRenderLabel} /> - {formatMessage('Or: ')} - - {formatMessage('Get a new copy of the runtime code')} - - + {!isAdaptive && ( +
+ {formatMessage('Or: ')} + + {formatMessage('Get a new copy of the runtime code')} + +
+ )} +
+
handleRuntimeSettingOnBlur('command')} onChange={handleRuntimeSettingOnChange('command')} From 08d6415ed57829d9276ea5a98982604cd9b695c7 Mon Sep 17 00:00:00 2001 From: Ben Brown Date: Wed, 10 Mar 2021 17:14:17 -0600 Subject: [PATCH 2/7] hide ability to change path --- .../runtime-settings/RuntimeSettings.tsx | 26 ++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx index 96d5dadc82..5498c3b78c 100644 --- a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx +++ b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx @@ -235,18 +235,20 @@ export const RuntimeSettings: React.FC - handleRuntimeSettingOnBlur('path')} - onChange={handleRuntimeSettingOnChange('path')} - onRenderLabel={onRenderLabel} - /> + {!isAdaptive && ( + handleRuntimeSettingOnBlur('path')} + onChange={handleRuntimeSettingOnChange('path')} + onRenderLabel={onRenderLabel} + /> + )} {!isAdaptive && (
{formatMessage('Or: ')} From 0eb2a0215c4ce8cceccf55d3f68c0c8605745c56 Mon Sep 17 00:00:00 2001 From: Ben Brown Date: Thu, 18 Mar 2021 16:27:38 -0500 Subject: [PATCH 3/7] fix type --- .../runtime-settings/RuntimeSettings.tsx | 6 +- .../packages/server-workers/lib/logger.d.ts | 4 + .../server-workers/lib/logger.d.ts.map | 1 + .../packages/server-workers/lib/logger.js | 8 ++ .../packages/server-workers/lib/logger.js.map | 1 + .../server-workers/lib/server-worker.d.ts | 17 ++++ .../server-workers/lib/server-worker.d.ts.map | 1 + .../server-workers/lib/server-worker.js | 64 +++++++++++++ .../server-workers/lib/server-worker.js.map | 1 + .../lib/workers/dialogMerge.worker.d.ts | 5 + .../lib/workers/dialogMerge.worker.d.ts.map | 1 + .../lib/workers/dialogMerge.worker.js | 34 +++++++ .../lib/workers/dialogMerge.worker.js.map | 1 + .../workers/templateInstallation.worker.d.ts | 8 ++ .../templateInstallation.worker.d.ts.map | 1 + .../workers/templateInstallation.worker.js | 93 +++++++++++++++++++ .../templateInstallation.worker.js.map | 1 + 17 files changed, 246 insertions(+), 1 deletion(-) create mode 100644 Composer/packages/server-workers/lib/logger.d.ts create mode 100644 Composer/packages/server-workers/lib/logger.d.ts.map create mode 100644 Composer/packages/server-workers/lib/logger.js create mode 100644 Composer/packages/server-workers/lib/logger.js.map create mode 100644 Composer/packages/server-workers/lib/server-worker.d.ts create mode 100644 Composer/packages/server-workers/lib/server-worker.d.ts.map create mode 100644 Composer/packages/server-workers/lib/server-worker.js create mode 100644 Composer/packages/server-workers/lib/server-worker.js.map create mode 100644 Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts create mode 100644 Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts.map create mode 100644 Composer/packages/server-workers/lib/workers/dialogMerge.worker.js create mode 100644 Composer/packages/server-workers/lib/workers/dialogMerge.worker.js.map create mode 100644 Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts create mode 100644 Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts.map create mode 100644 Composer/packages/server-workers/lib/workers/templateInstallation.worker.js create mode 100644 Composer/packages/server-workers/lib/workers/templateInstallation.worker.js.map diff --git a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx index 5498c3b78c..bcda935cf6 100644 --- a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx +++ b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx @@ -16,6 +16,7 @@ import { RouteComponentProps } from '@reach/router'; import { useRecoilValue } from 'recoil'; import { Spinner } from 'office-ui-fabric-react/lib/Spinner'; import { OpenConfirmModal } from '@bfc/ui-shared'; +import { DialogSetting } from '@botframework-composer/types'; import { dispatcherState, @@ -46,7 +47,10 @@ type RuntimeType = 'path' | 'command'; /** Determine if a bot is configured to use the adaptive runtime vs the legacy runtime */ export const isAdaptiveRuntime = (settings: DialogSetting): boolean => { - return settings?.runtime?.key === 'csharp-azurewebapp-v2' || settings?.runtime?.key.match(/^adaptive-runtime/); + return ( + settings?.runtime?.key === 'csharp-azurewebapp-v2' || + (settings?.runtime?.key.match(/^adaptive-runtime/) ? true : false) + ); }; export const RuntimeSettings: React.FC> = (props) => { diff --git a/Composer/packages/server-workers/lib/logger.d.ts b/Composer/packages/server-workers/lib/logger.d.ts new file mode 100644 index 0000000000..e5e8da007c --- /dev/null +++ b/Composer/packages/server-workers/lib/logger.d.ts @@ -0,0 +1,4 @@ +import debug from 'debug'; +declare const _default: debug.Debugger; +export default _default; +//# sourceMappingURL=logger.d.ts.map diff --git a/Composer/packages/server-workers/lib/logger.d.ts.map b/Composer/packages/server-workers/lib/logger.d.ts.map new file mode 100644 index 0000000000..c6a19ded66 --- /dev/null +++ b/Composer/packages/server-workers/lib/logger.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;;AAC1B,wBAAwC"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/logger.js b/Composer/packages/server-workers/lib/logger.js new file mode 100644 index 0000000000..7d6911c327 --- /dev/null +++ b/Composer/packages/server-workers/lib/logger.js @@ -0,0 +1,8 @@ +'use strict'; +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +Object.defineProperty(exports, '__esModule', { value: true }); +const tslib_1 = require('tslib'); +const debug_1 = tslib_1.__importDefault(require('debug')); +exports.default = debug_1.default('composer:worker'); +//# sourceMappingURL=logger.js.map diff --git a/Composer/packages/server-workers/lib/logger.js.map b/Composer/packages/server-workers/lib/logger.js.map new file mode 100644 index 0000000000..eb571245cb --- /dev/null +++ b/Composer/packages/server-workers/lib/logger.js.map @@ -0,0 +1 @@ +{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,0DAA0B;AAC1B,kBAAe,eAAK,CAAC,iBAAiB,CAAC,CAAC"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/server-worker.d.ts b/Composer/packages/server-workers/lib/server-worker.d.ts new file mode 100644 index 0000000000..c7d95480ac --- /dev/null +++ b/Composer/packages/server-workers/lib/server-worker.d.ts @@ -0,0 +1,17 @@ +import type { TemplateInstallationArgs } from './workers/templateInstallation.worker'; +import type { DialogMergeArgs } from './workers/dialogMerge.worker'; +export declare type WorkerName = 'dialogMerge' | 'templateInstallation'; +export declare class ServerWorker { + static execute( + workerName: 'dialogMerge', + args: DialogMergeArgs, + updateProcess?: (status: number, message: string) => void + ): any; + static execute( + workerName: 'templateInstallation', + args: TemplateInstallationArgs, + updateProcess?: (status: number, message: string) => void + ): any; + private static getWorkerPath; +} +//# sourceMappingURL=server-worker.d.ts.map diff --git a/Composer/packages/server-workers/lib/server-worker.d.ts.map b/Composer/packages/server-workers/lib/server-worker.d.ts.map new file mode 100644 index 0000000000..3d164ab07a --- /dev/null +++ b/Composer/packages/server-workers/lib/server-worker.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"server-worker.d.ts","sourceRoot":"","sources":["../src/server-worker.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAKpE,oBAAY,UAAU,GAAG,aAAa,GAAG,sBAAsB,CAAC;AAEhE,qBAAa,YAAY;WACH,OAAO,CACzB,UAAU,EAAE,aAAa,EACzB,IAAI,EAAE,eAAe,EACrB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI;WAEvC,OAAO,CACzB,UAAU,EAAE,sBAAsB,EAClC,IAAI,EAAE,wBAAwB,EAC9B,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI;IA6C3D,OAAO,CAAC,MAAM,CAAC,aAAa;CAW7B"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/server-worker.js b/Composer/packages/server-workers/lib/server-worker.js new file mode 100644 index 0000000000..5453fed428 --- /dev/null +++ b/Composer/packages/server-workers/lib/server-worker.js @@ -0,0 +1,64 @@ +'use strict'; +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +Object.defineProperty(exports, '__esModule', { value: true }); +const tslib_1 = require('tslib'); +const path_1 = tslib_1.__importDefault(require('path')); +const worker_threads_1 = require('worker_threads'); +// eslint-disable-next-line @typescript-eslint/no-explicit-any +const isElectron = process.versions && process.versions.electron; +class ServerWorker { + static execute( + workerName, + args, + /** + * Callback to update BackgroundProcessManager + */ + updateProcess + ) { + return tslib_1.__awaiter(this, void 0, void 0, function* () { + return new Promise((resolve, reject) => { + // used to reject in case of an unhandled error + let hasRejected = false; + const w = new worker_threads_1.Worker(this.getWorkerPath(workerName), { + workerData: args, + }); + w.on('error', (err) => { + reject(err); + hasRejected = true; + }); + w.on('exit', (code) => { + if (code === 0) { + resolve(); + } else if (!hasRejected) { + reject(new Error(`Unknown error in ${workerName} worker.`)); + } + }); + w.on('message', (message) => { + if (message === null || message === void 0 ? void 0 : message.error) { + reject(message.error); + hasRejected = true; + } + if (message === null || message === void 0 ? void 0 : message.status) { + // TODO: should this take a dependency on BackgroundProcessManager? + if (typeof updateProcess === 'function') + updateProcess(202, message === null || message === void 0 ? void 0 : message.status); + } + }); + }); + }); + } + static getWorkerPath(workerName) { + if (isElectron) { + return path_1.default.join( + // eslint-disable-next-line @typescript-eslint/no-explicit-any + process.resourcesPath, + `app.asar.unpacked/node_modules/@bfc/server-workers/lib/workers/${workerName}.worker.js` + ); + } else { + return path_1.default.resolve(__dirname, `./workers/${workerName}.worker.js`); + } + } +} +exports.ServerWorker = ServerWorker; +//# sourceMappingURL=server-worker.js.map diff --git a/Composer/packages/server-workers/lib/server-worker.js.map b/Composer/packages/server-workers/lib/server-worker.js.map new file mode 100644 index 0000000000..26d9b049c2 --- /dev/null +++ b/Composer/packages/server-workers/lib/server-worker.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server-worker.js","sourceRoot":"","sources":["../src/server-worker.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wDAAwB;AACxB,mDAAwC;AAKxC,8DAA8D;AAC9D,MAAM,UAAU,GAAY,OAAO,CAAC,QAAQ,IAAK,OAAO,CAAC,QAAgB,CAAC,QAAQ,CAAC;AAInF,MAAa,YAAY;IAWhB,MAAM,CAAO,OAAO,CACzB,UAAsB,EACtB,IAAO;IACP;;OAEG;IACH,aAAyD;;YAEzD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,+CAA+C;gBAC/C,IAAI,WAAW,GAAG,KAAK,CAAC;gBAExB,MAAM,CAAC,GAAG,IAAI,uBAAM,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE;oBACnD,UAAU,EAAE,IAAI;iBACjB,CAAC,CAAC;gBAEH,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;oBACpB,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,WAAW,GAAG,IAAI,CAAC;gBACrB,CAAC,CAAC,CAAC;gBAEH,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;oBACpB,IAAI,IAAI,KAAK,CAAC,EAAE;wBACd,OAAO,EAAE,CAAC;qBACX;yBAAM,IAAI,CAAC,WAAW,EAAE;wBACvB,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,UAAU,UAAU,CAAC,CAAC,CAAC;qBAC7D;gBACH,CAAC,CAAC,CAAC;gBAEH,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;oBAC1B,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,EAAE;wBAClB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;wBACtB,WAAW,GAAG,IAAI,CAAC;qBACpB;oBAED,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,EAAE;wBACnB,mEAAmE;wBACnE,IAAI,OAAO,aAAa,KAAK,UAAU;4BAAE,aAAa,CAAC,GAAG,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAC,CAAC;qBAC9E;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAEO,MAAM,CAAC,aAAa,CAAC,UAAsB;QACjD,IAAI,UAAU,EAAE;YACd,OAAO,cAAI,CAAC,IAAI;YACd,8DAA8D;YAC7D,OAAe,CAAC,aAAa,EAC9B,kEAAkE,UAAU,YAAY,CACzF,CAAC;SACH;aAAM;YACL,OAAO,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,UAAU,YAAY,CAAC,CAAC;SACrE;IACH,CAAC;CACF;AAjED,oCAiEC"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts new file mode 100644 index 0000000000..dc5bf9b0fd --- /dev/null +++ b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts @@ -0,0 +1,5 @@ +export declare type DialogMergeArgs = { + manifestFile: string; + currentProjectDataDir: string; +}; +//# sourceMappingURL=dialogMerge.worker.d.ts.map diff --git a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts.map b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts.map new file mode 100644 index 0000000000..20aef88261 --- /dev/null +++ b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"dialogMerge.worker.d.ts","sourceRoot":"","sources":["../../src/workers/dialogMerge.worker.ts"],"names":[],"mappings":"AAmCA,oBAAY,eAAe,GAAG;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js new file mode 100644 index 0000000000..78722779f8 --- /dev/null +++ b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js @@ -0,0 +1,34 @@ +'use strict'; +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +Object.defineProperty(exports, '__esModule', { value: true }); +const tslib_1 = require('tslib'); +const path_1 = tslib_1.__importDefault(require('path')); +const worker_threads_1 = require('worker_threads'); +const schemaMerger_1 = require('@microsoft/bf-dialog/lib/library/schemaMerger'); +const logger_1 = tslib_1.__importDefault(require('../logger')); +const log = logger_1.default.extend('dialogMerge'); +if (!worker_threads_1.isMainThread) { + const realMerge = new schemaMerger_1.SchemaMerger( + [worker_threads_1.workerData.manifestFile, '!**/imported/**', '!**/generated/**'], + path_1.default.join(worker_threads_1.workerData.currentProjectDataDir, 'schemas/sdk'), + path_1.default.join(worker_threads_1.workerData.currentProjectDataDir, 'dialogs/imported'), + false, + false, + log.extend('info'), + log.extend('warn'), + log.extend('error') + ); + realMerge + .merge() + .then(() => { + process.exit(0); + }) + .catch((err) => { + worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 + ? void 0 + : worker_threads_1.parentPort.postMessage({ error: err }); + process.exit(1); + }); +} +//# sourceMappingURL=dialogMerge.worker.js.map diff --git a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js.map b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js.map new file mode 100644 index 0000000000..1f97789990 --- /dev/null +++ b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dialogMerge.worker.js","sourceRoot":"","sources":["../../src/workers/dialogMerge.worker.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wDAAwB;AACxB,mDAAsE;AAEtE,gFAA6E;AAE7E,+DAA+B;AAE/B,MAAM,GAAG,GAAG,gBAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzC,IAAI,CAAC,6BAAY,EAAE;IACjB,MAAM,SAAS,GAAG,IAAI,2BAAY,CAChC,CAAC,2BAAU,CAAC,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,CAAC,EAChE,cAAI,CAAC,IAAI,CAAC,2BAAU,CAAC,qBAAqB,EAAE,aAAa,CAAC,EAC1D,cAAI,CAAC,IAAI,CAAC,2BAAU,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,EAC/D,KAAK,EACL,KAAK,EACL,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAClB,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAClB,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CACpB,CAAC;IAEF,SAAS;SACN,KAAK,EAAE;SACP,IAAI,CAAC,GAAG,EAAE;QACT,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,2BAAU,aAAV,2BAAU,uBAAV,2BAAU,CAAE,WAAW,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;CACN"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts new file mode 100644 index 0000000000..56004a1514 --- /dev/null +++ b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts @@ -0,0 +1,8 @@ +export declare type TemplateInstallationArgs = { + npmPackageName: string; + templateVersion: string; + dstDir: string; + projectName: string; + templateGeneratorPath: string; +}; +//# sourceMappingURL=templateInstallation.worker.d.ts.map diff --git a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts.map b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts.map new file mode 100644 index 0000000000..7e8aac9b5a --- /dev/null +++ b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"templateInstallation.worker.d.ts","sourceRoot":"","sources":["../../src/workers/templateInstallation.worker.ts"],"names":[],"mappings":"AA2FA,oBAAY,wBAAwB,GAAG;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js new file mode 100644 index 0000000000..17436f6630 --- /dev/null +++ b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js @@ -0,0 +1,93 @@ +'use strict'; +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +Object.defineProperty(exports, '__esModule', { value: true }); +const tslib_1 = require('tslib'); +const worker_threads_1 = require('worker_threads'); +const yeoman_environment_1 = tslib_1.__importDefault(require('yeoman-environment')); +const adapter_1 = tslib_1.__importDefault(require('yeoman-environment/lib/adapter')); +const logger_1 = tslib_1.__importDefault(require('../logger')); +const log = logger_1.default.extend('templateInstallation'); +const installRemoteTemplate = (yeomanEnv, templateGeneratorPath, npmPackageName, templateVersion) => + tslib_1.__awaiter(void 0, void 0, void 0, function* () { + yeomanEnv.cwd = templateGeneratorPath; + try { + log('Installing generator', npmPackageName); + templateVersion = templateVersion ? templateVersion : '*'; + yield yeomanEnv.installLocalGenerators({ [npmPackageName]: templateVersion }); + // log('Looking up local packages'); + // await yeomanEnv.lookupLocalPackages(); + return true; + } catch (_a) { + return false; + } + }); +const instantiateRemoteTemplate = (yeomanEnv, generatorName, dstDir, projectName) => + tslib_1.__awaiter(void 0, void 0, void 0, function* () { + log('About to instantiate a template!', dstDir, generatorName, projectName); + yeomanEnv.cwd = dstDir; + try { + // eslint-disable-next-line @typescript-eslint/ban-ts-ignore + // @ts-ignore @types/yeoman-environment is outdated + yield yeomanEnv.run([generatorName, projectName]); + log('Template successfully instantiated', dstDir, generatorName, projectName); + } catch (err) { + log('Template failed to instantiate', dstDir, generatorName, projectName); + throw err; + } + }); +const yeomanWork = (npmPackageName, templateVersion, dstDir, projectName, templateGeneratorPath) => + tslib_1.__awaiter(void 0, void 0, void 0, function* () { + const generatorName = npmPackageName.toLowerCase().replace('generator-', ''); + // create yeoman environment + log('Getting Yeoman environment'); + worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 + ? void 0 + : worker_threads_1.parentPort.postMessage({ status: 'Getting Yeoman environment' }); + const yeomanEnv = yeoman_environment_1.default.createEnv( + '', + { yeomanRepository: templateGeneratorPath }, + new adapter_1.default({ console: console }) + ); + log('Looking up local packages'); + yeomanEnv.lookupLocalPackages(); + log('Installing Yeoman template'); + worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 + ? void 0 + : worker_threads_1.parentPort.postMessage({ status: 'Installing Yeoman template' }); + const remoteTemplateAvailable = yield installRemoteTemplate( + yeomanEnv, + templateGeneratorPath, + npmPackageName, + templateVersion + ); + if (remoteTemplateAvailable) { + log('Instantiating Yeoman template'); + worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 + ? void 0 + : worker_threads_1.parentPort.postMessage({ status: 'Instantiating Yeoman template' }); + yield instantiateRemoteTemplate(yeomanEnv, generatorName, dstDir, projectName); + } else { + // handle error + throw new Error(`error hit when installing remote template`); + } + }); +if (!worker_threads_1.isMainThread) { + yeomanWork( + worker_threads_1.workerData.npmPackageName, + worker_threads_1.workerData.templateVersion, + worker_threads_1.workerData.dstDir, + worker_threads_1.workerData.projectName, + worker_threads_1.workerData.templateGeneratorPath + ) + .then(() => { + process.exit(0); + }) + .catch((err) => { + worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 + ? void 0 + : worker_threads_1.parentPort.postMessage({ error: err }); + process.exit(1); + }); +} +//# sourceMappingURL=templateInstallation.worker.js.map diff --git a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js.map b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js.map new file mode 100644 index 0000000000..402059f594 --- /dev/null +++ b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js.map @@ -0,0 +1 @@ +{"version":3,"file":"templateInstallation.worker.js","sourceRoot":"","sources":["../../src/workers/templateInstallation.worker.ts"],"names":[],"mappings":"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"} \ No newline at end of file From 758aa02d73051f67c2e312f0473f11e7ffb1046a Mon Sep 17 00:00:00 2001 From: Ben Brown Date: Thu, 25 Mar 2021 16:44:23 -0500 Subject: [PATCH 4/7] remove lib files --- .../packages/server-workers/lib/logger.d.ts | 4 - .../server-workers/lib/logger.d.ts.map | 1 - .../packages/server-workers/lib/logger.js | 8 -- .../packages/server-workers/lib/logger.js.map | 1 - .../server-workers/lib/server-worker.d.ts | 17 ---- .../server-workers/lib/server-worker.d.ts.map | 1 - .../server-workers/lib/server-worker.js | 64 ------------- .../server-workers/lib/server-worker.js.map | 1 - .../lib/workers/dialogMerge.worker.d.ts | 5 - .../lib/workers/dialogMerge.worker.d.ts.map | 1 - .../lib/workers/dialogMerge.worker.js | 34 ------- .../lib/workers/dialogMerge.worker.js.map | 1 - .../workers/templateInstallation.worker.d.ts | 8 -- .../templateInstallation.worker.d.ts.map | 1 - .../workers/templateInstallation.worker.js | 93 ------------------- .../templateInstallation.worker.js.map | 1 - 16 files changed, 241 deletions(-) delete mode 100644 Composer/packages/server-workers/lib/logger.d.ts delete mode 100644 Composer/packages/server-workers/lib/logger.d.ts.map delete mode 100644 Composer/packages/server-workers/lib/logger.js delete mode 100644 Composer/packages/server-workers/lib/logger.js.map delete mode 100644 Composer/packages/server-workers/lib/server-worker.d.ts delete mode 100644 Composer/packages/server-workers/lib/server-worker.d.ts.map delete mode 100644 Composer/packages/server-workers/lib/server-worker.js delete mode 100644 Composer/packages/server-workers/lib/server-worker.js.map delete mode 100644 Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts delete mode 100644 Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts.map delete mode 100644 Composer/packages/server-workers/lib/workers/dialogMerge.worker.js delete mode 100644 Composer/packages/server-workers/lib/workers/dialogMerge.worker.js.map delete mode 100644 Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts delete mode 100644 Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts.map delete mode 100644 Composer/packages/server-workers/lib/workers/templateInstallation.worker.js delete mode 100644 Composer/packages/server-workers/lib/workers/templateInstallation.worker.js.map diff --git a/Composer/packages/server-workers/lib/logger.d.ts b/Composer/packages/server-workers/lib/logger.d.ts deleted file mode 100644 index e5e8da007c..0000000000 --- a/Composer/packages/server-workers/lib/logger.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import debug from 'debug'; -declare const _default: debug.Debugger; -export default _default; -//# sourceMappingURL=logger.d.ts.map diff --git a/Composer/packages/server-workers/lib/logger.d.ts.map b/Composer/packages/server-workers/lib/logger.d.ts.map deleted file mode 100644 index c6a19ded66..0000000000 --- a/Composer/packages/server-workers/lib/logger.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAC;;AAC1B,wBAAwC"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/logger.js b/Composer/packages/server-workers/lib/logger.js deleted file mode 100644 index 7d6911c327..0000000000 --- a/Composer/packages/server-workers/lib/logger.js +++ /dev/null @@ -1,8 +0,0 @@ -'use strict'; -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -Object.defineProperty(exports, '__esModule', { value: true }); -const tslib_1 = require('tslib'); -const debug_1 = tslib_1.__importDefault(require('debug')); -exports.default = debug_1.default('composer:worker'); -//# sourceMappingURL=logger.js.map diff --git a/Composer/packages/server-workers/lib/logger.js.map b/Composer/packages/server-workers/lib/logger.js.map deleted file mode 100644 index eb571245cb..0000000000 --- a/Composer/packages/server-workers/lib/logger.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,0DAA0B;AAC1B,kBAAe,eAAK,CAAC,iBAAiB,CAAC,CAAC"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/server-worker.d.ts b/Composer/packages/server-workers/lib/server-worker.d.ts deleted file mode 100644 index c7d95480ac..0000000000 --- a/Composer/packages/server-workers/lib/server-worker.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type { TemplateInstallationArgs } from './workers/templateInstallation.worker'; -import type { DialogMergeArgs } from './workers/dialogMerge.worker'; -export declare type WorkerName = 'dialogMerge' | 'templateInstallation'; -export declare class ServerWorker { - static execute( - workerName: 'dialogMerge', - args: DialogMergeArgs, - updateProcess?: (status: number, message: string) => void - ): any; - static execute( - workerName: 'templateInstallation', - args: TemplateInstallationArgs, - updateProcess?: (status: number, message: string) => void - ): any; - private static getWorkerPath; -} -//# sourceMappingURL=server-worker.d.ts.map diff --git a/Composer/packages/server-workers/lib/server-worker.d.ts.map b/Composer/packages/server-workers/lib/server-worker.d.ts.map deleted file mode 100644 index 3d164ab07a..0000000000 --- a/Composer/packages/server-workers/lib/server-worker.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-worker.d.ts","sourceRoot":"","sources":["../src/server-worker.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAKpE,oBAAY,UAAU,GAAG,aAAa,GAAG,sBAAsB,CAAC;AAEhE,qBAAa,YAAY;WACH,OAAO,CACzB,UAAU,EAAE,aAAa,EACzB,IAAI,EAAE,eAAe,EACrB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI;WAEvC,OAAO,CACzB,UAAU,EAAE,sBAAsB,EAClC,IAAI,EAAE,wBAAwB,EAC9B,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI;IA6C3D,OAAO,CAAC,MAAM,CAAC,aAAa;CAW7B"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/server-worker.js b/Composer/packages/server-workers/lib/server-worker.js deleted file mode 100644 index 5453fed428..0000000000 --- a/Composer/packages/server-workers/lib/server-worker.js +++ /dev/null @@ -1,64 +0,0 @@ -'use strict'; -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -Object.defineProperty(exports, '__esModule', { value: true }); -const tslib_1 = require('tslib'); -const path_1 = tslib_1.__importDefault(require('path')); -const worker_threads_1 = require('worker_threads'); -// eslint-disable-next-line @typescript-eslint/no-explicit-any -const isElectron = process.versions && process.versions.electron; -class ServerWorker { - static execute( - workerName, - args, - /** - * Callback to update BackgroundProcessManager - */ - updateProcess - ) { - return tslib_1.__awaiter(this, void 0, void 0, function* () { - return new Promise((resolve, reject) => { - // used to reject in case of an unhandled error - let hasRejected = false; - const w = new worker_threads_1.Worker(this.getWorkerPath(workerName), { - workerData: args, - }); - w.on('error', (err) => { - reject(err); - hasRejected = true; - }); - w.on('exit', (code) => { - if (code === 0) { - resolve(); - } else if (!hasRejected) { - reject(new Error(`Unknown error in ${workerName} worker.`)); - } - }); - w.on('message', (message) => { - if (message === null || message === void 0 ? void 0 : message.error) { - reject(message.error); - hasRejected = true; - } - if (message === null || message === void 0 ? void 0 : message.status) { - // TODO: should this take a dependency on BackgroundProcessManager? - if (typeof updateProcess === 'function') - updateProcess(202, message === null || message === void 0 ? void 0 : message.status); - } - }); - }); - }); - } - static getWorkerPath(workerName) { - if (isElectron) { - return path_1.default.join( - // eslint-disable-next-line @typescript-eslint/no-explicit-any - process.resourcesPath, - `app.asar.unpacked/node_modules/@bfc/server-workers/lib/workers/${workerName}.worker.js` - ); - } else { - return path_1.default.resolve(__dirname, `./workers/${workerName}.worker.js`); - } - } -} -exports.ServerWorker = ServerWorker; -//# sourceMappingURL=server-worker.js.map diff --git a/Composer/packages/server-workers/lib/server-worker.js.map b/Composer/packages/server-workers/lib/server-worker.js.map deleted file mode 100644 index 26d9b049c2..0000000000 --- a/Composer/packages/server-workers/lib/server-worker.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-worker.js","sourceRoot":"","sources":["../src/server-worker.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wDAAwB;AACxB,mDAAwC;AAKxC,8DAA8D;AAC9D,MAAM,UAAU,GAAY,OAAO,CAAC,QAAQ,IAAK,OAAO,CAAC,QAAgB,CAAC,QAAQ,CAAC;AAInF,MAAa,YAAY;IAWhB,MAAM,CAAO,OAAO,CACzB,UAAsB,EACtB,IAAO;IACP;;OAEG;IACH,aAAyD;;YAEzD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,+CAA+C;gBAC/C,IAAI,WAAW,GAAG,KAAK,CAAC;gBAExB,MAAM,CAAC,GAAG,IAAI,uBAAM,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE;oBACnD,UAAU,EAAE,IAAI;iBACjB,CAAC,CAAC;gBAEH,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;oBACpB,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,WAAW,GAAG,IAAI,CAAC;gBACrB,CAAC,CAAC,CAAC;gBAEH,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;oBACpB,IAAI,IAAI,KAAK,CAAC,EAAE;wBACd,OAAO,EAAE,CAAC;qBACX;yBAAM,IAAI,CAAC,WAAW,EAAE;wBACvB,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,UAAU,UAAU,CAAC,CAAC,CAAC;qBAC7D;gBACH,CAAC,CAAC,CAAC;gBAEH,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;oBAC1B,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,EAAE;wBAClB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;wBACtB,WAAW,GAAG,IAAI,CAAC;qBACpB;oBAED,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,EAAE;wBACnB,mEAAmE;wBACnE,IAAI,OAAO,aAAa,KAAK,UAAU;4BAAE,aAAa,CAAC,GAAG,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAC,CAAC;qBAC9E;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAEO,MAAM,CAAC,aAAa,CAAC,UAAsB;QACjD,IAAI,UAAU,EAAE;YACd,OAAO,cAAI,CAAC,IAAI;YACd,8DAA8D;YAC7D,OAAe,CAAC,aAAa,EAC9B,kEAAkE,UAAU,YAAY,CACzF,CAAC;SACH;aAAM;YACL,OAAO,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,UAAU,YAAY,CAAC,CAAC;SACrE;IACH,CAAC;CACF;AAjED,oCAiEC"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts deleted file mode 100644 index dc5bf9b0fd..0000000000 --- a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export declare type DialogMergeArgs = { - manifestFile: string; - currentProjectDataDir: string; -}; -//# sourceMappingURL=dialogMerge.worker.d.ts.map diff --git a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts.map b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts.map deleted file mode 100644 index 20aef88261..0000000000 --- a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dialogMerge.worker.d.ts","sourceRoot":"","sources":["../../src/workers/dialogMerge.worker.ts"],"names":[],"mappings":"AAmCA,oBAAY,eAAe,GAAG;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js deleted file mode 100644 index 78722779f8..0000000000 --- a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js +++ /dev/null @@ -1,34 +0,0 @@ -'use strict'; -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -Object.defineProperty(exports, '__esModule', { value: true }); -const tslib_1 = require('tslib'); -const path_1 = tslib_1.__importDefault(require('path')); -const worker_threads_1 = require('worker_threads'); -const schemaMerger_1 = require('@microsoft/bf-dialog/lib/library/schemaMerger'); -const logger_1 = tslib_1.__importDefault(require('../logger')); -const log = logger_1.default.extend('dialogMerge'); -if (!worker_threads_1.isMainThread) { - const realMerge = new schemaMerger_1.SchemaMerger( - [worker_threads_1.workerData.manifestFile, '!**/imported/**', '!**/generated/**'], - path_1.default.join(worker_threads_1.workerData.currentProjectDataDir, 'schemas/sdk'), - path_1.default.join(worker_threads_1.workerData.currentProjectDataDir, 'dialogs/imported'), - false, - false, - log.extend('info'), - log.extend('warn'), - log.extend('error') - ); - realMerge - .merge() - .then(() => { - process.exit(0); - }) - .catch((err) => { - worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 - ? void 0 - : worker_threads_1.parentPort.postMessage({ error: err }); - process.exit(1); - }); -} -//# sourceMappingURL=dialogMerge.worker.js.map diff --git a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js.map b/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js.map deleted file mode 100644 index 1f97789990..0000000000 --- a/Composer/packages/server-workers/lib/workers/dialogMerge.worker.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dialogMerge.worker.js","sourceRoot":"","sources":["../../src/workers/dialogMerge.worker.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wDAAwB;AACxB,mDAAsE;AAEtE,gFAA6E;AAE7E,+DAA+B;AAE/B,MAAM,GAAG,GAAG,gBAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzC,IAAI,CAAC,6BAAY,EAAE;IACjB,MAAM,SAAS,GAAG,IAAI,2BAAY,CAChC,CAAC,2BAAU,CAAC,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,CAAC,EAChE,cAAI,CAAC,IAAI,CAAC,2BAAU,CAAC,qBAAqB,EAAE,aAAa,CAAC,EAC1D,cAAI,CAAC,IAAI,CAAC,2BAAU,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,EAC/D,KAAK,EACL,KAAK,EACL,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAClB,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAClB,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CACpB,CAAC;IAEF,SAAS;SACN,KAAK,EAAE;SACP,IAAI,CAAC,GAAG,EAAE;QACT,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,2BAAU,aAAV,2BAAU,uBAAV,2BAAU,CAAE,WAAW,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;CACN"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts deleted file mode 100644 index 56004a1514..0000000000 --- a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -export declare type TemplateInstallationArgs = { - npmPackageName: string; - templateVersion: string; - dstDir: string; - projectName: string; - templateGeneratorPath: string; -}; -//# sourceMappingURL=templateInstallation.worker.d.ts.map diff --git a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts.map b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts.map deleted file mode 100644 index 7e8aac9b5a..0000000000 --- a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"templateInstallation.worker.d.ts","sourceRoot":"","sources":["../../src/workers/templateInstallation.worker.ts"],"names":[],"mappings":"AA2FA,oBAAY,wBAAwB,GAAG;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC"} \ No newline at end of file diff --git a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js deleted file mode 100644 index 17436f6630..0000000000 --- a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js +++ /dev/null @@ -1,93 +0,0 @@ -'use strict'; -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -Object.defineProperty(exports, '__esModule', { value: true }); -const tslib_1 = require('tslib'); -const worker_threads_1 = require('worker_threads'); -const yeoman_environment_1 = tslib_1.__importDefault(require('yeoman-environment')); -const adapter_1 = tslib_1.__importDefault(require('yeoman-environment/lib/adapter')); -const logger_1 = tslib_1.__importDefault(require('../logger')); -const log = logger_1.default.extend('templateInstallation'); -const installRemoteTemplate = (yeomanEnv, templateGeneratorPath, npmPackageName, templateVersion) => - tslib_1.__awaiter(void 0, void 0, void 0, function* () { - yeomanEnv.cwd = templateGeneratorPath; - try { - log('Installing generator', npmPackageName); - templateVersion = templateVersion ? templateVersion : '*'; - yield yeomanEnv.installLocalGenerators({ [npmPackageName]: templateVersion }); - // log('Looking up local packages'); - // await yeomanEnv.lookupLocalPackages(); - return true; - } catch (_a) { - return false; - } - }); -const instantiateRemoteTemplate = (yeomanEnv, generatorName, dstDir, projectName) => - tslib_1.__awaiter(void 0, void 0, void 0, function* () { - log('About to instantiate a template!', dstDir, generatorName, projectName); - yeomanEnv.cwd = dstDir; - try { - // eslint-disable-next-line @typescript-eslint/ban-ts-ignore - // @ts-ignore @types/yeoman-environment is outdated - yield yeomanEnv.run([generatorName, projectName]); - log('Template successfully instantiated', dstDir, generatorName, projectName); - } catch (err) { - log('Template failed to instantiate', dstDir, generatorName, projectName); - throw err; - } - }); -const yeomanWork = (npmPackageName, templateVersion, dstDir, projectName, templateGeneratorPath) => - tslib_1.__awaiter(void 0, void 0, void 0, function* () { - const generatorName = npmPackageName.toLowerCase().replace('generator-', ''); - // create yeoman environment - log('Getting Yeoman environment'); - worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 - ? void 0 - : worker_threads_1.parentPort.postMessage({ status: 'Getting Yeoman environment' }); - const yeomanEnv = yeoman_environment_1.default.createEnv( - '', - { yeomanRepository: templateGeneratorPath }, - new adapter_1.default({ console: console }) - ); - log('Looking up local packages'); - yeomanEnv.lookupLocalPackages(); - log('Installing Yeoman template'); - worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 - ? void 0 - : worker_threads_1.parentPort.postMessage({ status: 'Installing Yeoman template' }); - const remoteTemplateAvailable = yield installRemoteTemplate( - yeomanEnv, - templateGeneratorPath, - npmPackageName, - templateVersion - ); - if (remoteTemplateAvailable) { - log('Instantiating Yeoman template'); - worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 - ? void 0 - : worker_threads_1.parentPort.postMessage({ status: 'Instantiating Yeoman template' }); - yield instantiateRemoteTemplate(yeomanEnv, generatorName, dstDir, projectName); - } else { - // handle error - throw new Error(`error hit when installing remote template`); - } - }); -if (!worker_threads_1.isMainThread) { - yeomanWork( - worker_threads_1.workerData.npmPackageName, - worker_threads_1.workerData.templateVersion, - worker_threads_1.workerData.dstDir, - worker_threads_1.workerData.projectName, - worker_threads_1.workerData.templateGeneratorPath - ) - .then(() => { - process.exit(0); - }) - .catch((err) => { - worker_threads_1.parentPort === null || worker_threads_1.parentPort === void 0 - ? void 0 - : worker_threads_1.parentPort.postMessage({ error: err }); - process.exit(1); - }); -} -//# sourceMappingURL=templateInstallation.worker.js.map diff --git a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js.map b/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js.map deleted file mode 100644 index 402059f594..0000000000 --- a/Composer/packages/server-workers/lib/workers/templateInstallation.worker.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"templateInstallation.worker.js","sourceRoot":"","sources":["../../src/workers/templateInstallation.worker.ts"],"names":[],"mappings":"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"} \ No newline at end of file From e873058308879de5dfc6e59f9f1bb0bb103b57c5 Mon Sep 17 00:00:00 2001 From: Ben Brown Date: Fri, 26 Mar 2021 17:00:39 -0500 Subject: [PATCH 5/7] updates --- .../runtime-settings/RuntimeSettings.tsx | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx index bcda935cf6..5b41efe782 100644 --- a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx +++ b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx @@ -3,7 +3,7 @@ /** @jsx jsx */ import { jsx } from '@emotion/core'; -import { useState, Fragment, useEffect } from 'react'; +import { useState, Fragment, useEffect, useMemo } from 'react'; import formatMessage from 'format-message'; import { mergeStyleSets } from '@uifabric/styling'; import { Toggle } from 'office-ui-fabric-react/lib/Toggle'; @@ -16,7 +16,7 @@ import { RouteComponentProps } from '@reach/router'; import { useRecoilValue } from 'recoil'; import { Spinner } from 'office-ui-fabric-react/lib/Spinner'; import { OpenConfirmModal } from '@bfc/ui-shared'; -import { DialogSetting } from '@botframework-composer/types'; +import { isAdaptiveRuntime } from '@bfc/shared'; import { dispatcherState, @@ -45,14 +45,6 @@ import { type RuntimeType = 'path' | 'command'; -/** Determine if a bot is configured to use the adaptive runtime vs the legacy runtime */ -export const isAdaptiveRuntime = (settings: DialogSetting): boolean => { - return ( - settings?.runtime?.key === 'csharp-azurewebapp-v2' || - (settings?.runtime?.key.match(/^adaptive-runtime/) ? true : false) - ); -}; - export const RuntimeSettings: React.FC> = (props) => { const { projectId = '' } = props; const botName = useRecoilValue(botDisplayNameState(projectId)); @@ -77,13 +69,12 @@ export const RuntimeSettings: React.FC { // check the status of the boilerplate material and see if it requires an update if (projectId) getBoilerplateVersion(projectId); - setIsAdaptive(isAdaptiveRuntime(settings)); }, [projectId]); useEffect(() => { From 95aca1d1867836db5c4f81eafe597839c35b3556 Mon Sep 17 00:00:00 2001 From: Ben Brown Date: Fri, 26 Mar 2021 18:13:25 -0500 Subject: [PATCH 6/7] use isusingadpativeruntime --- .../src/pages/botProject/runtime-settings/RuntimeSettings.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx index 5b41efe782..999d007c67 100644 --- a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx +++ b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx @@ -16,7 +16,7 @@ import { RouteComponentProps } from '@reach/router'; import { useRecoilValue } from 'recoil'; import { Spinner } from 'office-ui-fabric-react/lib/Spinner'; import { OpenConfirmModal } from '@bfc/ui-shared'; -import { isAdaptiveRuntime } from '@bfc/shared'; +import { isUsingAdaptiveRuntime } from '@bfc/shared'; import { dispatcherState, @@ -70,7 +70,7 @@ export const RuntimeSettings: React.FC { // check the status of the boilerplate material and see if it requires an update From d2c121d81d3d142f7565a958a85c1c1ed1afdd11 Mon Sep 17 00:00:00 2001 From: Ben Brown Date: Fri, 26 Mar 2021 18:16:22 -0500 Subject: [PATCH 7/7] fix usememo syntax --- .../src/pages/botProject/runtime-settings/RuntimeSettings.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx index 999d007c67..5356979f62 100644 --- a/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx +++ b/Composer/packages/client/src/pages/botProject/runtime-settings/RuntimeSettings.tsx @@ -70,7 +70,7 @@ export const RuntimeSettings: React.FC isUsingAdaptiveRuntime(settings.runtime), [settings]); useEffect(() => { // check the status of the boilerplate material and see if it requires an update