From 2203e173983395dcb5e5c71ded5c3ae5646ed7cc Mon Sep 17 00:00:00 2001 From: rosen-vladimirov Date: Mon, 12 Mar 2018 23:36:01 +0200 Subject: [PATCH] feat(analytics): Track Vue.js project type Currently CLI tracks Angular, TypeScript and JavaScript project types. Add a new project category - `Vue.js`. The project will be tracked as `Vue.js` when it has nativscript-vue in the package.json. --- lib/project-data.ts | 4 ++++ test/project-data.ts | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/lib/project-data.ts b/lib/project-data.ts index 8830727a9c..576efc9b7e 100644 --- a/lib/project-data.ts +++ b/lib/project-data.ts @@ -22,6 +22,10 @@ export class ProjectData implements IProjectData { type: "Angular", requiredDependencies: ["@angular/core", "nativescript-angular"] }, + { + type: "Vue.js", + requiredDependencies: ["nativescript-vue"] + }, { type: "Pure TypeScript", requiredDependencies: ["typescript", "nativescript-dev-typescript"] diff --git a/test/project-data.ts b/test/project-data.ts index 6789af8b4c..67f1a2775b 100644 --- a/test/project-data.ts +++ b/test/project-data.ts @@ -64,6 +64,14 @@ describe("projectData", () => { assertProjectType({ "nativescript-angular": "*" }, null, "Angular"); }); + it("detects project as Vue.js when nativescript-vue exists as dependency", () => { + assertProjectType({ "nativescript-vue": "*" }, null, "Vue.js"); + }); + + it("detects project as Vue.js when nativescript-vue exists as dependency and typescript is devDependency", () => { + assertProjectType({ "nativescript-vue": "*" }, { "typescript": "*" }, "Vue.js"); + }); + it("detects project as TypeScript when nativescript-dev-typescript exists as dependency", () => { assertProjectType(null, { "nativescript-dev-typescript": "*" }, "Pure TypeScript"); });