diff --git a/packages/examples/sdk-backend-node/.eslintrc.json b/packages/examples/sdk-backend-node/.eslintrc.json deleted file mode 100644 index 3456be9b9..000000000 --- a/packages/examples/sdk-backend-node/.eslintrc.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "extends": ["../../../.eslintrc.json"], - "ignorePatterns": ["!**/*"], - "overrides": [ - { - "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], - "rules": {} - }, - { - "files": ["*.ts", "*.tsx"], - "rules": {} - }, - { - "files": ["*.js", "*.jsx"], - "rules": {} - } - ] -} diff --git a/packages/examples/sdk-backend-node/Readme.md b/packages/examples/sdk-backend-node/Readme.md index 6c7eaa376..c74d916bf 100644 --- a/packages/examples/sdk-backend-node/Readme.md +++ b/packages/examples/sdk-backend-node/Readme.md @@ -22,17 +22,23 @@ git clone https://github.com/ethereum-push-notification-service/push-sdk.git cd push-sdk yarn install ``` -***Note*** - We are using `yarn` and **strongly** advise to use yarn 1.x to avoid any NPM issues. -## Setting up the SDK-Backend-Node +**_Note_** - We are using `yarn` and **strongly** advise to use yarn 1.x to avoid any NPM issues. + +## Setting up the SDK-Backend-Node + 1. Navigate to the `packages/examples/sdk-backend-node` directory. + ```bash + cd packages/examples/sdk-backend-node + ``` 2. Set up your environment variables by creating a `.env` file based on the provided `.env.sample` file. +3. Install the node dependencies + ```bash + yarn install + ``` -## Running the SDK-Backend-Node -### By GUI (preferred) -1. Click on the `NX console` extension icon in the VSCode sidebar. -2. Click on the `serve` target execute icon under `examples-sdk-backend-node` +## Running the SDK-Backend-Node -### By CLI -1. Navigate to the root level of push-sdk repository. -2. Run `yarn nx serve packages/examples/sdk-backend-node` +```bash +yarn start +``` diff --git a/packages/examples/sdk-backend-node/src/chat/chat.ts b/packages/examples/sdk-backend-node/chat/chat.ts similarity index 100% rename from packages/examples/sdk-backend-node/src/chat/chat.ts rename to packages/examples/sdk-backend-node/chat/chat.ts diff --git a/packages/examples/sdk-backend-node/src/chat/index.ts b/packages/examples/sdk-backend-node/chat/index.ts similarity index 100% rename from packages/examples/sdk-backend-node/src/chat/index.ts rename to packages/examples/sdk-backend-node/chat/index.ts diff --git a/packages/examples/sdk-backend-node/src/chat/nftChat.ts b/packages/examples/sdk-backend-node/chat/nftChat.ts similarity index 99% rename from packages/examples/sdk-backend-node/src/chat/nftChat.ts rename to packages/examples/sdk-backend-node/chat/nftChat.ts index 3b7e1500e..b238022be 100644 --- a/packages/examples/sdk-backend-node/src/chat/nftChat.ts +++ b/packages/examples/sdk-backend-node/chat/nftChat.ts @@ -146,14 +146,14 @@ async function PushAPI_nft_user_create(silent = !showAPIResponse) { account: nftAccount1, signer: nftSigner1, env: env as ENV, - additionalMeta: { NFTPGP_V1: { password: nftProfilePassword1 } }, + additionalMeta: { NFTPGP_V1: { password: nftProfilePassword1 as string } }, }); const user2 = await PushAPI.user.create({ account: nftAccount2, signer: nftSigner2, env: env as ENV, - additionalMeta: { NFTPGP_V1: { password: nftProfilePassword2 } }, + additionalMeta: { NFTPGP_V1: { password: nftProfilePassword2 as string } }, }); console.log('PushAPI_nft_user_create | Response - 200 OK'); diff --git a/packages/examples/sdk-backend-node/src/config.ts b/packages/examples/sdk-backend-node/config.ts similarity index 100% rename from packages/examples/sdk-backend-node/src/config.ts rename to packages/examples/sdk-backend-node/config.ts diff --git a/packages/examples/sdk-backend-node/jest.config.ts b/packages/examples/sdk-backend-node/jest.config.ts deleted file mode 100644 index 67e5ce7a4..000000000 --- a/packages/examples/sdk-backend-node/jest.config.ts +++ /dev/null @@ -1,16 +0,0 @@ -/* eslint-disable */ -export default { - displayName: 'examples-sdk-backend-node', - preset: '../../../jest.preset.js', - globals: { - 'ts-jest': { - tsconfig: '/tsconfig.spec.json', - }, - }, - testEnvironment: 'node', - transform: { - '^.+\\.[tj]s$': 'ts-jest', - }, - moduleFileExtensions: ['ts', 'js', 'html'], - coverageDirectory: '../../../coverage/packages/examples/sdk-backend-node', -}; diff --git a/packages/examples/sdk-backend-node/src/main.ts b/packages/examples/sdk-backend-node/main.ts similarity index 100% rename from packages/examples/sdk-backend-node/src/main.ts rename to packages/examples/sdk-backend-node/main.ts diff --git a/packages/examples/sdk-backend-node/src/notification/index.ts b/packages/examples/sdk-backend-node/notification/index.ts similarity index 99% rename from packages/examples/sdk-backend-node/src/notification/index.ts rename to packages/examples/sdk-backend-node/notification/index.ts index bcf30b688..605a60a23 100644 --- a/packages/examples/sdk-backend-node/src/notification/index.ts +++ b/packages/examples/sdk-backend-node/notification/index.ts @@ -21,7 +21,7 @@ enum ENV { const { env, showAPIResponse } = config; // If you own a channel, you can use your channel address as well -const channelPrivateKey: string = process.env.WALLET_PRIVATE_KEY; +const channelPrivateKey = process.env.WALLET_PRIVATE_KEY; /***************** SAMPLE SIGNER GENERATION *********************/ /** @@ -170,7 +170,7 @@ async function PushAPI_user_getSubscriptions(silent = !showAPIResponse) { // Push Notification - PushAPI.channels.getChannel async function PushAPI_channels_getChannel(silent = !showAPIResponse) { const channelData = await PushAPI.channels.getChannel({ - channel: channelAddress, + channel: channelAddress as string, env: env as ENV, }); diff --git a/packages/examples/sdk-backend-node/package.json b/packages/examples/sdk-backend-node/package.json new file mode 100644 index 000000000..97b7d47cb --- /dev/null +++ b/packages/examples/sdk-backend-node/package.json @@ -0,0 +1,17 @@ +{ + "name": "sdk-backend-node", + "version": "1.0.0", + "description": "Welcome to the SDK Backend Node Example project, a hands-on guide demonstrating how to leverage the power of Push Protocol in a backend environment using Node.js. This resource is an invaluable companion for developers keen to integrate Push Protocol into their backend services. Dive into the code to gain a comprehensive understanding of how to deploy various features of the Push Protocol in a Node.js backend.", + "main": "index.js", + "scripts": { + "start": "ts-node main.ts", + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC", + "dependencies": { + "@pushprotocol/restapi": "^1.4.17", + "@pushprotocol/socket": "^0.5.2" + } +} diff --git a/packages/examples/sdk-backend-node/project.json b/packages/examples/sdk-backend-node/project.json deleted file mode 100644 index 9a2dcabd9..000000000 --- a/packages/examples/sdk-backend-node/project.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "$schema": "../../../node_modules/nx/schemas/project-schema.json", - "sourceRoot": "packages/examples/sdk-backend-node/src", - "projectType": "application", - "targets": { - "build": { - "executor": "@nrwl/node:webpack", - "outputs": ["{options.outputPath}"], - "options": { - "outputPath": "dist/packages/examples/sdk-backend-node", - "main": "packages/examples/sdk-backend-node/src/main.ts", - "tsConfig": "packages/examples/sdk-backend-node/tsconfig.app.json", - "assets": ["packages/examples/sdk-backend-node/src/assets"] - }, - "configurations": { - "production": { - "optimization": true, - "extractLicenses": true, - "inspect": false, - "fileReplacements": [ - { - "replace": "packages/examples/sdk-backend-node/src/environments/environment.ts", - "with": "packages/examples/sdk-backend-node/src/environments/environment.prod.ts" - } - ] - } - } - }, - "serve": { - "executor": "@nrwl/node:node", - "options": { - "buildTarget": "examples-sdk-backend-node:build" - } - }, - "lint": { - "executor": "@nrwl/linter:eslint", - "outputs": ["{options.outputFile}"], - "options": { - "lintFilePatterns": ["packages/examples/sdk-backend-node/**/*.ts"] - } - }, - "test": { - "executor": "@nrwl/jest:jest", - "outputs": ["coverage/packages/examples/sdk-backend-node"], - "options": { - "jestConfig": "packages/examples/sdk-backend-node/jest.config.ts", - "passWithNoTests": true - } - } - }, - "tags": [] -} diff --git a/packages/examples/sdk-backend-node/src/pushAPI/index.ts b/packages/examples/sdk-backend-node/pushAPI/index.ts similarity index 100% rename from packages/examples/sdk-backend-node/src/pushAPI/index.ts rename to packages/examples/sdk-backend-node/pushAPI/index.ts diff --git a/packages/examples/sdk-backend-node/src/spaces/index.ts b/packages/examples/sdk-backend-node/spaces/index.ts similarity index 100% rename from packages/examples/sdk-backend-node/src/spaces/index.ts rename to packages/examples/sdk-backend-node/spaces/index.ts diff --git a/packages/examples/sdk-backend-node/src/assets/.gitkeep b/packages/examples/sdk-backend-node/src/assets/.gitkeep deleted file mode 100644 index e69de29bb..000000000 diff --git a/packages/examples/sdk-backend-node/src/environments/environment.prod.ts b/packages/examples/sdk-backend-node/src/environments/environment.prod.ts deleted file mode 100644 index c9669790b..000000000 --- a/packages/examples/sdk-backend-node/src/environments/environment.prod.ts +++ /dev/null @@ -1,3 +0,0 @@ -export const environment = { - production: true, -}; diff --git a/packages/examples/sdk-backend-node/src/environments/environment.ts b/packages/examples/sdk-backend-node/src/environments/environment.ts deleted file mode 100644 index a20cfe557..000000000 --- a/packages/examples/sdk-backend-node/src/environments/environment.ts +++ /dev/null @@ -1,3 +0,0 @@ -export const environment = { - production: false, -}; diff --git a/packages/examples/sdk-backend-node/tsconfig.app.json b/packages/examples/sdk-backend-node/tsconfig.app.json deleted file mode 100644 index b3cbc3b62..000000000 --- a/packages/examples/sdk-backend-node/tsconfig.app.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "./tsconfig.json", - "compilerOptions": { - "outDir": "../../../dist/out-tsc", - "module": "commonjs", - "types": ["node"] - }, - "exclude": ["jest.config.ts", "**/*.spec.ts", "**/*.test.ts"], - "include": ["**/*.ts"] -} diff --git a/packages/examples/sdk-backend-node/tsconfig.json b/packages/examples/sdk-backend-node/tsconfig.json deleted file mode 100644 index 25873177d..000000000 --- a/packages/examples/sdk-backend-node/tsconfig.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "extends": "../../../tsconfig.base.json", - "files": [], - "include": [], - "references": [ - { - "path": "./tsconfig.app.json" - }, - { - "path": "./tsconfig.spec.json" - } - ] -} diff --git a/packages/examples/sdk-backend-node/tsconfig.spec.json b/packages/examples/sdk-backend-node/tsconfig.spec.json deleted file mode 100644 index 99ef89807..000000000 --- a/packages/examples/sdk-backend-node/tsconfig.spec.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "extends": "./tsconfig.json", - "compilerOptions": { - "outDir": "../../../dist/out-tsc", - "module": "commonjs", - "types": ["jest", "node"] - }, - "include": ["jest.config.ts", "**/*.test.ts", "**/*.spec.ts", "**/*.d.ts"] -} diff --git a/packages/examples/sdk-backend-node/src/types.ts b/packages/examples/sdk-backend-node/types.ts similarity index 100% rename from packages/examples/sdk-backend-node/src/types.ts rename to packages/examples/sdk-backend-node/types.ts diff --git a/packages/examples/sdk-backend-node/src/video/index.ts b/packages/examples/sdk-backend-node/video/index.ts similarity index 97% rename from packages/examples/sdk-backend-node/src/video/index.ts rename to packages/examples/sdk-backend-node/video/index.ts index c681835d8..209522514 100644 --- a/packages/examples/sdk-backend-node/src/video/index.ts +++ b/packages/examples/sdk-backend-node/video/index.ts @@ -11,19 +11,19 @@ const { env } = config; const signer = ethers.Wallet.createRandom(); // Video Data -const videoChainId = +process.env.VIDEO_CHAIN_ID; +const videoChainId = +(process.env.VIDEO_CHAIN_ID as string); let videoData = PushAPI.video.initVideoCallData; const videoSetData: ( fn: (data: PushAPI.VideoCallData) => PushAPI.VideoCallData ) => void = (fn) => { videoData = fn(videoData); }; -let videoObject = null; +let videoObject: any = null; const videoLocalStream = null; // get the local stream const videoSenderAddress = process.env.VIDEO_SENDER_ADDRESS; const videoRecipientAddress = process.env.VIDEO_RECIPEINT_ADDRESS; const videoChatId = process.env.VIDEO_CHAT_ID; -let videoSignalData_1 = null; +let videoSignalData_1: any = null; const skipExample = () => { const requiredEnvVars = [ @@ -146,7 +146,7 @@ async function PushAPI_video_disconnect() { async function PushVideoSDKSocket() { const pushSDKSocket = createSocketConnection({ - user: videoSenderAddress, + user: videoSenderAddress as string, socketType: 'chat', socketOptions: { autoConnect: true, reconnectionAttempts: 3 }, env: env as ENV, diff --git a/workspace.json b/workspace.json index a0f1a558d..163b6ba91 100644 --- a/workspace.json +++ b/workspace.json @@ -3,7 +3,6 @@ "version": 2, "projects": { "demonative": "apps/demonative", - "examples-sdk-backend-node": "packages/examples/sdk-backend-node", "examples-sdk-frontend-react": "packages/examples/sdk-frontend-react", "ledgerlive": "packages/ledgerlive", "reactnative": "packages/reactnative",