{"version":3,"file":"register.mjs","sources":["../../server/src/register.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nimport type { Core } from '@strapi/types';\n\nimport { ACTIONS, RELEASE_MODEL_UID, RELEASE_ACTION_MODEL_UID } from './constants';\nimport {\n  deleteActionsOnDeleteContentType,\n  deleteActionsOnDisableDraftAndPublish,\n  migrateIsValidAndStatusReleases,\n  revalidateChangedContentTypes,\n  disableContentTypeLocalized,\n  enableContentTypeLocalized,\n} from './migrations';\nimport { addEntryDocumentToReleaseActions } from './migrations/database/5.0.0-document-id-in-actions';\n\nexport const register = async ({ strapi }: { strapi: Core.Strapi }) => {\n  if (strapi.ee.features.isEnabled('cms-content-releases')) {\n    await strapi.service('admin::permission').actionProvider.registerMany(ACTIONS);\n\n    strapi.db.migrations.providers.internal.register(addEntryDocumentToReleaseActions);\n\n    strapi\n      .hook('strapi::content-types.beforeSync')\n      .register(disableContentTypeLocalized)\n      .register(deleteActionsOnDisableDraftAndPublish);\n\n    strapi\n      .hook('strapi::content-types.afterSync')\n      .register(deleteActionsOnDeleteContentType)\n      .register(enableContentTypeLocalized)\n      .register(revalidateChangedContentTypes)\n      .register(migrateIsValidAndStatusReleases);\n  }\n\n  if (strapi.plugin('graphql')) {\n    const graphqlExtensionService = strapi.plugin('graphql').service('extension');\n    // Exclude the release and release action models from the GraphQL schema\n    graphqlExtensionService.shadowCRUD(RELEASE_MODEL_UID).disable();\n    graphqlExtensionService.shadowCRUD(RELEASE_ACTION_MODEL_UID).disable();\n  }\n};\n"],"names":["register","strapi","ee","features","isEnabled","service","actionProvider","registerMany","ACTIONS","db","migrations","providers","internal","addEntryDocumentToReleaseActions","hook","disableContentTypeLocalized","deleteActionsOnDisableDraftAndPublish","deleteActionsOnDeleteContentType","enableContentTypeLocalized","revalidateChangedContentTypes","migrateIsValidAndStatusReleases","plugin","graphqlExtensionService","shadowCRUD","RELEASE_MODEL_UID","disable","RELEASE_ACTION_MODEL_UID"],"mappings":";;;;AAcO,MAAMA,QAAAA,GAAW,OAAO,EAAEC,MAAM,EAA2B,GAAA;AAChE,IAAA,IAAIA,OAAOC,EAAE,CAACC,QAAQ,CAACC,SAAS,CAAC,sBAAA,CAAA,EAAyB;AACxD,QAAA,MAAMH,OAAOI,OAAO,CAAC,qBAAqBC,cAAc,CAACC,YAAY,CAACC,OAAAA,CAAAA;QAEtEP,MAAAA,CAAOQ,EAAE,CAACC,UAAU,CAACC,SAAS,CAACC,QAAQ,CAACZ,QAAQ,CAACa,gCAAAA,CAAAA;AAEjDZ,QAAAA,MAAAA,CACGa,IAAI,CAAC,kCAAA,CAAA,CACLd,QAAQ,CAACe,2BAAAA,CAAAA,CACTf,QAAQ,CAACgB,qCAAAA,CAAAA;AAEZf,QAAAA,MAAAA,CACGa,IAAI,CAAC,iCAAA,CAAA,CACLd,QAAQ,CAACiB,gCAAAA,CAAAA,CACTjB,QAAQ,CAACkB,0BAAAA,CAAAA,CACTlB,QAAQ,CAACmB,6BAAAA,CAAAA,CACTnB,QAAQ,CAACoB,+BAAAA,CAAAA;AACd,IAAA;IAEA,IAAInB,MAAAA,CAAOoB,MAAM,CAAC,SAAA,CAAA,EAAY;AAC5B,QAAA,MAAMC,0BAA0BrB,MAAAA,CAAOoB,MAAM,CAAC,SAAA,CAAA,CAAWhB,OAAO,CAAC,WAAA,CAAA;;QAEjEiB,uBAAAA,CAAwBC,UAAU,CAACC,iBAAAA,CAAAA,CAAmBC,OAAO,EAAA;QAC7DH,uBAAAA,CAAwBC,UAAU,CAACG,wBAAAA,CAAAA,CAA0BD,OAAO,EAAA;AACtE,IAAA;AACF;;;;"}