From f75ba6f341dd37ebc3e415187cddf9b617dd539a Mon Sep 17 00:00:00 2001 From: TJ Durnford Date: Mon, 4 May 2020 15:22:56 -0600 Subject: [PATCH] fix: changes manifest type from '.manifest' to '.json' (#2888) --- .../design/exportSkillModal/content/SelectManifest.tsx | 5 +++-- Composer/packages/client/src/store/persistence/types.ts | 2 +- Composer/packages/lib/indexers/src/skillManifestIndexer.ts | 2 +- Composer/packages/lib/indexers/src/utils/fileExtensions.ts | 2 +- Composer/packages/server/src/models/bot/botProject.ts | 6 +++--- Composer/plugins/localPublish/src/index.ts | 4 ++-- 6 files changed, 11 insertions(+), 10 deletions(-) diff --git a/Composer/packages/client/src/pages/design/exportSkillModal/content/SelectManifest.tsx b/Composer/packages/client/src/pages/design/exportSkillModal/content/SelectManifest.tsx index 8febe51139..54869c3a74 100644 --- a/Composer/packages/client/src/pages/design/exportSkillModal/content/SelectManifest.tsx +++ b/Composer/packages/client/src/pages/design/exportSkillModal/content/SelectManifest.tsx @@ -37,12 +37,13 @@ const styles = { }; export const SelectManifest: React.FC = ({ completeStep, skillManifests, setSkillManifest }) => { - const { actions } = useContext(StoreContext); + const { actions, state } = useContext(StoreContext); + const { botName } = state; const [manifestVersion, setManifestVersion] = useState(SCHEMA_URIS[0]); const [errors, setErrors] = useState<{ version?: string }>({}); const [version] = VERSION_REGEX.exec(manifestVersion) || ['']; - const fileName = `skill-manifest-${version.replace(/\./g, '-')}`; + const fileName = `${botName}-${version.replace(/\./g, '-')}-manifest`; const options: IDropdownOption[] = useMemo( () => diff --git a/Composer/packages/client/src/store/persistence/types.ts b/Composer/packages/client/src/store/persistence/types.ts index 74ac3a4dfd..c0c6373d55 100644 --- a/Composer/packages/client/src/store/persistence/types.ts +++ b/Composer/packages/client/src/store/persistence/types.ts @@ -9,7 +9,7 @@ export enum ChangeType { export enum FileExtensions { Dialog = '.dialog', - Manifest = '.manifest', + Manifest = '.json', Lu = '.lu', Lg = '.lg', } diff --git a/Composer/packages/lib/indexers/src/skillManifestIndexer.ts b/Composer/packages/lib/indexers/src/skillManifestIndexer.ts index 19d873b061..fa0529db15 100644 --- a/Composer/packages/lib/indexers/src/skillManifestIndexer.ts +++ b/Composer/packages/lib/indexers/src/skillManifestIndexer.ts @@ -9,7 +9,7 @@ const index = (skillManifestFiles: FileInfo[]) => { return skillManifestFiles.reduce((manifests: SkillManifestInfo[], { content, name, lastModified }) => { try { const jsonContent = JSON.parse(content); - return [...manifests, { content: jsonContent, id: getBaseName(name, '.manifest'), lastModified }]; + return [...manifests, { content: jsonContent, id: getBaseName(name, '.json'), lastModified }]; } catch (error) { return manifests; } diff --git a/Composer/packages/lib/indexers/src/utils/fileExtensions.ts b/Composer/packages/lib/indexers/src/utils/fileExtensions.ts index aa3d9dca39..184672e9d2 100644 --- a/Composer/packages/lib/indexers/src/utils/fileExtensions.ts +++ b/Composer/packages/lib/indexers/src/utils/fileExtensions.ts @@ -5,5 +5,5 @@ export enum FileExtensions { Dialog = '.dialog', Lu = '.lu', lg = '.lg', - Manifest = '.manifest', + Manifest = '.json', } diff --git a/Composer/packages/server/src/models/bot/botProject.ts b/Composer/packages/server/src/models/bot/botProject.ts index 963f170823..4631189491 100644 --- a/Composer/packages/server/src/models/bot/botProject.ts +++ b/Composer/packages/server/src/models/bot/botProject.ts @@ -46,7 +46,7 @@ const BotStructureTemplate = { lg: 'language-generation/${LOCALE}/${DIALOGNAME}.${LOCALE}.lg', lu: 'language-understanding/${LOCALE}/${DIALOGNAME}.${LOCALE}.lu', }, - skillManifests: 'skill-manifests/${MANIFESTNAME}.manifest', + skillManifests: 'manifests/${MANIFESTNAME}.json', }; const templateInterpolate = (str: string, obj: { [key: string]: string }) => @@ -368,7 +368,7 @@ export class BotProject { DIALOGNAME, LOCALE, }); - } else if (fileType === '.manifest') { + } else if (fileType === '.json') { dir = templateInterpolate( Path.dirname(Path.join(BotStructureTemplate.folder, BotStructureTemplate.skillManifests)), { @@ -457,7 +457,7 @@ export class BotProject { } const fileList: FileInfo[] = []; - const patterns = ['**/*.dialog', '**/*.lg', '**/*.lu', '**/*.manifest']; + const patterns = ['**/*.dialog', '**/*.lg', '**/*.lu', 'manifests/*.json']; for (const pattern of patterns) { // load only from the data dir, otherwise may get "build" versions from // deployment process diff --git a/Composer/plugins/localPublish/src/index.ts b/Composer/plugins/localPublish/src/index.ts index 1908ac5ae9..ac9cc67e0f 100644 --- a/Composer/plugins/localPublish/src/index.ts +++ b/Composer/plugins/localPublish/src/index.ts @@ -124,9 +124,9 @@ class LocalPublisher implements PublishPlugin { private getHistoryDir = (botId: string) => path.resolve(this.getBotDir(botId), 'history'); - private getManifestSrcDir = (srcDir: string) => path.resolve(srcDir, 'skill-manifests'); + private getManifestSrcDir = (srcDir: string) => path.resolve(srcDir, 'manifests'); - private getManifestDstDir = (botId: string) => path.resolve(this.getBotRuntimeDir(botId), 'wwwroot', 'skill-manifests'); + private getManifestDstDir = (botId: string) => path.resolve(this.getBotRuntimeDir(botId), 'wwwroot', 'manifests'); private getDownloadPath = (botId: string, version: string) => path.resolve(this.getHistoryDir(botId), `${version}.zip`);