fix: add CustomTriggersAutomation poller type

This commit is contained in:
Sérgio Salgado 2022-11-21 00:28:44 +00:00
parent 493f4232df
commit 2788962ac7
3 changed files with 26 additions and 8 deletions

View file

@ -1,4 +1,3 @@
const { GraphQLJSONObject } = require('graphql-type-json')
const _ = require('lodash/fp')
const nmd = require('nano-markdown')
@ -296,7 +295,6 @@ const terms = (parent, { currentConfigVersion, currentHash }, { deviceId, settin
module.exports = {
JSONObject: GraphQLJSONObject,
Query: {
configs,
terms,

View file

@ -1,7 +1,5 @@
const { gql } = require('apollo-server-express')
module.exports = gql`
scalar JSONObject
type Coin {
cryptoCode: String!
display: String!
@ -51,6 +49,21 @@ type SpeedtestFile {
size: Int!
}
# True if automatic, False otherwise
type TriggersAutomation {
sanctions: Boolean!
idCardPhoto: Boolean!
idCardData: Boolean!
facephoto: Boolean!
usSsn: Boolean!
custom: [CustomTriggersAutomation]
}
type CustomTriggersAutomation {
id: ID!
type: String!
}
type CustomScreen {
text: String!
title: String!
@ -122,7 +135,7 @@ type StaticConfig {
speedtestFiles: [SpeedtestFile!]!
urlsToPing: [String!]!
triggersAutomation: JSONObject!
triggersAutomation: TriggersAutomation!
triggers: [Trigger!]!
}

View file

@ -1,4 +1,5 @@
const _ = require('lodash/fp')
const { validate } = require('uuid')
const namespaces = {
ADVANCED: 'advanced',
@ -126,17 +127,23 @@ const getTriggersAutomation = (customInfoRequests, config) => {
idCardPhoto: defaultAutomation,
idCardData: defaultAutomation,
facephoto: defaultAutomation,
usSsn: defaultAutomation
usSsn: defaultAutomation,
custom: []
}
_.forEach(it => {
requirements[it.id] = defaultAutomation
requirements.custom.push({ id: it.id, type: defaultAutomation })
}, infoRequests)
const overrides = _.get('triggersConfig_overrides')(config)
const requirementsOverrides = _.reduce((acc, override) => {
return _.assign(acc, { [override.requirement]: override.automation })
return _.assign(
acc,
!validate(override.requirement)
? { [override.requirement]: override.automation }
: { custom: [...acc.custom ?? [], { id: override.requirement, type: override.automation }] }
)
}, {}, overrides)
return _.assign(requirements, requirementsOverrides)