Skip to content

Commit

Permalink
Merge pull request #777 from MoralisWeb3/move-core-to-common
Browse files Browse the repository at this point in the history
refactor: move core to common-core
  • Loading branch information
ErnoW authored Oct 26, 2022
2 parents ec670b2 + 6757267 commit 241a7a1
Show file tree
Hide file tree
Showing 276 changed files with 554 additions and 559 deletions.
19 changes: 19 additions & 0 deletions .changeset/afraid-coats-peel.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
'demo-parse-server-migration': minor
'@moralisweb3/api-utils': minor
'@moralisweb3/auth': minor
'@moralisweb3/client-firebase-auth-utils': minor
'@moralisweb3/client-firebase-evm-auth': minor
'@moralisweb3/client-firebase-sol-auth': minor
'@moralisweb3/common-core': minor
'@moralisweb3/common-evm-utils': minor
'@moralisweb3/common-sol-utils': minor
'@moralisweb3/common-streams-utils': minor
'@moralisweb3/evm-api': minor
'moralis': minor
'@moralisweb3/sol-api': minor
'@moralisweb3/streams': minor
'@moralisweb3/test-utils': minor
---

Move `@moralisweb3/core` package to `@moralisweb3/common-core`
14 changes: 7 additions & 7 deletions .changeset/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,19 @@
"commit": false,
"fixed": [
[
"moralis",
"@moralisweb3/core",
"@moralisweb3/auth",
"@moralisweb3/streams",
"@moralisweb3/api-utils",
"@moralisweb3/auth",
"@moralisweb3/client-firebase-auth-utils",
"@moralisweb3/client-firebase-evm-auth",
"@moralisweb3/client-firebase-sol-auth",
"@moralisweb3/common-core",
"@moralisweb3/common-evm-utils",
"@moralisweb3/common-sol-utils",
"@moralisweb3/common-streams-utils",
"@moralisweb3/evm-api",
"@moralisweb3/sol-api",
"@moralisweb3/client-firebase-auth-utils",
"@moralisweb3/client-firebase-evm-auth",
"@moralisweb3/client-firebase-sol-auth"
"@moralisweb3/streams",
"moralis"
]
],
"linked": [],
Expand Down
16 changes: 8 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,20 +115,20 @@ It's possible to install all functionalities of Moralis by installing `moralis`

## 1. Install the dependencies

Instead of installing `moralis` you can need to install the packages that you want to use. You always need to install the `@moralisweb3/core` package. For example:
Instead of installing `moralis` you can need to install the packages that you want to use. You always need to install the `@moralisweb3/common-core` package. For example:

```shell
yarn add @moralisweb3/core @moralisweb3/evm @moralisweb3/evm-api @moralisweb3/evm-wallet-connect-connector
yarn add @moralisweb3/common-core @moralisweb3/evm @moralisweb3/evm-api @moralisweb3/evm-wallet-connect-connector
```

Then at the top of your code (before any interaction with Moralis), you need to register the modules to the core package

```javascript
import MoralisCore from '@moralisweb3/core';
import Core from '@moralisweb3/common-core';
import MoralisEvmApi from '@moralisweb3/evm-api';

const core = MoralisCore.create();
// Register all imported modules to the @moralisweb3/core module
const core = Core.create();
// Register all imported modules to the @moralisweb3/common-core module
core.registerModules([MoralisEvmApi]);
```

Expand Down Expand Up @@ -162,10 +162,10 @@ Of course you are free to combine the modules in a single object, and use that i

```javascript
// moralis.ts
import { MoralisCore } from '@moralisweb3/core';
import { Core } from '@moralisweb3/common-core';
import EvmApi from '@moralisweb3/evm-api';

const core = MoralisCore.create();
const core = Core.create();
const evmApi = EvmApi.create(core);
core.registerModules([evmApi]);

Expand Down Expand Up @@ -193,7 +193,7 @@ The core module is required in all applications. It will handle global dependenc

| package | Changelog | Description |
| ---------------------------------------------- |--------- | ------------------------------------------------------------------------------------ |
| [@moralisweb3/core](./packages/core) | [CHANGELOG.md](./packages/core/CHANGELOG.md) | Core logic, responsible for core logic and sharing state and events between packages |
| [@moralisweb3/common-core](./packages/common/core) | [CHANGELOG.md](./packages/common/core/CHANGELOG.md) | Core logic, responsible for core logic and sharing state and events between packages |


## Utilities
Expand Down
2 changes: 1 addition & 1 deletion demos/express-proxy/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"main": "dist/index.js",
"private": true,
"dependencies": {
"@moralisweb3/core": "^2.6.7",
"@moralisweb3/common-core": "^2.6.7",
"@types/express-rate-limit": "^6.0.0",
"dotenv": "^16.0.1",
"envalid": "7.3.1",
Expand Down
2 changes: 1 addition & 1 deletion demos/express-proxy/src/middlewares/errorHandler.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { MoralisError, isMoralisError } from '@moralisweb3/core';
import { MoralisError, isMoralisError } from '@moralisweb3/common-core';
import { NextFunction, Request, Response } from 'express';
import { AxiosError } from 'axios';

Expand Down
2 changes: 1 addition & 1 deletion demos/moralis-stream/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"main": "dist/index.js",
"private": true,
"dependencies": {
"@moralisweb3/core": "^2.6.7",
"@moralisweb3/common-core": "^2.6.7",
"dotenv": "^16.0.1",
"envalid": "7.3.1",
"express": "^4.18.1",
Expand Down
2 changes: 1 addition & 1 deletion demos/moralis-stream/src/middlewares/errorHandler.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { MoralisError, isMoralisError } from '@moralisweb3/core';
import { MoralisError, isMoralisError } from '@moralisweb3/common-core';
import { NextFunction, Request, Response } from 'express';
import { AxiosError } from 'axios';

Expand Down
2 changes: 1 addition & 1 deletion demos/parse-server-migration/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"private": true,
"dependencies": {
"@codemirror/language": "^0.20.0",
"@moralisweb3/core": "^2.2.0",
"@moralisweb3/common-core": "^2.6.7",
"@types/node": "^18.7.15",
"dotenv": "^16.0.1",
"envalid": "7.3.1",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ const generateAllCloudCode = (module: Module, endpoints: Endpoint[]) => {
let output = `/* eslint-disable @typescript-eslint/no-var-requires */
/* eslint-disable @typescript-eslint/no-explicit-any */
import Moralis from 'moralis'
import { MoralisError } from '@moralisweb3/core';
import { MoralisError } from '@moralisweb3/common-core';
import { handleRateLimit } from '../../rateLimit'
import { AxiosError } from 'axios'
declare const Parse: any;
Expand Down
2 changes: 1 addition & 1 deletion demos/parse-server-migration/src/cloud/generated/evmApi.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* eslint-disable @typescript-eslint/no-var-requires */
/* eslint-disable @typescript-eslint/no-explicit-any */
import Moralis from 'moralis'
import { MoralisError } from '@moralisweb3/core';
import { MoralisError } from '@moralisweb3/common-core';
import { handleRateLimit } from '../../rateLimit'
import { AxiosError } from 'axios'
declare const Parse: any;
Expand Down
2 changes: 1 addition & 1 deletion demos/parse-server-migration/src/cloud/generated/solApi.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* eslint-disable @typescript-eslint/no-var-requires */
/* eslint-disable @typescript-eslint/no-explicit-any */
import Moralis from 'moralis'
import { MoralisError } from '@moralisweb3/core';
import { MoralisError } from '@moralisweb3/common-core';
import { handleRateLimit } from '../../rateLimit'
import { AxiosError } from 'axios'
declare const Parse: any;
Expand Down
2 changes: 1 addition & 1 deletion demos/parse-server/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"private": true,
"dependencies": {
"@codemirror/language": "^0.20.0",
"@moralisweb3/core": "^2.6.7",
"@moralisweb3/common-core": "^2.6.7",
"dotenv": "^16.0.1",
"envalid": "7.3.1",
"express": "^4.18.1",
Expand Down
2 changes: 1 addition & 1 deletion demos/parse-server/src/middlewares/errorHandler.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { isMoralisError, MoralisError } from '@moralisweb3/core';
import { isMoralisError, MoralisError } from '@moralisweb3/common-core';
import { NextFunction, Request, Response } from 'express';
import { AxiosError } from 'axios';

Expand Down
4 changes: 2 additions & 2 deletions demos/parse-server/src/utils/ParseServerRequest.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { MoralisCoreProvider, RequestController } from '@moralisweb3/core';
import { CoreProvider, RequestController } from '@moralisweb3/common-core';
import config from '../config';

export class ParseServerRequest {
protected readonly requestController: RequestController;

constructor() {
const core = MoralisCoreProvider.getDefault();
const core = CoreProvider.getDefault();
this.requestController = RequestController.create(core);
}

Expand Down
2 changes: 1 addition & 1 deletion demos/supabase-auth/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"main": "dist/index.js",
"private": true,
"dependencies": {
"@moralisweb3/core": "^2.6.7",
"@moralisweb3/common-core": "^2.6.7",
"@supabase/supabase-js": "^1.35.4",
"dotenv": "^16.0.1",
"envalid": "7.3.1",
Expand Down
2 changes: 1 addition & 1 deletion demos/supabase-auth/src/middlewares/errorHandler.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { MoralisError } from '@moralisweb3/core';
import { MoralisError } from '@moralisweb3/common-core';
import { NextFunction, Request, Response } from 'express';

const makeMoralisErrorMessage = (error: MoralisError) => {
Expand Down
2 changes: 1 addition & 1 deletion jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ module.exports = {
'^@moralisweb3/api-utils': path.join(__dirname, 'packages/apiUtils/src'),
'^@moralisweb3/test-utils': path.join(__dirname, 'packages/testUtils/src'),
'^@moralisweb3/common-streams-utils': path.join(__dirname, 'packages/common/streamsUtils/src'),
'^@moralisweb3/core': path.join(__dirname, 'packages/core/src'),
'^@moralisweb3/common-core': path.join(__dirname, 'packages/common/core/src'),
'^@moralisweb3/(.*)$': path.join(__dirname, 'packages/$1/src'),
},
modulePaths: ['<rootDir>'],
Expand Down
2 changes: 1 addition & 1 deletion packages/apiUtils/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,6 @@
"@moralisweb3/common-evm-utils": "^2.6.7"
},
"dependencies": {
"@moralisweb3/core": "^2.6.7"
"@moralisweb3/common-core": "^2.6.7"
}
}
8 changes: 4 additions & 4 deletions packages/apiUtils/src/ApiUtils.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { Module, MoralisCore, MoralisCoreProvider } from '@moralisweb3/core';
import { Module, Core, CoreProvider } from '@moralisweb3/common-core';
import { ApiUtilsConfigSetup } from './config/ApiUtilsConfigSetup';

export class ApiUtils extends Module {
public static readonly moduleName = 'api';

public static create(core?: MoralisCore): ApiUtils {
return new ApiUtils(core ?? MoralisCoreProvider.getDefault());
public static create(core?: Core): ApiUtils {
return new ApiUtils(core ?? CoreProvider.getDefault());
}

public constructor(core: MoralisCore) {
public constructor(core: Core) {
super(ApiUtils.moduleName, core);
}

Expand Down
2 changes: 1 addition & 1 deletion packages/apiUtils/src/config/ApiUtilsConfig.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ConfigKey } from '@moralisweb3/core';
import { ConfigKey } from '@moralisweb3/common-core';

export const ApiUtilsConfig = {
apiKey: {
Expand Down
2 changes: 1 addition & 1 deletion packages/apiUtils/src/config/ApiUtilsConfigSetup.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Config } from '@moralisweb3/core';
import { Config } from '@moralisweb3/common-core';
import { ApiUtilsConfig } from './ApiUtilsConfig';

export class ApiUtilsConfigSetup {
Expand Down
2 changes: 1 addition & 1 deletion packages/apiUtils/src/errors/isNotFoundError.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ApiErrorCode, isMoralisError } from '@moralisweb3/core';
import { ApiErrorCode, isMoralisError } from '@moralisweb3/common-core';

export function isNotFoundError(e: unknown): boolean {
if (isMoralisError(e)) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ApiErrorCode, MoralisApiError } from '@moralisweb3/core';
import { ApiErrorCode, MoralisApiError } from '@moralisweb3/common-core';
import { ApiResultAdapter } from './ApiResultAdapter';
import { PaginatedResult } from './PaginatedEndpoint';

Expand Down
2 changes: 1 addition & 1 deletion packages/apiUtils/src/resolvers/ApiResultAdapter.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ApiErrorCode, MoralisApiError, MoralisData, MoralisDataObject } from '@moralisweb3/core';
import { ApiErrorCode, MoralisApiError, MoralisData, MoralisDataObject } from '@moralisweb3/common-core';

// TODO: make part of core config? The challenge in that case is to make sure it is Typed correctly
export enum ApiFormatType {
Expand Down
2 changes: 1 addition & 1 deletion packages/apiUtils/src/resolvers/DescriptorConverter.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Operation } from '@moralisweb3/core';
import { Operation } from '@moralisweb3/common-core';
import { EndpointMethod } from './Endpoint';
import { EndpointDescriptor } from './Endpoints';

Expand Down
4 changes: 2 additions & 2 deletions packages/apiUtils/src/resolvers/Endpoint.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { MoralisCore } from '@moralisweb3/core';
import { Core } from '@moralisweb3/common-core';

export type EndpointMethod = 'get' | 'post' | 'put' | 'delete';

Expand All @@ -21,7 +21,7 @@ export interface Endpoint<ApiParams, Params, ApiResult, AdaptedResult, JSONResul
}

export type EndpointFactory<ApiParams, Params, ApiResult, AdaptedResult, JSONResult> = (
core: MoralisCore,
core: Core,
) => Endpoint<ApiParams, Params, ApiResult, AdaptedResult, JSONResult>;

export function createEndpointFactory<ApiParams, Params, ApiResult, AdaptedResult, JSONResult>(
Expand Down
6 changes: 3 additions & 3 deletions packages/apiUtils/src/resolvers/EndpointResolver.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { ApiFormatType } from './ApiResultAdapter';
import axios from 'axios';
import { EndpointResolver } from './EndpointResolver';
import { setupApi } from '../test/setup';
import { MoralisCore } from '@moralisweb3/core';
import { Core } from '@moralisweb3/common-core';
import { createEndpoint, createEndpointFactory } from './Endpoint';

const MOCK_API_KEY = 'test-api-key';
Expand All @@ -25,7 +25,7 @@ interface EndpointWeight {
}

describe('ApiResolver', () => {
let core: MoralisCore;
let core: Core;
let resolver: EndpointResolver<
unknown,
unknown,
Expand Down Expand Up @@ -97,7 +97,7 @@ describe('ApiResolver', () => {
'x-api-key': MOCK_API_KEY,
'x-moralis-build-target': expect.any(String),
'x-moralis-platform': expect.any(String),
'x-moralis-platform-version': MoralisCore.libVersion,
'x-moralis-platform-version': Core.libVersion,
}),
}),
);
Expand Down
4 changes: 2 additions & 2 deletions packages/apiUtils/src/resolvers/EndpointResolver.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { MoralisCore, ApiErrorCode, Config, MoralisApiError, RequestController, CoreConfig } from '@moralisweb3/core';
import { Core, ApiErrorCode, Config, MoralisApiError, RequestController, CoreConfig } from '@moralisweb3/common-core';
import { ApiUtilsConfig } from '../config/ApiUtilsConfig';
import { isNotFoundError } from '../errors/isNotFoundError';
import { ApiResultAdapter } from './ApiResultAdapter';
Expand All @@ -8,7 +8,7 @@ import { getCommonHeaders } from './getCommonHeaders';

export class EndpointResolver<ApiParams, Params, ApiResult, AdaptedResult, JSONResult> {
public static create<ApiParams, Params, ApiResult, AdaptedResult, JSONResult>(
core: MoralisCore,
core: Core,
baseUrl: string,
endpointFactory: EndpointFactory<ApiParams, Params, ApiResult, AdaptedResult, JSONResult>,
) {
Expand Down
4 changes: 2 additions & 2 deletions packages/apiUtils/src/resolvers/Endpoints.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import MoralisCore from '@moralisweb3/core';
import Core from '@moralisweb3/common-core';
import { Endpoint, EndpointFactory, EndpointMethod } from './Endpoint';
import { EndpointResolver } from './EndpointResolver';
import { PaginatedEndpointFactory, PaginatedParams } from './PaginatedEndpoint';
Expand All @@ -18,7 +18,7 @@ export class Endpoints {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
private readonly endpoints: Endpoint<any, any, any, any, unknown>[] = [];

public constructor(private readonly core: MoralisCore, private readonly baseUrl: string) {}
public constructor(private readonly core: Core, private readonly baseUrl: string) {}

public createFetcher<ApiParams, Params, ApiResult, AdaptedResult, JSONResult>(
factory: EndpointFactory<ApiParams, Params, ApiResult, AdaptedResult, JSONResult>,
Expand Down
4 changes: 2 additions & 2 deletions packages/apiUtils/src/resolvers/PaginatedEndpoint.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import MoralisCore from '@moralisweb3/core/lib';
import Core from '@moralisweb3/common-core';
import { Endpoint, EndpointBodyType } from './Endpoint';

export interface PaginatedParams extends Record<string, unknown> {
Expand All @@ -24,7 +24,7 @@ export type PaginatedEndpointFactory<
ApiResult,
AdaptedResult,
JSONResult,
> = (core: MoralisCore) => PaginatedEndpoint<ApiParams, Params, ApiResult, AdaptedResult, JSONResult>;
> = (core: Core) => PaginatedEndpoint<ApiParams, Params, ApiResult, AdaptedResult, JSONResult>;

export function createPaginatedEndpointFactory<
ApiParams,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import {
} from './PaginatedEndpoint';
import { setupApi } from '../test/setup';
import { PaginatedEndpointResolver } from './PaginatedEndpointResolver';
import { MoralisCore } from '@moralisweb3/core';
import { Core } from '@moralisweb3/common-core';

const MOCK_API_KEY = 'test-api-key';
const API_ROOT = 'https://deep-index.moralis.io/api/v2';
Expand Down Expand Up @@ -60,7 +60,7 @@ type ApiResult = {
}[];

describe('PaginatedEndpointResolver', () => {
let core: MoralisCore;
let core: Core;
let resolver: PaginatedEndpointResolver<
any,
Params,
Expand Down
4 changes: 2 additions & 2 deletions packages/apiUtils/src/resolvers/PaginatedEndpointResolver.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { tryGetNextPageParams } from '../utils/tryGetNextPageParams';
import { ApiPaginatedResultAdapter } from './ApiPaginatedResultAdapter';
import { ApiUtilsConfig } from '../config/ApiUtilsConfig';
import { MoralisCore, ApiErrorCode, Config, MoralisApiError, RequestController } from '@moralisweb3/core';
import { Core, ApiErrorCode, Config, MoralisApiError, RequestController } from '@moralisweb3/common-core';
import { PaginatedResult, PaginatedEndpoint, PaginatedEndpointFactory, PaginatedParams } from './PaginatedEndpoint';
import { EndpointParamsReader } from './EndpointParamsReader';

Expand All @@ -13,7 +13,7 @@ export class PaginatedEndpointResolver<
JSONResult,
> {
public static create<ApiParams, Params extends PaginatedParams, ApiResult, AdaptedResult, JSONResult>(
core: MoralisCore,
core: Core,
baseUrl: string,
endpointFactory: PaginatedEndpointFactory<ApiParams, Params, ApiResult, AdaptedResult, JSONResult>,
) {
Expand Down
Loading

1 comment on commit 241a7a1

@github-actions
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Test coverage

Title Lines Statements Branches Functions
api-utils Coverage: 60%
60.45% (295/488) 44.62% (54/121) 64.48% (69/107)
auth Coverage: 100%
100% (143/143) 90.9% (20/22) 100% (42/42)
evm-api Coverage: 82%
81.46% (466/572) 16.56% (54/326) 64.3% (191/297)
common-evm-utils Coverage: 62%
63.05% (669/1061) 35.01% (104/297) 30.43% (112/368)
sol-api Coverage: 100%
100% (20/20) 66.66% (4/6) 100% (6/6)
common-sol-utils Coverage: 67%
67.03% (120/179) 63.15% (12/19) 46.26% (31/67)
common-streams-utils Coverage: 95%
95.6% (674/705) 97.93% (190/194) 100% (244/244)
streams Coverage: 82%
82.72% (388/469) 64% (64/100) 73.6% (92/125)

Please sign in to comment.