react-native-gigya-sdk
Version:
SAP CDC/Gigya SDK for your React Native applications
59 lines (47 loc) • 3.18 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _default;
var _getAccountInfo = _interopRequireDefault(require("./getAccountInfo"));
var _getRequiredConsentSchemas = _interopRequireDefault(require("./getRequiredConsentSchemas"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _default() {
return new Promise(async (resolve, reject) => {
try {
var _await$getAccountInfo;
const mandatoryConsentSchemas = await (0, _getRequiredConsentSchemas.default)();
const acceptanceRequiredConsentIds = mandatoryConsentSchemas.acceptanceRequired.map(schema => schema.key);
const instantiationRequiredConsentIds = mandatoryConsentSchemas.instantiationRequired.map(schema => schema.key);
const preferences = (_await$getAccountInfo = await (0, _getAccountInfo.default)({
noUID: true
})) === null || _await$getAccountInfo === void 0 ? void 0 : _await$getAccountInfo.preferences;
if (acceptanceRequiredConsentIds.length < 1 && instantiationRequiredConsentIds.length < 1 || !preferences) return resolve(null);
const output = {
instantiationRequired: [],
acceptanceRequired: []
};
acceptanceRequiredConsentIds.forEach(consentId => {
var _preferences$consentI, _preferences$consentT, _preferences$consentT2;
const [consentTypeOrId, subConsentId] = consentId.split('.');
if (!(preferences !== null && preferences !== void 0 && (_preferences$consentI = preferences[consentId]) !== null && _preferences$consentI !== void 0 && _preferences$consentI.isConsentGranted) && !(preferences !== null && preferences !== void 0 && (_preferences$consentT = preferences[consentTypeOrId]) !== null && _preferences$consentT !== void 0 && (_preferences$consentT2 = _preferences$consentT[subConsentId]) !== null && _preferences$consentT2 !== void 0 && _preferences$consentT2.isConsentGranted)) {
output.acceptanceRequired = [...output.acceptanceRequired, consentId];
}
});
instantiationRequiredConsentIds.forEach(consentId => {
var _preferences$consentI2, _preferences$consentT3, _preferences$consentT4;
const [consentTypeOrId, subConsentId] = consentId.split('.');
if (!(preferences !== null && preferences !== void 0 && (_preferences$consentI2 = preferences[consentId]) !== null && _preferences$consentI2 !== void 0 && _preferences$consentI2.isConsentGranted) && !(preferences !== null && preferences !== void 0 && (_preferences$consentT3 = preferences[consentTypeOrId]) !== null && _preferences$consentT3 !== void 0 && (_preferences$consentT4 = _preferences$consentT3[subConsentId]) !== null && _preferences$consentT4 !== void 0 && _preferences$consentT4.isConsentGranted)) {
output.instantiationRequired = [...output.instantiationRequired, consentId];
}
});
if (!output.acceptanceRequired.length && !output.instantiationRequired.length) {
return resolve(null);
}
resolve(output);
} catch (e) {
reject(e);
}
});
}
//# sourceMappingURL=getUnacceptedConsentSchemas.js.map