UNPKG

@aws-amplify/cli-internal

Version:
53 lines 2.74 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DataAssessor = void 0; const assessment_1 = require("../assessment"); const gen1_app_1 = require("../../_common/gen1-app"); const amplify_cli_core_1 = require("@aws-amplify/amplify-cli-core"); class DataAssessor { constructor(gen1App, resource) { this.gen1App = gen1App; this.resource = resource; } record(assessment) { this.gen1App.ensureCliInputs(this.resource.category, this.resource.resourceName); const transformerVersion = amplify_cli_core_1.FeatureFlags.getNumber('graphQLTransformer.transformerVersion'); if (transformerVersion !== 2) { assessment.recordResource({ resource: this.resource, generate: (0, assessment_1.unsupported)('Transformer V1 is not supported in Gen2'), refactor: (0, assessment_1.notApplicable)(), }); } else { assessment.recordResource({ resource: this.resource, generate: (0, assessment_1.supported)(), refactor: (0, assessment_1.notApplicable)() }); } const overridesPath = `api/${this.resource.resourceName}/override.ts`; if (this.gen1App.fileExists(overridesPath)) { assessment.recordFeature({ feature: { name: gen1_app_1.KNOWN_FEATURES.OVERRIDES, path: overridesPath }, generate: (0, assessment_1.unsupported)('requires adding code after generate'), refactor: (0, assessment_1.notApplicable)(), }); } if (this.hasConflictResolution()) { const cliInputsPath = `api/${this.resource.resourceName}/cli-inputs.json`; assessment.recordFeature({ feature: { name: gen1_app_1.KNOWN_FEATURES.CONFLICT_RESOLUTION, path: cliInputsPath }, generate: (0, assessment_1.unsupported)('conflict resolution (DataStore) is not supported in Gen2'), refactor: (0, assessment_1.unsupported)('conflict resolution (DataStore) is not supported in Gen2'), }); } } hasConflictResolution() { var _a; const cliInputs = this.gen1App.cliInputs(this.resource.category, this.resource.resourceName); const conflictResolution = (_a = cliInputs === null || cliInputs === void 0 ? void 0 : cliInputs.serviceConfiguration) === null || _a === void 0 ? void 0 : _a.conflictResolution; return (conflictResolution != null && typeof conflictResolution === 'object' && !Array.isArray(conflictResolution) && Object.keys(conflictResolution).length > 0); } } exports.DataAssessor = DataAssessor; //# sourceMappingURL=data.assessor.js.map