diff --git a/.vscode/launch.json b/.vscode/launch.json index 9ebbc455c..0d8b4e398 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -55,6 +55,19 @@ "/**" ] }, + { + "type": "node", + "request": "launch", + "name": "Launch Program - Production", + "env": { + "PAYLOAD_CONFIG_PATH": "demo/payload.config.js", + "NODE_ENV": "production" + }, + "program": "${workspaceFolder}/demo/server.js", + "skipFiles": [ + "/**" + ] + }, { "type": "chrome", "request": "launch", diff --git a/babel.config.js b/babel.config.js index d70972173..35587ea88 100644 --- a/babel.config.js +++ b/babel.config.js @@ -1,20 +1,3 @@ -module.exports = { - presets: [ - [ - require.resolve('@babel/preset-env'), - { - targets: [ - 'defaults', - 'not IE 11', - 'not IE_Mob 11', - ], - }, - ], - require.resolve('@babel/preset-react'), - ], - plugins: [ - require.resolve('@babel/plugin-transform-runtime'), - require.resolve('@babel/plugin-proposal-class-properties'), - require.resolve('@babel/plugin-proposal-optional-chaining'), - ], -}; +const config = require('./src/babel.config'); + +module.exports = config; diff --git a/demo/payload.config.js b/demo/payload.config.js index 4e81e04cd..d23b5dd32 100644 --- a/demo/payload.config.js +++ b/demo/payload.config.js @@ -1,30 +1,31 @@ const Admin = require('./collections/Admin'); -const AllFields = require('./collections/AllFields'); -const Code = require('./collections/Code'); -const Conditions = require('./collections/Conditions'); -const CustomComponents = require('./collections/CustomComponents'); -const File = require('./collections/File'); -const Blocks = require('./collections/Blocks'); -const DefaultValues = require('./collections/DefaultValues'); -const HiddenFields = require('./collections/HiddenFields'); -const Hooks = require('./collections/Hooks'); -const Localized = require('./collections/Localized'); -const LocalizedArray = require('./collections/LocalizedArray'); -const LocalOperations = require('./collections/LocalOperations'); -const Media = require('./collections/Media'); -const NestedArrays = require('./collections/NestedArrays'); -const Preview = require('./collections/Preview'); -const PublicUsers = require('./collections/PublicUsers'); -const RelationshipA = require('./collections/RelationshipA'); -const RelationshipB = require('./collections/RelationshipB'); -const RichText = require('./collections/RichText'); -const Select = require('./collections/Select'); -const StrictPolicies = require('./collections/StrictPolicies'); -const Validations = require('./collections/Validations'); +// const AllFields = require('./collections/AllFields'); +const AutoLabel = require('./collections/AutoLabel'); +// const Code = require('./collections/Code'); +// const Conditions = require('./collections/Conditions'); +// const CustomComponents = require('./collections/CustomComponents'); +// const File = require('./collections/File'); +// const Blocks = require('./collections/Blocks'); +// const DefaultValues = require('./collections/DefaultValues'); +// const HiddenFields = require('./collections/HiddenFields'); +// const Hooks = require('./collections/Hooks'); +// const Localized = require('./collections/Localized'); +// const LocalizedArray = require('./collections/LocalizedArray'); +// const LocalOperations = require('./collections/LocalOperations'); +// const Media = require('./collections/Media'); +// const NestedArrays = require('./collections/NestedArrays'); +// const Preview = require('./collections/Preview'); +// const PublicUsers = require('./collections/PublicUsers'); +// const RelationshipA = require('./collections/RelationshipA'); +// const RelationshipB = require('./collections/RelationshipB'); +// const RichText = require('./collections/RichText'); +// const Select = require('./collections/Select'); +// const StrictPolicies = require('./collections/StrictPolicies'); +// const Validations = require('./collections/Validations'); -const BlocksGlobal = require('./globals/BlocksGlobal'); -const NavigationArray = require('./globals/NavigationArray'); -const GlobalWithStrictAccess = require('./globals/GlobalWithStrictAccess'); +// const BlocksGlobal = require('./globals/BlocksGlobal'); +// const NavigationArray = require('./globals/NavigationArray'); +// const GlobalWithStrictAccess = require('./globals/GlobalWithStrictAccess'); module.exports = { admin: { @@ -49,34 +50,35 @@ module.exports = { }, collections: [ Admin, - AllFields, - Code, - Conditions, - CustomComponents, - File, - DefaultValues, - Blocks, - HiddenFields, - Hooks, - Localized, - LocalizedArray, - LocalOperations, - Media, - NestedArrays, - Preview, - PublicUsers, - RelationshipA, - RelationshipB, - RichText, - Select, - StrictPolicies, - Validations, - ], - globals: [ - NavigationArray, - GlobalWithStrictAccess, - BlocksGlobal, + // AllFields, + AutoLabel, + // Code, + // Conditions, + // CustomComponents, + // File, + // DefaultValues, + // Blocks, + // HiddenFields, + // Hooks, + // Localized, + // LocalizedArray, + // LocalOperations, + // Media, + // NestedArrays, + // Preview, + // PublicUsers, + // RelationshipA, + // RelationshipB, + // RichText, + // Select, + // StrictPolicies, + // Validations, ], + // globals: [ + // NavigationArray, + // GlobalWithStrictAccess, + // BlocksGlobal, + // ], cookiePrefix: 'payload', serverURL: 'http://localhost:3000', cors: [ diff --git a/docs/Configuration/collections.mdx b/docs/Configuration/collections.mdx index db9df12e5..ec5ec77b1 100644 --- a/docs/Configuration/collections.mdx +++ b/docs/Configuration/collections.mdx @@ -1,7 +1,20 @@ --- -title: Collection Configs +title: Collection Configuration label: Collections order: 20 --- Talk about how to write collection configs here. + +TODO: What collections are and what they represent + +### Stand-alone file + +```js +module.exports = { + slug: 'customer', + labels: { + singular: 'Customer', + plural: 'Customers', + } +} diff --git a/errors.js b/errors.js index 7a06ef805..d242e0306 100644 --- a/errors.js +++ b/errors.js @@ -1,4 +1,4 @@ -const { APIError, Forbidden } = require('./src/errors'); +const { APIError, Forbidden } = require('./dist/errors'); module.exports = { APIError, diff --git a/logger.js b/logger.js index 4984338e8..a377aaef0 100644 --- a/logger.js +++ b/logger.js @@ -1,3 +1,3 @@ -const logger = require('./src/utilities/logger'); +const logger = require('./dist/utilities/logger'); module.exports = logger; diff --git a/package.json b/package.json index e0485ddcb..672a045bc 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,6 @@ "license": "ISC", "author": "Payload CMS LLC", "main": "index.js", - "typings": "types/index.d.ts", "sideEffects": false, "bin": { "payload": "./src/bin/index.js" @@ -132,9 +131,68 @@ "webpack-hot-middleware": "^2.25.0" }, "devDependencies": { + "@babel/preset-typescript": "^7.12.1", "@testing-library/jest-dom": "^5.11.4", "@testing-library/react": "^11.0.4", "@trbl/eslint-config": "^1.2.4", + "@types/autoprefixer": "^9.7.2", + "@types/babel__core": "^7.1.12", + "@types/babel__plugin-transform-runtime": "^7.9.1", + "@types/babel__preset-env": "^7.9.1", + "@types/body-parser": "^1.19.0", + "@types/compression": "^1.7.0", + "@types/connect-history-api-fallback": "^1.3.3", + "@types/eslint": "^6.8.1", + "@types/express": "^4.17.9", + "@types/express-fileupload": "^1.1.5", + "@types/express-rate-limit": "^5.1.0", + "@types/extract-text-webpack-plugin": "^3.0.4", + "@types/file-loader": "^4.2.0", + "@types/html-webpack-plugin": "^3.2.4", + "@types/ignore-styles": "^5.0.0", + "@types/is-hotkey": "^0.1.2", + "@types/is-url": "^1.2.28", + "@types/isomorphic-fetch": "^0.0.35", + "@types/jsonwebtoken": "^8.5.0", + "@types/method-override": "^0.0.31", + "@types/mini-css-extract-plugin": "^1.2.1", + "@types/minimist": "^1.2.1", + "@types/mkdirp": "^1.0.1", + "@types/mongodb": "^3.5.34", + "@types/mongoose": "^5.10.1", + "@types/mongoose-paginate-v2": "^1.3.8", + "@types/node-sass": "^4.11.1", + "@types/nodemailer": "^6.4.0", + "@types/nodemon": "^1.19.0", + "@types/optimize-css-assets-webpack-plugin": "^5.0.1", + "@types/passport": "^0.4.7", + "@types/passport-anonymous": "^1.0.3", + "@types/passport-jwt": "^3.0.3", + "@types/passport-local": "^1.0.33", + "@types/passport-local-mongoose": "^4.0.13", + "@types/pino": "^6.3.4", + "@types/pluralize": "^0.0.29", + "@types/prismjs": "^1.16.2", + "@types/prop-types": "^15.7.3", + "@types/qs": "^6.9.5", + "@types/qs-middleware": "^1.0.1", + "@types/react": "^16.14.0", + "@types/react-beautiful-dnd": "^13.0.0", + "@types/react-datepicker": "^3.1.1", + "@types/react-document-meta": "^3.0.0", + "@types/react-dom": "^16.9.9", + "@types/react-helmet": "^6.1.0", + "@types/react-router-dom": "^5.1.6", + "@types/react-select": "^3.0.26", + "@types/sass": "^1.16.0", + "@types/sharp": "^0.26.1", + "@types/terser-webpack-plugin": "^5.0.2", + "@types/testing-library__jest-dom": "^5.9.5", + "@types/uuid": "^8.3.0", + "@types/webpack": "4.41.25", + "@types/webpack-bundle-analyzer": "^3.9.0", + "@types/webpack-dev-middleware": "^3.7.2", + "@types/webpack-hot-middleware": "^2.25.3", "babel-eslint": "^10.0.1", "cross-env": "^7.0.2", "eslint": "^6.8.0", @@ -148,6 +206,7 @@ "graphql-request": "^2.0.0", "mongodb": "^3.6.2", "nodemon": "^1.19.4", + "typescript": "^4.1.2", "webpack-cli": "^4.1.0" }, "files": [ diff --git a/src/admin/api.js b/src/admin/api.tsx similarity index 100% rename from src/admin/api.js rename to src/admin/api.tsx diff --git a/src/admin/components/Routes.js b/src/admin/components/Routes.tsx similarity index 100% rename from src/admin/components/Routes.js rename to src/admin/components/Routes.tsx diff --git a/src/admin/components/elements/Banner/index.js b/src/admin/components/elements/Banner/index.tsx similarity index 100% rename from src/admin/components/elements/Banner/index.js rename to src/admin/components/elements/Banner/index.tsx diff --git a/src/admin/components/elements/Button/index.js b/src/admin/components/elements/Button/index.tsx similarity index 100% rename from src/admin/components/elements/Button/index.js rename to src/admin/components/elements/Button/index.tsx diff --git a/src/admin/components/elements/Card/index.js b/src/admin/components/elements/Card/index.tsx similarity index 100% rename from src/admin/components/elements/Card/index.js rename to src/admin/components/elements/Card/index.tsx diff --git a/src/admin/components/elements/ColumnSelector/getInitialState.js b/src/admin/components/elements/ColumnSelector/getInitialState.tsx similarity index 100% rename from src/admin/components/elements/ColumnSelector/getInitialState.js rename to src/admin/components/elements/ColumnSelector/getInitialState.tsx diff --git a/src/admin/components/elements/ColumnSelector/index.js b/src/admin/components/elements/ColumnSelector/index.tsx similarity index 100% rename from src/admin/components/elements/ColumnSelector/index.js rename to src/admin/components/elements/ColumnSelector/index.tsx diff --git a/src/admin/components/elements/CopyToClipboard/index.js b/src/admin/components/elements/CopyToClipboard/index.tsx similarity index 100% rename from src/admin/components/elements/CopyToClipboard/index.js rename to src/admin/components/elements/CopyToClipboard/index.tsx diff --git a/src/admin/components/elements/DatePicker/DatePicker.js b/src/admin/components/elements/DatePicker/DatePicker.tsx similarity index 100% rename from src/admin/components/elements/DatePicker/DatePicker.js rename to src/admin/components/elements/DatePicker/DatePicker.tsx diff --git a/src/admin/components/elements/DatePicker/index.js b/src/admin/components/elements/DatePicker/index.tsx similarity index 100% rename from src/admin/components/elements/DatePicker/index.js rename to src/admin/components/elements/DatePicker/index.tsx diff --git a/src/admin/components/elements/DeleteDocument/index.js b/src/admin/components/elements/DeleteDocument/index.tsx similarity index 100% rename from src/admin/components/elements/DeleteDocument/index.js rename to src/admin/components/elements/DeleteDocument/index.tsx diff --git a/src/admin/components/elements/DuplicateDocument/index.js b/src/admin/components/elements/DuplicateDocument/index.tsx similarity index 100% rename from src/admin/components/elements/DuplicateDocument/index.js rename to src/admin/components/elements/DuplicateDocument/index.tsx diff --git a/src/admin/components/elements/Eyebrow/index.js b/src/admin/components/elements/Eyebrow/index.tsx similarity index 100% rename from src/admin/components/elements/Eyebrow/index.js rename to src/admin/components/elements/Eyebrow/index.tsx diff --git a/src/admin/components/elements/FileDetails/Meta/index.js b/src/admin/components/elements/FileDetails/Meta/index.tsx similarity index 100% rename from src/admin/components/elements/FileDetails/Meta/index.js rename to src/admin/components/elements/FileDetails/Meta/index.tsx diff --git a/src/admin/components/elements/FileDetails/index.js b/src/admin/components/elements/FileDetails/index.tsx similarity index 100% rename from src/admin/components/elements/FileDetails/index.js rename to src/admin/components/elements/FileDetails/index.tsx diff --git a/src/admin/components/elements/GenerateConfirmation/index.js b/src/admin/components/elements/GenerateConfirmation/index.tsx similarity index 100% rename from src/admin/components/elements/GenerateConfirmation/index.js rename to src/admin/components/elements/GenerateConfirmation/index.tsx diff --git a/src/admin/components/elements/ListControls/index.js b/src/admin/components/elements/ListControls/index.tsx similarity index 100% rename from src/admin/components/elements/ListControls/index.js rename to src/admin/components/elements/ListControls/index.tsx diff --git a/src/admin/components/elements/Loading/index.js b/src/admin/components/elements/Loading/index.tsx similarity index 100% rename from src/admin/components/elements/Loading/index.js rename to src/admin/components/elements/Loading/index.tsx diff --git a/src/admin/components/elements/Localizer/index.js b/src/admin/components/elements/Localizer/index.tsx similarity index 100% rename from src/admin/components/elements/Localizer/index.js rename to src/admin/components/elements/Localizer/index.tsx diff --git a/src/admin/components/elements/Nav/index.js b/src/admin/components/elements/Nav/index.tsx similarity index 100% rename from src/admin/components/elements/Nav/index.js rename to src/admin/components/elements/Nav/index.tsx diff --git a/src/admin/components/elements/Paginator/ClickableArrow/index.js b/src/admin/components/elements/Paginator/ClickableArrow/index.tsx similarity index 100% rename from src/admin/components/elements/Paginator/ClickableArrow/index.js rename to src/admin/components/elements/Paginator/ClickableArrow/index.tsx diff --git a/src/admin/components/elements/Paginator/Page/index.js b/src/admin/components/elements/Paginator/Page/index.tsx similarity index 100% rename from src/admin/components/elements/Paginator/Page/index.js rename to src/admin/components/elements/Paginator/Page/index.tsx diff --git a/src/admin/components/elements/Paginator/Separator/index.js b/src/admin/components/elements/Paginator/Separator/index.tsx similarity index 100% rename from src/admin/components/elements/Paginator/Separator/index.js rename to src/admin/components/elements/Paginator/Separator/index.tsx diff --git a/src/admin/components/elements/Paginator/index.js b/src/admin/components/elements/Paginator/index.tsx similarity index 100% rename from src/admin/components/elements/Paginator/index.js rename to src/admin/components/elements/Paginator/index.tsx diff --git a/src/admin/components/elements/Pill/index.js b/src/admin/components/elements/Pill/index.tsx similarity index 100% rename from src/admin/components/elements/Pill/index.js rename to src/admin/components/elements/Pill/index.tsx diff --git a/src/admin/components/elements/Popup/PopupButton/index.js b/src/admin/components/elements/Popup/PopupButton/index.tsx similarity index 100% rename from src/admin/components/elements/Popup/PopupButton/index.js rename to src/admin/components/elements/Popup/PopupButton/index.tsx diff --git a/src/admin/components/elements/Popup/index.js b/src/admin/components/elements/Popup/index.tsx similarity index 100% rename from src/admin/components/elements/Popup/index.js rename to src/admin/components/elements/Popup/index.tsx diff --git a/src/admin/components/elements/PreviewButton/index.js b/src/admin/components/elements/PreviewButton/index.tsx similarity index 100% rename from src/admin/components/elements/PreviewButton/index.js rename to src/admin/components/elements/PreviewButton/index.tsx diff --git a/src/admin/components/elements/ReactSelect/index.js b/src/admin/components/elements/ReactSelect/index.tsx similarity index 100% rename from src/admin/components/elements/ReactSelect/index.js rename to src/admin/components/elements/ReactSelect/index.tsx diff --git a/src/admin/components/elements/RenderTitle/index.js b/src/admin/components/elements/RenderTitle/index.tsx similarity index 100% rename from src/admin/components/elements/RenderTitle/index.js rename to src/admin/components/elements/RenderTitle/index.tsx diff --git a/src/admin/components/elements/SearchFilter/index.js b/src/admin/components/elements/SearchFilter/index.tsx similarity index 100% rename from src/admin/components/elements/SearchFilter/index.js rename to src/admin/components/elements/SearchFilter/index.tsx diff --git a/src/admin/components/elements/SortColumn/index.js b/src/admin/components/elements/SortColumn/index.tsx similarity index 100% rename from src/admin/components/elements/SortColumn/index.js rename to src/admin/components/elements/SortColumn/index.tsx diff --git a/src/admin/components/elements/SortComplex/index.js b/src/admin/components/elements/SortComplex/index.tsx similarity index 100% rename from src/admin/components/elements/SortComplex/index.js rename to src/admin/components/elements/SortComplex/index.tsx diff --git a/src/admin/components/elements/StepNav/index.js b/src/admin/components/elements/StepNav/index.tsx similarity index 100% rename from src/admin/components/elements/StepNav/index.js rename to src/admin/components/elements/StepNav/index.tsx diff --git a/src/admin/components/elements/Table/index.js b/src/admin/components/elements/Table/index.tsx similarity index 100% rename from src/admin/components/elements/Table/index.js rename to src/admin/components/elements/Table/index.tsx diff --git a/src/admin/components/elements/Thumbnail/index.js b/src/admin/components/elements/Thumbnail/index.tsx similarity index 100% rename from src/admin/components/elements/Thumbnail/index.js rename to src/admin/components/elements/Thumbnail/index.tsx diff --git a/src/admin/components/elements/Tooltip/index.js b/src/admin/components/elements/Tooltip/index.tsx similarity index 100% rename from src/admin/components/elements/Tooltip/index.js rename to src/admin/components/elements/Tooltip/index.tsx diff --git a/src/admin/components/elements/UploadCard/index.js b/src/admin/components/elements/UploadCard/index.tsx similarity index 100% rename from src/admin/components/elements/UploadCard/index.js rename to src/admin/components/elements/UploadCard/index.tsx diff --git a/src/admin/components/elements/UploadGallery/index.js b/src/admin/components/elements/UploadGallery/index.tsx similarity index 100% rename from src/admin/components/elements/UploadGallery/index.js rename to src/admin/components/elements/UploadGallery/index.tsx diff --git a/src/admin/components/elements/WhereBuilder/Condition/Date/index.js b/src/admin/components/elements/WhereBuilder/Condition/Date/index.tsx similarity index 100% rename from src/admin/components/elements/WhereBuilder/Condition/Date/index.js rename to src/admin/components/elements/WhereBuilder/Condition/Date/index.tsx diff --git a/src/admin/components/elements/WhereBuilder/Condition/Number/index.js b/src/admin/components/elements/WhereBuilder/Condition/Number/index.tsx similarity index 100% rename from src/admin/components/elements/WhereBuilder/Condition/Number/index.js rename to src/admin/components/elements/WhereBuilder/Condition/Number/index.tsx diff --git a/src/admin/components/elements/WhereBuilder/Condition/Text/index.js b/src/admin/components/elements/WhereBuilder/Condition/Text/index.tsx similarity index 100% rename from src/admin/components/elements/WhereBuilder/Condition/Text/index.js rename to src/admin/components/elements/WhereBuilder/Condition/Text/index.tsx diff --git a/src/admin/components/elements/WhereBuilder/Condition/index.js b/src/admin/components/elements/WhereBuilder/Condition/index.tsx similarity index 100% rename from src/admin/components/elements/WhereBuilder/Condition/index.js rename to src/admin/components/elements/WhereBuilder/Condition/index.tsx diff --git a/src/admin/components/elements/WhereBuilder/field-types.js b/src/admin/components/elements/WhereBuilder/field-types.tsx similarity index 100% rename from src/admin/components/elements/WhereBuilder/field-types.js rename to src/admin/components/elements/WhereBuilder/field-types.tsx diff --git a/src/admin/components/elements/WhereBuilder/index.js b/src/admin/components/elements/WhereBuilder/index.tsx similarity index 100% rename from src/admin/components/elements/WhereBuilder/index.js rename to src/admin/components/elements/WhereBuilder/index.tsx diff --git a/src/admin/components/elements/WhereBuilder/reducer.js b/src/admin/components/elements/WhereBuilder/reducer.tsx similarity index 100% rename from src/admin/components/elements/WhereBuilder/reducer.js rename to src/admin/components/elements/WhereBuilder/reducer.tsx diff --git a/src/admin/components/elements/elements.spec.js b/src/admin/components/elements/elements.spec.tsx similarity index 100% rename from src/admin/components/elements/elements.spec.js rename to src/admin/components/elements/elements.spec.tsx diff --git a/src/admin/components/forms/DraggableSection/ActionPanel/index.js b/src/admin/components/forms/DraggableSection/ActionPanel/index.tsx similarity index 100% rename from src/admin/components/forms/DraggableSection/ActionPanel/index.js rename to src/admin/components/forms/DraggableSection/ActionPanel/index.tsx diff --git a/src/admin/components/forms/DraggableSection/PositionPanel/index.js b/src/admin/components/forms/DraggableSection/PositionPanel/index.tsx similarity index 100% rename from src/admin/components/forms/DraggableSection/PositionPanel/index.js rename to src/admin/components/forms/DraggableSection/PositionPanel/index.tsx diff --git a/src/admin/components/forms/DraggableSection/SectionTitle/EditableBlockTitle/index.js b/src/admin/components/forms/DraggableSection/SectionTitle/EditableBlockTitle/index.tsx similarity index 100% rename from src/admin/components/forms/DraggableSection/SectionTitle/EditableBlockTitle/index.js rename to src/admin/components/forms/DraggableSection/SectionTitle/EditableBlockTitle/index.tsx diff --git a/src/admin/components/forms/DraggableSection/SectionTitle/index.js b/src/admin/components/forms/DraggableSection/SectionTitle/index.tsx similarity index 100% rename from src/admin/components/forms/DraggableSection/SectionTitle/index.js rename to src/admin/components/forms/DraggableSection/SectionTitle/index.tsx diff --git a/src/admin/components/forms/DraggableSection/index.js b/src/admin/components/forms/DraggableSection/index.tsx similarity index 100% rename from src/admin/components/forms/DraggableSection/index.js rename to src/admin/components/forms/DraggableSection/index.tsx diff --git a/src/admin/components/forms/Error/index.js b/src/admin/components/forms/Error/index.tsx similarity index 100% rename from src/admin/components/forms/Error/index.js rename to src/admin/components/forms/Error/index.tsx diff --git a/src/admin/components/forms/FieldTypeGutter/context.js b/src/admin/components/forms/FieldTypeGutter/context.tsx similarity index 100% rename from src/admin/components/forms/FieldTypeGutter/context.js rename to src/admin/components/forms/FieldTypeGutter/context.tsx diff --git a/src/admin/components/forms/FieldTypeGutter/index.js b/src/admin/components/forms/FieldTypeGutter/index.tsx similarity index 100% rename from src/admin/components/forms/FieldTypeGutter/index.js rename to src/admin/components/forms/FieldTypeGutter/index.tsx diff --git a/src/admin/components/forms/Form/buildInitialState.js b/src/admin/components/forms/Form/buildInitialState.tsx similarity index 100% rename from src/admin/components/forms/Form/buildInitialState.js rename to src/admin/components/forms/Form/buildInitialState.tsx diff --git a/src/admin/components/forms/Form/buildStateFromSchema.spec.js b/src/admin/components/forms/Form/buildStateFromSchema.spec.tsx similarity index 100% rename from src/admin/components/forms/Form/buildStateFromSchema.spec.js rename to src/admin/components/forms/Form/buildStateFromSchema.spec.tsx diff --git a/src/admin/components/forms/Form/buildStateFromSchema.js b/src/admin/components/forms/Form/buildStateFromSchema.tsx similarity index 100% rename from src/admin/components/forms/Form/buildStateFromSchema.js rename to src/admin/components/forms/Form/buildStateFromSchema.tsx diff --git a/src/admin/components/forms/Form/context.js b/src/admin/components/forms/Form/context.tsx similarity index 100% rename from src/admin/components/forms/Form/context.js rename to src/admin/components/forms/Form/context.tsx diff --git a/src/admin/components/forms/Form/errorMessages.js b/src/admin/components/forms/Form/errorMessages.tsx similarity index 100% rename from src/admin/components/forms/Form/errorMessages.js rename to src/admin/components/forms/Form/errorMessages.tsx diff --git a/src/admin/components/forms/Form/fieldReducer.js b/src/admin/components/forms/Form/fieldReducer.tsx similarity index 100% rename from src/admin/components/forms/Form/fieldReducer.js rename to src/admin/components/forms/Form/fieldReducer.tsx diff --git a/src/admin/components/forms/Form/flattenFilters.js b/src/admin/components/forms/Form/flattenFilters.tsx similarity index 100% rename from src/admin/components/forms/Form/flattenFilters.js rename to src/admin/components/forms/Form/flattenFilters.tsx diff --git a/src/admin/components/forms/Form/getDataByPath.js b/src/admin/components/forms/Form/getDataByPath.tsx similarity index 100% rename from src/admin/components/forms/Form/getDataByPath.js rename to src/admin/components/forms/Form/getDataByPath.tsx diff --git a/src/admin/components/forms/Form/getSiblingData.js b/src/admin/components/forms/Form/getSiblingData.tsx similarity index 100% rename from src/admin/components/forms/Form/getSiblingData.js rename to src/admin/components/forms/Form/getSiblingData.tsx diff --git a/src/admin/components/forms/Form/index.js b/src/admin/components/forms/Form/index.tsx similarity index 100% rename from src/admin/components/forms/Form/index.js rename to src/admin/components/forms/Form/index.tsx diff --git a/src/admin/components/forms/Form/initContextState.js b/src/admin/components/forms/Form/initContextState.tsx similarity index 100% rename from src/admin/components/forms/Form/initContextState.js rename to src/admin/components/forms/Form/initContextState.tsx diff --git a/src/admin/components/forms/Form/reduceFieldsToValues.js b/src/admin/components/forms/Form/reduceFieldsToValues.tsx similarity index 100% rename from src/admin/components/forms/Form/reduceFieldsToValues.js rename to src/admin/components/forms/Form/reduceFieldsToValues.tsx diff --git a/src/admin/components/forms/Label/index.js b/src/admin/components/forms/Label/index.tsx similarity index 100% rename from src/admin/components/forms/Label/index.js rename to src/admin/components/forms/Label/index.tsx diff --git a/src/admin/components/forms/RenderFields/index.js b/src/admin/components/forms/RenderFields/index.tsx similarity index 100% rename from src/admin/components/forms/RenderFields/index.js rename to src/admin/components/forms/RenderFields/index.tsx diff --git a/src/admin/components/forms/Submit/index.js b/src/admin/components/forms/Submit/index.tsx similarity index 100% rename from src/admin/components/forms/Submit/index.js rename to src/admin/components/forms/Submit/index.tsx diff --git a/src/admin/components/forms/field-types/Array/Array.js b/src/admin/components/forms/field-types/Array/Array.tsx similarity index 100% rename from src/admin/components/forms/field-types/Array/Array.js rename to src/admin/components/forms/field-types/Array/Array.tsx diff --git a/src/admin/components/forms/field-types/Array/index.js b/src/admin/components/forms/field-types/Array/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Array/index.js rename to src/admin/components/forms/field-types/Array/index.tsx diff --git a/src/admin/components/forms/field-types/Blocks/BlockSelector/BlockSearch/index.js b/src/admin/components/forms/field-types/Blocks/BlockSelector/BlockSearch/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Blocks/BlockSelector/BlockSearch/index.js rename to src/admin/components/forms/field-types/Blocks/BlockSelector/BlockSearch/index.tsx diff --git a/src/admin/components/forms/field-types/Blocks/BlockSelector/BlockSelection/index.js b/src/admin/components/forms/field-types/Blocks/BlockSelector/BlockSelection/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Blocks/BlockSelector/BlockSelection/index.js rename to src/admin/components/forms/field-types/Blocks/BlockSelector/BlockSelection/index.tsx diff --git a/src/admin/components/forms/field-types/Blocks/BlockSelector/BlocksContainer/index.js b/src/admin/components/forms/field-types/Blocks/BlockSelector/BlocksContainer/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Blocks/BlockSelector/BlocksContainer/index.js rename to src/admin/components/forms/field-types/Blocks/BlockSelector/BlocksContainer/index.tsx diff --git a/src/admin/components/forms/field-types/Blocks/BlockSelector/index.js b/src/admin/components/forms/field-types/Blocks/BlockSelector/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Blocks/BlockSelector/index.js rename to src/admin/components/forms/field-types/Blocks/BlockSelector/index.tsx diff --git a/src/admin/components/forms/field-types/Blocks/Blocks.js b/src/admin/components/forms/field-types/Blocks/Blocks.tsx similarity index 100% rename from src/admin/components/forms/field-types/Blocks/Blocks.js rename to src/admin/components/forms/field-types/Blocks/Blocks.tsx diff --git a/src/admin/components/forms/field-types/Blocks/index.js b/src/admin/components/forms/field-types/Blocks/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Blocks/index.js rename to src/admin/components/forms/field-types/Blocks/index.tsx diff --git a/src/admin/components/forms/field-types/Checkbox/index.js b/src/admin/components/forms/field-types/Checkbox/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Checkbox/index.js rename to src/admin/components/forms/field-types/Checkbox/index.tsx diff --git a/src/admin/components/forms/field-types/Code/Code.js b/src/admin/components/forms/field-types/Code/Code.tsx similarity index 100% rename from src/admin/components/forms/field-types/Code/Code.js rename to src/admin/components/forms/field-types/Code/Code.tsx diff --git a/src/admin/components/forms/field-types/Code/index.js b/src/admin/components/forms/field-types/Code/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Code/index.js rename to src/admin/components/forms/field-types/Code/index.tsx diff --git a/src/admin/components/forms/field-types/ConfirmPassword/index.js b/src/admin/components/forms/field-types/ConfirmPassword/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/ConfirmPassword/index.js rename to src/admin/components/forms/field-types/ConfirmPassword/index.tsx diff --git a/src/admin/components/forms/field-types/DateTime/index.js b/src/admin/components/forms/field-types/DateTime/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/DateTime/index.js rename to src/admin/components/forms/field-types/DateTime/index.tsx diff --git a/src/admin/components/forms/field-types/Email/index.js b/src/admin/components/forms/field-types/Email/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Email/index.js rename to src/admin/components/forms/field-types/Email/index.tsx diff --git a/src/admin/components/forms/field-types/Group/index.js b/src/admin/components/forms/field-types/Group/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Group/index.js rename to src/admin/components/forms/field-types/Group/index.tsx diff --git a/src/admin/components/forms/field-types/HiddenInput/index.js b/src/admin/components/forms/field-types/HiddenInput/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/HiddenInput/index.js rename to src/admin/components/forms/field-types/HiddenInput/index.tsx diff --git a/src/admin/components/forms/field-types/Number/index.js b/src/admin/components/forms/field-types/Number/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Number/index.js rename to src/admin/components/forms/field-types/Number/index.tsx diff --git a/src/admin/components/forms/field-types/Password/index.js b/src/admin/components/forms/field-types/Password/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Password/index.js rename to src/admin/components/forms/field-types/Password/index.tsx diff --git a/src/admin/components/forms/field-types/RadioGroup/RadioInput/index.js b/src/admin/components/forms/field-types/RadioGroup/RadioInput/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RadioGroup/RadioInput/index.js rename to src/admin/components/forms/field-types/RadioGroup/RadioInput/index.tsx diff --git a/src/admin/components/forms/field-types/RadioGroup/index.js b/src/admin/components/forms/field-types/RadioGroup/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RadioGroup/index.js rename to src/admin/components/forms/field-types/RadioGroup/index.tsx diff --git a/src/admin/components/forms/field-types/Relationship/index.js b/src/admin/components/forms/field-types/Relationship/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Relationship/index.js rename to src/admin/components/forms/field-types/Relationship/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/RichText.js b/src/admin/components/forms/field-types/RichText/RichText.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/RichText.js rename to src/admin/components/forms/field-types/RichText/RichText.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/Button.js b/src/admin/components/forms/field-types/RichText/elements/Button.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/Button.js rename to src/admin/components/forms/field-types/RichText/elements/Button.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/h1/index.js b/src/admin/components/forms/field-types/RichText/elements/h1/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/h1/index.js rename to src/admin/components/forms/field-types/RichText/elements/h1/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/h2/index.js b/src/admin/components/forms/field-types/RichText/elements/h2/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/h2/index.js rename to src/admin/components/forms/field-types/RichText/elements/h2/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/h3/index.js b/src/admin/components/forms/field-types/RichText/elements/h3/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/h3/index.js rename to src/admin/components/forms/field-types/RichText/elements/h3/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/h4/index.js b/src/admin/components/forms/field-types/RichText/elements/h4/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/h4/index.js rename to src/admin/components/forms/field-types/RichText/elements/h4/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/h5/index.js b/src/admin/components/forms/field-types/RichText/elements/h5/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/h5/index.js rename to src/admin/components/forms/field-types/RichText/elements/h5/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/h6/index.js b/src/admin/components/forms/field-types/RichText/elements/h6/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/h6/index.js rename to src/admin/components/forms/field-types/RichText/elements/h6/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/index.js b/src/admin/components/forms/field-types/RichText/elements/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/index.js rename to src/admin/components/forms/field-types/RichText/elements/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/isActive.js b/src/admin/components/forms/field-types/RichText/elements/isActive.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/isActive.js rename to src/admin/components/forms/field-types/RichText/elements/isActive.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/li/index.js b/src/admin/components/forms/field-types/RichText/elements/li/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/li/index.js rename to src/admin/components/forms/field-types/RichText/elements/li/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/link/index.js b/src/admin/components/forms/field-types/RichText/elements/link/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/link/index.js rename to src/admin/components/forms/field-types/RichText/elements/link/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/link/utilities.js b/src/admin/components/forms/field-types/RichText/elements/link/utilities.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/link/utilities.js rename to src/admin/components/forms/field-types/RichText/elements/link/utilities.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/listTypes.js b/src/admin/components/forms/field-types/RichText/elements/listTypes.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/listTypes.js rename to src/admin/components/forms/field-types/RichText/elements/listTypes.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/ol/index.js b/src/admin/components/forms/field-types/RichText/elements/ol/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/ol/index.js rename to src/admin/components/forms/field-types/RichText/elements/ol/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/relationship/Button/Fields/index.js b/src/admin/components/forms/field-types/RichText/elements/relationship/Button/Fields/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/relationship/Button/Fields/index.js rename to src/admin/components/forms/field-types/RichText/elements/relationship/Button/Fields/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/relationship/Button/index.js b/src/admin/components/forms/field-types/RichText/elements/relationship/Button/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/relationship/Button/index.js rename to src/admin/components/forms/field-types/RichText/elements/relationship/Button/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/relationship/Element/index.js b/src/admin/components/forms/field-types/RichText/elements/relationship/Element/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/relationship/Element/index.js rename to src/admin/components/forms/field-types/RichText/elements/relationship/Element/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/relationship/index.js b/src/admin/components/forms/field-types/RichText/elements/relationship/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/relationship/index.js rename to src/admin/components/forms/field-types/RichText/elements/relationship/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/relationship/plugin.js b/src/admin/components/forms/field-types/RichText/elements/relationship/plugin.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/relationship/plugin.js rename to src/admin/components/forms/field-types/RichText/elements/relationship/plugin.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/toggle.js b/src/admin/components/forms/field-types/RichText/elements/toggle.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/toggle.js rename to src/admin/components/forms/field-types/RichText/elements/toggle.tsx diff --git a/src/admin/components/forms/field-types/RichText/elements/ul/index.js b/src/admin/components/forms/field-types/RichText/elements/ul/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/elements/ul/index.js rename to src/admin/components/forms/field-types/RichText/elements/ul/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/enablePlugins.js b/src/admin/components/forms/field-types/RichText/enablePlugins.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/enablePlugins.js rename to src/admin/components/forms/field-types/RichText/enablePlugins.tsx diff --git a/src/admin/components/forms/field-types/RichText/hotkeys.js b/src/admin/components/forms/field-types/RichText/hotkeys.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/hotkeys.js rename to src/admin/components/forms/field-types/RichText/hotkeys.tsx diff --git a/src/admin/components/forms/field-types/RichText/index.js b/src/admin/components/forms/field-types/RichText/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/index.js rename to src/admin/components/forms/field-types/RichText/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/leaves/Button.js b/src/admin/components/forms/field-types/RichText/leaves/Button.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/leaves/Button.js rename to src/admin/components/forms/field-types/RichText/leaves/Button.tsx diff --git a/src/admin/components/forms/field-types/RichText/leaves/bold/index.js b/src/admin/components/forms/field-types/RichText/leaves/bold/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/leaves/bold/index.js rename to src/admin/components/forms/field-types/RichText/leaves/bold/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/leaves/code/index.js b/src/admin/components/forms/field-types/RichText/leaves/code/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/leaves/code/index.js rename to src/admin/components/forms/field-types/RichText/leaves/code/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/leaves/index.js b/src/admin/components/forms/field-types/RichText/leaves/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/leaves/index.js rename to src/admin/components/forms/field-types/RichText/leaves/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/leaves/isActive.js b/src/admin/components/forms/field-types/RichText/leaves/isActive.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/leaves/isActive.js rename to src/admin/components/forms/field-types/RichText/leaves/isActive.tsx diff --git a/src/admin/components/forms/field-types/RichText/leaves/italic/index.js b/src/admin/components/forms/field-types/RichText/leaves/italic/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/leaves/italic/index.js rename to src/admin/components/forms/field-types/RichText/leaves/italic/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/leaves/strikethrough/index.js b/src/admin/components/forms/field-types/RichText/leaves/strikethrough/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/leaves/strikethrough/index.js rename to src/admin/components/forms/field-types/RichText/leaves/strikethrough/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/leaves/toggle.js b/src/admin/components/forms/field-types/RichText/leaves/toggle.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/leaves/toggle.js rename to src/admin/components/forms/field-types/RichText/leaves/toggle.tsx diff --git a/src/admin/components/forms/field-types/RichText/leaves/underline/index.js b/src/admin/components/forms/field-types/RichText/leaves/underline/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/leaves/underline/index.js rename to src/admin/components/forms/field-types/RichText/leaves/underline/index.tsx diff --git a/src/admin/components/forms/field-types/RichText/mergeCustomFunctions.js b/src/admin/components/forms/field-types/RichText/mergeCustomFunctions.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/mergeCustomFunctions.js rename to src/admin/components/forms/field-types/RichText/mergeCustomFunctions.tsx diff --git a/src/admin/components/forms/field-types/RichText/plugins/withHTML.js b/src/admin/components/forms/field-types/RichText/plugins/withHTML.tsx similarity index 100% rename from src/admin/components/forms/field-types/RichText/plugins/withHTML.js rename to src/admin/components/forms/field-types/RichText/plugins/withHTML.tsx diff --git a/src/admin/components/forms/field-types/Row/index.js b/src/admin/components/forms/field-types/Row/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Row/index.js rename to src/admin/components/forms/field-types/Row/index.tsx diff --git a/src/admin/components/forms/field-types/Select/index.js b/src/admin/components/forms/field-types/Select/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Select/index.js rename to src/admin/components/forms/field-types/Select/index.tsx diff --git a/src/admin/components/forms/field-types/Text/index.js b/src/admin/components/forms/field-types/Text/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Text/index.js rename to src/admin/components/forms/field-types/Text/index.tsx diff --git a/src/admin/components/forms/field-types/Textarea/index.js b/src/admin/components/forms/field-types/Textarea/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Textarea/index.js rename to src/admin/components/forms/field-types/Textarea/index.tsx diff --git a/src/admin/components/forms/field-types/Upload/Add/index.js b/src/admin/components/forms/field-types/Upload/Add/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Upload/Add/index.js rename to src/admin/components/forms/field-types/Upload/Add/index.tsx diff --git a/src/admin/components/forms/field-types/Upload/SelectExisting/index.js b/src/admin/components/forms/field-types/Upload/SelectExisting/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Upload/SelectExisting/index.js rename to src/admin/components/forms/field-types/Upload/SelectExisting/index.tsx diff --git a/src/admin/components/forms/field-types/Upload/index.js b/src/admin/components/forms/field-types/Upload/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/Upload/index.js rename to src/admin/components/forms/field-types/Upload/index.tsx diff --git a/src/admin/components/forms/field-types/index.js b/src/admin/components/forms/field-types/index.tsx similarity index 100% rename from src/admin/components/forms/field-types/index.js rename to src/admin/components/forms/field-types/index.tsx diff --git a/src/admin/components/forms/field-types/rowReducer.js b/src/admin/components/forms/field-types/rowReducer.tsx similarity index 100% rename from src/admin/components/forms/field-types/rowReducer.js rename to src/admin/components/forms/field-types/rowReducer.tsx diff --git a/src/admin/components/forms/useFieldType/index.js b/src/admin/components/forms/useFieldType/index.tsx similarity index 100% rename from src/admin/components/forms/useFieldType/index.js rename to src/admin/components/forms/useFieldType/index.tsx diff --git a/src/admin/components/forms/withCondition/index.js b/src/admin/components/forms/withCondition/index.tsx similarity index 100% rename from src/admin/components/forms/withCondition/index.js rename to src/admin/components/forms/withCondition/index.tsx diff --git a/src/admin/components/graphics/Account/index.js b/src/admin/components/graphics/Account/index.tsx similarity index 100% rename from src/admin/components/graphics/Account/index.js rename to src/admin/components/graphics/Account/index.tsx diff --git a/src/admin/components/graphics/DefaultBlockImage/index.js b/src/admin/components/graphics/DefaultBlockImage/index.tsx similarity index 100% rename from src/admin/components/graphics/DefaultBlockImage/index.js rename to src/admin/components/graphics/DefaultBlockImage/index.tsx diff --git a/src/admin/components/graphics/File/index.js b/src/admin/components/graphics/File/index.tsx similarity index 100% rename from src/admin/components/graphics/File/index.js rename to src/admin/components/graphics/File/index.tsx diff --git a/src/admin/components/graphics/Icon/index.js b/src/admin/components/graphics/Icon/index.tsx similarity index 100% rename from src/admin/components/graphics/Icon/index.js rename to src/admin/components/graphics/Icon/index.tsx diff --git a/src/admin/components/graphics/Logo/index.js b/src/admin/components/graphics/Logo/index.tsx similarity index 100% rename from src/admin/components/graphics/Logo/index.js rename to src/admin/components/graphics/Logo/index.tsx diff --git a/src/admin/components/graphics/Search/index.js b/src/admin/components/graphics/Search/index.tsx similarity index 100% rename from src/admin/components/graphics/Search/index.js rename to src/admin/components/graphics/Search/index.tsx diff --git a/src/admin/components/icons/Blockquote/index.js b/src/admin/components/icons/Blockquote/index.tsx similarity index 100% rename from src/admin/components/icons/Blockquote/index.js rename to src/admin/components/icons/Blockquote/index.tsx diff --git a/src/admin/components/icons/Bold/index.js b/src/admin/components/icons/Bold/index.tsx similarity index 100% rename from src/admin/components/icons/Bold/index.js rename to src/admin/components/icons/Bold/index.tsx diff --git a/src/admin/components/icons/Calendar/index.js b/src/admin/components/icons/Calendar/index.tsx similarity index 100% rename from src/admin/components/icons/Calendar/index.js rename to src/admin/components/icons/Calendar/index.tsx diff --git a/src/admin/components/icons/Check/index.js b/src/admin/components/icons/Check/index.tsx similarity index 100% rename from src/admin/components/icons/Check/index.js rename to src/admin/components/icons/Check/index.tsx diff --git a/src/admin/components/icons/Chevron/index.js b/src/admin/components/icons/Chevron/index.tsx similarity index 100% rename from src/admin/components/icons/Chevron/index.js rename to src/admin/components/icons/Chevron/index.tsx diff --git a/src/admin/components/icons/CloseMenu/index.js b/src/admin/components/icons/CloseMenu/index.tsx similarity index 100% rename from src/admin/components/icons/CloseMenu/index.js rename to src/admin/components/icons/CloseMenu/index.tsx diff --git a/src/admin/components/icons/Code/index.js b/src/admin/components/icons/Code/index.tsx similarity index 100% rename from src/admin/components/icons/Code/index.js rename to src/admin/components/icons/Code/index.tsx diff --git a/src/admin/components/icons/CodeBlock/index.js b/src/admin/components/icons/CodeBlock/index.tsx similarity index 100% rename from src/admin/components/icons/CodeBlock/index.js rename to src/admin/components/icons/CodeBlock/index.tsx diff --git a/src/admin/components/icons/Copy/index.js b/src/admin/components/icons/Copy/index.tsx similarity index 100% rename from src/admin/components/icons/Copy/index.js rename to src/admin/components/icons/Copy/index.tsx diff --git a/src/admin/components/icons/Italic/index.js b/src/admin/components/icons/Italic/index.tsx similarity index 100% rename from src/admin/components/icons/Italic/index.js rename to src/admin/components/icons/Italic/index.tsx diff --git a/src/admin/components/icons/Link/index.js b/src/admin/components/icons/Link/index.tsx similarity index 100% rename from src/admin/components/icons/Link/index.js rename to src/admin/components/icons/Link/index.tsx diff --git a/src/admin/components/icons/LogOut/index.js b/src/admin/components/icons/LogOut/index.tsx similarity index 100% rename from src/admin/components/icons/LogOut/index.js rename to src/admin/components/icons/LogOut/index.tsx diff --git a/src/admin/components/icons/Menu/index.js b/src/admin/components/icons/Menu/index.tsx similarity index 100% rename from src/admin/components/icons/Menu/index.js rename to src/admin/components/icons/Menu/index.tsx diff --git a/src/admin/components/icons/OrderedList/index.js b/src/admin/components/icons/OrderedList/index.tsx similarity index 100% rename from src/admin/components/icons/OrderedList/index.js rename to src/admin/components/icons/OrderedList/index.tsx diff --git a/src/admin/components/icons/Plus/index.js b/src/admin/components/icons/Plus/index.tsx similarity index 100% rename from src/admin/components/icons/Plus/index.js rename to src/admin/components/icons/Plus/index.tsx diff --git a/src/admin/components/icons/Relationship/index.js b/src/admin/components/icons/Relationship/index.tsx similarity index 100% rename from src/admin/components/icons/Relationship/index.js rename to src/admin/components/icons/Relationship/index.tsx diff --git a/src/admin/components/icons/Search/index.js b/src/admin/components/icons/Search/index.tsx similarity index 100% rename from src/admin/components/icons/Search/index.js rename to src/admin/components/icons/Search/index.tsx diff --git a/src/admin/components/icons/Strikethrough/index.js b/src/admin/components/icons/Strikethrough/index.tsx similarity index 100% rename from src/admin/components/icons/Strikethrough/index.js rename to src/admin/components/icons/Strikethrough/index.tsx diff --git a/src/admin/components/icons/Underline/index.js b/src/admin/components/icons/Underline/index.tsx similarity index 100% rename from src/admin/components/icons/Underline/index.js rename to src/admin/components/icons/Underline/index.tsx diff --git a/src/admin/components/icons/UnorderedList/index.js b/src/admin/components/icons/UnorderedList/index.tsx similarity index 100% rename from src/admin/components/icons/UnorderedList/index.js rename to src/admin/components/icons/UnorderedList/index.tsx diff --git a/src/admin/components/icons/X/index.js b/src/admin/components/icons/X/index.tsx similarity index 100% rename from src/admin/components/icons/X/index.js rename to src/admin/components/icons/X/index.tsx diff --git a/src/admin/components/icons/headings/H1/index.js b/src/admin/components/icons/headings/H1/index.tsx similarity index 100% rename from src/admin/components/icons/headings/H1/index.js rename to src/admin/components/icons/headings/H1/index.tsx diff --git a/src/admin/components/icons/headings/H2/index.js b/src/admin/components/icons/headings/H2/index.tsx similarity index 100% rename from src/admin/components/icons/headings/H2/index.js rename to src/admin/components/icons/headings/H2/index.tsx diff --git a/src/admin/components/icons/headings/H3/index.js b/src/admin/components/icons/headings/H3/index.tsx similarity index 100% rename from src/admin/components/icons/headings/H3/index.js rename to src/admin/components/icons/headings/H3/index.tsx diff --git a/src/admin/components/icons/headings/H4/index.js b/src/admin/components/icons/headings/H4/index.tsx similarity index 100% rename from src/admin/components/icons/headings/H4/index.js rename to src/admin/components/icons/headings/H4/index.tsx diff --git a/src/admin/components/icons/headings/H5/index.js b/src/admin/components/icons/headings/H5/index.tsx similarity index 100% rename from src/admin/components/icons/headings/H5/index.js rename to src/admin/components/icons/headings/H5/index.tsx diff --git a/src/admin/components/icons/headings/H6/index.js b/src/admin/components/icons/headings/H6/index.tsx similarity index 100% rename from src/admin/components/icons/headings/H6/index.js rename to src/admin/components/icons/headings/H6/index.tsx diff --git a/src/admin/components/icons/headings/index.js b/src/admin/components/icons/headings/index.tsx similarity index 100% rename from src/admin/components/icons/headings/index.js rename to src/admin/components/icons/headings/index.tsx diff --git a/src/admin/components/index.js b/src/admin/components/index.tsx similarity index 100% rename from src/admin/components/index.js rename to src/admin/components/index.tsx diff --git a/src/admin/components/modals/LeaveWithoutSaving/index.js b/src/admin/components/modals/LeaveWithoutSaving/index.tsx similarity index 100% rename from src/admin/components/modals/LeaveWithoutSaving/index.js rename to src/admin/components/modals/LeaveWithoutSaving/index.tsx diff --git a/src/admin/components/modals/StayLoggedIn/index.js b/src/admin/components/modals/StayLoggedIn/index.tsx similarity index 100% rename from src/admin/components/modals/StayLoggedIn/index.js rename to src/admin/components/modals/StayLoggedIn/index.tsx diff --git a/src/admin/components/providers/Authentication.js b/src/admin/components/providers/Authentication.tsx similarity index 100% rename from src/admin/components/providers/Authentication.js rename to src/admin/components/providers/Authentication.tsx diff --git a/src/admin/components/providers/Config/Provider.js b/src/admin/components/providers/Config/Provider.tsx similarity index 100% rename from src/admin/components/providers/Config/Provider.js rename to src/admin/components/providers/Config/Provider.tsx diff --git a/src/admin/components/providers/Config/context.js b/src/admin/components/providers/Config/context.tsx similarity index 100% rename from src/admin/components/providers/Config/context.js rename to src/admin/components/providers/Config/context.tsx diff --git a/src/admin/components/providers/Config/index.js b/src/admin/components/providers/Config/index.tsx similarity index 100% rename from src/admin/components/providers/Config/index.js rename to src/admin/components/providers/Config/index.tsx diff --git a/src/admin/components/providers/Config/useConfig.js b/src/admin/components/providers/Config/useConfig.tsx similarity index 100% rename from src/admin/components/providers/Config/useConfig.js rename to src/admin/components/providers/Config/useConfig.tsx diff --git a/src/admin/components/templates/Default/index.js b/src/admin/components/templates/Default/index.tsx similarity index 100% rename from src/admin/components/templates/Default/index.js rename to src/admin/components/templates/Default/index.tsx diff --git a/src/admin/components/templates/Minimal/index.js b/src/admin/components/templates/Minimal/index.tsx similarity index 100% rename from src/admin/components/templates/Minimal/index.js rename to src/admin/components/templates/Minimal/index.tsx diff --git a/src/admin/components/utilities/Locale/index.js b/src/admin/components/utilities/Locale/index.tsx similarity index 100% rename from src/admin/components/utilities/Locale/index.js rename to src/admin/components/utilities/Locale/index.tsx diff --git a/src/admin/components/utilities/Meta/index.js b/src/admin/components/utilities/Meta/index.tsx similarity index 100% rename from src/admin/components/utilities/Meta/index.js rename to src/admin/components/utilities/Meta/index.tsx diff --git a/src/admin/components/utilities/Portal/index.js b/src/admin/components/utilities/Portal/index.tsx similarity index 100% rename from src/admin/components/utilities/Portal/index.js rename to src/admin/components/utilities/Portal/index.tsx diff --git a/src/admin/components/utilities/RenderCustomComponent/index.js b/src/admin/components/utilities/RenderCustomComponent/index.tsx similarity index 100% rename from src/admin/components/utilities/RenderCustomComponent/index.js rename to src/admin/components/utilities/RenderCustomComponent/index.tsx diff --git a/src/admin/components/utilities/SearchParams/index.js b/src/admin/components/utilities/SearchParams/index.tsx similarity index 100% rename from src/admin/components/utilities/SearchParams/index.js rename to src/admin/components/utilities/SearchParams/index.tsx diff --git a/src/admin/components/views/Account/Default.js b/src/admin/components/views/Account/Default.tsx similarity index 100% rename from src/admin/components/views/Account/Default.js rename to src/admin/components/views/Account/Default.tsx diff --git a/src/admin/components/views/Account/index.js b/src/admin/components/views/Account/index.tsx similarity index 100% rename from src/admin/components/views/Account/index.js rename to src/admin/components/views/Account/index.tsx diff --git a/src/admin/components/views/CreateFirstUser/index.js b/src/admin/components/views/CreateFirstUser/index.tsx similarity index 100% rename from src/admin/components/views/CreateFirstUser/index.js rename to src/admin/components/views/CreateFirstUser/index.tsx diff --git a/src/admin/components/views/Dashboard/Default.js b/src/admin/components/views/Dashboard/Default.tsx similarity index 100% rename from src/admin/components/views/Dashboard/Default.js rename to src/admin/components/views/Dashboard/Default.tsx diff --git a/src/admin/components/views/Dashboard/index.js b/src/admin/components/views/Dashboard/index.tsx similarity index 100% rename from src/admin/components/views/Dashboard/index.js rename to src/admin/components/views/Dashboard/index.tsx diff --git a/src/admin/components/views/ForgotPassword/index.js b/src/admin/components/views/ForgotPassword/index.tsx similarity index 100% rename from src/admin/components/views/ForgotPassword/index.js rename to src/admin/components/views/ForgotPassword/index.tsx diff --git a/src/admin/components/views/Global/Default.js b/src/admin/components/views/Global/Default.tsx similarity index 100% rename from src/admin/components/views/Global/Default.js rename to src/admin/components/views/Global/Default.tsx diff --git a/src/admin/components/views/Global/index.js b/src/admin/components/views/Global/index.tsx similarity index 100% rename from src/admin/components/views/Global/index.js rename to src/admin/components/views/Global/index.tsx diff --git a/src/admin/components/views/Login/index.js b/src/admin/components/views/Login/index.tsx similarity index 100% rename from src/admin/components/views/Login/index.js rename to src/admin/components/views/Login/index.tsx diff --git a/src/admin/components/views/Logout/index.js b/src/admin/components/views/Logout/index.tsx similarity index 100% rename from src/admin/components/views/Logout/index.js rename to src/admin/components/views/Logout/index.tsx diff --git a/src/admin/components/views/NotFound/index.js b/src/admin/components/views/NotFound/index.tsx similarity index 100% rename from src/admin/components/views/NotFound/index.js rename to src/admin/components/views/NotFound/index.tsx diff --git a/src/admin/components/views/ResetPassword/index.js b/src/admin/components/views/ResetPassword/index.tsx similarity index 100% rename from src/admin/components/views/ResetPassword/index.js rename to src/admin/components/views/ResetPassword/index.tsx diff --git a/src/admin/components/views/Unauthorized/index.js b/src/admin/components/views/Unauthorized/index.tsx similarity index 100% rename from src/admin/components/views/Unauthorized/index.js rename to src/admin/components/views/Unauthorized/index.tsx diff --git a/src/admin/components/views/Verify/index.js b/src/admin/components/views/Verify/index.tsx similarity index 100% rename from src/admin/components/views/Verify/index.js rename to src/admin/components/views/Verify/index.tsx diff --git a/src/admin/components/views/collections/Edit/Auth/APIKey.js b/src/admin/components/views/collections/Edit/Auth/APIKey.tsx similarity index 100% rename from src/admin/components/views/collections/Edit/Auth/APIKey.js rename to src/admin/components/views/collections/Edit/Auth/APIKey.tsx diff --git a/src/admin/components/views/collections/Edit/Auth/index.js b/src/admin/components/views/collections/Edit/Auth/index.tsx similarity index 100% rename from src/admin/components/views/collections/Edit/Auth/index.js rename to src/admin/components/views/collections/Edit/Auth/index.tsx diff --git a/src/admin/components/views/collections/Edit/Default.js b/src/admin/components/views/collections/Edit/Default.tsx similarity index 100% rename from src/admin/components/views/collections/Edit/Default.js rename to src/admin/components/views/collections/Edit/Default.tsx diff --git a/src/admin/components/views/collections/Edit/Upload/index.js b/src/admin/components/views/collections/Edit/Upload/index.tsx similarity index 100% rename from src/admin/components/views/collections/Edit/Upload/index.js rename to src/admin/components/views/collections/Edit/Upload/index.tsx diff --git a/src/admin/components/views/collections/Edit/index.js b/src/admin/components/views/collections/Edit/index.tsx similarity index 100% rename from src/admin/components/views/collections/Edit/index.js rename to src/admin/components/views/collections/Edit/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/cellTypes.spec.js b/src/admin/components/views/collections/List/Cell/cellTypes.spec.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/cellTypes.spec.js rename to src/admin/components/views/collections/List/Cell/cellTypes.spec.tsx diff --git a/src/admin/components/views/collections/List/Cell/index.js b/src/admin/components/views/collections/List/Cell/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/index.js rename to src/admin/components/views/collections/List/Cell/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/Array/index.js b/src/admin/components/views/collections/List/Cell/types/Array/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/Array/index.js rename to src/admin/components/views/collections/List/Cell/types/Array/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/Blocks/index.js b/src/admin/components/views/collections/List/Cell/types/Blocks/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/Blocks/index.js rename to src/admin/components/views/collections/List/Cell/types/Blocks/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/Checkbox/index.js b/src/admin/components/views/collections/List/Cell/types/Checkbox/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/Checkbox/index.js rename to src/admin/components/views/collections/List/Cell/types/Checkbox/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/Code/index.js b/src/admin/components/views/collections/List/Cell/types/Code/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/Code/index.js rename to src/admin/components/views/collections/List/Cell/types/Code/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/Date/index.js b/src/admin/components/views/collections/List/Cell/types/Date/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/Date/index.js rename to src/admin/components/views/collections/List/Cell/types/Date/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/Relationship/index.js b/src/admin/components/views/collections/List/Cell/types/Relationship/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/Relationship/index.js rename to src/admin/components/views/collections/List/Cell/types/Relationship/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/Richtext/index.js b/src/admin/components/views/collections/List/Cell/types/Richtext/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/Richtext/index.js rename to src/admin/components/views/collections/List/Cell/types/Richtext/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/Select/index.js b/src/admin/components/views/collections/List/Cell/types/Select/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/Select/index.js rename to src/admin/components/views/collections/List/Cell/types/Select/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/Textarea/index.js b/src/admin/components/views/collections/List/Cell/types/Textarea/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/Textarea/index.js rename to src/admin/components/views/collections/List/Cell/types/Textarea/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/Upload/index.js b/src/admin/components/views/collections/List/Cell/types/Upload/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/Upload/index.js rename to src/admin/components/views/collections/List/Cell/types/Upload/index.tsx diff --git a/src/admin/components/views/collections/List/Cell/types/index.js b/src/admin/components/views/collections/List/Cell/types/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/Cell/types/index.js rename to src/admin/components/views/collections/List/Cell/types/index.tsx diff --git a/src/admin/components/views/collections/List/Default.js b/src/admin/components/views/collections/List/Default.tsx similarity index 100% rename from src/admin/components/views/collections/List/Default.js rename to src/admin/components/views/collections/List/Default.tsx diff --git a/src/admin/components/views/collections/List/buildColumns.js b/src/admin/components/views/collections/List/buildColumns.tsx similarity index 100% rename from src/admin/components/views/collections/List/buildColumns.js rename to src/admin/components/views/collections/List/buildColumns.tsx diff --git a/src/admin/components/views/collections/List/formatFields.js b/src/admin/components/views/collections/List/formatFields.tsx similarity index 100% rename from src/admin/components/views/collections/List/formatFields.js rename to src/admin/components/views/collections/List/formatFields.tsx diff --git a/src/admin/components/views/collections/List/index.js b/src/admin/components/views/collections/List/index.tsx similarity index 100% rename from src/admin/components/views/collections/List/index.js rename to src/admin/components/views/collections/List/index.tsx diff --git a/src/admin/hooks/useDebounce.js b/src/admin/hooks/useDebounce.tsx similarity index 100% rename from src/admin/hooks/useDebounce.js rename to src/admin/hooks/useDebounce.tsx diff --git a/src/admin/hooks/useIntersect.js b/src/admin/hooks/useIntersect.tsx similarity index 100% rename from src/admin/hooks/useIntersect.js rename to src/admin/hooks/useIntersect.tsx diff --git a/src/admin/hooks/useMountEffect.js b/src/admin/hooks/useMountEffect.tsx similarity index 100% rename from src/admin/hooks/useMountEffect.js rename to src/admin/hooks/useMountEffect.tsx diff --git a/src/admin/hooks/usePayloadAPI.js b/src/admin/hooks/usePayloadAPI.tsx similarity index 100% rename from src/admin/hooks/usePayloadAPI.js rename to src/admin/hooks/usePayloadAPI.tsx diff --git a/src/admin/hooks/useThrottledEffect.js b/src/admin/hooks/useThrottledEffect.tsx similarity index 100% rename from src/admin/hooks/useThrottledEffect.js rename to src/admin/hooks/useThrottledEffect.tsx diff --git a/src/admin/hooks/useTitle.js b/src/admin/hooks/useTitle.tsx similarity index 100% rename from src/admin/hooks/useTitle.js rename to src/admin/hooks/useTitle.tsx diff --git a/src/admin/hooks/useUnmountEffect.js b/src/admin/hooks/useUnmountEffect.tsx similarity index 100% rename from src/admin/hooks/useUnmountEffect.js rename to src/admin/hooks/useUnmountEffect.tsx diff --git a/src/admin/index.js b/src/admin/index.tsx similarity index 100% rename from src/admin/index.js rename to src/admin/index.tsx diff --git a/src/admin/utilities/getOffsetTop.js b/src/admin/utilities/getOffsetTop.tsx similarity index 100% rename from src/admin/utilities/getOffsetTop.js rename to src/admin/utilities/getOffsetTop.tsx diff --git a/src/auth/auth.spec.js b/src/auth/auth.spec.ts similarity index 100% rename from src/auth/auth.spec.js rename to src/auth/auth.spec.ts diff --git a/src/auth/crypto.js b/src/auth/crypto.ts similarity index 100% rename from src/auth/crypto.js rename to src/auth/crypto.ts diff --git a/src/auth/default.js b/src/auth/default.ts similarity index 100% rename from src/auth/default.js rename to src/auth/default.ts diff --git a/src/auth/executeAccess.js b/src/auth/executeAccess.ts similarity index 100% rename from src/auth/executeAccess.js rename to src/auth/executeAccess.ts diff --git a/src/auth/getExecuteStaticAccess.js b/src/auth/getExecuteStaticAccess.ts similarity index 100% rename from src/auth/getExecuteStaticAccess.js rename to src/auth/getExecuteStaticAccess.ts diff --git a/src/auth/getExtractJWT.js b/src/auth/getExtractJWT.ts similarity index 100% rename from src/auth/getExtractJWT.js rename to src/auth/getExtractJWT.ts diff --git a/src/auth/graphql/resolvers/access.js b/src/auth/graphql/resolvers/access.ts similarity index 100% rename from src/auth/graphql/resolvers/access.js rename to src/auth/graphql/resolvers/access.ts diff --git a/src/auth/graphql/resolvers/forgotPassword.js b/src/auth/graphql/resolvers/forgotPassword.ts similarity index 100% rename from src/auth/graphql/resolvers/forgotPassword.js rename to src/auth/graphql/resolvers/forgotPassword.ts diff --git a/src/auth/graphql/resolvers/init.js b/src/auth/graphql/resolvers/init.ts similarity index 100% rename from src/auth/graphql/resolvers/init.js rename to src/auth/graphql/resolvers/init.ts diff --git a/src/auth/graphql/resolvers/login.js b/src/auth/graphql/resolvers/login.ts similarity index 100% rename from src/auth/graphql/resolvers/login.js rename to src/auth/graphql/resolvers/login.ts diff --git a/src/auth/graphql/resolvers/logout.js b/src/auth/graphql/resolvers/logout.ts similarity index 100% rename from src/auth/graphql/resolvers/logout.js rename to src/auth/graphql/resolvers/logout.ts diff --git a/src/auth/graphql/resolvers/me.js b/src/auth/graphql/resolvers/me.ts similarity index 100% rename from src/auth/graphql/resolvers/me.js rename to src/auth/graphql/resolvers/me.ts diff --git a/src/auth/graphql/resolvers/refresh.js b/src/auth/graphql/resolvers/refresh.ts similarity index 100% rename from src/auth/graphql/resolvers/refresh.js rename to src/auth/graphql/resolvers/refresh.ts diff --git a/src/auth/graphql/resolvers/resetPassword.js b/src/auth/graphql/resolvers/resetPassword.ts similarity index 100% rename from src/auth/graphql/resolvers/resetPassword.js rename to src/auth/graphql/resolvers/resetPassword.ts diff --git a/src/auth/graphql/resolvers/unlock.js b/src/auth/graphql/resolvers/unlock.ts similarity index 100% rename from src/auth/graphql/resolvers/unlock.js rename to src/auth/graphql/resolvers/unlock.ts diff --git a/src/auth/graphql/resolvers/verifyEmail.js b/src/auth/graphql/resolvers/verifyEmail.ts similarity index 100% rename from src/auth/graphql/resolvers/verifyEmail.js rename to src/auth/graphql/resolvers/verifyEmail.ts diff --git a/src/auth/init.js b/src/auth/init.ts similarity index 100% rename from src/auth/init.js rename to src/auth/init.ts diff --git a/src/auth/isLocked.js b/src/auth/isLocked.ts similarity index 100% rename from src/auth/isLocked.js rename to src/auth/isLocked.ts diff --git a/src/auth/operations/access.js b/src/auth/operations/access.ts similarity index 100% rename from src/auth/operations/access.js rename to src/auth/operations/access.ts diff --git a/src/auth/operations/forgotPassword.js b/src/auth/operations/forgotPassword.ts similarity index 100% rename from src/auth/operations/forgotPassword.js rename to src/auth/operations/forgotPassword.ts diff --git a/src/auth/operations/init.js b/src/auth/operations/init.ts similarity index 100% rename from src/auth/operations/init.js rename to src/auth/operations/init.ts diff --git a/src/auth/operations/local/forgotPassword.js b/src/auth/operations/local/forgotPassword.ts similarity index 100% rename from src/auth/operations/local/forgotPassword.js rename to src/auth/operations/local/forgotPassword.ts diff --git a/src/auth/operations/local/index.js b/src/auth/operations/local/index.ts similarity index 100% rename from src/auth/operations/local/index.js rename to src/auth/operations/local/index.ts diff --git a/src/auth/operations/local/login.js b/src/auth/operations/local/login.ts similarity index 100% rename from src/auth/operations/local/login.js rename to src/auth/operations/local/login.ts diff --git a/src/auth/operations/local/resetPassword.js b/src/auth/operations/local/resetPassword.ts similarity index 100% rename from src/auth/operations/local/resetPassword.js rename to src/auth/operations/local/resetPassword.ts diff --git a/src/auth/operations/local/unlock.js b/src/auth/operations/local/unlock.ts similarity index 100% rename from src/auth/operations/local/unlock.js rename to src/auth/operations/local/unlock.ts diff --git a/src/auth/operations/local/verifyEmail.js b/src/auth/operations/local/verifyEmail.ts similarity index 100% rename from src/auth/operations/local/verifyEmail.js rename to src/auth/operations/local/verifyEmail.ts diff --git a/src/auth/operations/login.js b/src/auth/operations/login.ts similarity index 100% rename from src/auth/operations/login.js rename to src/auth/operations/login.ts diff --git a/src/auth/operations/logout.js b/src/auth/operations/logout.ts similarity index 100% rename from src/auth/operations/logout.js rename to src/auth/operations/logout.ts diff --git a/src/auth/operations/me.js b/src/auth/operations/me.ts similarity index 100% rename from src/auth/operations/me.js rename to src/auth/operations/me.ts diff --git a/src/auth/operations/refresh.js b/src/auth/operations/refresh.ts similarity index 100% rename from src/auth/operations/refresh.js rename to src/auth/operations/refresh.ts diff --git a/src/auth/operations/registerFirstUser.js b/src/auth/operations/registerFirstUser.ts similarity index 100% rename from src/auth/operations/registerFirstUser.js rename to src/auth/operations/registerFirstUser.ts diff --git a/src/auth/operations/resetPassword.js b/src/auth/operations/resetPassword.ts similarity index 100% rename from src/auth/operations/resetPassword.js rename to src/auth/operations/resetPassword.ts diff --git a/src/auth/operations/unlock.js b/src/auth/operations/unlock.ts similarity index 100% rename from src/auth/operations/unlock.js rename to src/auth/operations/unlock.ts diff --git a/src/auth/operations/verifyEmail.js b/src/auth/operations/verifyEmail.ts similarity index 100% rename from src/auth/operations/verifyEmail.js rename to src/auth/operations/verifyEmail.ts diff --git a/src/auth/requestHandlers/access.js b/src/auth/requestHandlers/access.ts similarity index 100% rename from src/auth/requestHandlers/access.js rename to src/auth/requestHandlers/access.ts diff --git a/src/auth/requestHandlers/forgotPassword.js b/src/auth/requestHandlers/forgotPassword.ts similarity index 100% rename from src/auth/requestHandlers/forgotPassword.js rename to src/auth/requestHandlers/forgotPassword.ts diff --git a/src/auth/requestHandlers/init.js b/src/auth/requestHandlers/init.ts similarity index 100% rename from src/auth/requestHandlers/init.js rename to src/auth/requestHandlers/init.ts diff --git a/src/auth/requestHandlers/login.js b/src/auth/requestHandlers/login.ts similarity index 100% rename from src/auth/requestHandlers/login.js rename to src/auth/requestHandlers/login.ts diff --git a/src/auth/requestHandlers/logout.js b/src/auth/requestHandlers/logout.ts similarity index 100% rename from src/auth/requestHandlers/logout.js rename to src/auth/requestHandlers/logout.ts diff --git a/src/auth/requestHandlers/me.js b/src/auth/requestHandlers/me.ts similarity index 100% rename from src/auth/requestHandlers/me.js rename to src/auth/requestHandlers/me.ts diff --git a/src/auth/requestHandlers/refresh.js b/src/auth/requestHandlers/refresh.ts similarity index 100% rename from src/auth/requestHandlers/refresh.js rename to src/auth/requestHandlers/refresh.ts diff --git a/src/auth/requestHandlers/registerFirstUser.js b/src/auth/requestHandlers/registerFirstUser.ts similarity index 100% rename from src/auth/requestHandlers/registerFirstUser.js rename to src/auth/requestHandlers/registerFirstUser.ts diff --git a/src/auth/requestHandlers/resetPassword.js b/src/auth/requestHandlers/resetPassword.ts similarity index 100% rename from src/auth/requestHandlers/resetPassword.js rename to src/auth/requestHandlers/resetPassword.ts diff --git a/src/auth/requestHandlers/unlock.js b/src/auth/requestHandlers/unlock.ts similarity index 100% rename from src/auth/requestHandlers/unlock.js rename to src/auth/requestHandlers/unlock.ts diff --git a/src/auth/requestHandlers/verifyEmail.js b/src/auth/requestHandlers/verifyEmail.ts similarity index 100% rename from src/auth/requestHandlers/verifyEmail.js rename to src/auth/requestHandlers/verifyEmail.ts diff --git a/src/auth/sendVerificationEmail.js b/src/auth/sendVerificationEmail.ts similarity index 100% rename from src/auth/sendVerificationEmail.js rename to src/auth/sendVerificationEmail.ts diff --git a/src/auth/strategies/apiKey.js b/src/auth/strategies/apiKey.ts similarity index 100% rename from src/auth/strategies/apiKey.js rename to src/auth/strategies/apiKey.ts diff --git a/src/auth/strategies/jwt.js b/src/auth/strategies/jwt.ts similarity index 100% rename from src/auth/strategies/jwt.js rename to src/auth/strategies/jwt.ts diff --git a/src/babel.config.js b/src/babel.config.js new file mode 100644 index 000000000..68da5b812 --- /dev/null +++ b/src/babel.config.js @@ -0,0 +1,21 @@ +module.exports = { + presets: [ + '@babel/typescript', + [ + require.resolve('@babel/preset-env'), + { + targets: [ + 'defaults', + 'not IE 11', + 'not IE_Mob 11', + ], + }, + ], + require.resolve('@babel/preset-react'), + ], + plugins: [ + require.resolve('@babel/plugin-transform-runtime'), + require.resolve('@babel/plugin-proposal-class-properties'), + require.resolve('@babel/plugin-proposal-optional-chaining'), + ], +}; diff --git a/src/bin/build.js b/src/bin/build.ts similarity index 100% rename from src/bin/build.js rename to src/bin/build.ts diff --git a/src/bin/index.js b/src/bin/index.ts similarity index 100% rename from src/bin/index.js rename to src/bin/index.ts diff --git a/src/collections/bindCollection.js b/src/collections/bindCollection.ts similarity index 100% rename from src/collections/bindCollection.js rename to src/collections/bindCollection.ts diff --git a/src/collections/buildSchema.js b/src/collections/buildSchema.ts similarity index 100% rename from src/collections/buildSchema.js rename to src/collections/buildSchema.ts diff --git a/src/collections/graphql/init.js b/src/collections/graphql/init.ts similarity index 100% rename from src/collections/graphql/init.js rename to src/collections/graphql/init.ts diff --git a/src/collections/graphql/resolvers/create.js b/src/collections/graphql/resolvers/create.ts similarity index 100% rename from src/collections/graphql/resolvers/create.js rename to src/collections/graphql/resolvers/create.ts diff --git a/src/collections/graphql/resolvers/delete.js b/src/collections/graphql/resolvers/delete.ts similarity index 100% rename from src/collections/graphql/resolvers/delete.js rename to src/collections/graphql/resolvers/delete.ts diff --git a/src/collections/graphql/resolvers/find.js b/src/collections/graphql/resolvers/find.ts similarity index 100% rename from src/collections/graphql/resolvers/find.js rename to src/collections/graphql/resolvers/find.ts diff --git a/src/collections/graphql/resolvers/findByID.js b/src/collections/graphql/resolvers/findByID.ts similarity index 100% rename from src/collections/graphql/resolvers/findByID.js rename to src/collections/graphql/resolvers/findByID.ts diff --git a/src/collections/graphql/resolvers/resolvers.spec.js b/src/collections/graphql/resolvers/resolvers.spec.ts similarity index 100% rename from src/collections/graphql/resolvers/resolvers.spec.js rename to src/collections/graphql/resolvers/resolvers.spec.ts diff --git a/src/collections/graphql/resolvers/update.js b/src/collections/graphql/resolvers/update.ts similarity index 100% rename from src/collections/graphql/resolvers/update.js rename to src/collections/graphql/resolvers/update.ts diff --git a/src/collections/init.js b/src/collections/init.ts similarity index 100% rename from src/collections/init.js rename to src/collections/init.ts diff --git a/src/collections/operations/create.js b/src/collections/operations/create.ts similarity index 100% rename from src/collections/operations/create.js rename to src/collections/operations/create.ts diff --git a/src/collections/operations/delete.js b/src/collections/operations/delete.ts similarity index 100% rename from src/collections/operations/delete.js rename to src/collections/operations/delete.ts diff --git a/src/collections/operations/find.js b/src/collections/operations/find.ts similarity index 100% rename from src/collections/operations/find.js rename to src/collections/operations/find.ts diff --git a/src/collections/operations/findByID.js b/src/collections/operations/findByID.ts similarity index 100% rename from src/collections/operations/findByID.js rename to src/collections/operations/findByID.ts diff --git a/src/collections/operations/local/create.js b/src/collections/operations/local/create.ts similarity index 100% rename from src/collections/operations/local/create.js rename to src/collections/operations/local/create.ts diff --git a/src/collections/operations/local/delete.js b/src/collections/operations/local/delete.ts similarity index 100% rename from src/collections/operations/local/delete.js rename to src/collections/operations/local/delete.ts diff --git a/src/collections/operations/local/find.js b/src/collections/operations/local/find.ts similarity index 100% rename from src/collections/operations/local/find.js rename to src/collections/operations/local/find.ts diff --git a/src/collections/operations/local/findByID.js b/src/collections/operations/local/findByID.ts similarity index 100% rename from src/collections/operations/local/findByID.js rename to src/collections/operations/local/findByID.ts diff --git a/src/collections/operations/local/index.js b/src/collections/operations/local/index.ts similarity index 100% rename from src/collections/operations/local/index.js rename to src/collections/operations/local/index.ts diff --git a/src/collections/operations/local/update.js b/src/collections/operations/local/update.ts similarity index 100% rename from src/collections/operations/local/update.js rename to src/collections/operations/local/update.ts diff --git a/src/collections/operations/update.js b/src/collections/operations/update.ts similarity index 100% rename from src/collections/operations/update.js rename to src/collections/operations/update.ts diff --git a/src/collections/requestHandlers/create.js b/src/collections/requestHandlers/create.ts similarity index 100% rename from src/collections/requestHandlers/create.js rename to src/collections/requestHandlers/create.ts diff --git a/src/collections/requestHandlers/delete.js b/src/collections/requestHandlers/delete.ts similarity index 100% rename from src/collections/requestHandlers/delete.js rename to src/collections/requestHandlers/delete.ts diff --git a/src/collections/requestHandlers/find.js b/src/collections/requestHandlers/find.ts similarity index 100% rename from src/collections/requestHandlers/find.js rename to src/collections/requestHandlers/find.ts diff --git a/src/collections/requestHandlers/findByID.js b/src/collections/requestHandlers/findByID.ts similarity index 100% rename from src/collections/requestHandlers/findByID.js rename to src/collections/requestHandlers/findByID.ts diff --git a/src/collections/requestHandlers/update.js b/src/collections/requestHandlers/update.ts similarity index 100% rename from src/collections/requestHandlers/update.js rename to src/collections/requestHandlers/update.ts diff --git a/src/collections/sanitize.js b/src/collections/sanitize.ts similarity index 100% rename from src/collections/sanitize.js rename to src/collections/sanitize.ts diff --git a/src/collections/tests/collections.spec.js b/src/collections/tests/collections.spec.ts similarity index 100% rename from src/collections/tests/collections.spec.js rename to src/collections/tests/collections.spec.ts diff --git a/src/collections/tests/hooks.spec.js b/src/collections/tests/hooks.spec.ts similarity index 100% rename from src/collections/tests/hooks.spec.js rename to src/collections/tests/hooks.spec.ts diff --git a/src/collections/tests/relationships.spec.js b/src/collections/tests/relationships.spec.ts similarity index 100% rename from src/collections/tests/relationships.spec.js rename to src/collections/tests/relationships.spec.ts diff --git a/src/collections/tests/uploads.spec.js b/src/collections/tests/uploads.spec.ts similarity index 100% rename from src/collections/tests/uploads.spec.js rename to src/collections/tests/uploads.spec.ts diff --git a/src/email/build.js b/src/email/build.ts similarity index 100% rename from src/email/build.js rename to src/email/build.ts diff --git a/src/email/mockHandler.js b/src/email/mockHandler.ts similarity index 100% rename from src/email/mockHandler.js rename to src/email/mockHandler.ts diff --git a/src/errors/APIError.js b/src/errors/APIError.ts similarity index 100% rename from src/errors/APIError.js rename to src/errors/APIError.ts diff --git a/src/errors/AuthenticationError.js b/src/errors/AuthenticationError.ts similarity index 100% rename from src/errors/AuthenticationError.js rename to src/errors/AuthenticationError.ts diff --git a/src/errors/DuplicateCollection.js b/src/errors/DuplicateCollection.ts similarity index 100% rename from src/errors/DuplicateCollection.js rename to src/errors/DuplicateCollection.ts diff --git a/src/errors/DuplicateGlobal.js b/src/errors/DuplicateGlobal.ts similarity index 100% rename from src/errors/DuplicateGlobal.js rename to src/errors/DuplicateGlobal.ts diff --git a/src/errors/ErrorDeletingFile.js b/src/errors/ErrorDeletingFile.ts similarity index 100% rename from src/errors/ErrorDeletingFile.js rename to src/errors/ErrorDeletingFile.ts diff --git a/src/errors/FileUploadError.js b/src/errors/FileUploadError.ts similarity index 100% rename from src/errors/FileUploadError.js rename to src/errors/FileUploadError.ts diff --git a/src/errors/Forbidden.js b/src/errors/Forbidden.ts similarity index 100% rename from src/errors/Forbidden.js rename to src/errors/Forbidden.ts diff --git a/src/errors/InvalidConfiguration.js b/src/errors/InvalidConfiguration.ts similarity index 100% rename from src/errors/InvalidConfiguration.js rename to src/errors/InvalidConfiguration.ts diff --git a/src/errors/InvalidFieldRelationship.js b/src/errors/InvalidFieldRelationship.ts similarity index 100% rename from src/errors/InvalidFieldRelationship.js rename to src/errors/InvalidFieldRelationship.ts diff --git a/src/errors/InvalidSchema.js b/src/errors/InvalidSchema.ts similarity index 100% rename from src/errors/InvalidSchema.js rename to src/errors/InvalidSchema.ts diff --git a/src/errors/LockedAuth.js b/src/errors/LockedAuth.ts similarity index 100% rename from src/errors/LockedAuth.js rename to src/errors/LockedAuth.ts diff --git a/src/errors/MissingCollectionLabel.js b/src/errors/MissingCollectionLabel.ts similarity index 100% rename from src/errors/MissingCollectionLabel.js rename to src/errors/MissingCollectionLabel.ts diff --git a/src/errors/MissingFieldInputOptions.js b/src/errors/MissingFieldInputOptions.ts similarity index 100% rename from src/errors/MissingFieldInputOptions.js rename to src/errors/MissingFieldInputOptions.ts diff --git a/src/errors/MissingFieldType.js b/src/errors/MissingFieldType.ts similarity index 100% rename from src/errors/MissingFieldType.js rename to src/errors/MissingFieldType.ts diff --git a/src/errors/MissingFile.js b/src/errors/MissingFile.ts similarity index 100% rename from src/errors/MissingFile.js rename to src/errors/MissingFile.ts diff --git a/src/errors/MissingGlobalLabel.js b/src/errors/MissingGlobalLabel.ts similarity index 100% rename from src/errors/MissingGlobalLabel.js rename to src/errors/MissingGlobalLabel.ts diff --git a/src/errors/NotFound.js b/src/errors/NotFound.ts similarity index 100% rename from src/errors/NotFound.js rename to src/errors/NotFound.ts diff --git a/src/errors/ValidationError.js b/src/errors/ValidationError.ts similarity index 100% rename from src/errors/ValidationError.js rename to src/errors/ValidationError.ts diff --git a/src/errors/errors.spec.js b/src/errors/errors.spec.ts similarity index 100% rename from src/errors/errors.spec.js rename to src/errors/errors.spec.ts diff --git a/src/errors/index.js b/src/errors/index.ts similarity index 100% rename from src/errors/index.js rename to src/errors/index.ts diff --git a/src/express/admin.js b/src/express/admin.ts similarity index 100% rename from src/express/admin.js rename to src/express/admin.ts diff --git a/src/express/middleware/authenticate.js b/src/express/middleware/authenticate.ts similarity index 100% rename from src/express/middleware/authenticate.js rename to src/express/middleware/authenticate.ts diff --git a/src/express/middleware/errorHandler.spec.js b/src/express/middleware/errorHandler.spec.ts similarity index 100% rename from src/express/middleware/errorHandler.spec.js rename to src/express/middleware/errorHandler.spec.ts diff --git a/src/express/middleware/errorHandler.js b/src/express/middleware/errorHandler.ts similarity index 100% rename from src/express/middleware/errorHandler.js rename to src/express/middleware/errorHandler.ts diff --git a/src/express/middleware/identifyAPI.js b/src/express/middleware/identifyAPI.ts similarity index 100% rename from src/express/middleware/identifyAPI.js rename to src/express/middleware/identifyAPI.ts diff --git a/src/express/middleware/index.js b/src/express/middleware/index.ts similarity index 100% rename from src/express/middleware/index.js rename to src/express/middleware/index.ts diff --git a/src/express/responses/formatError.js b/src/express/responses/formatError.ts similarity index 100% rename from src/express/responses/formatError.js rename to src/express/responses/formatError.ts diff --git a/src/express/responses/formatSuccess.js b/src/express/responses/formatSuccess.ts similarity index 100% rename from src/express/responses/formatSuccess.js rename to src/express/responses/formatSuccess.ts diff --git a/src/express/static.js b/src/express/static.ts similarity index 100% rename from src/express/static.js rename to src/express/static.ts diff --git a/src/fields/accessPromise.js b/src/fields/accessPromise.ts similarity index 100% rename from src/fields/accessPromise.js rename to src/fields/accessPromise.ts diff --git a/src/fields/baseFields/baseAPIKeyFields.js b/src/fields/baseFields/baseAPIKeyFields.ts similarity index 100% rename from src/fields/baseFields/baseAPIKeyFields.js rename to src/fields/baseFields/baseAPIKeyFields.ts diff --git a/src/fields/baseFields/baseAccountLockFields.js b/src/fields/baseFields/baseAccountLockFields.ts similarity index 100% rename from src/fields/baseFields/baseAccountLockFields.js rename to src/fields/baseFields/baseAccountLockFields.ts diff --git a/src/fields/baseFields/baseFields.js b/src/fields/baseFields/baseFields.ts similarity index 100% rename from src/fields/baseFields/baseFields.js rename to src/fields/baseFields/baseFields.ts diff --git a/src/fields/baseFields/baseImageUploadFields.js b/src/fields/baseFields/baseImageUploadFields.ts similarity index 100% rename from src/fields/baseFields/baseImageUploadFields.js rename to src/fields/baseFields/baseImageUploadFields.ts diff --git a/src/fields/baseFields/baseUploadFields.js b/src/fields/baseFields/baseUploadFields.ts similarity index 100% rename from src/fields/baseFields/baseUploadFields.js rename to src/fields/baseFields/baseUploadFields.ts diff --git a/src/fields/baseFields/baseVerificationFields.js b/src/fields/baseFields/baseVerificationFields.ts similarity index 100% rename from src/fields/baseFields/baseVerificationFields.js rename to src/fields/baseFields/baseVerificationFields.ts diff --git a/src/fields/hookPromise.js b/src/fields/hookPromise.ts similarity index 100% rename from src/fields/hookPromise.js rename to src/fields/hookPromise.ts diff --git a/src/fields/performFieldOperations.js b/src/fields/performFieldOperations.ts similarity index 100% rename from src/fields/performFieldOperations.js rename to src/fields/performFieldOperations.ts diff --git a/src/fields/relationshipPopulationPromise.js b/src/fields/relationshipPopulationPromise.ts similarity index 100% rename from src/fields/relationshipPopulationPromise.js rename to src/fields/relationshipPopulationPromise.ts diff --git a/src/fields/richText/defaultValue.js b/src/fields/richText/defaultValue.ts similarity index 100% rename from src/fields/richText/defaultValue.js rename to src/fields/richText/defaultValue.ts diff --git a/src/fields/sanitize.spec.js b/src/fields/sanitize.spec.ts similarity index 100% rename from src/fields/sanitize.spec.js rename to src/fields/sanitize.spec.ts diff --git a/src/fields/sanitize.js b/src/fields/sanitize.ts similarity index 100% rename from src/fields/sanitize.js rename to src/fields/sanitize.ts diff --git a/src/fields/sortableFieldTypes.js b/src/fields/sortableFieldTypes.ts similarity index 100% rename from src/fields/sortableFieldTypes.js rename to src/fields/sortableFieldTypes.ts diff --git a/src/fields/traverseFields.js b/src/fields/traverseFields.ts similarity index 100% rename from src/fields/traverseFields.js rename to src/fields/traverseFields.ts diff --git a/src/fields/validationPromise.js b/src/fields/validationPromise.ts similarity index 100% rename from src/fields/validationPromise.js rename to src/fields/validationPromise.ts diff --git a/src/fields/validations.js b/src/fields/validations.ts similarity index 100% rename from src/fields/validations.js rename to src/fields/validations.ts diff --git a/src/globals/buildModel.js b/src/globals/buildModel.ts similarity index 100% rename from src/globals/buildModel.js rename to src/globals/buildModel.ts diff --git a/src/globals/graphql/init.js b/src/globals/graphql/init.ts similarity index 100% rename from src/globals/graphql/init.js rename to src/globals/graphql/init.ts diff --git a/src/globals/graphql/resolvers/findOne.js b/src/globals/graphql/resolvers/findOne.ts similarity index 100% rename from src/globals/graphql/resolvers/findOne.js rename to src/globals/graphql/resolvers/findOne.ts diff --git a/src/globals/graphql/resolvers/index.js b/src/globals/graphql/resolvers/index.ts similarity index 100% rename from src/globals/graphql/resolvers/index.js rename to src/globals/graphql/resolvers/index.ts diff --git a/src/globals/graphql/resolvers/update.js b/src/globals/graphql/resolvers/update.ts similarity index 100% rename from src/globals/graphql/resolvers/update.js rename to src/globals/graphql/resolvers/update.ts diff --git a/src/globals/init.js b/src/globals/init.ts similarity index 100% rename from src/globals/init.js rename to src/globals/init.ts diff --git a/src/globals/operations/findOne.js b/src/globals/operations/findOne.ts similarity index 100% rename from src/globals/operations/findOne.js rename to src/globals/operations/findOne.ts diff --git a/src/globals/operations/local/findOne.js b/src/globals/operations/local/findOne.ts similarity index 100% rename from src/globals/operations/local/findOne.js rename to src/globals/operations/local/findOne.ts diff --git a/src/globals/operations/local/index.js b/src/globals/operations/local/index.ts similarity index 100% rename from src/globals/operations/local/index.js rename to src/globals/operations/local/index.ts diff --git a/src/globals/operations/local/update.js b/src/globals/operations/local/update.ts similarity index 100% rename from src/globals/operations/local/update.js rename to src/globals/operations/local/update.ts diff --git a/src/globals/operations/update.js b/src/globals/operations/update.ts similarity index 100% rename from src/globals/operations/update.js rename to src/globals/operations/update.ts diff --git a/src/globals/requestHandlers/findOne.js b/src/globals/requestHandlers/findOne.ts similarity index 100% rename from src/globals/requestHandlers/findOne.js rename to src/globals/requestHandlers/findOne.ts diff --git a/src/globals/requestHandlers/globals.spec.js b/src/globals/requestHandlers/globals.spec.ts similarity index 100% rename from src/globals/requestHandlers/globals.spec.js rename to src/globals/requestHandlers/globals.spec.ts diff --git a/src/globals/requestHandlers/update.js b/src/globals/requestHandlers/update.ts similarity index 100% rename from src/globals/requestHandlers/update.js rename to src/globals/requestHandlers/update.ts diff --git a/src/globals/sanitize.js b/src/globals/sanitize.ts similarity index 100% rename from src/globals/sanitize.js rename to src/globals/sanitize.ts diff --git a/src/graphql/errorHandler.js b/src/graphql/errorHandler.ts similarity index 100% rename from src/graphql/errorHandler.js rename to src/graphql/errorHandler.ts diff --git a/src/graphql/index.js b/src/graphql/index.ts similarity index 100% rename from src/graphql/index.js rename to src/graphql/index.ts diff --git a/src/graphql/initPlayground.js b/src/graphql/initPlayground.ts similarity index 100% rename from src/graphql/initPlayground.js rename to src/graphql/initPlayground.ts diff --git a/src/graphql/schema/buildBlockType.js b/src/graphql/schema/buildBlockType.ts similarity index 100% rename from src/graphql/schema/buildBlockType.js rename to src/graphql/schema/buildBlockType.ts diff --git a/src/graphql/schema/buildFallbackLocaleInputType.js b/src/graphql/schema/buildFallbackLocaleInputType.ts similarity index 100% rename from src/graphql/schema/buildFallbackLocaleInputType.js rename to src/graphql/schema/buildFallbackLocaleInputType.ts diff --git a/src/graphql/schema/buildLocaleInputType.js b/src/graphql/schema/buildLocaleInputType.ts similarity index 100% rename from src/graphql/schema/buildLocaleInputType.js rename to src/graphql/schema/buildLocaleInputType.ts diff --git a/src/graphql/schema/buildMutationInputType.js b/src/graphql/schema/buildMutationInputType.ts similarity index 100% rename from src/graphql/schema/buildMutationInputType.js rename to src/graphql/schema/buildMutationInputType.ts diff --git a/src/graphql/schema/buildObjectType.js b/src/graphql/schema/buildObjectType.ts similarity index 100% rename from src/graphql/schema/buildObjectType.js rename to src/graphql/schema/buildObjectType.ts diff --git a/src/graphql/schema/buildPaginatedListType.js b/src/graphql/schema/buildPaginatedListType.ts similarity index 100% rename from src/graphql/schema/buildPaginatedListType.js rename to src/graphql/schema/buildPaginatedListType.ts diff --git a/src/graphql/schema/buildPoliciesType.js b/src/graphql/schema/buildPoliciesType.ts similarity index 100% rename from src/graphql/schema/buildPoliciesType.js rename to src/graphql/schema/buildPoliciesType.ts diff --git a/src/graphql/schema/buildWhereInputType.js b/src/graphql/schema/buildWhereInputType.ts similarity index 100% rename from src/graphql/schema/buildWhereInputType.js rename to src/graphql/schema/buildWhereInputType.ts diff --git a/src/graphql/schema/withNullableType.js b/src/graphql/schema/withNullableType.ts similarity index 100% rename from src/graphql/schema/withNullableType.js rename to src/graphql/schema/withNullableType.ts diff --git a/src/graphql/schema/withOperators.js b/src/graphql/schema/withOperators.ts similarity index 100% rename from src/graphql/schema/withOperators.js rename to src/graphql/schema/withOperators.ts diff --git a/src/graphql/utilities/combineParentName.js b/src/graphql/utilities/combineParentName.ts similarity index 100% rename from src/graphql/utilities/combineParentName.js rename to src/graphql/utilities/combineParentName.ts diff --git a/src/graphql/utilities/formatName.js b/src/graphql/utilities/formatName.ts similarity index 100% rename from src/graphql/utilities/formatName.js rename to src/graphql/utilities/formatName.ts diff --git a/src/graphql/utilities/getCheckIfLocaleObject.js b/src/graphql/utilities/getCheckIfLocaleObject.ts similarity index 100% rename from src/graphql/utilities/getCheckIfLocaleObject.js rename to src/graphql/utilities/getCheckIfLocaleObject.ts diff --git a/src/graphql/utilities/uppercase.js b/src/graphql/utilities/uppercase.ts similarity index 100% rename from src/graphql/utilities/uppercase.js rename to src/graphql/utilities/uppercase.ts diff --git a/src/index.js b/src/index.js index 2555353d8..527fd35d6 100644 --- a/src/index.js +++ b/src/index.js @@ -1,227 +1,13 @@ -require('es6-promise').polyfill(); -require('isomorphic-fetch'); +const babelConfig = require('./babel.config'); -const express = require('express'); -const crypto = require('crypto'); -const logger = require('./utilities/logger')(); -const bindOperations = require('./init/bindOperations'); -const bindRequestHandlers = require('./init/bindRequestHandlers'); -const bindResolvers = require('./init/bindResolvers'); -const getConfig = require('./utilities/getConfig'); -const authenticate = require('./express/middleware/authenticate'); -const connectMongoose = require('./mongoose/connect'); -const expressMiddleware = require('./express/middleware'); -const initAdmin = require('./express/admin'); -const initAuth = require('./auth/init'); -const initCollections = require('./collections/init'); -const initGlobals = require('./globals/init'); -const initGraphQLPlayground = require('./graphql/initPlayground'); -const initStatic = require('./express/static'); -const GraphQL = require('./graphql'); -const sanitizeConfig = require('./utilities/sanitizeConfig'); -const buildEmail = require('./email/build'); -const identifyAPI = require('./express/middleware/identifyAPI'); -const errorHandler = require('./express/middleware/errorHandler'); -const performFieldOperations = require('./fields/performFieldOperations'); -const localOperations = require('./collections/operations/local'); -const localGlobalOperations = require('./globals/operations/local'); -const { encrypt, decrypt } = require('./auth/crypto'); +require('@babel/register')({ + ...babelConfig, + ignore: [ + /node_modules[\\/](?!@payloadcms[\\/]payload[\\/]src[\\/]admin|@payloadcms[\\/]payload[\\/]components|@payloadcms[\\/]payload[\\/]hooks).*/, + ], + extensions: ['.js', '.jsx', '.ts', '.tsx'], +}); -class Payload { - init(options) { - logger.info('Starting Payload...'); +const payload = require('./payload.ts'); - if (!options.secret) { - throw new Error('Error: missing secret key. A secret key is needed to secure Payload.'); - } - - if (!options.mongoURL) { - throw new Error('Error: missing MongoDB connection URL.'); - } - - const config = getConfig(options); - const email = { ...(config.email || {}), ...(options.email || {}) }; - - this.config = sanitizeConfig({ - ...config, - email, - license: options.license, - secret: crypto.createHash('sha256').update(options.secret).digest('hex').slice(0, 32), - mongoURL: options.mongoURL, - local: options.local, - }); - - if (typeof this.config.paths === 'undefined') this.config.paths = {}; - - this.collections = {}; - - bindOperations(this); - bindRequestHandlers(this); - bindResolvers(this); - - this.initAuth = initAuth.bind(this); - this.encrypt = encrypt.bind(this); - this.decrypt = decrypt.bind(this); - this.initCollections = initCollections.bind(this); - this.initGlobals = initGlobals.bind(this); - this.initGraphQLPlayground = initGraphQLPlayground.bind(this); - this.buildEmail = buildEmail.bind(this); - this.sendEmail = this.sendEmail.bind(this); - this.getMockEmailCredentials = this.getMockEmailCredentials.bind(this); - this.initStatic = initStatic.bind(this); - this.initAdmin = initAdmin.bind(this); - this.performFieldOperations = performFieldOperations.bind(this); - - this.create = this.create.bind(this); - this.find = this.find.bind(this); - this.findGlobal = this.findGlobal.bind(this); - this.updateGlobal = this.updateGlobal.bind(this); - this.findByID = this.findByID.bind(this); - this.update = this.update.bind(this); - this.login = this.login.bind(this); - this.forgotPassword = this.forgotPassword.bind(this); - this.resetPassword = this.resetPassword.bind(this); - this.unlock = this.unlock.bind(this); - this.verifyEmail = this.verifyEmail.bind(this); - - // If not initializing locally, scaffold router - if (!this.config.local) { - this.router = express.Router(); - this.router.use(...expressMiddleware(this)); - this.initAuth(); - } - - // Configure email service - this.email = this.buildEmail(); - - // Initialize collections & globals - this.initCollections(); - this.initGlobals(); - - // Connect to database - connectMongoose(this.config.mongoURL); - - options.express.use((req, res, next) => { - req.payload = this; - next(); - }); - - // If not initializing locally, set up HTTP routing - if (!this.config.local) { - this.express = options.express; - if (this.config.rateLimit && this.config.rateLimit.trustProxy) this.express.set('trust proxy', 1); - - this.initAdmin(); - - this.router.get('/access', this.requestHandlers.collections.auth.access); - - const graphQLHandler = new GraphQL(this); - - this.router.use( - this.config.routes.graphQL, - identifyAPI('GraphQL'), - (req, res) => graphQLHandler.init(req, res)(req, res), - ); - - this.initGraphQLPlayground(); - - // Bind router to API - this.express.use(this.config.routes.api, this.router); - - // Enable static routes for all collections permitting upload - this.initStatic(); - - this.errorHandler = errorHandler(this.config); - this.router.use(this.errorHandler); - - this.authenticate = authenticate(this.config); - } - - if (typeof options.onInit === 'function') options.onInit(); - } - - async sendEmail(message) { - const email = await this.email; - const result = email.transport.sendMail(message); - return result; - } - - async getMockEmailCredentials() { - const email = await this.email; - return email.account; - } - - async create(options) { - let { create } = localOperations; - create = create.bind(this); - return create(options); - } - - async find(options) { - let { find } = localOperations; - find = find.bind(this); - return find(options); - } - - async findGlobal(options) { - let { findOne } = localGlobalOperations; - findOne = findOne.bind(this); - return findOne(options); - } - - async updateGlobal(options) { - let { update } = localGlobalOperations; - update = update.bind(this); - return update(options); - } - - async findByID(options) { - let { findByID } = localOperations; - findByID = findByID.bind(this); - return findByID(options); - } - - async update(options) { - let { update } = localOperations; - update = update.bind(this); - return update(options); - } - - async delete(options) { - let { delete: deleteOperation } = localOperations; - deleteOperation = deleteOperation.bind(this); - return deleteOperation(options); - } - - async login(options) { - let { login } = localOperations.auth; - login = login.bind(this); - return login(options); - } - - async forgotPassword(options) { - let { forgotPassword } = localOperations.auth; - forgotPassword = forgotPassword.bind(this); - return forgotPassword(options); - } - - async resetPassword(options) { - let { resetPassword } = localOperations.auth; - resetPassword = resetPassword.bind(this); - return resetPassword(options); - } - - async unlock(options) { - let { unlock } = localOperations.auth; - unlock = unlock.bind(this); - return unlock(options); - } - - async verifyEmail(options) { - let { verifyEmail } = localOperations.auth; - verifyEmail = verifyEmail.bind(this); - return verifyEmail(options); - } -} - -module.exports = new Payload(); +module.exports = payload; diff --git a/src/init/bindOperations.js b/src/init/bindOperations.ts similarity index 100% rename from src/init/bindOperations.js rename to src/init/bindOperations.ts diff --git a/src/init/bindRequestHandlers.js b/src/init/bindRequestHandlers.ts similarity index 100% rename from src/init/bindRequestHandlers.js rename to src/init/bindRequestHandlers.ts diff --git a/src/init/bindResolvers.js b/src/init/bindResolvers.ts similarity index 100% rename from src/init/bindResolvers.js rename to src/init/bindResolvers.ts diff --git a/src/localization/formatRefPathLocales.js b/src/localization/formatRefPathLocales.ts similarity index 100% rename from src/localization/formatRefPathLocales.js rename to src/localization/formatRefPathLocales.ts diff --git a/src/localization/middleware.js b/src/localization/middleware.ts similarity index 100% rename from src/localization/middleware.js rename to src/localization/middleware.ts diff --git a/src/localization/plugin.js b/src/localization/plugin.ts similarity index 100% rename from src/localization/plugin.js rename to src/localization/plugin.ts diff --git a/src/localization/sanitizeFallbackLocale.js b/src/localization/sanitizeFallbackLocale.ts similarity index 100% rename from src/localization/sanitizeFallbackLocale.js rename to src/localization/sanitizeFallbackLocale.ts diff --git a/src/mocks/emptyModule.js b/src/mocks/emptyModule.ts similarity index 100% rename from src/mocks/emptyModule.js rename to src/mocks/emptyModule.ts diff --git a/src/mocks/fileMock.js b/src/mocks/fileMock.ts similarity index 100% rename from src/mocks/fileMock.js rename to src/mocks/fileMock.ts diff --git a/src/mongoose/buildQuery.js b/src/mongoose/buildQuery.ts similarity index 100% rename from src/mongoose/buildQuery.js rename to src/mongoose/buildQuery.ts diff --git a/src/mongoose/buildSchema.js b/src/mongoose/buildSchema.ts similarity index 100% rename from src/mongoose/buildSchema.js rename to src/mongoose/buildSchema.ts diff --git a/src/mongoose/connect.js b/src/mongoose/connect.ts similarity index 100% rename from src/mongoose/connect.js rename to src/mongoose/connect.ts diff --git a/src/payload.ts b/src/payload.ts new file mode 100644 index 000000000..2555353d8 --- /dev/null +++ b/src/payload.ts @@ -0,0 +1,227 @@ +require('es6-promise').polyfill(); +require('isomorphic-fetch'); + +const express = require('express'); +const crypto = require('crypto'); +const logger = require('./utilities/logger')(); +const bindOperations = require('./init/bindOperations'); +const bindRequestHandlers = require('./init/bindRequestHandlers'); +const bindResolvers = require('./init/bindResolvers'); +const getConfig = require('./utilities/getConfig'); +const authenticate = require('./express/middleware/authenticate'); +const connectMongoose = require('./mongoose/connect'); +const expressMiddleware = require('./express/middleware'); +const initAdmin = require('./express/admin'); +const initAuth = require('./auth/init'); +const initCollections = require('./collections/init'); +const initGlobals = require('./globals/init'); +const initGraphQLPlayground = require('./graphql/initPlayground'); +const initStatic = require('./express/static'); +const GraphQL = require('./graphql'); +const sanitizeConfig = require('./utilities/sanitizeConfig'); +const buildEmail = require('./email/build'); +const identifyAPI = require('./express/middleware/identifyAPI'); +const errorHandler = require('./express/middleware/errorHandler'); +const performFieldOperations = require('./fields/performFieldOperations'); +const localOperations = require('./collections/operations/local'); +const localGlobalOperations = require('./globals/operations/local'); +const { encrypt, decrypt } = require('./auth/crypto'); + +class Payload { + init(options) { + logger.info('Starting Payload...'); + + if (!options.secret) { + throw new Error('Error: missing secret key. A secret key is needed to secure Payload.'); + } + + if (!options.mongoURL) { + throw new Error('Error: missing MongoDB connection URL.'); + } + + const config = getConfig(options); + const email = { ...(config.email || {}), ...(options.email || {}) }; + + this.config = sanitizeConfig({ + ...config, + email, + license: options.license, + secret: crypto.createHash('sha256').update(options.secret).digest('hex').slice(0, 32), + mongoURL: options.mongoURL, + local: options.local, + }); + + if (typeof this.config.paths === 'undefined') this.config.paths = {}; + + this.collections = {}; + + bindOperations(this); + bindRequestHandlers(this); + bindResolvers(this); + + this.initAuth = initAuth.bind(this); + this.encrypt = encrypt.bind(this); + this.decrypt = decrypt.bind(this); + this.initCollections = initCollections.bind(this); + this.initGlobals = initGlobals.bind(this); + this.initGraphQLPlayground = initGraphQLPlayground.bind(this); + this.buildEmail = buildEmail.bind(this); + this.sendEmail = this.sendEmail.bind(this); + this.getMockEmailCredentials = this.getMockEmailCredentials.bind(this); + this.initStatic = initStatic.bind(this); + this.initAdmin = initAdmin.bind(this); + this.performFieldOperations = performFieldOperations.bind(this); + + this.create = this.create.bind(this); + this.find = this.find.bind(this); + this.findGlobal = this.findGlobal.bind(this); + this.updateGlobal = this.updateGlobal.bind(this); + this.findByID = this.findByID.bind(this); + this.update = this.update.bind(this); + this.login = this.login.bind(this); + this.forgotPassword = this.forgotPassword.bind(this); + this.resetPassword = this.resetPassword.bind(this); + this.unlock = this.unlock.bind(this); + this.verifyEmail = this.verifyEmail.bind(this); + + // If not initializing locally, scaffold router + if (!this.config.local) { + this.router = express.Router(); + this.router.use(...expressMiddleware(this)); + this.initAuth(); + } + + // Configure email service + this.email = this.buildEmail(); + + // Initialize collections & globals + this.initCollections(); + this.initGlobals(); + + // Connect to database + connectMongoose(this.config.mongoURL); + + options.express.use((req, res, next) => { + req.payload = this; + next(); + }); + + // If not initializing locally, set up HTTP routing + if (!this.config.local) { + this.express = options.express; + if (this.config.rateLimit && this.config.rateLimit.trustProxy) this.express.set('trust proxy', 1); + + this.initAdmin(); + + this.router.get('/access', this.requestHandlers.collections.auth.access); + + const graphQLHandler = new GraphQL(this); + + this.router.use( + this.config.routes.graphQL, + identifyAPI('GraphQL'), + (req, res) => graphQLHandler.init(req, res)(req, res), + ); + + this.initGraphQLPlayground(); + + // Bind router to API + this.express.use(this.config.routes.api, this.router); + + // Enable static routes for all collections permitting upload + this.initStatic(); + + this.errorHandler = errorHandler(this.config); + this.router.use(this.errorHandler); + + this.authenticate = authenticate(this.config); + } + + if (typeof options.onInit === 'function') options.onInit(); + } + + async sendEmail(message) { + const email = await this.email; + const result = email.transport.sendMail(message); + return result; + } + + async getMockEmailCredentials() { + const email = await this.email; + return email.account; + } + + async create(options) { + let { create } = localOperations; + create = create.bind(this); + return create(options); + } + + async find(options) { + let { find } = localOperations; + find = find.bind(this); + return find(options); + } + + async findGlobal(options) { + let { findOne } = localGlobalOperations; + findOne = findOne.bind(this); + return findOne(options); + } + + async updateGlobal(options) { + let { update } = localGlobalOperations; + update = update.bind(this); + return update(options); + } + + async findByID(options) { + let { findByID } = localOperations; + findByID = findByID.bind(this); + return findByID(options); + } + + async update(options) { + let { update } = localOperations; + update = update.bind(this); + return update(options); + } + + async delete(options) { + let { delete: deleteOperation } = localOperations; + deleteOperation = deleteOperation.bind(this); + return deleteOperation(options); + } + + async login(options) { + let { login } = localOperations.auth; + login = login.bind(this); + return login(options); + } + + async forgotPassword(options) { + let { forgotPassword } = localOperations.auth; + forgotPassword = forgotPassword.bind(this); + return forgotPassword(options); + } + + async resetPassword(options) { + let { resetPassword } = localOperations.auth; + resetPassword = resetPassword.bind(this); + return resetPassword(options); + } + + async unlock(options) { + let { unlock } = localOperations.auth; + unlock = unlock.bind(this); + return unlock(options); + } + + async verifyEmail(options) { + let { verifyEmail } = localOperations.auth; + verifyEmail = verifyEmail.bind(this); + return verifyEmail(options); + } +} + +module.exports = new Payload(); diff --git a/src/schema/validateSchema.js b/src/schema/validateSchema.ts similarity index 100% rename from src/schema/validateSchema.js rename to src/schema/validateSchema.ts diff --git a/src/uploads/fileExists.js b/src/uploads/fileExists.ts similarity index 100% rename from src/uploads/fileExists.js rename to src/uploads/fileExists.ts diff --git a/src/uploads/formatFilesize.js b/src/uploads/formatFilesize.ts similarity index 100% rename from src/uploads/formatFilesize.js rename to src/uploads/formatFilesize.ts diff --git a/src/uploads/getImageSize.js b/src/uploads/getImageSize.ts similarity index 100% rename from src/uploads/getImageSize.js rename to src/uploads/getImageSize.ts diff --git a/src/uploads/getSafeFilename.js b/src/uploads/getSafeFilename.ts similarity index 100% rename from src/uploads/getSafeFilename.js rename to src/uploads/getSafeFilename.ts diff --git a/src/uploads/getThumbnail.js b/src/uploads/getThumbnail.ts similarity index 100% rename from src/uploads/getThumbnail.js rename to src/uploads/getThumbnail.ts diff --git a/src/uploads/imageMIMETypes.js b/src/uploads/imageMIMETypes.ts similarity index 100% rename from src/uploads/imageMIMETypes.js rename to src/uploads/imageMIMETypes.ts diff --git a/src/uploads/imageResizer.js b/src/uploads/imageResizer.ts similarity index 100% rename from src/uploads/imageResizer.js rename to src/uploads/imageResizer.ts diff --git a/src/utilities/checkDuplicateCollections.js b/src/utilities/checkDuplicateCollections.ts similarity index 100% rename from src/utilities/checkDuplicateCollections.js rename to src/utilities/checkDuplicateCollections.ts diff --git a/src/utilities/combineMerge.js b/src/utilities/combineMerge.ts similarity index 100% rename from src/utilities/combineMerge.js rename to src/utilities/combineMerge.ts diff --git a/src/utilities/convertData.js b/src/utilities/convertData.ts similarity index 100% rename from src/utilities/convertData.js rename to src/utilities/convertData.ts diff --git a/src/utilities/deepCopyObject.js b/src/utilities/deepCopyObject.ts similarity index 100% rename from src/utilities/deepCopyObject.js rename to src/utilities/deepCopyObject.ts diff --git a/src/utilities/findConfig.js b/src/utilities/findConfig.ts similarity index 100% rename from src/utilities/findConfig.js rename to src/utilities/findConfig.ts diff --git a/src/utilities/flattenTopLevelFields.js b/src/utilities/flattenTopLevelFields.ts similarity index 100% rename from src/utilities/flattenTopLevelFields.js rename to src/utilities/flattenTopLevelFields.ts diff --git a/src/utilities/formatLabels.spec.js b/src/utilities/formatLabels.spec.ts similarity index 100% rename from src/utilities/formatLabels.spec.js rename to src/utilities/formatLabels.spec.ts diff --git a/src/utilities/formatLabels.js b/src/utilities/formatLabels.ts similarity index 100% rename from src/utilities/formatLabels.js rename to src/utilities/formatLabels.ts diff --git a/src/utilities/getCSSVariable.js b/src/utilities/getCSSVariable.js deleted file mode 100644 index 2cc429266..000000000 --- a/src/utilities/getCSSVariable.js +++ /dev/null @@ -1,2 +0,0 @@ -const getCSSVariable = (variable) => getComputedStyle(document.documentElement).getPropertyValue(`--${variable}`); -module.exports = getCSSVariable; diff --git a/src/utilities/getCSSVariable.ts b/src/utilities/getCSSVariable.ts new file mode 100644 index 000000000..0d496472d --- /dev/null +++ b/src/utilities/getCSSVariable.ts @@ -0,0 +1 @@ +export default (variable) => getComputedStyle(document.documentElement).getPropertyValue(`--${variable}`); diff --git a/src/utilities/getConfig.js b/src/utilities/getConfig.ts similarity index 66% rename from src/utilities/getConfig.js rename to src/utilities/getConfig.ts index 990277af5..9a04cc8ae 100644 --- a/src/utilities/getConfig.js +++ b/src/utilities/getConfig.ts @@ -8,15 +8,6 @@ const babelConfig = require('../../babel.config'); require('ignore-styles'); -if (process.env.NODE_ENV !== 'test') { - require('@babel/register')({ - ...babelConfig, - ignore: [ - /node_modules[\\/](?!@payloadcms[\\/]payload[\\/]src[\\/]admin|@payloadcms[\\/]payload[\\/]components|@payloadcms[\\/]payload[\\/]hooks).*/, - ], - }); -} - const getConfig = () => { const publicConfig = require(configPath); return { diff --git a/src/utilities/getCookieExpiration.js b/src/utilities/getCookieExpiration.ts similarity index 100% rename from src/utilities/getCookieExpiration.js rename to src/utilities/getCookieExpiration.ts diff --git a/src/utilities/logger.js b/src/utilities/logger.ts similarity index 100% rename from src/utilities/logger.js rename to src/utilities/logger.ts diff --git a/src/utilities/overwriteMerge.js b/src/utilities/overwriteMerge.ts similarity index 100% rename from src/utilities/overwriteMerge.js rename to src/utilities/overwriteMerge.ts diff --git a/src/utilities/parseCookies.js b/src/utilities/parseCookies.ts similarity index 100% rename from src/utilities/parseCookies.js rename to src/utilities/parseCookies.ts diff --git a/src/utilities/removeInternalFields.js b/src/utilities/removeInternalFields.ts similarity index 100% rename from src/utilities/removeInternalFields.js rename to src/utilities/removeInternalFields.ts diff --git a/src/utilities/sanitizeConfig.js b/src/utilities/sanitizeConfig.ts similarity index 95% rename from src/utilities/sanitizeConfig.js rename to src/utilities/sanitizeConfig.ts index 97f79d942..b394f51f4 100644 --- a/src/utilities/sanitizeConfig.js +++ b/src/utilities/sanitizeConfig.ts @@ -37,10 +37,7 @@ const sanitizeConfig = (config) => { if (!sanitizedConfig.admin.user) { sanitizedConfig.admin.user = 'users'; sanitizedConfig.collections.push(defaultUser); - } else if (!sanitizedConfig.collections - .filter((c) => c.auth !== undefined) - .map((c) => c.slug) - .includes(sanitizedConfig.admin.user)) { + } else if (!sanitizedConfig.collections.find((c) => c.slug === sanitizedConfig.admin.user)) { throw new InvalidConfiguration(`${sanitizedConfig.admin.user} is not a valid admin user collection`); } diff --git a/src/utilities/toKebabCase.js b/src/utilities/toKebabCase.ts similarity index 100% rename from src/utilities/toKebabCase.js rename to src/utilities/toKebabCase.ts diff --git a/src/utilities/wait.js b/src/utilities/wait.ts similarity index 100% rename from src/utilities/wait.js rename to src/utilities/wait.ts diff --git a/src/webpack/components.config.js b/src/webpack/components.config.ts similarity index 100% rename from src/webpack/components.config.js rename to src/webpack/components.config.ts diff --git a/src/webpack/getStyleLoaders.js b/src/webpack/getStyleLoaders.ts similarity index 100% rename from src/webpack/getStyleLoaders.js rename to src/webpack/getStyleLoaders.ts diff --git a/src/webpack/getWebpackDevConfig.js b/src/webpack/getWebpackDevConfig.ts similarity index 58% rename from src/webpack/getWebpackDevConfig.js rename to src/webpack/getWebpackDevConfig.ts index 95ca7eabe..6ec8f227a 100644 --- a/src/webpack/getWebpackDevConfig.js +++ b/src/webpack/getWebpackDevConfig.ts @@ -10,26 +10,28 @@ module.exports = (config) => { let webpackConfig = { entry: { main: [ - 'webpack-hot-middleware/client', - path.resolve(__dirname, '../admin/index.js'), + "webpack-hot-middleware/client", + path.resolve(__dirname, "../admin/index.tsx"), ], }, output: { - path: '/', + path: "/", publicPath: config.routes.admin, - filename: '[name].js', + filename: "[name].js", + }, + devtool: "inline-cheap-source-map", + mode: "development", + resolveLoader: { + modules: ["node_modules", path.join(__dirname, "../../node_modules")], }, - devtool: 'inline-cheap-source-map', - mode: 'development', - resolveLoader: { modules: ['node_modules', path.join(__dirname, '../../node_modules')] }, module: { rules: [ { - test: /\.js$/, + test: /\.(t|j)sx?$/, exclude: /node_modules[\\/](?!(@payloadcms[\\/]payload)[\\/]).*/, use: [ { - loader: 'babel-loader', + loader: "babel-loader", options: babelConfig, }, ], @@ -38,35 +40,33 @@ module.exports = (config) => { oneOf: [ { test: [/\.bmp$/, /\.gif$/, /\.jpe?g$/, /\.png$/], - loader: require.resolve('url-loader'), + loader: require.resolve("url-loader"), options: { limit: 10000, - name: 'static/media/[name].[hash:8].[ext]', + name: "static/media/[name].[hash:8].[ext]", }, }, { test: /\.(sa|sc|c)ss$/, use: [ MiniCSSExtractPlugin.loader, - 'css-loader', + "css-loader", { - loader: 'postcss-loader', + loader: "postcss-loader", options: { postcssOptions: { - plugins: [ - 'postcss-preset-env', - ], + plugins: ["postcss-preset-env"], }, }, }, - 'sass-loader', + "sass-loader", ], }, { - exclude: [/\.(js|jsx|mjs)$/, /\.html$/, /\.json$/], - loader: require.resolve('file-loader'), + exclude: [/\.((t|j)s|(t|j)sx|mjs)$/, /\.html$/, /\.json$/], + loader: require.resolve("file-loader"), options: { - name: 'static/media/[name].[hash:8].[ext]', + name: "static/media/[name].[hash:8].[ext]", }, }, ], @@ -74,22 +74,29 @@ module.exports = (config) => { ], }, resolve: { - modules: ['node_modules', path.resolve(__dirname, '../../node_modules')], + modules: ["node_modules", path.resolve(__dirname, "../../node_modules")], alias: { - 'payload/unsanitizedConfig': config.paths.config, - '@payloadcms/payload$': mockModulePath, + "payload/unsanitizedConfig": config.paths.config, + "@payloadcms/payload$": mockModulePath, }, + extensions: [".ts", ".tsx", ".js", ".json"], }, plugins: [ - new webpack.DefinePlugin(Object.entries(config.publicENV).reduce((values, [key, val]) => ({ - ...values, - [`process.env.${key}`]: `'${val}'`, - }), {})), + new webpack.DefinePlugin( + Object.entries(config.publicENV).reduce( + (values, [key, val]) => ({ + ...values, + [`process.env.${key}`]: `'${val}'`, + }), + {} + ) + ), new HtmlWebpackPlugin({ - template: config.admin && config.admin.indexHTML - ? path.join(config.paths.configDir, config.admin.indexHTML) - : path.resolve(__dirname, '../admin/index.html'), - filename: './index.html', + template: + config.admin && config.admin.indexHTML + ? path.join(config.paths.configDir, config.admin.indexHTML) + : path.resolve(__dirname, "../admin/index.html"), + filename: "./index.html", }), new webpack.HotModuleReplacementPlugin(), new MiniCSSExtractPlugin({ diff --git a/src/webpack/getWebpackProdConfig.js b/src/webpack/getWebpackProdConfig.ts similarity index 100% rename from src/webpack/getWebpackProdConfig.js rename to src/webpack/getWebpackProdConfig.ts diff --git a/src/webpack/init.js b/src/webpack/init.ts similarity index 100% rename from src/webpack/init.js rename to src/webpack/init.ts diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 000000000..77b232539 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,80 @@ +{ + "compilerOptions": { + /* Visit https://aka.ms/tsconfig.json to read more about this file */ + /* Basic Options */ + // "incremental": true, /* Enable incremental compilation */ + "target": "esnext", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */ + "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */ + // "lib": [], /* Specify library files to be included in the compilation. */ + "allowJs": true, /* Allow javascript files to be compiled. */ + "checkJs": false, /* Report errors in .js files. */ + "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */ + "declaration": true, /* Generates corresponding '.d.ts' file. */ + // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */ + // "sourceMap": true, /* Generates corresponding '.map' file. */ + // "outFile": "./", /* Concatenate and emit output to single file. */ + "outDir": "./dist", /* Redirect output structure to the directory. */ + "rootDir": "./src", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ + // "composite": true, /* Enable project compilation */ + // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */ + // "removeComments": true, /* Do not emit comments to output. */ + "noEmit": false, /* Do not emit outputs. */ + // "importHelpers": true, /* Import emit helpers from 'tslib'. */ + // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ + // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ + /* Strict Type-Checking Options */ + "strict": false, /* Enable all strict type-checking options. */ + // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */ + // "strictNullChecks": true, /* Enable strict null checks. */ + // "strictFunctionTypes": true, /* Enable strict checking of function types. */ + // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */ + // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */ + // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */ + // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */ + /* Additional Checks */ + // "noUnusedLocals": true, /* Report errors on unused locals. */ + // "noUnusedParameters": true, /* Report errors on unused parameters. */ + // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ + // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ + /* Module Resolution Options */ + "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ + // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ + // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ + // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ + "typeRoots": [ + "types" + ], /* List of folders to include type definitions from. */ + "types": [ + "node", + "jest", + ], /* Type declaration files to be included in compilation. */ + // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ + "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ + // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ + // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ + "resolveJsonModule": true, + /* Source Map Options */ + // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */ + // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ + "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */ + // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ + /* Experimental Options */ + // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ + // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ + /* Advanced Options */ + "skipLibCheck": true, /* Skip type checking of declaration files. */ + "forceConsistentCasingInFileNames": true, /* Disallow inconsistently-cased references to the same file. */ + }, + "include": [ + "src/" + ], + "exclude": [ + "demo", + "dist/", + "admin/", + "src/tests", + "src/tests/*", + // "**/*.d.ts", + // "node_modules/" + ] +} diff --git a/types/index.d.ts b/types/index.d.ts deleted file mode 100644 index 85ec54d9a..000000000 --- a/types/index.d.ts +++ /dev/null @@ -1,226 +0,0 @@ -declare module "@payloadcms/payload" { - export interface PayloadEmailOptions { - transport: 'mock'; // TODO: import nodemailer Mail type - fromName: string; - fromAddress: string; - } - - export interface PayloadInitOptions { - express?: any, - mongoURL: string, - secret: string, - email?: PayloadEmailOptions, - onInit?: () => void, - } - - export interface Document { - id: string; - } - - export interface CreateOptions { - collection: string; - data: any; - } - - export interface FindOptions { - collection: string; - where?: { [key: string]: any }; - } - - export interface FindResponse { - docs: Document[]; - totalDocs: number; - limit: number; - totalPages: number; - page: number; - pagingCounter: number; - hasPrevPage: boolean; - hasNextPage: boolean; - prevPage: number | null; - nextPage: number | null; - } - - export interface FindGlobalOptions { - global: string; - } - export interface UpdateGlobalOptions { - global: string; - data: any; - } - - export interface FindByIDOptions { - collection: string; - id: string; - } - export interface UpdateOptions { - collection: string; - id: string; - data: any; - } - - export interface DeleteOptions { - collection: string; - id: string; - } - - export interface ForgotPasswordOptions { - collection: string; - generateEmailHTML?: (token: string) => string; - expiration: Date; - data: any; - } - - export interface SendEmailOptions { - from: string; - to: string; - subject: string; - html: string; - } - - export interface MockEmailCredentials { - user: string; - pass: string; - web: string; - } - - class PayloadInstance { - init(options: PayloadInitOptions): void; - sendEmail(message: SendEmailOptions): void; - getMockEmailCredentials(): MockEmailCredentials; - create(options: CreateOptions): Promise; - find(options: FindOptions): Promise; - findGlobal(options: FindGlobalOptions): Promise; - updateGlobal(options: UpdateGlobalOptions): Promise; - findByID(options: FindByIDOptions): Promise; - update(options: UpdateOptions): Promise; - delete(options: DeleteOptions): Promise; - login(options: any): Promise; // TODO: find example of this to type - forgotPassword(options: ForgotPasswordOptions): Promise; - resetPassword(options: any): Promise; - } - - var payload: PayloadInstance; - export default payload; -} - -declare module "@payloadcms/payload/types" { - - export interface PayloadField { - name: string; - label: string; - type: 'number' | 'text' | 'email' | 'textarea' | 'richText' | 'code' | 'radio' | 'checkbox' | 'date' | 'upload' | 'relationship' | 'row' | 'array' | 'group' | 'select' | 'blocks'; - localized?: boolean; - fields?: PayloadField[]; - admin?: - { - position?: string; - width?: string; - style?: Object; - } - } - - export type PayloadCollectionHook = (...args: any[]) => any | void; - - export interface PayloadCollection { - slug: string; - labels: { - singular: string; - plural: string; - }, - admin?: { - useAsTitle?: string; - defaultColumns?: string[]; - components?: any; - }, - hooks?: { - beforeValidate?: Array; - beforeChange?: Array; - afterChange?: Array; - beforeRead?: Array; - afterRead?: Array; - beforeDelete?: Array; - afterDelete?: Array; - } - access?: { - create?: (args?: any) => boolean; - read?: (args?: any) => boolean; - update?: (args?: any) => boolean; - delete?: (args?: any) => boolean; - admin?: (args?: any) => boolean; - }, - auth?: { - tokenExpiration?: number; - verify?: boolean | { generateEmailHTML: string, generateEmailSubject: string }; - maxLoginAttempts?: number; - lockTime?: number; - useAPIKey?: boolean; - cookies?: { - secure?: boolean; - sameSite?: string; - domain?: string | undefined; - } | boolean, - } - fields: PayloadField[]; - } - - export interface PayloadGlobal { - slug: string; - label: string; - access?: { - create?: (args?: any) => boolean; - read?: (args?: any) => boolean; - update?: (args?: any) => boolean; - delete?: (args?: any) => boolean; - admin?: (args?: any) => boolean; - }; - fields: PayloadField[]; - } - - export interface PayloadConfig { - admin?: { - user?: string; - meta?: { - titleSuffix?: string; - }, - disable?: boolean; - }; - collections?: PayloadCollection[]; - globals?: PayloadGlobal[]; - routes?: { - api?: string; - admin?: string; - graphQL?: string; - graphQLPlayground?: string; - }; - defaultDepth?: number, - rateLimit?: { - window?: number; - max?: number; - }, - localization?: { - locales: string[] - }; - defaultLocale?: string; - fallback?: boolean; - graphQL?: { - mutations?: Object; - queries?: Object; - maxComplexity?: number; - disablePlaygroundInProduction?: boolean; - }; - hooks?: { - afterError?: () => void; - }; - webpack?: (config: any) => any; - } -} - -declare module "@payloadcms/payload/src/utilities/sanitizeConfig" { - import { PayloadConfig } from '@payloadcms/payload/types'; - - export type SanitizeConfig = (config: PayloadConfig) => PayloadConfig; - - const sanitizeConfig: SanitizeConfig; - - export default sanitizeConfig; -} diff --git a/yarn.lock b/yarn.lock index 386cb14ba..891cad2e6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -489,6 +489,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-syntax-typescript@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.12.1.tgz#460ba9d77077653803c3dd2e673f76d66b4029e5" + integrity sha512-UZNEcCY+4Dp9yYRCAHrHDU+9ZXLYaY9MgBXSRLkB9WjYFRR6quJBumfVrEkUxrePPBwFcpWfNKXqVRQQtm7mMA== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-transform-arrow-functions@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.12.1.tgz#8083ffc86ac8e777fbe24b5967c4b2521f3cb2b3" @@ -782,6 +789,15 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-typescript@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.12.1.tgz#d92cc0af504d510e26a754a7dbc2e5c8cd9c7ab4" + integrity sha512-VrsBByqAIntM+EYMqSm59SiMEf7qkmI9dqMt6RbD/wlwueWmYcI0FFK5Fj47pP6DRZm+3teXjosKlwcZJ5lIMw== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.12.1" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-typescript" "^7.12.1" + "@babel/plugin-transform-unicode-escapes@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.1.tgz#5232b9f81ccb07070b7c3c36c67a1b78f1845709" @@ -893,6 +909,14 @@ "@babel/plugin-transform-react-jsx-source" "^7.12.1" "@babel/plugin-transform-react-pure-annotations" "^7.12.1" +"@babel/preset-typescript@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.12.1.tgz#86480b483bb97f75036e8864fe404cc782cc311b" + integrity sha512-hNK/DhmoJPsksdHuI/RVrcEws7GN5eamhi28JkO52MqIxU8Z0QpmiSOQxZHWOHV7I3P4UjHV97ay4TcamMA6Kw== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-transform-typescript" "^7.12.1" + "@babel/register@^7.11.5": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.12.1.tgz#cdb087bdfc4f7241c03231f22e15d211acf21438" @@ -1416,12 +1440,25 @@ object.assign "^4.1.0" object.entries "^1.1.1" +"@types/anymatch@*": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" + integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== + "@types/aria-query@^4.2.0": version "4.2.0" resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-4.2.0.tgz#14264692a9d6e2fa4db3df5e56e94b5e25647ac0" integrity sha512-iIgQNzCm0v7QMhhe4Jjn9uRh+I6GoPmt03CbEtwx3ao8/EfoQcmgtqH4vQ5Db/lxiIGaWDv6nwvunuh0RyX0+A== -"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7": +"@types/autoprefixer@^9.7.2": + version "9.7.2" + resolved "https://registry.yarnpkg.com/@types/autoprefixer/-/autoprefixer-9.7.2.tgz#64b3251c9675feef5a631b7dd34cfea50a8fdbcc" + integrity sha512-QX7U7YW3zX3ex6MECtWO9folTGsXeP4b8bSjTq3I1ODM+H+sFHwGKuof+T+qBcDClGlCGtDb3SVfiTVfmcxw4g== + dependencies: + "@types/browserslist" "*" + postcss "7.x.x" + +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.12", "@types/babel__core@^7.1.7": version "7.1.12" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.12.tgz#4d8e9e51eb265552a7e4f1ff2219ab6133bdfb2d" integrity sha512-wMTHiiTiBAAPebqaPiPDLFA4LYPKr6Ph0Xq/6rq1Ur3v66HXyG+clfR9CNETkD7MQS8ZHvpQOtA53DLws5WAEQ== @@ -1439,6 +1476,16 @@ dependencies: "@babel/types" "^7.0.0" +"@types/babel__plugin-transform-runtime@^7.9.1": + version "7.9.1" + resolved "https://registry.yarnpkg.com/@types/babel__plugin-transform-runtime/-/babel__plugin-transform-runtime-7.9.1.tgz#af4ce1e1ec0413391fb537c765196a8199137027" + integrity sha512-9tmPrE1Emf22D1Na7AZIS5nCVJkCGNY80dIZaWt2Pxe+oAdQnJXl9ztxS360kyLzU7EniiUFRnT5906JRiaayw== + +"@types/babel__preset-env@^7.9.1": + version "7.9.1" + resolved "https://registry.yarnpkg.com/@types/babel__preset-env/-/babel__preset-env-7.9.1.tgz#ba6bc73bfaa2050ca5459235fb73e146d0f66aa6" + integrity sha512-kkCHo5fk24m3gcH7oVhRLdw6xGF2tog5rc8/CbXIyTSYSO0NhStjEYCaEmRjs5VB5Jy5Wbj+0QvuGdxuGdvAfQ== + "@types/babel__template@*": version "7.4.0" resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.0.tgz#0c888dd70b3ee9eebb6e4f200e809da0076262be" @@ -1454,16 +1501,141 @@ dependencies: "@babel/types" "^7.3.0" +"@types/body-parser@*", "@types/body-parser@^1.19.0": + version "1.19.0" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.0.tgz#0685b3c47eb3006ffed117cdd55164b61f80538f" + integrity sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ== + dependencies: + "@types/connect" "*" + "@types/node" "*" + +"@types/browserslist@*": + version "4.8.0" + resolved "https://registry.yarnpkg.com/@types/browserslist/-/browserslist-4.8.0.tgz#60489aefdf0fcb56c2d8eb65267ff08dad7a526d" + integrity sha512-4PyO9OM08APvxxo1NmQyQKlJdowPCOQIy5D/NLO3aO0vGC57wsMptvGp3b8IbYnupFZr92l1dlVief1JvS6STQ== + +"@types/bson@*": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@types/bson/-/bson-4.0.3.tgz#30889d2ffde6262abbe38659364c631454999fbf" + integrity sha512-mVRvYnTOZJz3ccpxhr3wgxVmSeiYinW+zlzQz3SXWaJmD1DuL05Jeq7nKw3SnbKmbleW5qrLG5vdyWe/A9sXhw== + dependencies: + "@types/node" "*" + +"@types/clean-css@*": + version "4.2.2" + resolved "https://registry.yarnpkg.com/@types/clean-css/-/clean-css-4.2.2.tgz#99fd79f6939c2b325938a1c569712e07dd97d709" + integrity sha512-xiTJn3bmDh1lA8c6iVJs4ZhHw+pcmxXlJQXOB6G1oULaak8rmarIeFKI4aTJ7849dEhaO612wgIualZfbxTJwA== + dependencies: + "@types/node" "*" + +"@types/compression@^1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@types/compression/-/compression-1.7.0.tgz#8dc2a56604873cf0dd4e746d9ae4d31ae77b2390" + integrity sha512-3LzWUM+3k3XdWOUk/RO+uSjv7YWOatYq2QADJntK1pjkk4DfVP0KrIEPDnXRJxAAGKe0VpIPRmlINLDuCedZWw== + dependencies: + "@types/express" "*" + +"@types/connect-history-api-fallback@^1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.3.tgz#4772b79b8b53185f0f4c9deab09236baf76ee3b4" + integrity sha512-7SxFCd+FLlxCfwVwbyPxbR4khL9aNikJhrorw8nUIOqeuooc9gifBuDQOJw5kzN7i6i3vLn9G8Wde/4QDihpYw== + dependencies: + "@types/express-serve-static-core" "*" + "@types/node" "*" + +"@types/connect@*": + version "3.4.33" + resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.33.tgz#31610c901eca573b8713c3330abc6e6b9f588546" + integrity sha512-2+FrkXY4zllzTNfJth7jOqEHC+enpLeGslEhpnTAkg21GkRrWV4SsAtqchtT4YS9/nODBU2/ZfsBY2X4J/dX7A== + dependencies: + "@types/node" "*" + "@types/escape-html@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@types/escape-html/-/escape-html-1.0.0.tgz#9135124510b0930b664255149e59ed750fc11f65" integrity sha512-Ehe6irbxo5BSYwG03buglLJCmy3JqqtC69UvopsBWYf4hDa+ZODJ7BuZU6y+YE4U6MaoSruTxM2+uePfAHts9Q== +"@types/eslint-scope@^3.7.0": + version "3.7.0" + resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.0.tgz#4792816e31119ebd506902a482caec4951fabd86" + integrity sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw== + dependencies: + "@types/eslint" "*" + "@types/estree" "*" + +"@types/eslint@*": + version "7.2.5" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.2.5.tgz#92172ecf490c2fce4b076739693d75f30376d610" + integrity sha512-Dc6ar9x16BdaR3NSxSF7T4IjL9gxxViJq8RmFd+2UAyA+K6ck2W+gUwfgpG/y9TPyUuBL35109bbULpEynvltA== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/eslint@^6.8.1": + version "6.8.1" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-6.8.1.tgz#e26f365a5dda12445d1d5a17eb70efd7c844a3d8" + integrity sha512-eutiEpQ4SN7kdF8QVDPyiSSy7ZFM+werJVw6/mRxLGbG4oet6/p81WFjSIcuY9PzM+dsu25Yh5EAUmQ9aJC1gg== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + "@types/esrever@^0.2.0": version "0.2.0" resolved "https://registry.yarnpkg.com/@types/esrever/-/esrever-0.2.0.tgz#96404a2284b2c7527f08a1e957f8a31705f9880f" integrity sha512-5NI6TeGzVEy/iBcuYtcPzzIC6EqlfQ2+UZ54vT0ulq8bPNGAy8UJD+XcsAyEOcnYFUjOVWuUV+k4/rVkxt9/XQ== +"@types/estree@*", "@types/estree@^0.0.45": + version "0.0.45" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.45.tgz#e9387572998e5ecdac221950dab3e8c3b16af884" + integrity sha512-jnqIUKDUqJbDIUxm0Uj7bnlMnRm1T/eZ9N+AVMqhPgzrba2GhGG5o/jCTwmdPK709nEZsGoMzXEDUjcXHa3W0g== + +"@types/express-fileupload@^1.1.5": + version "1.1.5" + resolved "https://registry.yarnpkg.com/@types/express-fileupload/-/express-fileupload-1.1.5.tgz#dc8a971f9060d50b12e3908a09248f1772e99484" + integrity sha512-03U+jevC01fzqxh7GlvfbEem0ICnp+hDLdtnMU7SNbIcdpe7LnFYkZLjycCQpwE9bY0PaBbLxG4gPyUWucaFjw== + dependencies: + "@types/express" "*" + +"@types/express-rate-limit@^5.1.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@types/express-rate-limit/-/express-rate-limit-5.1.0.tgz#c08e9b4957989fbe5ff8d5224f392359a264a597" + integrity sha512-vmg7S3hUnfFmp06V01DrTB41mbQYXMV/F4aF5KKnfCIeSlnizatXaqO9UgR6LvNEEd3eMpuUTLxR6nv3d4hZ6g== + dependencies: + "@types/express" "*" + +"@types/express-serve-static-core@*": + version "4.17.13" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.13.tgz#d9af025e925fc8b089be37423b8d1eac781be084" + integrity sha512-RgDi5a4nuzam073lRGKTUIaL3eF2+H7LJvJ8eUnCI0wA6SNjXc44DCmWNiTLs/AZ7QlsFWZiw/gTG3nSQGL0fA== + dependencies: + "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" + +"@types/express@*", "@types/express@^4.17.9": + version "4.17.9" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.9.tgz#f5f2df6add703ff28428add52bdec8a1091b0a78" + integrity sha512-SDzEIZInC4sivGIFY4Sz1GG6J9UObPwCInYJjko2jzOf/Imx/dlpume6Xxwj1ORL82tBbmN4cPDIDkLbWHk9hw== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "*" + "@types/qs" "*" + "@types/serve-static" "*" + +"@types/extract-text-webpack-plugin@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.4.tgz#ab36e6be85695ca900c1c7f387e4dc5cf19a0308" + integrity sha512-rQv2FShQnpsCnZAHEqmvTECvFmqSL6xTJttf+hMJvNoEIUZLjeLygIbrBimj9R4kwwc0AhU+JBJVz5/qcd5hmg== + dependencies: + "@types/webpack" "*" + +"@types/file-loader@^4.2.0": + version "4.2.0" + resolved "https://registry.yarnpkg.com/@types/file-loader/-/file-loader-4.2.0.tgz#ec8e793e275b7f90cdec3ff286518c6bf7bb8fc3" + integrity sha512-N3GMqKiKSNd41q4/lZlkdvNXKKWVdOXrA8Rniu64+25X0K2U1mWmTSu1CIqXKKsZUCwfaFcaioviLQtQ+EowLg== + dependencies: + "@types/webpack" "*" + "@types/graceful-fs@^4.1.2": version "4.1.4" resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.4.tgz#4ff9f641a7c6d1a3508ff88bc3141b152772e753" @@ -1471,11 +1643,51 @@ dependencies: "@types/node" "*" -"@types/is-hotkey@^0.1.1": +"@types/history@*": + version "4.7.8" + resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.8.tgz#49348387983075705fe8f4e02fb67f7daaec4934" + integrity sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA== + +"@types/html-minifier@*": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/html-minifier/-/html-minifier-4.0.0.tgz#2065cb9944f2d1b241146707c6935aa7b947d279" + integrity sha512-eFnGhrKmjWBlnSGNtunetE3UU2Tc/LUl92htFslSSTmpp9EKHQVcYQadCyYfnzUEFB5G/3wLWo/USQS/mEPKrA== + dependencies: + "@types/clean-css" "*" + "@types/relateurl" "*" + "@types/uglify-js" "*" + +"@types/html-webpack-plugin@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@types/html-webpack-plugin/-/html-webpack-plugin-3.2.4.tgz#ed770ddfec53ed2aa6b5f4523acca291192235c6" + integrity sha512-WM0s78bfCIXnTlICf+8nWP0IvP+fn4YfiI3uxAX1K1PSRpzs0iysp03j4zR0xTgxSqF67TbOsHs49YXonRAkeQ== + dependencies: + "@types/html-minifier" "*" + "@types/tapable" "*" + "@types/webpack" "*" + +"@types/ignore-styles@^5.0.0": + version "5.0.0" + resolved "https://registry.yarnpkg.com/@types/ignore-styles/-/ignore-styles-5.0.0.tgz#62ec630e5e003f1c6b15ca97ed52e4e5cd0b2752" + integrity sha512-NHDTLx8xF/T/jIxvH+0wFHHDsPtz6ulSMdUQ8p66qk9vJZ25S4cUUSQcal3+JxcQikCEdpaG5gUW2bVQvmh7KA== + dependencies: + "@types/node" "*" + +"@types/is-hotkey@^0.1.1", "@types/is-hotkey@^0.1.2": version "0.1.2" resolved "https://registry.yarnpkg.com/@types/is-hotkey/-/is-hotkey-0.1.2.tgz#94f00793b5a297a7f7e69c1ef49613da2243a987" integrity sha512-SUw9LpI3AIwbRNXS7FYy9AlXrTPIdBZGI7y4XxfIEYqgSW1UfFCUM9cMwHE/yCfTl0qeI0UQ/q8TdIxsIFgKPg== +"@types/is-url@^1.2.28": + version "1.2.28" + resolved "https://registry.yarnpkg.com/@types/is-url/-/is-url-1.2.28.tgz#914dabd50546d9b0142806e42c72bc7c2b7e0787" + integrity sha1-kU2r1QVG2bAUKAbkLHK8fCt+B4c= + +"@types/isomorphic-fetch@^0.0.35": + version "0.0.35" + resolved "https://registry.yarnpkg.com/@types/isomorphic-fetch/-/isomorphic-fetch-0.0.35.tgz#c1c0d402daac324582b6186b91f8905340ea3361" + integrity sha512-DaZNUvLDCAnCTjgwxgiL1eQdxIKEpNLOlTNtAgnZc50bG2copGhRrFN9/PxPBuJe+tZVLCbQ7ls0xveXVRPkvw== + "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.3" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" @@ -1516,7 +1728,7 @@ resolved "https://registry.yarnpkg.com/@types/js-cookie/-/js-cookie-2.2.6.tgz#f1a1cb35aff47bc5cfb05cb0c441ca91e914c26f" integrity sha512-+oY0FDTO2GYKEV0YPvSshGq9t7YozVkgvXLty7zogQNuCxBhT9/3INX9Q7H1aRZ4SUDRXAKlJuA4EA5nTt7SNw== -"@types/json-schema@^7.0.3", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.6": +"@types/json-schema@*", "@types/json-schema@^7.0.3", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.6": version "7.0.6" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0" integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw== @@ -1526,42 +1738,371 @@ resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= +"@types/jsonwebtoken@*", "@types/jsonwebtoken@^8.5.0": + version "8.5.0" + resolved "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-8.5.0.tgz#2531d5e300803aa63279b232c014acf780c981c5" + integrity sha512-9bVao7LvyorRGZCw0VmH/dr7Og+NdjYSsKAxB43OQoComFbBgsEpoR9JW6+qSq/ogwVBg8GI2MfAlk4SYI4OLg== + dependencies: + "@types/node" "*" + "@types/lodash@^4.14.149": version "4.14.165" resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.165.tgz#74d55d947452e2de0742bad65270433b63a8c30f" integrity sha512-tjSSOTHhI5mCHTy/OOXYIhi2Wt1qcbHmuXD1Ha7q70CgI/I71afO4XtLb/cVexki1oVYchpul/TOuu3Arcdxrg== +"@types/memory-fs@*": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@types/memory-fs/-/memory-fs-0.3.2.tgz#5d4753f9b390cb077c8c8af97bc96463399ceccd" + integrity sha512-j5AcZo7dbMxHoOimcHEIh0JZe5e1b8q8AqGSpZJrYc7xOgCIP79cIjTdx5jSDLtySnQDwkDTqwlC7Xw7uXw7qg== + dependencies: + "@types/node" "*" + +"@types/method-override@^0.0.31": + version "0.0.31" + resolved "https://registry.yarnpkg.com/@types/method-override/-/method-override-0.0.31.tgz#ec12b738c1b2a74a5d3d8af73c7d4952ad9c14d2" + integrity sha512-aLA4MGzjYjBHGpr5TgAdPRyX97Jd+xlWN2wa6PbsjKYeoUKPsxVDFRSTjI3YG4MvGg3ZJkdMxjAXZfujU9qEPw== + dependencies: + "@types/express" "*" + +"@types/mime@*": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-2.0.3.tgz#c893b73721db73699943bfc3653b1deb7faa4a3a" + integrity sha512-Jus9s4CDbqwocc5pOAnh8ShfrnMcPHuJYzVcSUU7lrh8Ni5HuIqX3oilL86p3dlTrk0LzHRCgA/GQ7uNCw6l2Q== + +"@types/mini-css-extract-plugin@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@types/mini-css-extract-plugin/-/mini-css-extract-plugin-1.2.1.tgz#f43fb28a411e89fc3c258b25d66bd9345dc71395" + integrity sha512-4/cdB1GdB9va4v/K7ivBVqNrcELjVbkgivEtqBjp/z54pqn1AYRHvQ0v97WOZgz/ilMXzG1aGM+3C1DRxp3XZw== + dependencies: + "@types/webpack" "*" + +"@types/minimist@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.1.tgz#283f669ff76d7b8260df8ab7a4262cc83d988256" + integrity sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg== + +"@types/mkdirp@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@types/mkdirp/-/mkdirp-1.0.1.tgz#0930b948914a78587de35458b86c907b6e98bbf6" + integrity sha512-HkGSK7CGAXncr8Qn/0VqNtExEE+PHMWb+qlR1faHMao7ng6P3tAaoWWBMdva0gL5h4zprjIO89GJOLXsMcDm1Q== + dependencies: + "@types/node" "*" + +"@types/mongodb@*", "@types/mongodb@^3.5.34": + version "3.5.34" + resolved "https://registry.yarnpkg.com/@types/mongodb/-/mongodb-3.5.34.tgz#eaa04b9a85906129fb9aab2eb63079edcf802a98" + integrity sha512-73iy3+MiH+wxSM+hVA5jcW9ZTUaor2WKvM7hW+htOSgVb7E6/JBHOWaxj7rL1/vaxEBziKRr/VPecy3YAKqLuQ== + dependencies: + "@types/bson" "*" + "@types/node" "*" + +"@types/mongoose-paginate-v2@^1.3.8": + version "1.3.8" + resolved "https://registry.yarnpkg.com/@types/mongoose-paginate-v2/-/mongoose-paginate-v2-1.3.8.tgz#e3eeb9817b5663bc62e5fec1aea9bb8df5482acc" + integrity sha512-76dmeOZ4//m0KvNINamY5zkYfEJPIVY8zK0HLXU+5E/h+v4ynQMA5z4hOJiCFUVIO50vENBrnQDQ2oC2RXqDEg== + dependencies: + "@types/mongoose" "*" + +"@types/mongoose@*", "@types/mongoose@^5.10.1": + version "5.10.1" + resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.10.1.tgz#41d5fe0fef5dce33c140467f1cb2a53b689a66e6" + integrity sha512-5yqbLHOyCQhUb7GPGW0A2dauUbhwgBvUWMzYcaUQiHdLZ8slgRp2R6i8FETZ+t5xeXpfhylYp9U7dAng7WamqQ== + dependencies: + "@types/mongodb" "*" + "@types/node" "*" + +"@types/node-sass@^4.11.1": + version "4.11.1" + resolved "https://registry.yarnpkg.com/@types/node-sass/-/node-sass-4.11.1.tgz#bda27c5181cbf7c090c3058e119633dfb2b6504c" + integrity sha512-wPOmOEEtbwQiPTIgzUuRSQZ3H5YHinsxRGeZzPSDefAm4ylXWnZG9C0adses8ymyplKK0gwv3JkDNO8GGxnWfg== + dependencies: + "@types/node" "*" + "@types/node@*": version "14.14.9" resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.9.tgz#04afc9a25c6ff93da14deabd65dc44485b53c8d6" integrity sha512-JsoLXFppG62tWTklIoO4knA+oDTYsmqWxHRvd4lpmfQRNhX6osheUOWETP2jMoV/2bEHuMra8Pp3Dmo/stBFcw== +"@types/nodemailer@^6.4.0": + version "6.4.0" + resolved "https://registry.yarnpkg.com/@types/nodemailer/-/nodemailer-6.4.0.tgz#d8c039be3ed685c4719a026455555be82c124b74" + integrity sha512-KY7bFWB0MahRZvVW4CuW83qcCDny59pJJ0MQ5ifvfcjNwPlIT0vW4uARO4u1gtkYnWdhSvURegecY/tzcukJcA== + dependencies: + "@types/node" "*" + +"@types/nodemon@^1.19.0": + version "1.19.0" + resolved "https://registry.yarnpkg.com/@types/nodemon/-/nodemon-1.19.0.tgz#7ff8e53c61e7a21f9f8dc65444d5904621afc080" + integrity sha512-nf0PKjNv3wo0pyhlPkHjfpU2oUYMdOIsCXceiFG6kvhYxbTwn2ne9mz2iWvJ/4QtCrJUEPJLNXuyGleyTacdaw== + dependencies: + "@types/node" "*" + "@types/normalize-package-data@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== +"@types/optimize-css-assets-webpack-plugin@^5.0.1": + version "5.0.1" + resolved "https://registry.yarnpkg.com/@types/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.1.tgz#1f437ef9ef937b393687a8819be2d2fddc03b069" + integrity sha512-qyi5xmSl+DTmLFtVtelhso3VnNQYxltfgMa+Ed02xqNZCZBD0uYR6i64FmcwfieDzZRdwkJxt9o2JHq/5PBKQg== + dependencies: + "@types/webpack" "*" + "@types/parse-json@^4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== +"@types/passport-anonymous@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@types/passport-anonymous/-/passport-anonymous-1.0.3.tgz#87cb68d6b905288364120a1b978a01f7872195db" + integrity sha512-unE2IivuYx6LUHlHokKMebx2TVi/YhqnnwM/Z3teGa/HTsRKgpD0PWrjpbw15ES8K8QNSCnRmXb/NpOyTem0tA== + dependencies: + "@types/passport" "*" + +"@types/passport-jwt@^3.0.3": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/passport-jwt/-/passport-jwt-3.0.3.tgz#47b6c43af668852d7c83e56a23ed9f4515dd1814" + integrity sha512-RlOCXiTitE8kazj9jZc6/BfGCSqnv2w/eYPDm3+3iNsquHn7ratu7oIUskZx9ZtnwMdpvdpy+Z/QYClocH5NvQ== + dependencies: + "@types/express" "*" + "@types/jsonwebtoken" "*" + "@types/passport-strategy" "*" + +"@types/passport-local-mongoose@^4.0.13": + version "4.0.13" + resolved "https://registry.yarnpkg.com/@types/passport-local-mongoose/-/passport-local-mongoose-4.0.13.tgz#0edc3aedcc82a70b7e461efc2dc85f42ccb80aa3" + integrity sha512-tjVfcyFXO+EIzjTg6DHm+Wq9LwftqDv0kQ/IlLqFHBtZ6gKMy5pLKdr4g62VGEJsgPX8F9UGb9inDREQ2tOpEw== + dependencies: + "@types/passport-local" "*" + +"@types/passport-local@*", "@types/passport-local@^1.0.33": + version "1.0.33" + resolved "https://registry.yarnpkg.com/@types/passport-local/-/passport-local-1.0.33.tgz#d245b60c5b801cb3aeca1ffab557d5fe1534260d" + integrity sha512-+rn6ZIxje0jZ2+DAiWFI8vGG7ZFKB0hXx2cUdMmudSWsigSq6ES7Emso46r4HJk0qCgrZVfI8sJiM7HIYf4SbA== + dependencies: + "@types/express" "*" + "@types/passport" "*" + "@types/passport-strategy" "*" + +"@types/passport-strategy@*": + version "0.2.35" + resolved "https://registry.yarnpkg.com/@types/passport-strategy/-/passport-strategy-0.2.35.tgz#e52f5212279ea73f02d9b06af67efe9cefce2d0c" + integrity sha512-o5D19Jy2XPFoX2rKApykY15et3Apgax00RRLf0RUotPDUsYrQa7x4howLYr9El2mlUApHmCMv5CZ1IXqKFQ2+g== + dependencies: + "@types/express" "*" + "@types/passport" "*" + +"@types/passport@*": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@types/passport/-/passport-1.0.4.tgz#1b35c4e197560d3974fa5f71711b6e9cce0711f0" + integrity sha512-h5OfAbfBBYSzjeU0GTuuqYEk9McTgWeGQql9g3gUw2/NNCfD7VgExVRYJVVeU13Twn202Mvk9BT0bUrl30sEgA== + dependencies: + "@types/express" "*" + +"@types/passport@^0.4.7": + version "0.4.7" + resolved "https://registry.yarnpkg.com/@types/passport/-/passport-0.4.7.tgz#2b7f29bf61df91cf77023b3777e940b613d4b4d8" + integrity sha512-EePlxNYx5tf3n0yjdPXX0/zDOv0UCwjMyQo4UkWGlhHteNDItAj7TfDdLttSThVMKQz3uCW7lsGzMuml0f8g9Q== + dependencies: + "@types/express" "*" + +"@types/pino-std-serializers@*": + version "2.4.1" + resolved "https://registry.yarnpkg.com/@types/pino-std-serializers/-/pino-std-serializers-2.4.1.tgz#f8bd52a209c8b3c97d1533b1ba27f57c816382bf" + integrity sha512-17XcksO47M24IVTVKPeAByWUd3Oez7EbIjXpSbzMPhXVzgjGtrOa49gKBwxH9hb8dKv58OelsWQ+A1G1l9S3wQ== + dependencies: + "@types/node" "*" + +"@types/pino@^6.3.4": + version "6.3.4" + resolved "https://registry.yarnpkg.com/@types/pino/-/pino-6.3.4.tgz#f22524c33a7e21f45f5cc7fc2c570ccae0be98fa" + integrity sha512-03MpZ/HP6GlG0oo5dcb8NBpI21zNESswTbaA0VB4uuigXfVy+XLmzh39CY6VCAahPMxCPtuqSEdhwGeA3AOYXg== + dependencies: + "@types/node" "*" + "@types/pino-std-serializers" "*" + "@types/sonic-boom" "*" + +"@types/pluralize@^0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/pluralize/-/pluralize-0.0.29.tgz#6ffa33ed1fc8813c469b859681d09707eb40d03c" + integrity sha512-BYOID+l2Aco2nBik+iYS4SZX0Lf20KPILP5RGmM1IgzdwNdTs0eebiFriOPcej1sX9mLnSoiNte5zcFxssgpGA== + "@types/prettier@^1.19.0": version "1.19.1" resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-1.19.1.tgz#33509849f8e679e4add158959fdb086440e9553f" integrity sha512-5qOlnZscTn4xxM5MeGXAMOsIOIKIbh9e85zJWfBRVPlRMEVawzoPhINYbRGkBZCI8LxvBe7tJCdWiarA99OZfQ== +"@types/prismjs@^1.16.2": + version "1.16.2" + resolved "https://registry.yarnpkg.com/@types/prismjs/-/prismjs-1.16.2.tgz#c130c977191c988cb35e97585da5d580948cc2d2" + integrity sha512-1M/j21xgTde7RPtpJVQebW5rzrquj7S+wnqt4x9uWrIPpr0Ya/uXypcqC2aUQL5gtLXFCKSH7GnjfAijMdfbuA== + +"@types/prop-types@*", "@types/prop-types@^15.7.3": + version "15.7.3" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" + integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw== + "@types/q@^1.5.1": version "1.5.4" resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== +"@types/qs-middleware@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@types/qs-middleware/-/qs-middleware-1.0.1.tgz#086da0e59a3abba1e41ad0fb82f2a53e128ac1f5" + integrity sha512-zz+15X8X7kpMafzA4fHe5O7TrZE8Z4xtDdfc3t/oIi8SngNyJuoH1SgHWOWeQZhCijfdKy/TNHjLoKWikIKGTg== + dependencies: + "@types/express" "*" + "@types/qs" "*" + +"@types/qs@*", "@types/qs@^6.9.5": + version "6.9.5" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.5.tgz#434711bdd49eb5ee69d90c1d67c354a9a8ecb18b" + integrity sha512-/JHkVHtx/REVG0VVToGRGH2+23hsYLHdyG+GrvoUGlGAd0ErauXDyvHtRI/7H7mzLm+tBCKA7pfcpkQ1lf58iQ== + +"@types/range-parser@*": + version "1.2.3" + resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" + integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== + +"@types/react-beautiful-dnd@^13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@types/react-beautiful-dnd/-/react-beautiful-dnd-13.0.0.tgz#e60d3d965312fcf1516894af92dc3e9249587db4" + integrity sha512-by80tJ8aTTDXT256Gl+RfLRtFjYbUWOnZuEigJgNsJrSEGxvFe5eY6k3g4VIvf0M/6+xoLgfYWoWonlOo6Wqdg== + dependencies: + "@types/react" "*" + +"@types/react-datepicker@^3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@types/react-datepicker/-/react-datepicker-3.1.1.tgz#bbb5e4561f657ca8e3d6829dd99b91a98c0bb74c" + integrity sha512-vwNrgaIMJThvvwmtnA8jSVVJZ0FNgljQrq1jDA4MtYJIDmVmd9NNrFaXf9u2JqR2nS+8Kvi8OVs/tnAbUqZhHw== + dependencies: + "@types/react" "*" + date-fns "^2.0.1" + popper.js "^1.14.1" + +"@types/react-document-meta@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/react-document-meta/-/react-document-meta-3.0.0.tgz#a52edcd2c4bfd3a0103b27f10277fdfca795ccdf" + integrity sha512-Kw2HipjzuCVmR9yhpWMGrLmtymELOxWDpW+lW520/CagHgtGeGOfThPEqZVmCXDonggPjLE/cJFHz37A5JxsPQ== + dependencies: + "@types/react" "*" + +"@types/react-dom@*", "@types/react-dom@^16.9.9": + version "16.9.9" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.9.tgz#d2d0a6f720a0206369ccbefff752ba37b9583136" + integrity sha512-jE16FNWO3Logq/Lf+yvEAjKzhpST/Eac8EMd1i4dgZdMczfgqC8EjpxwNgEe3SExHYLliabXDh9DEhhqnlXJhg== + dependencies: + "@types/react" "*" + +"@types/react-helmet@^6.1.0": + version "6.1.0" + resolved "https://registry.yarnpkg.com/@types/react-helmet/-/react-helmet-6.1.0.tgz#af586ed685f4905e2adc7462d1d65ace52beee7a" + integrity sha512-PYRoU1XJFOzQ3BHvWL1T8iDNbRjdMDJMT5hFmZKGbsq09kbSqJy61uwEpTrbTNWDopVphUT34zUSVLK9pjsgYQ== + dependencies: + "@types/react" "*" + +"@types/react-router-dom@^5.1.6": + version "5.1.6" + resolved "https://registry.yarnpkg.com/@types/react-router-dom/-/react-router-dom-5.1.6.tgz#07b14e7ab1893a837c8565634960dc398564b1fb" + integrity sha512-gjrxYqxz37zWEdMVvQtWPFMFj1dRDb4TGOcgyOfSXTrEXdF92L00WE3C471O3TV/RF1oskcStkXsOU0Ete4s/g== + dependencies: + "@types/history" "*" + "@types/react" "*" + "@types/react-router" "*" + +"@types/react-router@*": + version "5.1.8" + resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.1.8.tgz#4614e5ba7559657438e17766bb95ef6ed6acc3fa" + integrity sha512-HzOyJb+wFmyEhyfp4D4NYrumi+LQgQL/68HvJO+q6XtuHSDvw6Aqov7sCAhjbNq3bUPgPqbdvjXC5HeB2oEAPg== + dependencies: + "@types/history" "*" + "@types/react" "*" + +"@types/react-select@^3.0.26": + version "3.0.26" + resolved "https://registry.yarnpkg.com/@types/react-select/-/react-select-3.0.26.tgz#f1b1a1e2b624ed9843eb56dda837e7a0f4a76a8f" + integrity sha512-rAaiD0SFkBi3PUwp1DrJV04CobPl2LuZXF+kv6MKw8kaeGo82xTOZzjM8DDi4lrdkqGbInZiE2QO9nIJm3bqgw== + dependencies: + "@types/react" "*" + "@types/react-dom" "*" + "@types/react-transition-group" "*" + +"@types/react-transition-group@*": + version "4.4.0" + resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.0.tgz#882839db465df1320e4753e6e9f70ca7e9b4d46d" + integrity sha512-/QfLHGpu+2fQOqQaXh8MG9q03bFENooTb/it4jr5kKaZlDQfWvjqWZg48AwzPVMBHlRuTRAY7hRHCEOXz5kV6w== + dependencies: + "@types/react" "*" + +"@types/react@*", "@types/react@^16.14.0": + version "16.14.0" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.14.0.tgz#bc022cfe1609899b0f2196376b267724e7300f0e" + integrity sha512-jJjHo1uOe+NENRIBvF46tJimUvPnmbQ41Ax0pEm7pRvhPg+wuj8VMOHHiMvaGmZRzRrCtm7KnL5OOE/6kHPK8w== + dependencies: + "@types/prop-types" "*" + csstype "^3.0.2" + +"@types/relateurl@*": + version "0.2.28" + resolved "https://registry.yarnpkg.com/@types/relateurl/-/relateurl-0.2.28.tgz#6bda7db8653fa62643f5ee69e9f69c11a392e3a6" + integrity sha1-a9p9uGU/piZD9e5p6facEaOS46Y= + +"@types/sass@^1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@types/sass/-/sass-1.16.0.tgz#b41ac1c17fa68ffb57d43e2360486ef526b3d57d" + integrity sha512-2XZovu4NwcqmtZtsBR5XYLw18T8cBCnU2USFHTnYLLHz9fkhnoEMoDsqShJIOFsFhn5aJHjweiUUdTrDGujegA== + dependencies: + "@types/node" "*" + +"@types/serve-static@*": + version "1.13.8" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.8.tgz#851129d434433c7082148574ffec263d58309c46" + integrity sha512-MoJhSQreaVoL+/hurAZzIm8wafFR6ajiTM1m4A0kv6AGeVBl4r4pOV8bGFrjjq1sGxDTnCoF8i22o0/aE5XCyA== + dependencies: + "@types/mime" "*" + "@types/node" "*" + +"@types/sharp@^0.26.1": + version "0.26.1" + resolved "https://registry.yarnpkg.com/@types/sharp/-/sharp-0.26.1.tgz#92f6b3e65fb02a54ac7027cea0d17cf64f0d2958" + integrity sha512-vOFcnP0+aQFDb+ToKVIj8ZV6xQ7pNYGGPeYweLHxyjoQUcIGj8iY9R3OVmJyRR5KUkb0Y4obBbMjoTrBXw6AQA== + dependencies: + "@types/node" "*" + +"@types/sonic-boom@*": + version "0.7.0" + resolved "https://registry.yarnpkg.com/@types/sonic-boom/-/sonic-boom-0.7.0.tgz#38337036293992a1df65dd3161abddf8fb9b7176" + integrity sha512-AfqR0fZMoUXUNwusgXKxcE9DPlHNDHQp6nKYUd4PSRpLobF5CCevSpyTEBcVZreqaWKCnGBr9KI1fHMTttoB7A== + dependencies: + "@types/node" "*" + +"@types/source-list-map@*": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" + integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== + "@types/stack-utils@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz#0a851d3bd96498fa25c33ab7278ed3bd65f06c3e" integrity sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw== -"@types/testing-library__jest-dom@^5.9.1": +"@types/tapable@*": + version "1.0.6" + resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.6.tgz#a9ca4b70a18b270ccb2bc0aaafefd1d486b7ea74" + integrity sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA== + +"@types/terser-webpack-plugin@^5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@types/terser-webpack-plugin/-/terser-webpack-plugin-5.0.2.tgz#ebc935cfb9a0cc5ef33934ab63202e16cdf6a961" + integrity sha512-YcAT1D4gjho1jqc/gjn1ojHFtQtrGHaHPqz5nDMiN5Jj9BeigjDkS2w010PvUnPkdVY3GerDFbY62TArtDBuDQ== + dependencies: + terser "^5.3.8" + webpack "^5.1.0" + +"@types/testing-library__jest-dom@^5.9.1", "@types/testing-library__jest-dom@^5.9.5": version "5.9.5" resolved "https://registry.yarnpkg.com/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.9.5.tgz#5bf25c91ad2d7b38f264b12275e5c92a66d849b0" integrity sha512-ggn3ws+yRbOHog9GxnXiEZ/35Mow6YtPZpd7Z5mKDeZS/o7zx3yAle0ov/wjhVB5QT4N2Dt+GNoGCdqkBGCajQ== @@ -1573,11 +2114,69 @@ resolved "https://registry.yarnpkg.com/@types/tmp/-/tmp-0.2.0.tgz#e3f52b4d7397eaa9193592ef3fdd44dc0af4298c" integrity sha512-flgpHJjntpBAdJD43ShRosQvNC0ME97DCfGvZEDlAThQmnerRXrLbX6YgzRBQCZTthET9eAWFAMaYP0m0Y4HzQ== +"@types/uglify-js@*": + version "3.11.1" + resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.11.1.tgz#97ff30e61a0aa6876c270b5f538737e2d6ab8ceb" + integrity sha512-7npvPKV+jINLu1SpSYVWG8KvyJBhBa8tmzMMdDoVc2pWUYHN8KIXlPJhjJ4LT97c4dXJA2SHL/q6ADbDriZN+Q== + dependencies: + source-map "^0.6.1" + "@types/unist@^2.0.0", "@types/unist@^2.0.2": version "2.0.3" resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ== +"@types/uuid@^8.3.0": + version "8.3.0" + resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-8.3.0.tgz#215c231dff736d5ba92410e6d602050cce7e273f" + integrity sha512-eQ9qFW/fhfGJF8WKHGEHZEyVWfZxrT+6CLIJGBcZPfxUh/+BnEj+UCGYMlr9qZuX/2AltsvwrGqp0LhEW8D0zQ== + +"@types/webpack-bundle-analyzer@^3.9.0": + version "3.9.0" + resolved "https://registry.yarnpkg.com/@types/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.9.0.tgz#bf2f3fd7f1fe6a71dff8968afeb12785d1ce737b" + integrity sha512-O4Dsmml4T+emssdk3t6/N1vwtYRx1VfWCx0Oph4jRY62DZGNOL9IAS6mSX0XG1LdZuFSX0g42DXj1otQuPXRGQ== + dependencies: + "@types/webpack" "*" + +"@types/webpack-dev-middleware@^3.7.2": + version "3.7.2" + resolved "https://registry.yarnpkg.com/@types/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#31030c7cca7f98d56debfd859bb57f9040f0d3c5" + integrity sha512-PvETiS//pjVZBK48aJfbxzT7+9LIxanbnk9eXXYUfefGyPdsCkNrMDxRlOVrBvxukXUhD5B6N/pkPMdWrtuFkA== + dependencies: + "@types/connect" "*" + "@types/memory-fs" "*" + "@types/webpack" "*" + loglevel "^1.6.2" + +"@types/webpack-hot-middleware@^2.25.3": + version "2.25.3" + resolved "https://registry.yarnpkg.com/@types/webpack-hot-middleware/-/webpack-hot-middleware-2.25.3.tgz#ba6265ada359cae4f437d8ac08ac5b8c616f7521" + integrity sha512-zGkTzrwQnhSadIXGYGZLu7tpXQwn4+6y9nGeql+5UeRtW/k54Jp4SnzB0Qw00ednw0ZFoZOvqTFfXSbFXohc5Q== + dependencies: + "@types/connect" "*" + "@types/webpack" "*" + +"@types/webpack-sources@*": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-2.0.0.tgz#08216ab9be2be2e1499beaebc4d469cec81e82a7" + integrity sha512-a5kPx98CNFRKQ+wqawroFunvFqv7GHm/3KOI52NY9xWADgc8smu4R6prt4EU/M4QfVjvgBkMqU4fBhw3QfMVkg== + dependencies: + "@types/node" "*" + "@types/source-list-map" "*" + source-map "^0.7.3" + +"@types/webpack@*", "@types/webpack@4.41.25": + version "4.41.25" + resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.25.tgz#4d3b5aecc4e44117b376280fbfd2dc36697968c4" + integrity sha512-cr6kZ+4m9lp86ytQc1jPOJXgINQyz3kLLunZ57jznW+WIAL0JqZbGubQk4GlD42MuQL5JGOABrxdpqqWeovlVQ== + dependencies: + "@types/anymatch" "*" + "@types/node" "*" + "@types/tapable" "*" + "@types/uglify-js" "*" + "@types/webpack-sources" "*" + source-map "^0.6.0" + "@types/yargs-parser@*": version "15.0.0" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d" @@ -1898,6 +2497,11 @@ acorn@^7.1.0, acorn@^7.1.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== +acorn@^8.0.4: + version "8.0.4" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.0.4.tgz#7a3ae4191466a6984eee0fe3407a4f3aa9db8354" + integrity sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ== + agent-base@6: version "6.0.2" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" @@ -4336,6 +4940,14 @@ enhanced-resolve@^4.3.0: memory-fs "^0.5.0" tapable "^1.0.0" +enhanced-resolve@^5.3.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.3.2.tgz#142295dda51aaaff049cf256459dc9a82a0b67f3" + integrity sha512-G28GCrglCAH6+EqMN2D+Q2wCUS1O1vVQJBn8ME2I/Api41YBe4vLWWRBOUbwDH7vwzSZdljxwTRVqnf+sm6XqQ== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.0.0" + enquirer@^2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" @@ -4557,7 +5169,7 @@ eslint-scope@^4.0.3: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-scope@^5.0.0: +eslint-scope@^5.0.0, eslint-scope@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== @@ -4680,7 +5292,7 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= -events@^3.0.0: +events@^3.0.0, events@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/events/-/events-3.2.0.tgz#93b87c18f8efcd4202a461aec4dfc0556b639379" integrity sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg== @@ -5375,6 +5987,11 @@ glob-parent@^5.0.0, glob-parent@~5.1.0: dependencies: is-glob "^4.0.1" +glob-to-regexp@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" + integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== + glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.1.1: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" @@ -6879,7 +7496,7 @@ jest-worker@^25.5.0: merge-stream "^2.0.0" supports-color "^7.0.0" -jest-worker@^26.5.0, jest-worker@^26.6.2: +jest-worker@^26.5.0, jest-worker@^26.6.1, jest-worker@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== @@ -7202,6 +7819,11 @@ loader-runner@^2.4.0: resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== +loader-runner@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.1.0.tgz#f70bc0c29edbabdf2043e7ee73ccc3fe1c96b42d" + integrity sha512-oR4lB4WvwFoC70ocraKhn5nkKSs23t57h9udUgw8o0iH8hMXeEoRuUgfcvgUwAJ1ZpRqBvcou4N2SMvM1DwMrA== + loader-utils@^0.2.16: version "0.2.17" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" @@ -7345,6 +7967,11 @@ lodash@^4.0.0, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.1 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== +loglevel@^1.6.2: + version "1.7.0" + resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.7.0.tgz#728166855a740d59d38db01cf46f042caa041bb0" + integrity sha512-i2sY04nal5jDcagM3FMfG++T69GEEM8CYuOfeOIvmXzOIcwE9a/CJPR0MFM97pYMj/u10lzz7/zd7+qwhrBTqQ== + lolex@^5.0.0: version "5.1.2" resolved "https://registry.yarnpkg.com/lolex/-/lolex-5.1.2.tgz#953694d098ce7c07bc5ed6d0e42bc6c0c6d5a367" @@ -7601,7 +8228,7 @@ mime-db@1.44.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.45.0.tgz#cceeda21ccd7c3a745eba2decd55d4b73e7879ea" integrity sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w== -mime-types@^2.1.12, mime-types@~2.1.19, mime-types@~2.1.24: +mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.19, mime-types@~2.1.24: version "2.1.27" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w== @@ -7950,7 +8577,7 @@ negotiator@0.6.2: resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== -neo-async@^2.5.0, neo-async@^2.6.1: +neo-async@^2.5.0, neo-async@^2.6.1, neo-async@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== @@ -8826,7 +9453,7 @@ pn@^1.1.0: resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== -popper.js@^1.14.4: +popper.js@^1.14.1, popper.js@^1.14.4: version "1.16.1" resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz#2a223cb3dc7b6213d740e40372be40de43e65b1b" integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ== @@ -9439,6 +10066,15 @@ postcss-values-parser@^2.0.0, postcss-values-parser@^2.0.1: indexes-of "^1.0.1" uniq "^1.0.1" +postcss@7.x.x, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6: + version "7.0.35" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24" + integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg== + dependencies: + chalk "^2.4.2" + source-map "^0.6.1" + supports-color "^6.1.0" + postcss@^6.0.1, postcss@^6.0.23: version "6.0.23" resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" @@ -9448,15 +10084,6 @@ postcss@^6.0.1, postcss@^6.0.23: source-map "^0.6.1" supports-color "^5.4.0" -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6: - version "7.0.35" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24" - integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg== - dependencies: - chalk "^2.4.2" - source-map "^0.6.1" - supports-color "^6.1.0" - prebuild-install@^5.3.4: version "5.3.6" resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-5.3.6.tgz#7c225568d864c71d89d07f8796042733a3f54291" @@ -10969,7 +11596,7 @@ sonic-boom@^1.0.2: atomic-sleep "^1.0.0" flatstr "^1.0.12" -source-list-map@^2.0.0: +source-list-map@^2.0.0, source-list-map@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== @@ -11501,6 +12128,11 @@ tapable@^1.0.0, tapable@^1.1.3: resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== +tapable@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.1.1.tgz#b01cc1902d42a7bb30514e320ce21c456f72fd3f" + integrity sha512-Wib1S8m2wdpLbmQz0RBEVosIyvb/ykfKXf3ZIDqvWoMg/zTNm6G/tDSuUM61J1kNCDXWJrLHGSFeMhAG+gAGpQ== + tar-fs@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" @@ -11588,6 +12220,18 @@ terser-webpack-plugin@^4.2.3: terser "^5.3.4" webpack-sources "^1.4.3" +terser-webpack-plugin@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.0.3.tgz#ec60542db2421f45735c719d2e17dabfbb2e3e42" + integrity sha512-zFdGk8Lh9ZJGPxxPE6jwysOlATWB8GMW8HcfGULWA/nPal+3VdATflQvSBSLQJRCmYZnfFJl6vkRTiwJGNgPiQ== + dependencies: + jest-worker "^26.6.1" + p-limit "^3.0.2" + schema-utils "^3.0.0" + serialize-javascript "^5.0.1" + source-map "^0.6.1" + terser "^5.3.8" + terser@^4.1.2: version "4.8.0" resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" @@ -11597,7 +12241,7 @@ terser@^4.1.2: source-map "~0.6.1" source-map-support "~0.5.12" -terser@^5.3.4: +terser@^5.3.4, terser@^5.3.8: version "5.5.0" resolved "https://registry.yarnpkg.com/terser/-/terser-5.5.0.tgz#1406fcb4d4bc517add3b22a9694284c040e33448" integrity sha512-eopt1Gf7/AQyPhpygdKePTzaet31TvQxXvrf7xYUvD/d8qkCJm4SKPDzu+GHK5ZaYTn8rvttfqaZc3swK21e5g== @@ -11929,6 +12573,11 @@ typedarray@^0.0.6: resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= +typescript@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.1.2.tgz#6369ef22516fe5e10304aae5a5c4862db55380e9" + integrity sha512-thGloWsGH3SOxv1SoY7QojKi0tc+8FnOmiarEGMbd/lar7QOEd3hvlx3Fp5y6FlDUGl9L+pd4n2e+oToGMmhRQ== + typical@^5.0.0, typical@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/typical/-/typical-5.2.0.tgz#4daaac4f2b5315460804f0acf6cb69c52bb93066" @@ -12359,6 +13008,14 @@ watchpack@^1.7.4: chokidar "^3.4.1" watchpack-chokidar2 "^2.0.1" +watchpack@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.0.1.tgz#2f2192c542c82a3bcde76acd3411470c120426a8" + integrity sha512-vO8AKGX22ZRo6PiOFM9dC0re8IcKh8Kd/aH2zeqUc6w4/jBGlTy2P7fTC6ekT0NjVeGjgU2dGC5rNstKkeLEQg== + dependencies: + glob-to-regexp "^0.4.1" + graceful-fs "^4.1.2" + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" @@ -12446,6 +13103,14 @@ webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack- source-list-map "^2.0.0" source-map "~0.6.1" +webpack-sources@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-2.2.0.tgz#058926f39e3d443193b6c31547229806ffd02bac" + integrity sha512-bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w== + dependencies: + source-list-map "^2.0.1" + source-map "^0.6.1" + webpack@4.44.2: version "4.44.2" resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.44.2.tgz#6bfe2b0af055c8b2d1e90ed2cd9363f841266b72" @@ -12475,6 +13140,36 @@ webpack@4.44.2: watchpack "^1.7.4" webpack-sources "^1.4.1" +webpack@^5.1.0: + version "5.6.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.6.0.tgz#282d10434c403b070ed91d459b385e873b51a07d" + integrity sha512-SIeFuBhuheKElRbd84O35UhKc0nxlgSwtzm2ksZ0BVhRJqxVJxEguT/pYhfiR0le/pxTa1VsCp7EOYyTsa6XOA== + dependencies: + "@types/eslint-scope" "^3.7.0" + "@types/estree" "^0.0.45" + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-module-context" "1.9.0" + "@webassemblyjs/wasm-edit" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + acorn "^8.0.4" + browserslist "^4.14.5" + chrome-trace-event "^1.0.2" + enhanced-resolve "^5.3.1" + eslint-scope "^5.1.1" + events "^3.2.0" + glob-to-regexp "^0.4.1" + graceful-fs "^4.2.4" + json-parse-better-errors "^1.0.2" + loader-runner "^4.1.0" + mime-types "^2.1.27" + neo-async "^2.6.2" + pkg-dir "^4.2.0" + schema-utils "^3.0.0" + tapable "^2.0.0" + terser-webpack-plugin "^5.0.3" + watchpack "^2.0.0" + webpack-sources "^2.1.1" + whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0"