@ingenyus/swarm-wasp 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/generators/action/action-generator.js +30 -34
- package/dist/generators/action/index.js +30 -34
- package/dist/generators/api/api-generator.js +30 -34
- package/dist/generators/api/index.js +30 -34
- package/dist/generators/api-namespace/api-namespace-generator.js +30 -34
- package/dist/generators/api-namespace/index.js +30 -34
- package/dist/generators/base/component-generator.base.d.ts +4 -7
- package/dist/generators/base/component-generator.base.d.ts.map +1 -1
- package/dist/generators/base/component-generator.base.js +30 -34
- package/dist/generators/base/index.js +30 -34
- package/dist/generators/base/operation-generator.base.js +30 -34
- package/dist/generators/base/wasp-generator.base.d.ts +3 -5
- package/dist/generators/base/wasp-generator.base.d.ts.map +1 -1
- package/dist/generators/base/wasp-generator.base.js +10 -10
- package/dist/generators/crud/crud-generator.js +30 -34
- package/dist/generators/crud/index.js +30 -34
- package/dist/generators/feature/feature-generator.d.ts +2 -4
- package/dist/generators/feature/feature-generator.d.ts.map +1 -1
- package/dist/generators/feature/feature-generator.js +16 -22
- package/dist/generators/feature/index.js +16 -22
- package/dist/generators/index.js +30 -34
- package/dist/generators/job/index.js +30 -34
- package/dist/generators/job/job-generator.js +30 -34
- package/dist/generators/query/index.js +30 -34
- package/dist/generators/query/query-generator.js +30 -34
- package/dist/generators/route/index.js +30 -34
- package/dist/generators/route/route-generator.js +30 -34
- package/dist/index.js +30 -34
- package/package.json +2 -2
|
@@ -29,8 +29,8 @@ var CONFIG_TYPES = {
|
|
|
29
29
|
|
|
30
30
|
// src/generators/base/component-generator.base.ts
|
|
31
31
|
import {
|
|
32
|
+
GeneratorRuntime,
|
|
32
33
|
hasHelperMethodCall,
|
|
33
|
-
logger as singletonLogger4,
|
|
34
34
|
toCamelCase,
|
|
35
35
|
toKebabCase as toKebabCase2,
|
|
36
36
|
validateFeaturePath as validateFeaturePath3
|
|
@@ -199,17 +199,12 @@ var TemplateUtility = class {
|
|
|
199
199
|
};
|
|
200
200
|
|
|
201
201
|
// src/generators/feature/feature-generator.ts
|
|
202
|
-
import {
|
|
203
|
-
handleFatalError as handleFatalError2,
|
|
204
|
-
logger as singletonLogger3,
|
|
205
|
-
validateFeaturePath as validateFeaturePath2
|
|
206
|
-
} from "@ingenyus/swarm";
|
|
202
|
+
import { handleFatalError as handleFatalError2, validateFeaturePath as validateFeaturePath2 } from "@ingenyus/swarm";
|
|
207
203
|
import path5 from "path";
|
|
208
204
|
|
|
209
205
|
// src/generators/base/wasp-generator.base.ts
|
|
210
206
|
import {
|
|
211
207
|
GeneratorBase,
|
|
212
|
-
logger as singletonLogger2,
|
|
213
208
|
SwarmConfigManager,
|
|
214
209
|
TemplateResolver
|
|
215
210
|
} from "@ingenyus/swarm";
|
|
@@ -652,14 +647,6 @@ var WaspConfigGenerator = class {
|
|
|
652
647
|
|
|
653
648
|
// src/generators/base/wasp-generator.base.ts
|
|
654
649
|
var WaspGeneratorBase = class extends GeneratorBase {
|
|
655
|
-
constructor(fileSystem = realFileSystem, logger = singletonLogger2) {
|
|
656
|
-
super(fileSystem, logger);
|
|
657
|
-
this.fileSystem = fileSystem;
|
|
658
|
-
this.logger = logger;
|
|
659
|
-
this.configGenerator = new WaspConfigGenerator(logger, fileSystem);
|
|
660
|
-
this.templateUtility = new TemplateUtility(fileSystem);
|
|
661
|
-
this.templateResolver = new TemplateResolver(fileSystem);
|
|
662
|
-
}
|
|
663
650
|
configGenerator;
|
|
664
651
|
templateUtility;
|
|
665
652
|
templateResolver;
|
|
@@ -667,6 +654,15 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
667
654
|
configLoaded = false;
|
|
668
655
|
// Plugin name from swarm.config.json
|
|
669
656
|
pluginName = PLUGIN_NAME;
|
|
657
|
+
constructor() {
|
|
658
|
+
super();
|
|
659
|
+
this.configGenerator = new WaspConfigGenerator(
|
|
660
|
+
this.logger,
|
|
661
|
+
this.fileSystem
|
|
662
|
+
);
|
|
663
|
+
this.templateUtility = new TemplateUtility(this.fileSystem);
|
|
664
|
+
this.templateResolver = new TemplateResolver(this.fileSystem);
|
|
665
|
+
}
|
|
670
666
|
async loadSwarmConfig() {
|
|
671
667
|
if (this.configLoaded) return;
|
|
672
668
|
const configManager = new SwarmConfigManager();
|
|
@@ -717,7 +713,7 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
717
713
|
}
|
|
718
714
|
/**
|
|
719
715
|
* Generic existence check with force flag handling
|
|
720
|
-
* Consolidates the pattern used in both file and config checks
|
|
716
|
+
* Consolidates the pattern used in both file and config existence checks
|
|
721
717
|
*/
|
|
722
718
|
checkExistence(exists, itemDescription, force, errorMessage) {
|
|
723
719
|
if (exists && !force) {
|
|
@@ -757,16 +753,14 @@ var schema = z2.object({
|
|
|
757
753
|
|
|
758
754
|
// src/generators/feature/feature-generator.ts
|
|
759
755
|
var FeatureGenerator = class extends WaspGeneratorBase {
|
|
760
|
-
constructor(logger = singletonLogger3, fileSystem = realFileSystem) {
|
|
761
|
-
super(fileSystem, logger);
|
|
762
|
-
this.logger = logger;
|
|
763
|
-
this.fileSystem = fileSystem;
|
|
764
|
-
this.name = "feature";
|
|
765
|
-
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
766
|
-
}
|
|
767
756
|
name;
|
|
768
757
|
description;
|
|
769
758
|
schema = schema;
|
|
759
|
+
constructor() {
|
|
760
|
+
super();
|
|
761
|
+
this.name = "feature";
|
|
762
|
+
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
763
|
+
}
|
|
770
764
|
getDefaultTemplatePath(templateName) {
|
|
771
765
|
return this.templateUtility.resolveTemplatePath(
|
|
772
766
|
templateName,
|
|
@@ -802,13 +796,6 @@ var FeatureGenerator = class extends WaspGeneratorBase {
|
|
|
802
796
|
|
|
803
797
|
// src/generators/base/component-generator.base.ts
|
|
804
798
|
var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
805
|
-
constructor(logger = singletonLogger4, fileSystem = realFileSystem, featureDirectoryGenerator = new FeatureGenerator(logger, fileSystem)) {
|
|
806
|
-
super(fileSystem, logger);
|
|
807
|
-
this.logger = logger;
|
|
808
|
-
this.fileSystem = fileSystem;
|
|
809
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
810
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
811
|
-
}
|
|
812
799
|
getDefaultTemplatePath(templateName) {
|
|
813
800
|
return this.templateUtility.resolveTemplatePath(
|
|
814
801
|
templateName,
|
|
@@ -816,6 +803,17 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
816
803
|
import.meta.url
|
|
817
804
|
);
|
|
818
805
|
}
|
|
806
|
+
featureDirectoryGenerator;
|
|
807
|
+
constructor() {
|
|
808
|
+
super();
|
|
809
|
+
const runtime = GeneratorRuntime.current();
|
|
810
|
+
if (runtime.featureGeneratorFactory) {
|
|
811
|
+
const factoryResult = runtime.featureGeneratorFactory(runtime);
|
|
812
|
+
this.featureDirectoryGenerator = factoryResult;
|
|
813
|
+
} else {
|
|
814
|
+
this.featureDirectoryGenerator = new FeatureGenerator();
|
|
815
|
+
}
|
|
816
|
+
}
|
|
819
817
|
get name() {
|
|
820
818
|
return toKebabCase2(this.componentType);
|
|
821
819
|
}
|
|
@@ -892,15 +890,14 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
892
890
|
}
|
|
893
891
|
/**
|
|
894
892
|
* Gets the appropriate directory for a feature based on its path.
|
|
895
|
-
* @param fileSystem - The filesystem abstraction
|
|
896
893
|
* @param featurePath - The full feature path
|
|
897
894
|
* @param type - The type of file being generated
|
|
898
895
|
* @returns The target directory and import path
|
|
899
896
|
*/
|
|
900
|
-
getFeatureTargetDir(
|
|
897
|
+
getFeatureTargetDir(featurePath, type) {
|
|
901
898
|
validateFeaturePath3(featurePath);
|
|
902
899
|
const normalisedPath = normaliseFeaturePath(featurePath);
|
|
903
|
-
const featureDir = getFeatureDir(fileSystem, normalisedPath);
|
|
900
|
+
const featureDir = getFeatureDir(this.fileSystem, normalisedPath);
|
|
904
901
|
const typeKey = type.toLowerCase();
|
|
905
902
|
const typeDirectory = TYPE_DIRECTORIES[typeKey];
|
|
906
903
|
const targetDirectory = path6.join(featureDir, typeDirectory);
|
|
@@ -912,7 +909,6 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
912
909
|
*/
|
|
913
910
|
ensureTargetDirectory(featurePath, type) {
|
|
914
911
|
const { targetDirectory, importDirectory } = this.getFeatureTargetDir(
|
|
915
|
-
this.fileSystem,
|
|
916
912
|
featurePath,
|
|
917
913
|
type
|
|
918
914
|
);
|
|
@@ -29,8 +29,8 @@ var CONFIG_TYPES = {
|
|
|
29
29
|
|
|
30
30
|
// src/generators/base/component-generator.base.ts
|
|
31
31
|
import {
|
|
32
|
+
GeneratorRuntime,
|
|
32
33
|
hasHelperMethodCall,
|
|
33
|
-
logger as singletonLogger4,
|
|
34
34
|
toCamelCase,
|
|
35
35
|
toKebabCase as toKebabCase2,
|
|
36
36
|
validateFeaturePath as validateFeaturePath3
|
|
@@ -199,17 +199,12 @@ var TemplateUtility = class {
|
|
|
199
199
|
};
|
|
200
200
|
|
|
201
201
|
// src/generators/feature/feature-generator.ts
|
|
202
|
-
import {
|
|
203
|
-
handleFatalError as handleFatalError2,
|
|
204
|
-
logger as singletonLogger3,
|
|
205
|
-
validateFeaturePath as validateFeaturePath2
|
|
206
|
-
} from "@ingenyus/swarm";
|
|
202
|
+
import { handleFatalError as handleFatalError2, validateFeaturePath as validateFeaturePath2 } from "@ingenyus/swarm";
|
|
207
203
|
import path5 from "path";
|
|
208
204
|
|
|
209
205
|
// src/generators/base/wasp-generator.base.ts
|
|
210
206
|
import {
|
|
211
207
|
GeneratorBase,
|
|
212
|
-
logger as singletonLogger2,
|
|
213
208
|
SwarmConfigManager,
|
|
214
209
|
TemplateResolver
|
|
215
210
|
} from "@ingenyus/swarm";
|
|
@@ -652,14 +647,6 @@ var WaspConfigGenerator = class {
|
|
|
652
647
|
|
|
653
648
|
// src/generators/base/wasp-generator.base.ts
|
|
654
649
|
var WaspGeneratorBase = class extends GeneratorBase {
|
|
655
|
-
constructor(fileSystem = realFileSystem, logger = singletonLogger2) {
|
|
656
|
-
super(fileSystem, logger);
|
|
657
|
-
this.fileSystem = fileSystem;
|
|
658
|
-
this.logger = logger;
|
|
659
|
-
this.configGenerator = new WaspConfigGenerator(logger, fileSystem);
|
|
660
|
-
this.templateUtility = new TemplateUtility(fileSystem);
|
|
661
|
-
this.templateResolver = new TemplateResolver(fileSystem);
|
|
662
|
-
}
|
|
663
650
|
configGenerator;
|
|
664
651
|
templateUtility;
|
|
665
652
|
templateResolver;
|
|
@@ -667,6 +654,15 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
667
654
|
configLoaded = false;
|
|
668
655
|
// Plugin name from swarm.config.json
|
|
669
656
|
pluginName = PLUGIN_NAME;
|
|
657
|
+
constructor() {
|
|
658
|
+
super();
|
|
659
|
+
this.configGenerator = new WaspConfigGenerator(
|
|
660
|
+
this.logger,
|
|
661
|
+
this.fileSystem
|
|
662
|
+
);
|
|
663
|
+
this.templateUtility = new TemplateUtility(this.fileSystem);
|
|
664
|
+
this.templateResolver = new TemplateResolver(this.fileSystem);
|
|
665
|
+
}
|
|
670
666
|
async loadSwarmConfig() {
|
|
671
667
|
if (this.configLoaded) return;
|
|
672
668
|
const configManager = new SwarmConfigManager();
|
|
@@ -717,7 +713,7 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
717
713
|
}
|
|
718
714
|
/**
|
|
719
715
|
* Generic existence check with force flag handling
|
|
720
|
-
* Consolidates the pattern used in both file and config checks
|
|
716
|
+
* Consolidates the pattern used in both file and config existence checks
|
|
721
717
|
*/
|
|
722
718
|
checkExistence(exists, itemDescription, force, errorMessage) {
|
|
723
719
|
if (exists && !force) {
|
|
@@ -757,16 +753,14 @@ var schema = z2.object({
|
|
|
757
753
|
|
|
758
754
|
// src/generators/feature/feature-generator.ts
|
|
759
755
|
var FeatureGenerator = class extends WaspGeneratorBase {
|
|
760
|
-
constructor(logger = singletonLogger3, fileSystem = realFileSystem) {
|
|
761
|
-
super(fileSystem, logger);
|
|
762
|
-
this.logger = logger;
|
|
763
|
-
this.fileSystem = fileSystem;
|
|
764
|
-
this.name = "feature";
|
|
765
|
-
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
766
|
-
}
|
|
767
756
|
name;
|
|
768
757
|
description;
|
|
769
758
|
schema = schema;
|
|
759
|
+
constructor() {
|
|
760
|
+
super();
|
|
761
|
+
this.name = "feature";
|
|
762
|
+
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
763
|
+
}
|
|
770
764
|
getDefaultTemplatePath(templateName) {
|
|
771
765
|
return this.templateUtility.resolveTemplatePath(
|
|
772
766
|
templateName,
|
|
@@ -802,13 +796,6 @@ var FeatureGenerator = class extends WaspGeneratorBase {
|
|
|
802
796
|
|
|
803
797
|
// src/generators/base/component-generator.base.ts
|
|
804
798
|
var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
805
|
-
constructor(logger = singletonLogger4, fileSystem = realFileSystem, featureDirectoryGenerator = new FeatureGenerator(logger, fileSystem)) {
|
|
806
|
-
super(fileSystem, logger);
|
|
807
|
-
this.logger = logger;
|
|
808
|
-
this.fileSystem = fileSystem;
|
|
809
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
810
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
811
|
-
}
|
|
812
799
|
getDefaultTemplatePath(templateName) {
|
|
813
800
|
return this.templateUtility.resolveTemplatePath(
|
|
814
801
|
templateName,
|
|
@@ -816,6 +803,17 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
816
803
|
import.meta.url
|
|
817
804
|
);
|
|
818
805
|
}
|
|
806
|
+
featureDirectoryGenerator;
|
|
807
|
+
constructor() {
|
|
808
|
+
super();
|
|
809
|
+
const runtime = GeneratorRuntime.current();
|
|
810
|
+
if (runtime.featureGeneratorFactory) {
|
|
811
|
+
const factoryResult = runtime.featureGeneratorFactory(runtime);
|
|
812
|
+
this.featureDirectoryGenerator = factoryResult;
|
|
813
|
+
} else {
|
|
814
|
+
this.featureDirectoryGenerator = new FeatureGenerator();
|
|
815
|
+
}
|
|
816
|
+
}
|
|
819
817
|
get name() {
|
|
820
818
|
return toKebabCase2(this.componentType);
|
|
821
819
|
}
|
|
@@ -892,15 +890,14 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
892
890
|
}
|
|
893
891
|
/**
|
|
894
892
|
* Gets the appropriate directory for a feature based on its path.
|
|
895
|
-
* @param fileSystem - The filesystem abstraction
|
|
896
893
|
* @param featurePath - The full feature path
|
|
897
894
|
* @param type - The type of file being generated
|
|
898
895
|
* @returns The target directory and import path
|
|
899
896
|
*/
|
|
900
|
-
getFeatureTargetDir(
|
|
897
|
+
getFeatureTargetDir(featurePath, type) {
|
|
901
898
|
validateFeaturePath3(featurePath);
|
|
902
899
|
const normalisedPath = normaliseFeaturePath(featurePath);
|
|
903
|
-
const featureDir = getFeatureDir(fileSystem, normalisedPath);
|
|
900
|
+
const featureDir = getFeatureDir(this.fileSystem, normalisedPath);
|
|
904
901
|
const typeKey = type.toLowerCase();
|
|
905
902
|
const typeDirectory = TYPE_DIRECTORIES[typeKey];
|
|
906
903
|
const targetDirectory = path6.join(featureDir, typeDirectory);
|
|
@@ -912,7 +909,6 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
912
909
|
*/
|
|
913
910
|
ensureTargetDirectory(featurePath, type) {
|
|
914
911
|
const { targetDirectory, importDirectory } = this.getFeatureTargetDir(
|
|
915
|
-
this.fileSystem,
|
|
916
912
|
featurePath,
|
|
917
913
|
type
|
|
918
914
|
);
|
|
@@ -40,8 +40,8 @@ var CONFIG_TYPES = {
|
|
|
40
40
|
|
|
41
41
|
// src/generators/base/component-generator.base.ts
|
|
42
42
|
import {
|
|
43
|
+
GeneratorRuntime,
|
|
43
44
|
hasHelperMethodCall,
|
|
44
|
-
logger as singletonLogger4,
|
|
45
45
|
toCamelCase,
|
|
46
46
|
toKebabCase as toKebabCase2,
|
|
47
47
|
validateFeaturePath as validateFeaturePath3
|
|
@@ -350,17 +350,12 @@ var TemplateUtility = class {
|
|
|
350
350
|
};
|
|
351
351
|
|
|
352
352
|
// src/generators/feature/feature-generator.ts
|
|
353
|
-
import {
|
|
354
|
-
handleFatalError as handleFatalError2,
|
|
355
|
-
logger as singletonLogger3,
|
|
356
|
-
validateFeaturePath as validateFeaturePath2
|
|
357
|
-
} from "@ingenyus/swarm";
|
|
353
|
+
import { handleFatalError as handleFatalError2, validateFeaturePath as validateFeaturePath2 } from "@ingenyus/swarm";
|
|
358
354
|
import path5 from "path";
|
|
359
355
|
|
|
360
356
|
// src/generators/base/wasp-generator.base.ts
|
|
361
357
|
import {
|
|
362
358
|
GeneratorBase,
|
|
363
|
-
logger as singletonLogger2,
|
|
364
359
|
SwarmConfigManager,
|
|
365
360
|
TemplateResolver
|
|
366
361
|
} from "@ingenyus/swarm";
|
|
@@ -803,14 +798,6 @@ var WaspConfigGenerator = class {
|
|
|
803
798
|
|
|
804
799
|
// src/generators/base/wasp-generator.base.ts
|
|
805
800
|
var WaspGeneratorBase = class extends GeneratorBase {
|
|
806
|
-
constructor(fileSystem = realFileSystem, logger = singletonLogger2) {
|
|
807
|
-
super(fileSystem, logger);
|
|
808
|
-
this.fileSystem = fileSystem;
|
|
809
|
-
this.logger = logger;
|
|
810
|
-
this.configGenerator = new WaspConfigGenerator(logger, fileSystem);
|
|
811
|
-
this.templateUtility = new TemplateUtility(fileSystem);
|
|
812
|
-
this.templateResolver = new TemplateResolver(fileSystem);
|
|
813
|
-
}
|
|
814
801
|
configGenerator;
|
|
815
802
|
templateUtility;
|
|
816
803
|
templateResolver;
|
|
@@ -818,6 +805,15 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
818
805
|
configLoaded = false;
|
|
819
806
|
// Plugin name from swarm.config.json
|
|
820
807
|
pluginName = PLUGIN_NAME;
|
|
808
|
+
constructor() {
|
|
809
|
+
super();
|
|
810
|
+
this.configGenerator = new WaspConfigGenerator(
|
|
811
|
+
this.logger,
|
|
812
|
+
this.fileSystem
|
|
813
|
+
);
|
|
814
|
+
this.templateUtility = new TemplateUtility(this.fileSystem);
|
|
815
|
+
this.templateResolver = new TemplateResolver(this.fileSystem);
|
|
816
|
+
}
|
|
821
817
|
async loadSwarmConfig() {
|
|
822
818
|
if (this.configLoaded) return;
|
|
823
819
|
const configManager = new SwarmConfigManager();
|
|
@@ -868,7 +864,7 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
868
864
|
}
|
|
869
865
|
/**
|
|
870
866
|
* Generic existence check with force flag handling
|
|
871
|
-
* Consolidates the pattern used in both file and config checks
|
|
867
|
+
* Consolidates the pattern used in both file and config existence checks
|
|
872
868
|
*/
|
|
873
869
|
checkExistence(exists, itemDescription, force, errorMessage) {
|
|
874
870
|
if (exists && !force) {
|
|
@@ -908,16 +904,14 @@ var schema = z2.object({
|
|
|
908
904
|
|
|
909
905
|
// src/generators/feature/feature-generator.ts
|
|
910
906
|
var FeatureGenerator = class extends WaspGeneratorBase {
|
|
911
|
-
constructor(logger = singletonLogger3, fileSystem = realFileSystem) {
|
|
912
|
-
super(fileSystem, logger);
|
|
913
|
-
this.logger = logger;
|
|
914
|
-
this.fileSystem = fileSystem;
|
|
915
|
-
this.name = "feature";
|
|
916
|
-
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
917
|
-
}
|
|
918
907
|
name;
|
|
919
908
|
description;
|
|
920
909
|
schema = schema;
|
|
910
|
+
constructor() {
|
|
911
|
+
super();
|
|
912
|
+
this.name = "feature";
|
|
913
|
+
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
914
|
+
}
|
|
921
915
|
getDefaultTemplatePath(templateName) {
|
|
922
916
|
return this.templateUtility.resolveTemplatePath(
|
|
923
917
|
templateName,
|
|
@@ -953,13 +947,6 @@ var FeatureGenerator = class extends WaspGeneratorBase {
|
|
|
953
947
|
|
|
954
948
|
// src/generators/base/component-generator.base.ts
|
|
955
949
|
var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
956
|
-
constructor(logger = singletonLogger4, fileSystem = realFileSystem, featureDirectoryGenerator = new FeatureGenerator(logger, fileSystem)) {
|
|
957
|
-
super(fileSystem, logger);
|
|
958
|
-
this.logger = logger;
|
|
959
|
-
this.fileSystem = fileSystem;
|
|
960
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
961
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
962
|
-
}
|
|
963
950
|
getDefaultTemplatePath(templateName) {
|
|
964
951
|
return this.templateUtility.resolveTemplatePath(
|
|
965
952
|
templateName,
|
|
@@ -967,6 +954,17 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
967
954
|
import.meta.url
|
|
968
955
|
);
|
|
969
956
|
}
|
|
957
|
+
featureDirectoryGenerator;
|
|
958
|
+
constructor() {
|
|
959
|
+
super();
|
|
960
|
+
const runtime = GeneratorRuntime.current();
|
|
961
|
+
if (runtime.featureGeneratorFactory) {
|
|
962
|
+
const factoryResult = runtime.featureGeneratorFactory(runtime);
|
|
963
|
+
this.featureDirectoryGenerator = factoryResult;
|
|
964
|
+
} else {
|
|
965
|
+
this.featureDirectoryGenerator = new FeatureGenerator();
|
|
966
|
+
}
|
|
967
|
+
}
|
|
970
968
|
get name() {
|
|
971
969
|
return toKebabCase2(this.componentType);
|
|
972
970
|
}
|
|
@@ -1043,15 +1041,14 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
1043
1041
|
}
|
|
1044
1042
|
/**
|
|
1045
1043
|
* Gets the appropriate directory for a feature based on its path.
|
|
1046
|
-
* @param fileSystem - The filesystem abstraction
|
|
1047
1044
|
* @param featurePath - The full feature path
|
|
1048
1045
|
* @param type - The type of file being generated
|
|
1049
1046
|
* @returns The target directory and import path
|
|
1050
1047
|
*/
|
|
1051
|
-
getFeatureTargetDir(
|
|
1048
|
+
getFeatureTargetDir(featurePath, type) {
|
|
1052
1049
|
validateFeaturePath3(featurePath);
|
|
1053
1050
|
const normalisedPath = normaliseFeaturePath(featurePath);
|
|
1054
|
-
const featureDir = getFeatureDir(fileSystem, normalisedPath);
|
|
1051
|
+
const featureDir = getFeatureDir(this.fileSystem, normalisedPath);
|
|
1055
1052
|
const typeKey = type.toLowerCase();
|
|
1056
1053
|
const typeDirectory = TYPE_DIRECTORIES[typeKey];
|
|
1057
1054
|
const targetDirectory = path6.join(featureDir, typeDirectory);
|
|
@@ -1063,7 +1060,6 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
1063
1060
|
*/
|
|
1064
1061
|
ensureTargetDirectory(featurePath, type) {
|
|
1065
1062
|
const { targetDirectory, importDirectory } = this.getFeatureTargetDir(
|
|
1066
|
-
this.fileSystem,
|
|
1067
1063
|
featurePath,
|
|
1068
1064
|
type
|
|
1069
1065
|
);
|
|
@@ -40,8 +40,8 @@ var CONFIG_TYPES = {
|
|
|
40
40
|
|
|
41
41
|
// src/generators/base/component-generator.base.ts
|
|
42
42
|
import {
|
|
43
|
+
GeneratorRuntime,
|
|
43
44
|
hasHelperMethodCall,
|
|
44
|
-
logger as singletonLogger4,
|
|
45
45
|
toCamelCase,
|
|
46
46
|
toKebabCase as toKebabCase2,
|
|
47
47
|
validateFeaturePath as validateFeaturePath3
|
|
@@ -350,17 +350,12 @@ var TemplateUtility = class {
|
|
|
350
350
|
};
|
|
351
351
|
|
|
352
352
|
// src/generators/feature/feature-generator.ts
|
|
353
|
-
import {
|
|
354
|
-
handleFatalError as handleFatalError2,
|
|
355
|
-
logger as singletonLogger3,
|
|
356
|
-
validateFeaturePath as validateFeaturePath2
|
|
357
|
-
} from "@ingenyus/swarm";
|
|
353
|
+
import { handleFatalError as handleFatalError2, validateFeaturePath as validateFeaturePath2 } from "@ingenyus/swarm";
|
|
358
354
|
import path5 from "path";
|
|
359
355
|
|
|
360
356
|
// src/generators/base/wasp-generator.base.ts
|
|
361
357
|
import {
|
|
362
358
|
GeneratorBase,
|
|
363
|
-
logger as singletonLogger2,
|
|
364
359
|
SwarmConfigManager,
|
|
365
360
|
TemplateResolver
|
|
366
361
|
} from "@ingenyus/swarm";
|
|
@@ -803,14 +798,6 @@ var WaspConfigGenerator = class {
|
|
|
803
798
|
|
|
804
799
|
// src/generators/base/wasp-generator.base.ts
|
|
805
800
|
var WaspGeneratorBase = class extends GeneratorBase {
|
|
806
|
-
constructor(fileSystem = realFileSystem, logger = singletonLogger2) {
|
|
807
|
-
super(fileSystem, logger);
|
|
808
|
-
this.fileSystem = fileSystem;
|
|
809
|
-
this.logger = logger;
|
|
810
|
-
this.configGenerator = new WaspConfigGenerator(logger, fileSystem);
|
|
811
|
-
this.templateUtility = new TemplateUtility(fileSystem);
|
|
812
|
-
this.templateResolver = new TemplateResolver(fileSystem);
|
|
813
|
-
}
|
|
814
801
|
configGenerator;
|
|
815
802
|
templateUtility;
|
|
816
803
|
templateResolver;
|
|
@@ -818,6 +805,15 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
818
805
|
configLoaded = false;
|
|
819
806
|
// Plugin name from swarm.config.json
|
|
820
807
|
pluginName = PLUGIN_NAME;
|
|
808
|
+
constructor() {
|
|
809
|
+
super();
|
|
810
|
+
this.configGenerator = new WaspConfigGenerator(
|
|
811
|
+
this.logger,
|
|
812
|
+
this.fileSystem
|
|
813
|
+
);
|
|
814
|
+
this.templateUtility = new TemplateUtility(this.fileSystem);
|
|
815
|
+
this.templateResolver = new TemplateResolver(this.fileSystem);
|
|
816
|
+
}
|
|
821
817
|
async loadSwarmConfig() {
|
|
822
818
|
if (this.configLoaded) return;
|
|
823
819
|
const configManager = new SwarmConfigManager();
|
|
@@ -868,7 +864,7 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
868
864
|
}
|
|
869
865
|
/**
|
|
870
866
|
* Generic existence check with force flag handling
|
|
871
|
-
* Consolidates the pattern used in both file and config checks
|
|
867
|
+
* Consolidates the pattern used in both file and config existence checks
|
|
872
868
|
*/
|
|
873
869
|
checkExistence(exists, itemDescription, force, errorMessage) {
|
|
874
870
|
if (exists && !force) {
|
|
@@ -908,16 +904,14 @@ var schema = z2.object({
|
|
|
908
904
|
|
|
909
905
|
// src/generators/feature/feature-generator.ts
|
|
910
906
|
var FeatureGenerator = class extends WaspGeneratorBase {
|
|
911
|
-
constructor(logger = singletonLogger3, fileSystem = realFileSystem) {
|
|
912
|
-
super(fileSystem, logger);
|
|
913
|
-
this.logger = logger;
|
|
914
|
-
this.fileSystem = fileSystem;
|
|
915
|
-
this.name = "feature";
|
|
916
|
-
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
917
|
-
}
|
|
918
907
|
name;
|
|
919
908
|
description;
|
|
920
909
|
schema = schema;
|
|
910
|
+
constructor() {
|
|
911
|
+
super();
|
|
912
|
+
this.name = "feature";
|
|
913
|
+
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
914
|
+
}
|
|
921
915
|
getDefaultTemplatePath(templateName) {
|
|
922
916
|
return this.templateUtility.resolveTemplatePath(
|
|
923
917
|
templateName,
|
|
@@ -953,13 +947,6 @@ var FeatureGenerator = class extends WaspGeneratorBase {
|
|
|
953
947
|
|
|
954
948
|
// src/generators/base/component-generator.base.ts
|
|
955
949
|
var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
956
|
-
constructor(logger = singletonLogger4, fileSystem = realFileSystem, featureDirectoryGenerator = new FeatureGenerator(logger, fileSystem)) {
|
|
957
|
-
super(fileSystem, logger);
|
|
958
|
-
this.logger = logger;
|
|
959
|
-
this.fileSystem = fileSystem;
|
|
960
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
961
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
962
|
-
}
|
|
963
950
|
getDefaultTemplatePath(templateName) {
|
|
964
951
|
return this.templateUtility.resolveTemplatePath(
|
|
965
952
|
templateName,
|
|
@@ -967,6 +954,17 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
967
954
|
import.meta.url
|
|
968
955
|
);
|
|
969
956
|
}
|
|
957
|
+
featureDirectoryGenerator;
|
|
958
|
+
constructor() {
|
|
959
|
+
super();
|
|
960
|
+
const runtime = GeneratorRuntime.current();
|
|
961
|
+
if (runtime.featureGeneratorFactory) {
|
|
962
|
+
const factoryResult = runtime.featureGeneratorFactory(runtime);
|
|
963
|
+
this.featureDirectoryGenerator = factoryResult;
|
|
964
|
+
} else {
|
|
965
|
+
this.featureDirectoryGenerator = new FeatureGenerator();
|
|
966
|
+
}
|
|
967
|
+
}
|
|
970
968
|
get name() {
|
|
971
969
|
return toKebabCase2(this.componentType);
|
|
972
970
|
}
|
|
@@ -1043,15 +1041,14 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
1043
1041
|
}
|
|
1044
1042
|
/**
|
|
1045
1043
|
* Gets the appropriate directory for a feature based on its path.
|
|
1046
|
-
* @param fileSystem - The filesystem abstraction
|
|
1047
1044
|
* @param featurePath - The full feature path
|
|
1048
1045
|
* @param type - The type of file being generated
|
|
1049
1046
|
* @returns The target directory and import path
|
|
1050
1047
|
*/
|
|
1051
|
-
getFeatureTargetDir(
|
|
1048
|
+
getFeatureTargetDir(featurePath, type) {
|
|
1052
1049
|
validateFeaturePath3(featurePath);
|
|
1053
1050
|
const normalisedPath = normaliseFeaturePath(featurePath);
|
|
1054
|
-
const featureDir = getFeatureDir(fileSystem, normalisedPath);
|
|
1051
|
+
const featureDir = getFeatureDir(this.fileSystem, normalisedPath);
|
|
1055
1052
|
const typeKey = type.toLowerCase();
|
|
1056
1053
|
const typeDirectory = TYPE_DIRECTORIES[typeKey];
|
|
1057
1054
|
const targetDirectory = path6.join(featureDir, typeDirectory);
|
|
@@ -1063,7 +1060,6 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
1063
1060
|
*/
|
|
1064
1061
|
ensureTargetDirectory(featurePath, type) {
|
|
1065
1062
|
const { targetDirectory, importDirectory } = this.getFeatureTargetDir(
|
|
1066
|
-
this.fileSystem,
|
|
1067
1063
|
featurePath,
|
|
1068
1064
|
type
|
|
1069
1065
|
);
|