in libs/designer/src/lib/core/actions/bjsworkflow/settings.ts [776:866]
uploadChunkSize: getObjectPropertyValue(runtimeConfiguration, [
Constants.SETTINGS.PROPERTY_NAMES.CONTENT_TRANSFER,
Constants.SETTINGS.PROPERTY_NAMES.UPLOAD_CHUNK_SIZE,
]),
};
}
if (isTrigger || workflowKind === WorkflowKind.STATELESS) {
return undefined;
}
let isChunkTransferSupported = false;
if (manifest) {
const chunkingSetting = getOperationSettingFromManifest(manifest, 'chunking') as
| OperationManifestSetting<UploadChunkMetadata>
| undefined;
isChunkTransferSupported = isSettingSupportedFromOperationManifest(chunkingSetting, isTrigger);
} else if (equals(nodeType, Constants.NODE.TYPE.API_CONNECTION) && swagger && operationId) {
isChunkTransferSupported = !!swagger.getOperationByOperationId(operationId)?.uploadChunkMetadata?.chunkTransferSupported;
}
return isChunkTransferSupported ? { transferMode: Constants.SETTINGS.TRANSFER_MODE.CHUNKED } : undefined;
};
export const isChunkedTransferModeSupported = (
isTrigger: boolean,
nodeType: string,
manifest?: OperationManifest,
swagger?: SwaggerParser,
operationId?: string
): boolean => {
if (manifest) {
const chunkingSetting = getOperationSettingFromManifest(manifest, 'chunking') as
| OperationManifestSetting<UploadChunkMetadata>
| undefined;
return isSettingSupportedFromOperationManifest(chunkingSetting, isTrigger);
}
if (isTrigger || !swagger || !operationId) {
return false;
}
switch (nodeType.toLowerCase()) {
case Constants.NODE.TYPE.API_CONNECTION:
return !!swagger.getOperationByOperationId(operationId)?.uploadChunkMetadata?.chunkTransferSupported;
case Constants.NODE.TYPE.HTTP:
return true;
default:
return false;
}
};
const getDownloadChunkSize = (definition?: LogicAppsV2.OperationDefinition): number | undefined => {
return definition
? getObjectPropertyValue(getRuntimeConfiguration(definition), [
Constants.SETTINGS.PROPERTY_NAMES.CONTENT_TRANSFER,
Constants.SETTINGS.PROPERTY_NAMES.DOWNLOAD_CHUNK_SIZE,
])
: undefined;
};
const getTrackedProperties = (isTrigger: boolean, manifest?: OperationManifest, definition?: LogicAppsV2.ActionDefinition): any => {
const supported = areTrackedPropertiesSupported(isTrigger, manifest);
return supported && definition ? getPropertyValue(definition as any, 'trackedProperties') : undefined;
};
const areTrackedPropertiesSupported = (isTrigger: boolean, manifest?: OperationManifest): boolean => {
if (manifest) {
const setting = getOperationSettingFromManifest(manifest, 'trackedProperties') as OperationManifestSetting<void> | undefined;
return isSettingSupportedFromOperationManifest(setting, isTrigger);
}
return !isTrigger;
};
const getSecureInputsSetting = (definition?: LogicAppsV2.OperationDefinition): boolean => {
if (definition) {
const secureData = getObjectPropertyValue(getRuntimeConfiguration(definition), [Constants.SETTINGS.PROPERTY_NAMES.SECURE_DATA]);
return secureData && secureData.properties.indexOf(Constants.SETTINGS.SECURE_DATA_PROPERTY_NAMES.INPUTS) > -1;
}
return false;
};
const isInputsPropertySupportedInSecureDataSetting = (nodeType: string, manifest?: OperationManifest): boolean => {
// where to check if SUPPORT_OBFUSCATION feature is enabled?
if (manifest) {
const secureDataSetting = getOperationSettingFromManifest(manifest, 'secureData') as
| OperationManifestSetting<SecureDataOptions>
| undefined;
if (secureDataSetting) {