function asScriptingParams()

in src/codeConverter.ts [31:74]


function asScriptingParams(
		ownerURI: string,
		operation: azdata.ScriptOperation,
		metadata: azdata.ObjectMetadata,
		paramDetails: azdata.ScriptingParamDetails): types.ScriptingParams {
	let scriptingObject: types.ScriptingObject = {
		type: metadata.metadataTypeName,
		schema: metadata.schema,
		name: metadata.name,
		// cast to any since azdata needs to be updated to pickup this new field
		// TODO: remove cast once updated azdata is published (8/24/2021 - karlb)
		parentName: (<any>metadata).parentName,
		parentTypeName: (<any>metadata).parentTypeName
	};
	let targetDatabaseEngineEdition = paramDetails.targetDatabaseEngineEdition;
	let targetDatabaseEngineType = paramDetails.targetDatabaseEngineType;
	let scriptCompatibilityOption = paramDetails.scriptCompatibilityOption;
	let scriptOptions: types.ScriptOptions = {
		scriptCreateDrop: (operation === azdata.ScriptOperation.Delete) ? 'ScriptDrop' :
			(operation === azdata.ScriptOperation.Select) ? 'ScriptSelect' : 'ScriptCreate',
		typeOfDataToScript: 'SchemaOnly',
		scriptStatistics: 'ScriptStatsNone',
		targetDatabaseEngineEdition: targetDatabaseEngineEdition ? targetDatabaseEngineEdition : 'SqlServerEnterpriseEdition',
		targetDatabaseEngineType: targetDatabaseEngineType ? targetDatabaseEngineType : 'SingleInstance',
		scriptCompatibilityOption: scriptCompatibilityOption ? scriptCompatibilityOption : 'Script140Compat'
	};
	return {
		connectionString: null,
		filePath: paramDetails.filePath,
		scriptingObjects: [scriptingObject],
		scriptDestination: 'ToEditor',
		includeObjectCriteria: null,
		excludeObjectCriteria: null,
		includeSchemas: null,
		excludeSchemas: null,
		includeTypes: null,
		excludeTypes: null,
		scriptOptions,
		connectionDetails: null,
		selectScript: null,
		ownerURI,
		operation
	};
}