{"version":3,"file":"extendCTBAttributeInitialData.mjs","sources":["../../../admin/src/middlewares/extendCTBAttributeInitialData.ts"],"sourcesContent":["import get from 'lodash/get';\n\nimport type { Middleware } from '@reduxjs/toolkit';\nimport type { Store } from '@strapi/admin/strapi-admin';\n\nconst extendCTBAttributeInitialDataMiddleware: () => Middleware<\n  object,\n  ReturnType<Store['getState']>\n> = () => {\n  return ({ getState }) =>\n    (next) =>\n    (action) => {\n      const enhanceAction = ({ uid }: { uid: string }) => {\n        // the block here is to catch the error when trying to access the state\n        // of the ctb when the plugin is not mounted\n        try {\n          const store = getState();\n\n          const type = get(store, [\n            'content-type-builder_dataManagerProvider',\n            'current',\n            'contentTypes',\n            uid,\n          ]);\n\n          if (!type || type.modelType !== 'contentType') {\n            return next(action);\n          }\n\n          const hasi18nEnabled = get(type, ['pluginOptions', 'i18n', 'localized'], false);\n\n          if (hasi18nEnabled) {\n            return next({\n              ...action,\n              payload: {\n                ...action.payload,\n                options: {\n                  pluginOptions: {\n                    ...action?.payload?.options?.pluginOptions,\n                    i18n: {\n                      localized: true,\n                    },\n                  },\n                },\n              },\n            });\n          }\n\n          return next(action);\n        } catch {\n          return next(action);\n        }\n      };\n\n      const { payload = {}, type } = action ?? {};\n\n      if (\n        type === 'formModal/setAttributeDataSchema' &&\n        !['relation', 'component'].includes(payload.attributeType) &&\n        !payload.isEditing\n      ) {\n        return enhanceAction({\n          uid: payload.uid,\n        });\n      }\n\n      if (type === 'formModal/setCustomFieldDataSchema' && !payload.isEditing) {\n        return enhanceAction({\n          uid: payload.uid,\n        });\n      }\n\n      if (\n        type === 'formModal/resetPropsAndSetFormForAddingAnExistingCompo' ||\n        type === 'formModal/resetPropsAndSaveCurrentData'\n      ) {\n        return enhanceAction({\n          uid: payload.uid,\n        });\n      }\n\n      return next(action);\n    };\n};\n\nexport { extendCTBAttributeInitialDataMiddleware };\n"],"names":["extendCTBAttributeInitialDataMiddleware","getState","next","action","enhanceAction","uid","store","type","get","modelType","hasi18nEnabled","payload","options","pluginOptions","i18n","localized","includes","attributeType","isEditing"],"mappings":";;AAKA,MAAMA,uCAAAA,GAGF,IAAA;AACF,IAAA,OAAO,CAAC,EAAEC,QAAQ,EAAE,GAClB,CAACC,OACD,CAACC,MAAAA,GAAAA;AACC,gBAAA,MAAMC,aAAAA,GAAgB,CAAC,EAAEC,GAAG,EAAmB,GAAA;;;oBAG7C,IAAI;AACF,wBAAA,MAAMC,KAAAA,GAAQL,QAAAA,EAAAA;wBAEd,MAAMM,IAAAA,GAAOC,IAAIF,KAAAA,EAAO;AACtB,4BAAA,0CAAA;AACA,4BAAA,SAAA;AACA,4BAAA,cAAA;AACAD,4BAAAA;AACD,yBAAA,CAAA;AAED,wBAAA,IAAI,CAACE,IAAAA,IAAQA,IAAAA,CAAKE,SAAS,KAAK,aAAA,EAAe;AAC7C,4BAAA,OAAOP,IAAAA,CAAKC,MAAAA,CAAAA;AACd,wBAAA;wBAEA,MAAMO,cAAAA,GAAiBF,IAAID,IAAAA,EAAM;AAAC,4BAAA,eAAA;AAAiB,4BAAA,MAAA;AAAQ,4BAAA;yBAAY,EAAE,KAAA,CAAA;AAEzE,wBAAA,IAAIG,cAAAA,EAAgB;AAClB,4BAAA,OAAOR,IAAAA,CAAK;AACV,gCAAA,GAAGC,MAAM;gCACTQ,OAAAA,EAAS;AACP,oCAAA,GAAGR,OAAOQ,OAAO;oCACjBC,OAAAA,EAAS;wCACPC,aAAAA,EAAe;4CACb,GAAGV,MAAAA,EAAQQ,OAAAA,EAASC,OAAAA,EAASC,aAAa;4CAC1CC,IAAAA,EAAM;gDACJC,SAAAA,EAAW;AACb;AACF;AACF;AACF;AACF,6BAAA,CAAA;AACF,wBAAA;AAEA,wBAAA,OAAOb,IAAAA,CAAKC,MAAAA,CAAAA;AACd,oBAAA,CAAA,CAAE,OAAM;AACN,wBAAA,OAAOD,IAAAA,CAAKC,MAAAA,CAAAA;AACd,oBAAA;AACF,gBAAA,CAAA;gBAEA,MAAM,EAAEQ,UAAU,EAAE,EAAEJ,IAAI,EAAE,GAAGJ,MAAAA,IAAU,EAAC;gBAE1C,IACEI,IAAAA,KAAS,sCACT,CAAC;AAAC,oBAAA,UAAA;AAAY,oBAAA;iBAAY,CAACS,QAAQ,CAACL,OAAAA,CAAQM,aAAa,KACzD,CAACN,OAAAA,CAAQO,SAAS,EAClB;AACA,oBAAA,OAAOd,aAAAA,CAAc;AACnBC,wBAAAA,GAAAA,EAAKM,QAAQN;AACf,qBAAA,CAAA;AACF,gBAAA;AAEA,gBAAA,IAAIE,IAAAA,KAAS,oCAAA,IAAwC,CAACI,OAAAA,CAAQO,SAAS,EAAE;AACvE,oBAAA,OAAOd,aAAAA,CAAc;AACnBC,wBAAAA,GAAAA,EAAKM,QAAQN;AACf,qBAAA,CAAA;AACF,gBAAA;gBAEA,IACEE,IAAAA,KAAS,wDAAA,IACTA,IAAAA,KAAS,wCAAA,EACT;AACA,oBAAA,OAAOH,aAAAA,CAAc;AACnBC,wBAAAA,GAAAA,EAAKM,QAAQN;AACf,qBAAA,CAAA;AACF,gBAAA;AAEA,gBAAA,OAAOH,IAAAA,CAAKC,MAAAA,CAAAA;AACd,YAAA,CAAA;AACJ;;;;"}