diff --git a/dist/generators/jetstream/generateConfigJetstream.d.ts b/dist/generators/jetstream/generateConfigJetstream.d.ts new file mode 100644 index 00000000..c2427656 --- /dev/null +++ b/dist/generators/jetstream/generateConfigJetstream.d.ts @@ -0,0 +1 @@ +export default function (jetstreamGitignoreText: string): string; diff --git a/dist/generators/jetstream/generateConfigJetstream.js b/dist/generators/jetstream/generateConfigJetstream.js new file mode 100644 index 00000000..aa6a130c --- /dev/null +++ b/dist/generators/jetstream/generateConfigJetstream.js @@ -0,0 +1,21 @@ +// ./src/generators/jetstream/generateConfigJetstream.ts +import fs from 'fs-extra'; +import cwd from '../../helpers/cwd.js'; +import projectFileDoesExist from '../../helpers/projectFileDoesExist.js'; +export default function (jetstreamGitignoreText) { + const filename = 'jetstream.php'; + const filepath = '/config/' + filename; + if (projectFileDoesExist(filepath)) { + fs.readFile(cwd + filepath, 'utf8', function (err, data) { + // error check + if (err) { + throw err; + } + let modifiedData = String(data).replace(/\/\/Features::termsAndPrivacyPolicy(),/g, 'Features::termsAndPrivacyPolicy(),').replace(/\/\/Features::api(),/g, 'Features::api(),'); + // If no error, then overwrite the current gitignore file content wrapped in VILT DS gitignore code + // fs.outputFileSync(cwd + filepath, generateJetstreamGitignore(String(data)), { flag: 'w+' }) + }); + } + return ''; +} +//# sourceMappingURL=generateConfigJetstream.js.map \ No newline at end of file diff --git a/dist/generators/jetstream/generateConfigJetstream.js.map b/dist/generators/jetstream/generateConfigJetstream.js.map new file mode 100644 index 00000000..193559dc --- /dev/null +++ b/dist/generators/jetstream/generateConfigJetstream.js.map @@ -0,0 +1 @@ +{"version":3,"file":"generateConfigJetstream.js","sourceRoot":"","sources":["../../../src/generators/jetstream/generateConfigJetstream.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAExD,OAAO,EAAE,MAAM,UAAU,CAAA;AAEzB,OAAO,GAAG,MAAM,sBAAsB,CAAA;AACtC,OAAO,oBAAoB,MAAM,uCAAuC,CAAA;AAExE,MAAM,CAAC,OAAO,WAAW,sBAA6B;IAElD,MAAM,QAAQ,GAAG,eAAe,CAAA;IAChC,MAAM,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAA;IAEtC,IAAK,oBAAoB,CAAC,QAAQ,CAAC,EAAG;QAElC,EAAE,CAAC,QAAQ,CAAC,GAAG,GAAG,QAAQ,EAAE,MAAM,EAAE,UAAS,GAAG,EAAE,IAAI;YAElD,cAAc;YACd,IAAI,GAAG,EAAE;gBAAE,MAAM,GAAG,CAAA;aAAE;YAEtB,IAAI,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CACnC,yCAAyC,EAAE,oCAAoC,CAClF,CAAC,OAAO,CACL,uBAAuB,EAAE,kBAAkB,CAC9C,CAAA;YAED,mGAAmG;YACnG,8FAA8F;QAElG,CAAC,CAAC,CAAA;KAEL;IAED,OAAO,EAAE,CAAA;AAEb,CAAC"} \ No newline at end of file diff --git a/dist/generators/jetstream/generateJetstreamGitignore.js b/dist/generators/jetstream/generateJetstreamGitignore.js index 6c513556..3df87a75 100644 --- a/dist/generators/jetstream/generateJetstreamGitignore.js +++ b/dist/generators/jetstream/generateJetstreamGitignore.js @@ -12,7 +12,6 @@ ${developer} ${mac} ${windows} - `; } //# sourceMappingURL=generateJetstreamGitignore.js.map \ No newline at end of file diff --git a/dist/generators/jetstream/generateJetstreamGitignore.js.map b/dist/generators/jetstream/generateJetstreamGitignore.js.map index b88aa8bb..4dbc9c5b 100644 --- a/dist/generators/jetstream/generateJetstreamGitignore.js.map +++ b/dist/generators/jetstream/generateJetstreamGitignore.js.map @@ -1 +1 @@ -{"version":3,"file":"generateJetstreamGitignore.js","sourceRoot":"","sources":["../../../src/generators/jetstream/generateJetstreamGitignore.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAE3D,OAAO,SAAS,MAAM,mCAAmC,CAAA;AACzD,OAAO,GAAG,MAAM,6BAA6B,CAAA;AAC7C,OAAO,OAAO,MAAM,iCAAiC,CAAA;AAErD,MAAM,CAAC,OAAO,WAAW,sBAA6B;IAEtD,OAAO;;EAEL,sBAAsB;;EAEtB,SAAS;;EAET,GAAG;;EAEH,OAAO;;CAER,CAAC;AAEF,CAAC"} \ No newline at end of file +{"version":3,"file":"generateJetstreamGitignore.js","sourceRoot":"","sources":["../../../src/generators/jetstream/generateJetstreamGitignore.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAE3D,OAAO,SAAS,MAAM,mCAAmC,CAAA;AACzD,OAAO,GAAG,MAAM,6BAA6B,CAAA;AAC7C,OAAO,OAAO,MAAM,iCAAiC,CAAA;AAErD,MAAM,CAAC,OAAO,WAAW,sBAA6B;IAEtD,OAAO;;EAEL,sBAAsB;;EAEtB,SAAS;;EAET,GAAG;;EAEH,OAAO;CACR,CAAC;AAEF,CAAC"} \ No newline at end of file diff --git a/dist/helpers/cliSuccessMessage.d.ts b/dist/helpers/cliSuccessMessage.d.ts new file mode 100644 index 00000000..32247d04 --- /dev/null +++ b/dist/helpers/cliSuccessMessage.d.ts @@ -0,0 +1 @@ +export default function (string: string, prefixLineBreak?: boolean, suffixLineBreak?: boolean): void; diff --git a/dist/helpers/cliSuccessMessage.js b/dist/helpers/cliSuccessMessage.js new file mode 100644 index 00000000..4b9afb7b --- /dev/null +++ b/dist/helpers/cliSuccessMessage.js @@ -0,0 +1,12 @@ +// ./cli/helpers/cliSuccessMessage.ts +import gradientText from './gradientText.js'; +export default function (string, prefixLineBreak = false, suffixLineBreak = false) { + if (prefixLineBreak) { + console.log(' '); + } + console.log(gradientText(string)); + if (suffixLineBreak) { + console.log(' '); + } +} +//# sourceMappingURL=cliSuccessMessage.js.map \ No newline at end of file diff --git a/dist/helpers/cliSuccessMessage.js.map b/dist/helpers/cliSuccessMessage.js.map new file mode 100644 index 00000000..e69cbdde --- /dev/null +++ b/dist/helpers/cliSuccessMessage.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cliSuccessMessage.js","sourceRoot":"","sources":["../../src/helpers/cliSuccessMessage.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,YAAY,MAAM,mBAAmB,CAAA;AAE5C,MAAM,CAAC,OAAO,WAAW,MAAa,EAAE,kBAA0B,KAAK,EAAE,kBAA0B,KAAK;IAEpG,IAAI,eAAe,EAAE;QAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;KAAE;IAEzC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAA;IAEjC,IAAI,eAAe,EAAE;QAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;KAAE;AAE7C,CAAC"} \ No newline at end of file diff --git a/dist/helpers/cliWarningMessage.d.ts b/dist/helpers/cliWarningMessage.d.ts new file mode 100644 index 00000000..32247d04 --- /dev/null +++ b/dist/helpers/cliWarningMessage.d.ts @@ -0,0 +1 @@ +export default function (string: string, prefixLineBreak?: boolean, suffixLineBreak?: boolean): void; diff --git a/dist/helpers/cliWarningMessage.js b/dist/helpers/cliWarningMessage.js new file mode 100644 index 00000000..6ec16f8b --- /dev/null +++ b/dist/helpers/cliWarningMessage.js @@ -0,0 +1,12 @@ +// ./cli/helpers/cliWarningMessage.ts +import gradient from 'gradient-string'; +export default function (string, prefixLineBreak = false, suffixLineBreak = false) { + if (prefixLineBreak) { + console.log(' '); + } + console.log(gradient.morning(string)); + if (suffixLineBreak) { + console.log(' '); + } +} +//# sourceMappingURL=cliWarningMessage.js.map \ No newline at end of file diff --git a/dist/helpers/cliWarningMessage.js.map b/dist/helpers/cliWarningMessage.js.map new file mode 100644 index 00000000..c815445f --- /dev/null +++ b/dist/helpers/cliWarningMessage.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cliWarningMessage.js","sourceRoot":"","sources":["../../src/helpers/cliWarningMessage.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,QAAQ,MAAM,iBAAiB,CAAA;AAEtC,MAAM,CAAC,OAAO,WAAW,MAAa,EAAE,kBAA0B,KAAK,EAAE,kBAA0B,KAAK;IAEpG,IAAI,eAAe,EAAE;QAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;KAAE;IAEzC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IAErC,IAAI,eAAe,EAAE;QAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;KAAE;AAE7C,CAAC"} \ No newline at end of file diff --git a/dist/helpers/projectFileDoesExist.d.ts b/dist/helpers/projectFileDoesExist.d.ts new file mode 100644 index 00000000..3ee33f92 --- /dev/null +++ b/dist/helpers/projectFileDoesExist.d.ts @@ -0,0 +1 @@ +export default function (filepath: string): boolean; diff --git a/dist/helpers/projectFileDoesExist.js b/dist/helpers/projectFileDoesExist.js new file mode 100644 index 00000000..47afdc5c --- /dev/null +++ b/dist/helpers/projectFileDoesExist.js @@ -0,0 +1,16 @@ +// ./src/helpers/projectFileDoesExist.ts +import fs from 'fs-extra'; +import cwd from './cwd.js'; +export default function (filepath) { + const currentFilepath = cwd + filepath; + try { + if (fs.existsSync(currentFilepath)) { + return true; + } + } + catch (err) { + console.error(err); + return false; + } +} +//# sourceMappingURL=projectFileDoesExist.js.map \ No newline at end of file diff --git a/dist/helpers/projectFileDoesExist.js.map b/dist/helpers/projectFileDoesExist.js.map new file mode 100644 index 00000000..3c01a622 --- /dev/null +++ b/dist/helpers/projectFileDoesExist.js.map @@ -0,0 +1 @@ +{"version":3,"file":"projectFileDoesExist.js","sourceRoot":"","sources":["../../src/helpers/projectFileDoesExist.ts"],"names":[],"mappings":"AAAA,wCAAwC;AAExC,OAAO,EAAE,MAAM,UAAU,CAAA;AAEzB,OAAO,GAAG,MAAM,UAAU,CAAA;AAE1B,MAAM,CAAC,OAAO,WAAW,QAAe;IAEpC,MAAM,eAAe,GAAG,GAAG,GAAG,QAAQ,CAAA;IAEtC,IAAI;QACA,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE;YAChC,OAAO,IAAI,CAAA;SACd;KACJ;IAAC,OAAM,GAAG,EAAE;QACT,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAClB,OAAO,KAAK,CAAA;KACf;AAEL,CAAC"} \ No newline at end of file diff --git a/dist/index.js b/dist/index.js index 8708d814..0accda0c 100644 --- a/dist/index.js +++ b/dist/index.js @@ -4,9 +4,13 @@ import cliStartMessage from './helpers/cliStartMessage.js'; import selectInstallation from './helpers/selectInstallation.js'; import installViltDsJetstream from './installers/installViltDsJetstream.js'; let userInstallation = null; +// Show a starting CLI greeting message cliStartMessage(); +// Inquire the type of installation type from the cli user userInstallation = await selectInstallation(); console.log(' '); +// For a standard installation with an existing +// Laravel + Jetstream install in a current working (root) directory if (userInstallation === 'Install VILT DS Into A Laravel Jetstream Starter App') { installViltDsJetstream(); } diff --git a/dist/index.js.map b/dist/index.js.map index 8a1abe5d..f03a1734 100644 --- a/dist/index.js.map +++ b/dist/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,iBAAiB;AAIjB,OAAO,eAAe,MAAM,8BAA8B,CAAA;AAC1D,OAAO,kBAAkB,MAAM,iCAAiC,CAAA;AAEhE,OAAO,sBAAsB,MAAM,wCAAwC,CAAA;AAG3E,IAAI,gBAAgB,GAA6B,IAAI,CAAA;AAErD,eAAe,EAAE,CAAA;AAEjB,gBAAgB,GAAG,MAAM,kBAAkB,EAAE,CAAA;AAE7C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAEhB,IAAI,gBAAgB,KAAK,sDAAsD,EAAE;IAE7E,sBAAsB,EAAE,CAAA;CAE3B"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,iBAAiB;AAIjB,OAAO,eAAe,MAAM,8BAA8B,CAAA;AAC1D,OAAO,kBAAkB,MAAM,iCAAiC,CAAA;AAEhE,OAAO,sBAAsB,MAAM,wCAAwC,CAAA;AAG3E,IAAI,gBAAgB,GAA6B,IAAI,CAAA;AAErD,uCAAuC;AACvC,eAAe,EAAE,CAAA;AAEjB,0DAA0D;AAC1D,gBAAgB,GAAG,MAAM,kBAAkB,EAAE,CAAA;AAC7C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAEhB,+CAA+C;AAC/C,oEAAoE;AACpE,IAAI,gBAAgB,KAAK,sDAAsD,EAAE;IAC7E,sBAAsB,EAAE,CAAA;CAC3B"} \ No newline at end of file diff --git a/dist/installers/installViltDsJetstream.js b/dist/installers/installViltDsJetstream.js index 439c3f12..a9027a65 100644 --- a/dist/installers/installViltDsJetstream.js +++ b/dist/installers/installViltDsJetstream.js @@ -1,6 +1,8 @@ // ./src/installers/installViltDsJetstream.ts -import installJetstreamGitignore from '../installers/jetstream/installJetstreamGitignore.js'; +import updateConfigJetstream from '../updaters/jetstream/updateConfigJetstream.js'; +import updateJetstreamGitignore from '../updaters/jetstream/updateJetstreamGitignore.js'; export default function () { - installJetstreamGitignore(); + updateJetstreamGitignore(); + updateConfigJetstream(); } //# sourceMappingURL=installViltDsJetstream.js.map \ No newline at end of file diff --git a/dist/installers/installViltDsJetstream.js.map b/dist/installers/installViltDsJetstream.js.map index 57309d6f..ddb28e63 100644 --- a/dist/installers/installViltDsJetstream.js.map +++ b/dist/installers/installViltDsJetstream.js.map @@ -1 +1 @@ -{"version":3,"file":"installViltDsJetstream.js","sourceRoot":"","sources":["../../src/installers/installViltDsJetstream.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAE7C,OAAO,yBAAyB,MAAM,sDAAsD,CAAA;AAE5F,MAAM,CAAC,OAAO;IAEV,yBAAyB,EAAE,CAAA;AAE/B,CAAC"} \ No newline at end of file +{"version":3,"file":"installViltDsJetstream.js","sourceRoot":"","sources":["../../src/installers/installViltDsJetstream.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAE7C,OAAO,qBAAqB,MAAM,gDAAgD,CAAA;AAClF,OAAO,wBAAwB,MAAM,mDAAmD,CAAA;AAExF,MAAM,CAAC,OAAO;IAEV,wBAAwB,EAAE,CAAA;IAE1B,qBAAqB,EAAE,CAAA;AAE3B,CAAC"} \ No newline at end of file diff --git a/dist/installers/jetstream/installJetstreamGitignore.js.map b/dist/installers/jetstream/installJetstreamGitignore.js.map deleted file mode 100644 index 8fb2f105..00000000 --- a/dist/installers/jetstream/installJetstreamGitignore.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"installJetstreamGitignore.js","sourceRoot":"","sources":["../../../src/installers/jetstream/installJetstreamGitignore.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAE1D,OAAO,EAAE,MAAM,UAAU,CAAA;AAEzB,OAAO,0BAA0B,MAAM,0DAA0D,CAAA;AAEjG,OAAO,GAAG,MAAM,sBAAsB,CAAA;AACtC,OAAO,mBAAmB,MAAM,sCAAsC,CAAA;AAEtE,MAAM,CAAC,OAAO;IAEV,MAAM,QAAQ,GAAG,aAAa,CAAA;IAE9B,sFAAsF;IACtF,IAAI,mBAAmB,CAAC,QAAQ,CAAC,EAAE;QAE/B,gEAAgE;QAChE,EAAE,CAAC,QAAQ,CAAC,GAAG,GAAG,QAAQ,EAAE,MAAM,EAAE,UAAS,GAAG,EAAE,IAAI;YAElD,cAAc;YACd,IAAI,GAAG,EAAE;gBAAE,MAAM,GAAG,CAAA;aAAE;YAEtB,mGAAmG;YACnG,EAAE,CAAC,cAAc,CAAC,GAAG,GAAG,QAAQ,EAAE,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QAE/F,CAAC,CAAC,CAAA;KAEL;SAAM;QAEH,+CAA+C;QAC/C,EAAE,CAAC,cAAc,CAAC,GAAG,GAAG,QAAQ,EAAE,0BAA0B,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;KAEpF;AAEL,CAAC"} \ No newline at end of file diff --git a/dist/installers/jetstream/installJetstreamGitignore.d.ts b/dist/updaters/jetstream/updateConfigJetstream.d.ts similarity index 100% rename from dist/installers/jetstream/installJetstreamGitignore.d.ts rename to dist/updaters/jetstream/updateConfigJetstream.d.ts diff --git a/dist/updaters/jetstream/updateConfigJetstream.js b/dist/updaters/jetstream/updateConfigJetstream.js new file mode 100644 index 00000000..c6fb8166 --- /dev/null +++ b/dist/updaters/jetstream/updateConfigJetstream.js @@ -0,0 +1,26 @@ +// ./src/updaters/jetstream/updateConfigJetstream.ts +import fs from 'fs-extra'; +import cliSuccessMessage from '../../helpers/cliSuccessMessage.js'; +import cliWarningMessage from '../../helpers/cliWarningMessage.js'; +import cwd from '../../helpers/cwd.js'; +import projectFileDoesExist from '../../helpers/projectFileDoesExist.js'; +export default function () { + const filename = 'jetstream.php'; + const filepath = '/config/' + filename; + if (projectFileDoesExist(filepath)) { + fs.readFile(cwd + filepath, 'utf8', function (err, data) { + // error check + if (err) { + throw err; + } + let modifiedData = String(data).replace(/\/\/Features::termsAndPrivacyPolicy(),/g, 'Features::termsAndPrivacyPolicy(),').replace(/\/\/Features::api(),/g, 'Features::api(),'); + // If no error, then overwrite the current config/jetstream.php file content with the modifications + fs.outputFileSync(cwd + filepath, modifiedData, { flag: 'w+' }); + cliSuccessMessage(filepath + ' file updated successfully!', true, true); + }); + } + else { + cliWarningMessage(filepath + ' not found, so no updates were made!', true, true); + } +} +//# sourceMappingURL=updateConfigJetstream.js.map \ No newline at end of file diff --git a/dist/updaters/jetstream/updateConfigJetstream.js.map b/dist/updaters/jetstream/updateConfigJetstream.js.map new file mode 100644 index 00000000..311e682b --- /dev/null +++ b/dist/updaters/jetstream/updateConfigJetstream.js.map @@ -0,0 +1 @@ +{"version":3,"file":"updateConfigJetstream.js","sourceRoot":"","sources":["../../../src/updaters/jetstream/updateConfigJetstream.ts"],"names":[],"mappings":"AAAA,oDAAoD;AAEpD,OAAO,EAAE,MAAM,UAAU,CAAA;AAEzB,OAAO,iBAAiB,MAAM,oCAAoC,CAAA;AAClE,OAAO,iBAAiB,MAAM,oCAAoC,CAAA;AAClE,OAAO,GAAG,MAAM,sBAAsB,CAAA;AACtC,OAAO,oBAAoB,MAAM,uCAAuC,CAAA;AAExE,MAAM,CAAC,OAAO;IAEV,MAAM,QAAQ,GAAG,eAAe,CAAA;IAChC,MAAM,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAA;IAEtC,IAAK,oBAAoB,CAAC,QAAQ,CAAC,EAAG;QAElC,EAAE,CAAC,QAAQ,CAAC,GAAG,GAAG,QAAQ,EAAE,MAAM,EAAE,UAAS,GAAG,EAAE,IAAI;YAElD,cAAc;YACd,IAAI,GAAG,EAAE;gBAAE,MAAM,GAAG,CAAA;aAAE;YAEtB,IAAI,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CACnC,yCAAyC,EAAE,oCAAoC,CAClF,CAAC,OAAO,CACL,uBAAuB,EAAE,kBAAkB,CAC9C,CAAA;YAED,mGAAmG;YACnG,EAAE,CAAC,cAAc,CAAC,GAAG,GAAG,QAAQ,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YAE/D,iBAAiB,CAAC,QAAQ,GAAG,6BAA6B,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAE3E,CAAC,CAAC,CAAA;KAEL;SAAM;QAEH,iBAAiB,CAAC,QAAQ,GAAG,sCAAsC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;KAEnF;AAEL,CAAC"} \ No newline at end of file diff --git a/dist/updaters/jetstream/updateJetstreamGitignore.d.ts b/dist/updaters/jetstream/updateJetstreamGitignore.d.ts new file mode 100644 index 00000000..399a90f2 --- /dev/null +++ b/dist/updaters/jetstream/updateJetstreamGitignore.d.ts @@ -0,0 +1 @@ +export default function (): void; diff --git a/dist/installers/jetstream/installJetstreamGitignore.js b/dist/updaters/jetstream/updateJetstreamGitignore.js similarity index 60% rename from dist/installers/jetstream/installJetstreamGitignore.js rename to dist/updaters/jetstream/updateJetstreamGitignore.js index e22f1a94..4e38fab3 100644 --- a/dist/installers/jetstream/installJetstreamGitignore.js +++ b/dist/updaters/jetstream/updateJetstreamGitignore.js @@ -1,12 +1,14 @@ -// ./src/installers/jetstream/installJetstreamGitignore.ts +// ./src/updaters/jetstream/updateJetstreamGitignore.ts import fs from 'fs-extra'; import generateJetstreamGitignore from '../../generators/jetstream/generateJetstreamGitignore.js'; +import cliSuccessMessage from '../../helpers/cliSuccessMessage.js'; +import cliWarningMessage from '../../helpers/cliWarningMessage.js'; import cwd from '../../helpers/cwd.js'; -import ifProjectFileExists from '../../helpers/ifProjectFileExists.js'; +import projectFileDoesExist from '../../helpers/projectFileDoesExist.js'; export default function () { const filepath = '/.gitignore'; // check if user's current repo root directory has a Laravel/Jetstream .gitignore file - if (ifProjectFileExists(filepath)) { + if (projectFileDoesExist(filepath)) { // extract the contents of the Laravel/Jetstream .gitignore file fs.readFile(cwd + filepath, 'utf8', function (err, data) { // error check @@ -15,11 +17,11 @@ export default function () { } // If no error, then overwrite the current gitignore file content wrapped in VILT DS gitignore code fs.outputFileSync(cwd + filepath, generateJetstreamGitignore(String(data)), { flag: 'w+' }); + cliSuccessMessage(filepath + ' file updated successfully!', true, true); }); } else { - // otherwise just output a fresh gitignore file - fs.outputFileSync(cwd + filepath, generateJetstreamGitignore(''), { flag: 'w+' }); + cliWarningMessage(filepath + ' not found, so no updates were made!', true, true); } } -//# sourceMappingURL=installJetstreamGitignore.js.map \ No newline at end of file +//# sourceMappingURL=updateJetstreamGitignore.js.map \ No newline at end of file diff --git a/dist/updaters/jetstream/updateJetstreamGitignore.js.map b/dist/updaters/jetstream/updateJetstreamGitignore.js.map new file mode 100644 index 00000000..8735161f --- /dev/null +++ b/dist/updaters/jetstream/updateJetstreamGitignore.js.map @@ -0,0 +1 @@ +{"version":3,"file":"updateJetstreamGitignore.js","sourceRoot":"","sources":["../../../src/updaters/jetstream/updateJetstreamGitignore.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,OAAO,EAAE,MAAM,UAAU,CAAA;AAEzB,OAAO,0BAA0B,MAAM,0DAA0D,CAAA;AAEjG,OAAO,iBAAiB,MAAM,oCAAoC,CAAA;AAClE,OAAO,iBAAiB,MAAM,oCAAoC,CAAA;AAClE,OAAO,GAAG,MAAM,sBAAsB,CAAA;AACtC,OAAO,oBAAoB,MAAM,uCAAuC,CAAA;AAExE,MAAM,CAAC,OAAO;IAEV,MAAM,QAAQ,GAAG,aAAa,CAAA;IAE9B,sFAAsF;IACtF,IAAK,oBAAoB,CAAC,QAAQ,CAAC,EAAG;QAElC,gEAAgE;QAChE,EAAE,CAAC,QAAQ,CAAC,GAAG,GAAG,QAAQ,EAAE,MAAM,EAAE,UAAS,GAAG,EAAE,IAAI;YAElD,cAAc;YACd,IAAI,GAAG,EAAE;gBAAE,MAAM,GAAG,CAAA;aAAE;YAEtB,mGAAmG;YACnG,EAAE,CAAC,cAAc,CAAC,GAAG,GAAG,QAAQ,EAAE,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YAE3F,iBAAiB,CAAC,QAAQ,GAAG,6BAA6B,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAE3E,CAAC,CAAC,CAAA;KAEL;SAAM;QAEH,iBAAiB,CAAC,QAAQ,GAAG,sCAAsC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;KAEnF;AAEL,CAAC"} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index bf4958e2..4ffcef8e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@obewds/vilt-ds", - "version": "0.1.6", + "version": "0.1.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@obewds/vilt-ds", - "version": "0.1.6", + "version": "0.1.7", "license": "MIT", "dependencies": { "fs-extra": "^11.1.1", diff --git a/package.json b/package.json index 87e498fa..374c4467 100644 --- a/package.json +++ b/package.json @@ -1,18 +1,18 @@ { "name": "@obewds/vilt-ds", - "version": "0.1.6", + "version": "0.1.7", "description": "The official repository for the VILT Design System for the Vue.js, Inertia.js, Laravel, and Tailwind CSS web app stack that is turbocharged with Typescript and VueVentus.", "license": "MIT", "author": "Matt McT", "main": "src/index.js", "type": "module", "scripts": { - "build": "tsc", + "build": "npx rimraf dist && tsc", "pkg:org": "npm config set scope obewds", "tag": "PACKAGE_VERSION=$(cat package.json | grep \\\"version\\\" | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]') && git tag v$PACKAGE_VERSION && git push --tags", - "bump:patch": "npm version patch && npx rimraf dist && npm run build", - "bump:minor": "npm version minor && npx rimraf dist && npm run build", - "bump:major": "npm version major && npx rimraf dist && npm run build" + "bump:patch": "npm version patch && npm run build", + "bump:minor": "npm version minor && npm run build", + "bump:major": "npm version major && npm run build" }, "files": [ "dist" diff --git a/src/generators/jetstream/generateConfigJetstream.ts b/src/generators/jetstream/generateConfigJetstream.ts new file mode 100644 index 00000000..34d1046c --- /dev/null +++ b/src/generators/jetstream/generateConfigJetstream.ts @@ -0,0 +1,35 @@ +// ./src/generators/jetstream/generateConfigJetstream.ts + +import fs from 'fs-extra' + +import cwd from '../../helpers/cwd.js' +import projectFileDoesExist from '../../helpers/projectFileDoesExist.js' + +export default function (jetstreamGitignoreText:string): string { + + const filename = 'jetstream.php' + const filepath = '/config/' + filename + + if ( projectFileDoesExist(filepath) ) { + + fs.readFile(cwd + filepath, 'utf8', function(err, data) { + + // error check + if (err) { throw err } + + let modifiedData = String(data).replace( + /\/\/Features::termsAndPrivacyPolicy(),/g, 'Features::termsAndPrivacyPolicy(),' + ).replace( + /\/\/Features::api(),/g, 'Features::api(),' + ) + + // If no error, then overwrite the current gitignore file content wrapped in VILT DS gitignore code + // fs.outputFileSync(cwd + filepath, generateJetstreamGitignore(String(data)), { flag: 'w+' }) + + }) + + } + + return '' + +} \ No newline at end of file diff --git a/src/generators/jetstream/generateJetstreamGitignore.ts b/src/generators/jetstream/generateJetstreamGitignore.ts index 335ca61a..93705a66 100644 --- a/src/generators/jetstream/generateJetstreamGitignore.ts +++ b/src/generators/jetstream/generateJetstreamGitignore.ts @@ -15,7 +15,6 @@ ${developer} ${mac} ${windows} - `; } diff --git a/src/helpers/cliSuccessMessage.ts b/src/helpers/cliSuccessMessage.ts new file mode 100644 index 00000000..066e353e --- /dev/null +++ b/src/helpers/cliSuccessMessage.ts @@ -0,0 +1,13 @@ +// ./cli/helpers/cliSuccessMessage.ts + +import gradientText from './gradientText.js' + +export default function (string:string, prefixLineBreak:boolean = false, suffixLineBreak:boolean = false): void { + + if (prefixLineBreak) { console.log(' ') } + + console.log(gradientText(string)) + + if (suffixLineBreak) { console.log(' ') } + +} diff --git a/src/helpers/cliWarningMessage.ts b/src/helpers/cliWarningMessage.ts new file mode 100644 index 00000000..7f05aa02 --- /dev/null +++ b/src/helpers/cliWarningMessage.ts @@ -0,0 +1,13 @@ +// ./cli/helpers/cliWarningMessage.ts + +import gradient from 'gradient-string' + +export default function (string:string, prefixLineBreak:boolean = false, suffixLineBreak:boolean = false): void { + + if (prefixLineBreak) { console.log(' ') } + + console.log(gradient.morning(string)) + + if (suffixLineBreak) { console.log(' ') } + +} diff --git a/src/helpers/projectFileDoesExist.ts b/src/helpers/projectFileDoesExist.ts new file mode 100644 index 00000000..6cf446ac --- /dev/null +++ b/src/helpers/projectFileDoesExist.ts @@ -0,0 +1,20 @@ +// ./src/helpers/projectFileDoesExist.ts + +import fs from 'fs-extra' + +import cwd from './cwd.js' + +export default function (filepath:string): boolean { + + const currentFilepath = cwd + filepath + + try { + if (fs.existsSync(currentFilepath)) { + return true + } + } catch(err) { + console.error(err) + return false + } + +} diff --git a/src/index.ts b/src/index.ts index 54031fd1..0c8b8fbf 100644 --- a/src/index.ts +++ b/src/index.ts @@ -11,14 +11,15 @@ import installViltDsJetstream from './installers/installViltDsJetstream.js' let userInstallation: ViltDsInstallationChoice = null +// Show a starting CLI greeting message cliStartMessage() +// Inquire the type of installation type from the cli user userInstallation = await selectInstallation() - console.log(' ') +// For a standard installation with an existing +// Laravel + Jetstream install in a current working (root) directory if (userInstallation === 'Install VILT DS Into A Laravel Jetstream Starter App') { - installViltDsJetstream() - } diff --git a/src/installers/installViltDsJetstream.ts b/src/installers/installViltDsJetstream.ts index 74dea8b3..ec04bc8b 100644 --- a/src/installers/installViltDsJetstream.ts +++ b/src/installers/installViltDsJetstream.ts @@ -1,9 +1,12 @@ // ./src/installers/installViltDsJetstream.ts -import installJetstreamGitignore from '../installers/jetstream/installJetstreamGitignore.js' +import updateConfigJetstream from '../updaters/jetstream/updateConfigJetstream.js' +import updateJetstreamGitignore from '../updaters/jetstream/updateJetstreamGitignore.js' export default function (): void { - installJetstreamGitignore() + updateJetstreamGitignore() + + updateConfigJetstream() } diff --git a/src/updaters/jetstream/updateConfigJetstream.ts b/src/updaters/jetstream/updateConfigJetstream.ts new file mode 100644 index 00000000..c88f3e25 --- /dev/null +++ b/src/updaters/jetstream/updateConfigJetstream.ts @@ -0,0 +1,41 @@ +// ./src/updaters/jetstream/updateConfigJetstream.ts + +import fs from 'fs-extra' + +import cliSuccessMessage from '../../helpers/cliSuccessMessage.js' +import cliWarningMessage from '../../helpers/cliWarningMessage.js' +import cwd from '../../helpers/cwd.js' +import projectFileDoesExist from '../../helpers/projectFileDoesExist.js' + +export default function (): void { + + const filename = 'jetstream.php' + const filepath = '/config/' + filename + + if ( projectFileDoesExist(filepath) ) { + + fs.readFile(cwd + filepath, 'utf8', function(err, data) { + + // error check + if (err) { throw err } + + let modifiedData = String(data).replace( + /\/\/Features::termsAndPrivacyPolicy(),/g, 'Features::termsAndPrivacyPolicy(),' + ).replace( + /\/\/Features::api(),/g, 'Features::api(),' + ) + + // If no error, then overwrite the current config/jetstream.php file content with the modifications + fs.outputFileSync(cwd + filepath, modifiedData, { flag: 'w+' }) + + cliSuccessMessage(filepath + ' file updated successfully!', true, true) + + }) + + } else { + + cliWarningMessage(filepath + ' not found, so no updates were made!', true, true) + + } + +} \ No newline at end of file diff --git a/src/installers/jetstream/installJetstreamGitignore.ts b/src/updaters/jetstream/updateJetstreamGitignore.ts similarity index 62% rename from src/installers/jetstream/installJetstreamGitignore.ts rename to src/updaters/jetstream/updateJetstreamGitignore.ts index 03a35224..950f900f 100644 --- a/src/installers/jetstream/installJetstreamGitignore.ts +++ b/src/updaters/jetstream/updateJetstreamGitignore.ts @@ -1,18 +1,20 @@ -// ./src/installers/jetstream/installJetstreamGitignore.ts +// ./src/updaters/jetstream/updateJetstreamGitignore.ts import fs from 'fs-extra' import generateJetstreamGitignore from '../../generators/jetstream/generateJetstreamGitignore.js' +import cliSuccessMessage from '../../helpers/cliSuccessMessage.js' +import cliWarningMessage from '../../helpers/cliWarningMessage.js' import cwd from '../../helpers/cwd.js' -import ifProjectFileExists from '../../helpers/ifProjectFileExists.js' +import projectFileDoesExist from '../../helpers/projectFileDoesExist.js' export default function (): void { const filepath = '/.gitignore' // check if user's current repo root directory has a Laravel/Jetstream .gitignore file - if (ifProjectFileExists(filepath)) { + if ( projectFileDoesExist(filepath) ) { // extract the contents of the Laravel/Jetstream .gitignore file fs.readFile(cwd + filepath, 'utf8', function(err, data) { @@ -23,12 +25,13 @@ export default function (): void { // If no error, then overwrite the current gitignore file content wrapped in VILT DS gitignore code fs.outputFileSync(cwd + filepath, generateJetstreamGitignore(String(data)), { flag: 'w+' }) + cliSuccessMessage(filepath + ' file updated successfully!', true, true) + }) } else { - // otherwise just output a fresh gitignore file - fs.outputFileSync(cwd + filepath, generateJetstreamGitignore(''), { flag: 'w+' }) + cliWarningMessage(filepath + ' not found, so no updates were made!', true, true) }