{"version":3,"file":"index.mjs","sources":["../../../server/graphql/index.js"],"sourcesContent":["'use strict';\n\nconst getTypes = require('./types');\nconst getQueries = require('./queries');\nconst getMutations = require('./mutations');\nconst getResolversConfig = require('./resolvers-configs');\n\nmodule.exports = ({ strapi }) => {\n  const { config: graphQLConfig } = strapi.plugin('graphql');\n  const extensionService = strapi.plugin('graphql').service('extension');\n\n  const isShadowCRUDEnabled = graphQLConfig('shadowCRUD', true);\n\n  if (!isShadowCRUDEnabled) {\n    return;\n  }\n\n  // Disable Permissions queries & mutations but allow the\n  // type to be used/selected in filters or nested resolvers\n  extensionService\n    .shadowCRUD('plugin::users-permissions.permission')\n    .disableQueries()\n    .disableMutations();\n\n  // Disable User & Role's Create/Update/Delete actions so they can be replaced\n  const actionsToDisable = ['create', 'update', 'delete'];\n\n  extensionService.shadowCRUD('plugin::users-permissions.user').disableActions(actionsToDisable);\n  extensionService.shadowCRUD('plugin::users-permissions.role').disableActions(actionsToDisable);\n\n  // Register new types & resolvers config\n  extensionService.use(({ nexus }) => {\n    const types = getTypes({ strapi, nexus });\n    const queries = getQueries({ strapi, nexus });\n    const mutations = getMutations({ strapi, nexus });\n    const resolversConfig = getResolversConfig({ strapi });\n\n    return {\n      types: [types, queries, mutations],\n\n      resolversConfig,\n    };\n  });\n};\n"],"names":["getTypes","require$$0","getQueries","require$$1","getMutations","require$$2","getResolversConfig","require$$3","graphql","strapi","config","graphQLConfig","plugin","extensionService","service","isShadowCRUDEnabled","shadowCRUD","disableQueries","disableMutations","actionsToDisable","disableActions","use","nexus","types","queries","mutations","resolversConfig"],"mappings":";;;;;;;;;;AAEA,IAAA,MAAMA,QAAAA,GAAWC,YAAAA,EAAAA;AACjB,IAAA,MAAMC,UAAAA,GAAaC,cAAAA,EAAAA;AACnB,IAAA,MAAMC,YAAAA,GAAeC,gBAAAA,EAAAA;AACrB,IAAA,MAAMC,kBAAAA,GAAqBC,uBAAAA,EAAAA;IAE3BC,OAAAA,GAAiB,CAAC,EAAEC,MAAM,EAAE,GAAA;AAC1B,QAAA,MAAM,EAAEC,MAAAA,EAAQC,aAAa,EAAE,GAAGF,MAAAA,CAAOG,MAAM,CAAC,SAAA,CAAA;AAChD,QAAA,MAAMC,mBAAmBJ,MAAAA,CAAOG,MAAM,CAAC,SAAA,CAAA,CAAWE,OAAO,CAAC,WAAA,CAAA;QAE1D,MAAMC,mBAAAA,GAAsBJ,cAAc,YAAA,EAAc,IAAA,CAAA;AAExD,QAAA,IAAI,CAACI,mBAAAA,EAAqB;AACxB,YAAA;AACJ,QAAA;;;AAIEF,QAAAA,gBAAAA,CACGG,UAAU,CAAC,sCAAA,CAAA,CACXC,cAAc,GACdC,gBAAgB,EAAA;;AAGnB,QAAA,MAAMC,gBAAAA,GAAmB;AAAC,YAAA,QAAA;AAAU,YAAA,QAAA;AAAU,YAAA;AAAS,SAAA;AAEvDN,QAAAA,gBAAAA,CAAiBG,UAAU,CAAC,gCAAA,CAAA,CAAkCI,cAAc,CAACD,gBAAAA,CAAAA;AAC7EN,QAAAA,gBAAAA,CAAiBG,UAAU,CAAC,gCAAA,CAAA,CAAkCI,cAAc,CAACD,gBAAAA,CAAAA;;AAG7EN,QAAAA,gBAAAA,CAAiBQ,GAAG,CAAC,CAAC,EAAEC,KAAK,EAAE,GAAA;AAC7B,YAAA,MAAMC,QAAQvB,QAAAA,CAAS;AAAES,gBAAAA,MAAAA;AAAQa,gBAAAA;AAAK,aAAA,CAAA;AACtC,YAAA,MAAME,UAAUtB,UAAAA,CAAW;AAAEO,gBAAAA,MAAAA;AAAQa,gBAAAA;AAAK,aAAA,CAAA;AAC1C,YAAA,MAAMG,YAAYrB,YAAAA,CAAa;AAAEK,gBAAAA,MAAAA;AAAQa,gBAAAA;AAAK,aAAA,CAAA;AAC9C,YAAA,MAAMI,kBAAkBpB,kBAAAA,CAAmB;AAAEG,gBAAAA;;YAE7C,OAAO;gBACLc,KAAAA,EAAO;AAACA,oBAAAA,KAAAA;AAAOC,oBAAAA,OAAAA;AAASC,oBAAAA;AAAU,iBAAA;AAElCC,gBAAAA;AACN,aAAA;AACA,QAAA,CAAA,CAAA;AACA,IAAA,CAAA;;;;;;"}