mirror of
https://github.com/strapi/strapi.git
synced 2025-09-19 13:31:34 +00:00
Merge pull request #19860 from strapi/v5/types/fix-incorrect-imports
This commit is contained in:
commit
4d5f8c255d
@ -220,7 +220,7 @@ Before submitting an issue you need to make sure:
|
||||
|
||||
- You are experiencing a technical issue with Strapi.
|
||||
- You have already searched for related [issues](https://github.com/strapi/strapi/issues) and found none open (if you found a related _closed_ issue, please link to it from your post).
|
||||
- You are not asking a question about how to use Strapi or about whether or not Strapi has a certain feature. For general help using Strapi, you may:
|
||||
- You are not asking a question about how to use Strapi or about whether Strapi has a certain feature. For general help using Strapi, you may:
|
||||
- Refer to the [official Strapi documentation](https://docs.strapi.io).
|
||||
- Ask a member of the community in the [Strapi Discord Community](https://discord.strapi.io/).
|
||||
- Ask a question on the [Strapi community forum](https://forum.strapi.io).
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { LoadedStrapi, Common } from '@strapi/types';
|
||||
import type { Core, UID } from '@strapi/types';
|
||||
import { testInTransaction as wrapInTransaction } from '../../../../utils';
|
||||
|
||||
// Wrap "it" with a transaction
|
||||
@ -22,13 +22,13 @@ const { createTestBuilder } = require('api-tests/builder');
|
||||
const { createStrapiInstance } = require('api-tests/strapi');
|
||||
const { createAuthRequest } = require('api-tests/request');
|
||||
|
||||
let strapi: LoadedStrapi;
|
||||
let strapi: Core.LoadedStrapi;
|
||||
let shopDocuments;
|
||||
let shopsDB;
|
||||
let rq;
|
||||
const builder = createTestBuilder();
|
||||
|
||||
const SHOP_UID = 'api::shop.shop' as Common.UID.ContentType;
|
||||
const SHOP_UID = 'api::shop.shop' as UID.ContentType;
|
||||
|
||||
const shopModel = {
|
||||
attributes: {
|
||||
|
@ -1,23 +1,24 @@
|
||||
/**
|
||||
* Relations interactions with non DP content types.
|
||||
*/
|
||||
import { LoadedStrapi, Common } from '@strapi/types';
|
||||
import type { Core, UID } from '@strapi/types';
|
||||
|
||||
import { testInTransaction } from '../../../../utils';
|
||||
|
||||
const { createTestBuilder } = require('api-tests/builder');
|
||||
const { createStrapiInstance } = require('api-tests/strapi');
|
||||
const { createAuthRequest } = require('api-tests/request');
|
||||
|
||||
let strapi: LoadedStrapi;
|
||||
let strapi: Core.LoadedStrapi;
|
||||
const builder = createTestBuilder();
|
||||
let productDocuments;
|
||||
let tagDocuments;
|
||||
let shopDocuments;
|
||||
let rq;
|
||||
|
||||
const PRODUCT_UID = 'api::product.product' as Common.UID.ContentType;
|
||||
const TAG_UID = 'api::tag.tag' as Common.UID.ContentType;
|
||||
const SHOP_UID = 'api::shop.shop' as Common.UID.ContentType;
|
||||
const PRODUCT_UID = 'api::product.product' as UID.ContentType;
|
||||
const TAG_UID = 'api::tag.tag' as UID.ContentType;
|
||||
const SHOP_UID = 'api::shop.shop' as UID.ContentType;
|
||||
|
||||
const productModel = {
|
||||
attributes: {
|
||||
|
@ -1,3 +1,5 @@
|
||||
import type { StrapiApp } from '@strapi/strapi/admin';
|
||||
|
||||
export default {
|
||||
config: {
|
||||
locales: [
|
||||
@ -29,7 +31,7 @@ export default {
|
||||
// 'zh',
|
||||
],
|
||||
},
|
||||
bootstrap(app) {
|
||||
bootstrap(app: StrapiApp) {
|
||||
console.log(app);
|
||||
},
|
||||
};
|
||||
|
@ -46,6 +46,7 @@ export { useRBAC } from './hooks/useRBAC';
|
||||
/**
|
||||
* Types
|
||||
*/
|
||||
export type { StrapiApp } from './StrapiApp';
|
||||
export type { Store } from './core/store/configure';
|
||||
export type { SanitizedAdminUser } from '../../shared/contracts/shared';
|
||||
export type {
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { assign } from 'lodash/fp';
|
||||
import type { Strapi } from '@strapi/types';
|
||||
import type { Core } from '@strapi/types';
|
||||
import { getService } from '../utils';
|
||||
|
||||
const getSSOProvidersList = async () => {
|
||||
@ -8,7 +8,7 @@ const getSSOProvidersList = async () => {
|
||||
return providerRegistry.getAll().map(({ uid }: { uid: string }) => uid);
|
||||
};
|
||||
|
||||
const sendUpdateProjectInformation = async (strapi: Strapi) => {
|
||||
const sendUpdateProjectInformation = async (strapi: Core.Strapi) => {
|
||||
let groupProperties = {};
|
||||
|
||||
const numberOfActiveAdminUsers = await getService('user').count({ isActive: true });
|
||||
@ -47,7 +47,7 @@ const sendUpdateProjectInformation = async (strapi: Strapi) => {
|
||||
});
|
||||
};
|
||||
|
||||
const startCron = (strapi: Strapi) => {
|
||||
const startCron = (strapi: Core.Strapi) => {
|
||||
strapi.cron.add({
|
||||
'0 0 0 * * *': () => sendUpdateProjectInformation(strapi),
|
||||
});
|
||||
|
@ -1,5 +1,4 @@
|
||||
import { LoadedStrapi as Strapi } from '@strapi/types';
|
||||
import { filter, set, forEach, pipe, map, stubTrue, cond, defaultsDeep } from 'lodash/fp';
|
||||
import { filter, forEach, pipe, map, stubTrue, cond, defaultsDeep } from 'lodash/fp';
|
||||
import { getService } from '../../utils';
|
||||
import { getVisibleContentTypesUID, hasStageAttribute } from '../../utils/review-workflows';
|
||||
import defaultStages from '../../constants/default-stages.json';
|
||||
@ -15,6 +14,8 @@ import {
|
||||
import { persistTables, removePersistedTablesWithSuffix } from '../../utils/persisted-tables';
|
||||
import webhookEvents from '../../constants/webhookEvents';
|
||||
|
||||
import type { Core } from '@strapi/types';
|
||||
|
||||
const MAX_DB_TABLE_NAME_LEN = 63; // Postgres limit
|
||||
// The longest index name that Strapi can create is prefixed with '_strapi_stage_links_inv_fk', so the content type name should be no longer than this.
|
||||
const MAX_JOIN_TABLE_NAME_SUFFIX =
|
||||
@ -68,7 +69,7 @@ const setReviewWorkflowAttributes = (contentType: any) => {
|
||||
setAssigneeAttribute(contentType);
|
||||
};
|
||||
|
||||
function extendReviewWorkflowContentTypes({ strapi }: { strapi: Strapi }) {
|
||||
function extendReviewWorkflowContentTypes({ strapi }: { strapi: Core.LoadedStrapi }) {
|
||||
const extendContentType = (contentTypeUID: any) => {
|
||||
const assertContentTypeCompatibility = (contentType: any) =>
|
||||
contentType.collectionName.length <= MAX_CONTENT_TYPE_NAME_LEN;
|
||||
@ -95,7 +96,7 @@ function extendReviewWorkflowContentTypes({ strapi }: { strapi: Strapi }) {
|
||||
])(strapi.contentTypes);
|
||||
}
|
||||
|
||||
function persistStagesJoinTables({ strapi }: { strapi: Strapi }) {
|
||||
function persistStagesJoinTables({ strapi }: { strapi: Core.LoadedStrapi }) {
|
||||
return async ({ contentTypes }: any) => {
|
||||
const getStageTableToPersist = (contentTypeUID: any) => {
|
||||
// Persist the stage join table
|
||||
@ -116,12 +117,12 @@ function persistStagesJoinTables({ strapi }: { strapi: Strapi }) {
|
||||
};
|
||||
}
|
||||
|
||||
const registerWebhookEvents = async ({ strapi }: { strapi: Strapi }) =>
|
||||
const registerWebhookEvents = async ({ strapi }: { strapi: Core.LoadedStrapi }) =>
|
||||
Object.entries(webhookEvents).forEach(([eventKey, event]) =>
|
||||
strapi.webhookStore.addAllowedEvent(eventKey, event)
|
||||
);
|
||||
|
||||
export default ({ strapi }: { strapi: Strapi }) => {
|
||||
export default ({ strapi }: { strapi: Core.LoadedStrapi }) => {
|
||||
const workflowsService = getService('workflows', { strapi });
|
||||
const stagesService = getService('stages', { strapi });
|
||||
const workflowsValidationService = getService('review-workflows-validation', { strapi });
|
||||
|
@ -1,5 +1,5 @@
|
||||
import type { Strapi } from '@strapi/types';
|
||||
import type { Core } from '@strapi/types';
|
||||
|
||||
declare global {
|
||||
const strapi: Strapi;
|
||||
const strapi: Core.Strapi;
|
||||
}
|
||||
|
@ -22,12 +22,12 @@ const TYPESCRIPT = (pluginName: string): TemplateFile[] => [
|
||||
import policies from './policies';
|
||||
import routes from './routes';
|
||||
import services from './services';
|
||||
|
||||
|
||||
export default {
|
||||
bootstrap,
|
||||
destroy,
|
||||
register,
|
||||
|
||||
|
||||
config,
|
||||
controllers,
|
||||
contentTypes,
|
||||
@ -41,9 +41,9 @@ const TYPESCRIPT = (pluginName: string): TemplateFile[] => [
|
||||
{
|
||||
name: 'server/src/bootstrap.ts',
|
||||
contents: outdent`
|
||||
import type { Strapi } from '@strapi/strapi';
|
||||
import type { Core } from '@strapi/strapi';
|
||||
|
||||
const bootstrap = ({ strapi }: { strapi: Strapi }) => {
|
||||
const bootstrap = ({ strapi }: { strapi: Core.Strapi }) => {
|
||||
// bootstrap phase
|
||||
};
|
||||
|
||||
@ -53,9 +53,9 @@ const TYPESCRIPT = (pluginName: string): TemplateFile[] => [
|
||||
{
|
||||
name: 'server/src/destroy.ts',
|
||||
contents: outdent`
|
||||
import type { Strapi } from '@strapi/strapi';
|
||||
import type { Core } from '@strapi/strapi';
|
||||
|
||||
const destroy = ({ strapi }: { strapi: Strapi }) => {
|
||||
const destroy = ({ strapi }: { strapi: Core.Strapi }) => {
|
||||
// destroy phase
|
||||
};
|
||||
|
||||
@ -65,9 +65,9 @@ const TYPESCRIPT = (pluginName: string): TemplateFile[] => [
|
||||
{
|
||||
name: 'server/src/register.ts',
|
||||
contents: outdent`
|
||||
import type { Strapi } from '@strapi/strapi';
|
||||
import type { Core } from '@strapi/strapi';
|
||||
|
||||
const register = ({ strapi }: { strapi: Strapi }) => {
|
||||
const register = ({ strapi }: { strapi: Core.Strapi }) => {
|
||||
// register phase
|
||||
};
|
||||
|
||||
@ -102,9 +102,9 @@ const TYPESCRIPT = (pluginName: string): TemplateFile[] => [
|
||||
{
|
||||
name: 'server/src/controllers/controller.ts',
|
||||
contents: outdent`
|
||||
import type { Strapi } from '@strapi/strapi';
|
||||
import type { Core } from '@strapi/strapi';
|
||||
|
||||
const controller = ({ strapi }: { strapi: Strapi }) => ({
|
||||
const controller = ({ strapi }: { strapi: Core.Strapi }) => ({
|
||||
index(ctx) {
|
||||
ctx.body = strapi
|
||||
.plugin('${pluginName}')
|
||||
@ -158,9 +158,9 @@ const TYPESCRIPT = (pluginName: string): TemplateFile[] => [
|
||||
{
|
||||
name: 'server/src/services/service.ts',
|
||||
contents: outdent`
|
||||
import type { Strapi } from '@strapi/strapi';
|
||||
import type { Core } from '@strapi/strapi';
|
||||
|
||||
const service = ({ strapi }: { strapi: Strapi }) => ({
|
||||
const service = ({ strapi }: { strapi: Core.Strapi }) => ({
|
||||
getWelcomeMessage() {
|
||||
return 'Welcome to Strapi 🚀';
|
||||
},
|
||||
@ -199,7 +199,7 @@ const JAVASCRIPT = (pluginName: string): TemplateFile[] => [
|
||||
bootstrap,
|
||||
destroy,
|
||||
register,
|
||||
|
||||
|
||||
config,
|
||||
controllers,
|
||||
contentTypes,
|
||||
@ -230,7 +230,7 @@ const JAVASCRIPT = (pluginName: string): TemplateFile[] => [
|
||||
const destroy = ({ strapi }) => {
|
||||
// destroy phase
|
||||
};
|
||||
|
||||
|
||||
module.exports = destroy;
|
||||
`,
|
||||
},
|
||||
@ -242,7 +242,7 @@ const JAVASCRIPT = (pluginName: string): TemplateFile[] => [
|
||||
const register = ({ strapi }) => {
|
||||
// register phase
|
||||
};
|
||||
|
||||
|
||||
module.exports = register;
|
||||
`,
|
||||
},
|
||||
|
@ -15,7 +15,7 @@ import packageJSON from './resources/json/common/package.json';
|
||||
import jsconfig from './resources/json/js/jsconfig.json';
|
||||
import adminTsconfig from './resources/json/ts/tsconfig-admin.json';
|
||||
import serverTsconfig from './resources/json/ts/tsconfig-server.json';
|
||||
import { createDatabaseConfig, generateDbEnvariables } from './resources/templates/database';
|
||||
import { createDatabaseConfig, generateDbEnvVariables } from './resources/templates/database';
|
||||
import createEnvFile from './resources/templates/env';
|
||||
import { Configuration, Scope, isStderrError } from './types';
|
||||
|
||||
@ -110,7 +110,7 @@ export default async function createProject(
|
||||
await fse.ensureDir(join(rootPath, 'node_modules'));
|
||||
|
||||
// create config/database
|
||||
await fse.appendFile(join(rootPath, '.env'), generateDbEnvariables({ client, connection }));
|
||||
await fse.appendFile(join(rootPath, '.env'), generateDbEnvVariables({ client, connection }));
|
||||
await fse.writeFile(
|
||||
join(rootPath, `config/database.${language}`),
|
||||
createDatabaseConfig({ useTypescript })
|
||||
|
@ -1,3 +1,5 @@
|
||||
import type { StrapiApp } from '@strapi/strapi/admin';
|
||||
|
||||
export default {
|
||||
config: {
|
||||
locales: [
|
||||
@ -29,7 +31,7 @@ export default {
|
||||
// 'zh',
|
||||
],
|
||||
},
|
||||
bootstrap(app) {
|
||||
bootstrap(app: StrapiApp) {
|
||||
console.log(app);
|
||||
},
|
||||
};
|
||||
|
@ -1,3 +1,5 @@
|
||||
// import type { Core } from '@strapi/strapi';
|
||||
|
||||
export default {
|
||||
/**
|
||||
* An asynchronous register function that runs before
|
||||
@ -5,7 +7,7 @@ export default {
|
||||
*
|
||||
* This gives you an opportunity to extend code.
|
||||
*/
|
||||
register(/*{ strapi }*/) {},
|
||||
register(/* { strapi }: { strapi: Core.Strapi } */) {},
|
||||
|
||||
/**
|
||||
* An asynchronous bootstrap function that runs before
|
||||
@ -14,5 +16,5 @@ export default {
|
||||
* This gives you an opportunity to set up your data model,
|
||||
* run jobs, or perform some special logic.
|
||||
*/
|
||||
bootstrap(/*{ strapi }*/) {},
|
||||
bootstrap(/* { strapi }: { strapi: Core.Strapi } */) {},
|
||||
};
|
||||
|
@ -13,7 +13,7 @@ export const createDatabaseConfig = ({ useTypescript }: { useTypescript: boolean
|
||||
return compile();
|
||||
};
|
||||
|
||||
export const generateDbEnvariables = ({
|
||||
export const generateDbEnvVariables = ({
|
||||
connection,
|
||||
client,
|
||||
}: {
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { Core } from '@strapi/strapi';
|
||||
// import type { Core } from '@strapi/strapi';
|
||||
|
||||
export default ({ strapi }: { strapi: Core.Strapi }) => {
|
||||
export default (/* { strapi }: { strapi: Core.Strapi } */) => {
|
||||
// bootstrap phase
|
||||
};
|
||||
|
@ -1,6 +1,6 @@
|
||||
import { Strapi } from '@strapi/strapi';
|
||||
import type { Core } from '@strapi/strapi';
|
||||
|
||||
export default ({ strapi }: { strapi: Strapi }) => ({
|
||||
export default ({ strapi }: { strapi: Core.Strapi }) => ({
|
||||
index(ctx) {
|
||||
ctx.body = strapi
|
||||
.plugin('{{ pluginName }}')
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { Core } from '@strapi/strapi';
|
||||
// import type { Core } from '@strapi/strapi';
|
||||
|
||||
export default ({ strapi }: { strapi: Core.Strapi }) => {
|
||||
export default (/* { strapi }: { strapi: Core.Strapi } */) => {
|
||||
// destroy phase
|
||||
};
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { Core } from '@strapi/strapi';
|
||||
// import type { Core } from '@strapi/strapi';
|
||||
|
||||
export default ({ strapi }: { strapi: Core.Strapi }) => {
|
||||
export default (/* { strapi }: { strapi: Core.Strapi } */) => {
|
||||
// register phase
|
||||
};
|
||||
|
@ -1,6 +1,6 @@
|
||||
import { Strapi } from '@strapi/strapi';
|
||||
// import type { Core } from '@strapi/strapi';
|
||||
|
||||
export default ({ strapi }: { strapi: Strapi }) => ({
|
||||
export default (/* { strapi }: { strapi: Core.Strapi } */) => ({
|
||||
getWelcomeMessage() {
|
||||
return 'Welcome to Strapi 🚀';
|
||||
},
|
||||
|
@ -2,9 +2,9 @@
|
||||
* `{{ name }}` middleware
|
||||
*/
|
||||
|
||||
import { Strapi } from '@strapi/strapi';
|
||||
import type { Core } from '@strapi/strapi';
|
||||
|
||||
export default (config, { strapi }: { strapi: Strapi }) => {
|
||||
export default (config, { strapi }: { strapi: Core.Strapi }) => {
|
||||
// Add your own logic here.
|
||||
return async (ctx, next) => {
|
||||
strapi.log.info('In {{ name }} middleware.');
|
||||
|
Loading…
x
Reference in New Issue
Block a user